KILLED proof of input_WXPYlBGY7K.trs # AProVE Commit ID: aff8ecad908e01718a4c36e68d2e55d5e0f16e15 fuhs 20220216 unpublished The Runtime Complexity (parallel-innermost) of the given CpxTRS could be proven to be BOUNDS(1, INF). (0) CpxTRS (1) RenamingProof [BOTH BOUNDS(ID, ID), 0 ms] (2) CpxTRS (3) RelTrsToTrsProof [UPPER BOUND(ID), 0 ms] (4) CpxTRS (5) RelTrsToWeightedTrsProof [UPPER BOUND(ID), 0 ms] (6) CpxWeightedTrs (7) TypeInferenceProof [BOTH BOUNDS(ID, ID), 0 ms] (8) CpxTypedWeightedTrs (9) CompletionProof [UPPER BOUND(ID), 0 ms] (10) CpxTypedWeightedCompleteTrs (11) NarrowingProof [BOTH BOUNDS(ID, ID), 25 ms] (12) CpxTypedWeightedCompleteTrs (13) CpxTypedWeightedTrsToRntsProof [UPPER BOUND(ID), 70 ms] (14) CpxRNTS (15) InliningProof [UPPER BOUND(ID), 2190 ms] (16) CpxRNTS (17) SimplificationProof [BOTH BOUNDS(ID, ID), 0 ms] (18) CpxRNTS (19) CompletionProof [UPPER BOUND(ID), 0 ms] (20) CpxTypedWeightedCompleteTrs (21) CpxTypedWeightedTrsToRntsProof [UPPER BOUND(ID), 0 ms] (22) CpxRNTS (23) CpxTrsToCdtProof [UPPER BOUND(ID), 0 ms] (24) CdtProblem (25) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 0 ms] (26) CdtProblem (27) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (28) CdtProblem (29) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (30) CdtProblem (31) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (32) CdtProblem (33) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (34) CdtProblem (35) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 0 ms] (36) CdtProblem (37) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (38) CdtProblem (39) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (40) CdtProblem (41) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (42) CdtProblem (43) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (44) CdtProblem (45) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (46) CdtProblem (47) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (48) CdtProblem (49) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (50) CdtProblem (51) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (52) CdtProblem (53) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 0 ms] (54) CdtProblem (55) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (56) CdtProblem (57) CdtGraphSplitRhsProof [BOTH BOUNDS(ID, ID), 0 ms] (58) CdtProblem (59) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (60) CdtProblem (61) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 0 ms] (62) CdtProblem (63) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (64) CdtProblem (65) CdtGraphSplitRhsProof [BOTH BOUNDS(ID, ID), 0 ms] (66) CdtProblem (67) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 11 ms] (68) CdtProblem (69) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 0 ms] (70) CdtProblem (71) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (72) CdtProblem (73) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (74) CdtProblem (75) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 0 ms] (76) CdtProblem (77) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (78) CdtProblem (79) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (80) CdtProblem (81) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 0 ms] (82) CdtProblem (83) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (84) CdtProblem (85) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (86) CdtProblem (87) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (88) CdtProblem (89) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (90) CdtProblem (91) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (92) CdtProblem (93) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (94) CdtProblem (95) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (96) CdtProblem (97) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 28 ms] (98) CdtProblem (99) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (100) CdtProblem (101) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 25 ms] (102) CdtProblem (103) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (104) CdtProblem (105) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (106) CdtProblem (107) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (108) CdtProblem (109) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 19 ms] (110) CdtProblem (111) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (112) CdtProblem (113) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 11 ms] (114) CdtProblem (115) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (116) CdtProblem (117) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 25 ms] (118) CdtProblem (119) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (120) CdtProblem (121) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 9 ms] (122) CdtProblem (123) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (124) CdtProblem (125) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (126) CdtProblem (127) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (128) CdtProblem (129) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 27 ms] (130) CdtProblem (131) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (132) CdtProblem (133) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 22 ms] (134) CdtProblem (135) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 8 ms] (136) CdtProblem (137) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (138) CdtProblem (139) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (140) CdtProblem (141) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 20 ms] (142) CdtProblem (143) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 6 ms] (144) CdtProblem (145) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (146) CdtProblem (147) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 0 ms] (148) CdtProblem (149) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (150) CdtProblem (151) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (152) CdtProblem (153) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 19 ms] (154) CdtProblem (155) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (156) CdtProblem (157) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 12 ms] (158) CdtProblem (159) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (160) CdtProblem (161) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 15 ms] (162) CdtProblem (163) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (164) CdtProblem (165) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (166) CdtProblem (167) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (168) CdtProblem (169) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (170) CdtProblem (171) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (172) CdtProblem (173) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 13 ms] (174) CdtProblem (175) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (176) CdtProblem (177) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 37 ms] (178) CdtProblem (179) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (180) CdtProblem (181) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 62 ms] (182) CdtProblem (183) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (184) CdtProblem (185) CdtGraphSplitRhsProof [BOTH BOUNDS(ID, ID), 2 ms] (186) CdtProblem (187) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 33 ms] (188) CdtProblem (189) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (190) CdtProblem (191) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 6 ms] (192) CdtProblem (193) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (194) CdtProblem (195) CdtGraphSplitRhsProof [BOTH BOUNDS(ID, ID), 0 ms] (196) CdtProblem (197) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 38 ms] (198) CdtProblem (199) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (200) CdtProblem (201) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 28 ms] (202) CdtProblem (203) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (204) CdtProblem (205) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 34 ms] (206) CdtProblem (207) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (208) CdtProblem (209) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 49 ms] (210) CdtProblem (211) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (212) CdtProblem (213) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (214) CdtProblem (215) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 0 ms] (216) CdtProblem (217) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (218) CdtProblem (219) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 26 ms] (220) CdtProblem (221) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 0 ms] (222) CdtProblem (223) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (224) CdtProblem (225) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 0 ms] (226) 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__zeros -> cons(0, zeros) a__U11(tt) -> tt a__U21(tt) -> tt a__U31(tt) -> tt a__U41(tt, V2) -> a__U42(a__isNatIList(V2)) a__U42(tt) -> tt a__U51(tt, V2) -> a__U52(a__isNatList(V2)) a__U52(tt) -> tt a__U61(tt, L, N) -> a__U62(a__isNat(N), L) a__U62(tt, L) -> s(a__length(mark(L))) a__isNat(0) -> tt a__isNat(length(V1)) -> a__U11(a__isNatList(V1)) a__isNat(s(V1)) -> a__U21(a__isNat(V1)) a__isNatIList(V) -> a__U31(a__isNatList(V)) a__isNatIList(zeros) -> tt a__isNatIList(cons(V1, V2)) -> a__U41(a__isNat(V1), V2) a__isNatList(nil) -> tt a__isNatList(cons(V1, V2)) -> a__U51(a__isNat(V1), V2) a__length(nil) -> 0 a__length(cons(N, L)) -> a__U61(a__isNatList(L), L, N) mark(zeros) -> a__zeros mark(U11(X)) -> a__U11(mark(X)) mark(U21(X)) -> a__U21(mark(X)) mark(U31(X)) -> a__U31(mark(X)) mark(U41(X1, X2)) -> a__U41(mark(X1), X2) mark(U42(X)) -> a__U42(mark(X)) mark(isNatIList(X)) -> a__isNatIList(X) mark(U51(X1, X2)) -> a__U51(mark(X1), X2) mark(U52(X)) -> a__U52(mark(X)) mark(isNatList(X)) -> a__isNatList(X) mark(U61(X1, X2, X3)) -> a__U61(mark(X1), X2, X3) mark(U62(X1, X2)) -> a__U62(mark(X1), X2) mark(isNat(X)) -> a__isNat(X) mark(length(X)) -> a__length(mark(X)) mark(cons(X1, X2)) -> cons(mark(X1), X2) mark(0) -> 0 mark(tt) -> tt mark(s(X)) -> s(mark(X)) mark(nil) -> nil a__zeros -> zeros a__U11(X) -> U11(X) a__U21(X) -> U21(X) a__U31(X) -> U31(X) a__U41(X1, X2) -> U41(X1, X2) a__U42(X) -> U42(X) a__isNatIList(X) -> isNatIList(X) a__U51(X1, X2) -> U51(X1, X2) a__U52(X) -> U52(X) a__isNatList(X) -> isNatList(X) a__U61(X1, X2, X3) -> U61(X1, X2, X3) a__U62(X1, X2) -> U62(X1, X2) a__isNat(X) -> isNat(X) a__length(X) -> length(X) 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__zeros -> cons(0', zeros) a__U11(tt) -> tt a__U21(tt) -> tt a__U31(tt) -> tt a__U41(tt, V2) -> a__U42(a__isNatIList(V2)) a__U42(tt) -> tt a__U51(tt, V2) -> a__U52(a__isNatList(V2)) a__U52(tt) -> tt a__U61(tt, L, N) -> a__U62(a__isNat(N), L) a__U62(tt, L) -> s(a__length(mark(L))) a__isNat(0') -> tt a__isNat(length(V1)) -> a__U11(a__isNatList(V1)) a__isNat(s(V1)) -> a__U21(a__isNat(V1)) a__isNatIList(V) -> a__U31(a__isNatList(V)) a__isNatIList(zeros) -> tt a__isNatIList(cons(V1, V2)) -> a__U41(a__isNat(V1), V2) a__isNatList(nil) -> tt a__isNatList(cons(V1, V2)) -> a__U51(a__isNat(V1), V2) a__length(nil) -> 0' a__length(cons(N, L)) -> a__U61(a__isNatList(L), L, N) mark(zeros) -> a__zeros mark(U11(X)) -> a__U11(mark(X)) mark(U21(X)) -> a__U21(mark(X)) mark(U31(X)) -> a__U31(mark(X)) mark(U41(X1, X2)) -> a__U41(mark(X1), X2) mark(U42(X)) -> a__U42(mark(X)) mark(isNatIList(X)) -> a__isNatIList(X) mark(U51(X1, X2)) -> a__U51(mark(X1), X2) mark(U52(X)) -> a__U52(mark(X)) mark(isNatList(X)) -> a__isNatList(X) mark(U61(X1, X2, X3)) -> a__U61(mark(X1), X2, X3) mark(U62(X1, X2)) -> a__U62(mark(X1), X2) mark(isNat(X)) -> a__isNat(X) mark(length(X)) -> a__length(mark(X)) mark(cons(X1, X2)) -> cons(mark(X1), X2) mark(0') -> 0' mark(tt) -> tt mark(s(X)) -> s(mark(X)) mark(nil) -> nil a__zeros -> zeros a__U11(X) -> U11(X) a__U21(X) -> U21(X) a__U31(X) -> U31(X) a__U41(X1, X2) -> U41(X1, X2) a__U42(X) -> U42(X) a__isNatIList(X) -> isNatIList(X) a__U51(X1, X2) -> U51(X1, X2) a__U52(X) -> U52(X) a__isNatList(X) -> isNatList(X) a__U61(X1, X2, X3) -> U61(X1, X2, X3) a__U62(X1, X2) -> U62(X1, X2) a__isNat(X) -> isNat(X) a__length(X) -> length(X) 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__zeros -> cons(0, zeros) a__U11(tt) -> tt a__U21(tt) -> tt a__U31(tt) -> tt a__U41(tt, V2) -> a__U42(a__isNatIList(V2)) a__U42(tt) -> tt a__U51(tt, V2) -> a__U52(a__isNatList(V2)) a__U52(tt) -> tt a__U61(tt, L, N) -> a__U62(a__isNat(N), L) a__U62(tt, L) -> s(a__length(mark(L))) a__isNat(0) -> tt a__isNat(length(V1)) -> a__U11(a__isNatList(V1)) a__isNat(s(V1)) -> a__U21(a__isNat(V1)) a__isNatIList(V) -> a__U31(a__isNatList(V)) a__isNatIList(zeros) -> tt a__isNatIList(cons(V1, V2)) -> a__U41(a__isNat(V1), V2) a__isNatList(nil) -> tt a__isNatList(cons(V1, V2)) -> a__U51(a__isNat(V1), V2) a__length(nil) -> 0 a__length(cons(N, L)) -> a__U61(a__isNatList(L), L, N) mark(zeros) -> a__zeros mark(U11(X)) -> a__U11(mark(X)) mark(U21(X)) -> a__U21(mark(X)) mark(U31(X)) -> a__U31(mark(X)) mark(U41(X1, X2)) -> a__U41(mark(X1), X2) mark(U42(X)) -> a__U42(mark(X)) mark(isNatIList(X)) -> a__isNatIList(X) mark(U51(X1, X2)) -> a__U51(mark(X1), X2) mark(U52(X)) -> a__U52(mark(X)) mark(isNatList(X)) -> a__isNatList(X) mark(U61(X1, X2, X3)) -> a__U61(mark(X1), X2, X3) mark(U62(X1, X2)) -> a__U62(mark(X1), X2) mark(isNat(X)) -> a__isNat(X) mark(length(X)) -> a__length(mark(X)) mark(cons(X1, X2)) -> cons(mark(X1), X2) mark(0) -> 0 mark(tt) -> tt mark(s(X)) -> s(mark(X)) mark(nil) -> nil a__zeros -> zeros a__U11(X) -> U11(X) a__U21(X) -> U21(X) a__U31(X) -> U31(X) a__U41(X1, X2) -> U41(X1, X2) a__U42(X) -> U42(X) a__isNatIList(X) -> isNatIList(X) a__U51(X1, X2) -> U51(X1, X2) a__U52(X) -> U52(X) a__isNatList(X) -> isNatList(X) a__U61(X1, X2, X3) -> U61(X1, X2, X3) a__U62(X1, X2) -> U62(X1, X2) a__isNat(X) -> isNat(X) a__length(X) -> length(X) S is empty. Rewrite Strategy: PARALLEL_INNERMOST ---------------------------------------- (5) RelTrsToWeightedTrsProof (UPPER BOUND(ID)) Transformed relative TRS to weighted TRS ---------------------------------------- (6) Obligation: The Runtime Complexity (innermost) of the given CpxWeightedTrs could be proven to be BOUNDS(1, INF). The TRS R consists of the following rules: a__zeros -> cons(0, zeros) [1] a__U11(tt) -> tt [1] a__U21(tt) -> tt [1] a__U31(tt) -> tt [1] a__U41(tt, V2) -> a__U42(a__isNatIList(V2)) [1] a__U42(tt) -> tt [1] a__U51(tt, V2) -> a__U52(a__isNatList(V2)) [1] a__U52(tt) -> tt [1] a__U61(tt, L, N) -> a__U62(a__isNat(N), L) [1] a__U62(tt, L) -> s(a__length(mark(L))) [1] a__isNat(0) -> tt [1] a__isNat(length(V1)) -> a__U11(a__isNatList(V1)) [1] a__isNat(s(V1)) -> a__U21(a__isNat(V1)) [1] a__isNatIList(V) -> a__U31(a__isNatList(V)) [1] a__isNatIList(zeros) -> tt [1] a__isNatIList(cons(V1, V2)) -> a__U41(a__isNat(V1), V2) [1] a__isNatList(nil) -> tt [1] a__isNatList(cons(V1, V2)) -> a__U51(a__isNat(V1), V2) [1] a__length(nil) -> 0 [1] a__length(cons(N, L)) -> a__U61(a__isNatList(L), L, N) [1] mark(zeros) -> a__zeros [1] mark(U11(X)) -> a__U11(mark(X)) [1] mark(U21(X)) -> a__U21(mark(X)) [1] mark(U31(X)) -> a__U31(mark(X)) [1] mark(U41(X1, X2)) -> a__U41(mark(X1), X2) [1] mark(U42(X)) -> a__U42(mark(X)) [1] mark(isNatIList(X)) -> a__isNatIList(X) [1] mark(U51(X1, X2)) -> a__U51(mark(X1), X2) [1] mark(U52(X)) -> a__U52(mark(X)) [1] mark(isNatList(X)) -> a__isNatList(X) [1] mark(U61(X1, X2, X3)) -> a__U61(mark(X1), X2, X3) [1] mark(U62(X1, X2)) -> a__U62(mark(X1), X2) [1] mark(isNat(X)) -> a__isNat(X) [1] mark(length(X)) -> a__length(mark(X)) [1] mark(cons(X1, X2)) -> cons(mark(X1), X2) [1] mark(0) -> 0 [1] mark(tt) -> tt [1] mark(s(X)) -> s(mark(X)) [1] mark(nil) -> nil [1] a__zeros -> zeros [1] a__U11(X) -> U11(X) [1] a__U21(X) -> U21(X) [1] a__U31(X) -> U31(X) [1] a__U41(X1, X2) -> U41(X1, X2) [1] a__U42(X) -> U42(X) [1] a__isNatIList(X) -> isNatIList(X) [1] a__U51(X1, X2) -> U51(X1, X2) [1] a__U52(X) -> U52(X) [1] a__isNatList(X) -> isNatList(X) [1] a__U61(X1, X2, X3) -> U61(X1, X2, X3) [1] a__U62(X1, X2) -> U62(X1, X2) [1] a__isNat(X) -> isNat(X) [1] a__length(X) -> length(X) [1] Rewrite Strategy: INNERMOST ---------------------------------------- (7) TypeInferenceProof (BOTH BOUNDS(ID, ID)) Infered types. ---------------------------------------- (8) Obligation: Runtime Complexity Weighted TRS with Types. The TRS R consists of the following rules: a__zeros -> cons(0, zeros) [1] a__U11(tt) -> tt [1] a__U21(tt) -> tt [1] a__U31(tt) -> tt [1] a__U41(tt, V2) -> a__U42(a__isNatIList(V2)) [1] a__U42(tt) -> tt [1] a__U51(tt, V2) -> a__U52(a__isNatList(V2)) [1] a__U52(tt) -> tt [1] a__U61(tt, L, N) -> a__U62(a__isNat(N), L) [1] a__U62(tt, L) -> s(a__length(mark(L))) [1] a__isNat(0) -> tt [1] a__isNat(length(V1)) -> a__U11(a__isNatList(V1)) [1] a__isNat(s(V1)) -> a__U21(a__isNat(V1)) [1] a__isNatIList(V) -> a__U31(a__isNatList(V)) [1] a__isNatIList(zeros) -> tt [1] a__isNatIList(cons(V1, V2)) -> a__U41(a__isNat(V1), V2) [1] a__isNatList(nil) -> tt [1] a__isNatList(cons(V1, V2)) -> a__U51(a__isNat(V1), V2) [1] a__length(nil) -> 0 [1] a__length(cons(N, L)) -> a__U61(a__isNatList(L), L, N) [1] mark(zeros) -> a__zeros [1] mark(U11(X)) -> a__U11(mark(X)) [1] mark(U21(X)) -> a__U21(mark(X)) [1] mark(U31(X)) -> a__U31(mark(X)) [1] mark(U41(X1, X2)) -> a__U41(mark(X1), X2) [1] mark(U42(X)) -> a__U42(mark(X)) [1] mark(isNatIList(X)) -> a__isNatIList(X) [1] mark(U51(X1, X2)) -> a__U51(mark(X1), X2) [1] mark(U52(X)) -> a__U52(mark(X)) [1] mark(isNatList(X)) -> a__isNatList(X) [1] mark(U61(X1, X2, X3)) -> a__U61(mark(X1), X2, X3) [1] mark(U62(X1, X2)) -> a__U62(mark(X1), X2) [1] mark(isNat(X)) -> a__isNat(X) [1] mark(length(X)) -> a__length(mark(X)) [1] mark(cons(X1, X2)) -> cons(mark(X1), X2) [1] mark(0) -> 0 [1] mark(tt) -> tt [1] mark(s(X)) -> s(mark(X)) [1] mark(nil) -> nil [1] a__zeros -> zeros [1] a__U11(X) -> U11(X) [1] a__U21(X) -> U21(X) [1] a__U31(X) -> U31(X) [1] a__U41(X1, X2) -> U41(X1, X2) [1] a__U42(X) -> U42(X) [1] a__isNatIList(X) -> isNatIList(X) [1] a__U51(X1, X2) -> U51(X1, X2) [1] a__U52(X) -> U52(X) [1] a__isNatList(X) -> isNatList(X) [1] a__U61(X1, X2, X3) -> U61(X1, X2, X3) [1] a__U62(X1, X2) -> U62(X1, X2) [1] a__isNat(X) -> isNat(X) [1] a__length(X) -> length(X) [1] The TRS has the following type information: a__zeros :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat cons :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat 0 :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat zeros :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat a__U11 :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat tt :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat a__U21 :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat a__U31 :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat a__U41 :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat a__U42 :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat a__isNatIList :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat a__U51 :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat a__U52 :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat a__isNatList :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat a__U61 :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat a__U62 :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat a__isNat :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat s :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat a__length :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat mark :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat length :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat nil :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat U11 :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat U21 :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat U31 :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat U41 :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat U42 :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat isNatIList :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat U51 :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat U52 :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat isNatList :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat U61 :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat U62 :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat isNat :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat Rewrite Strategy: INNERMOST ---------------------------------------- (9) CompletionProof (UPPER BOUND(ID)) The transformation into a RNTS is sound, since: (a) The obligation is a constructor system where every type has a constant constructor, (b) The following defined symbols do not have to be completely defined, as they can never occur inside other defined symbols: none (c) The following functions are completely defined: a__isNatIList_1 mark_1 a__isNatList_1 a__isNat_1 a__U11_1 a__length_1 a__U52_1 a__U21_1 a__U61_3 a__zeros a__U41_2 a__U42_1 a__U51_2 a__U62_2 a__U31_1 Due to the following rules being added: none And the following fresh constants: none ---------------------------------------- (10) Obligation: Runtime Complexity Weighted TRS where critical functions are completely defined. The underlying TRS is: Runtime Complexity Weighted TRS with Types. The TRS R consists of the following rules: a__zeros -> cons(0, zeros) [1] a__U11(tt) -> tt [1] a__U21(tt) -> tt [1] a__U31(tt) -> tt [1] a__U41(tt, V2) -> a__U42(a__isNatIList(V2)) [1] a__U42(tt) -> tt [1] a__U51(tt, V2) -> a__U52(a__isNatList(V2)) [1] a__U52(tt) -> tt [1] a__U61(tt, L, N) -> a__U62(a__isNat(N), L) [1] a__U62(tt, L) -> s(a__length(mark(L))) [1] a__isNat(0) -> tt [1] a__isNat(length(V1)) -> a__U11(a__isNatList(V1)) [1] a__isNat(s(V1)) -> a__U21(a__isNat(V1)) [1] a__isNatIList(V) -> a__U31(a__isNatList(V)) [1] a__isNatIList(zeros) -> tt [1] a__isNatIList(cons(V1, V2)) -> a__U41(a__isNat(V1), V2) [1] a__isNatList(nil) -> tt [1] a__isNatList(cons(V1, V2)) -> a__U51(a__isNat(V1), V2) [1] a__length(nil) -> 0 [1] a__length(cons(N, L)) -> a__U61(a__isNatList(L), L, N) [1] mark(zeros) -> a__zeros [1] mark(U11(X)) -> a__U11(mark(X)) [1] mark(U21(X)) -> a__U21(mark(X)) [1] mark(U31(X)) -> a__U31(mark(X)) [1] mark(U41(X1, X2)) -> a__U41(mark(X1), X2) [1] mark(U42(X)) -> a__U42(mark(X)) [1] mark(isNatIList(X)) -> a__isNatIList(X) [1] mark(U51(X1, X2)) -> a__U51(mark(X1), X2) [1] mark(U52(X)) -> a__U52(mark(X)) [1] mark(isNatList(X)) -> a__isNatList(X) [1] mark(U61(X1, X2, X3)) -> a__U61(mark(X1), X2, X3) [1] mark(U62(X1, X2)) -> a__U62(mark(X1), X2) [1] mark(isNat(X)) -> a__isNat(X) [1] mark(length(X)) -> a__length(mark(X)) [1] mark(cons(X1, X2)) -> cons(mark(X1), X2) [1] mark(0) -> 0 [1] mark(tt) -> tt [1] mark(s(X)) -> s(mark(X)) [1] mark(nil) -> nil [1] a__zeros -> zeros [1] a__U11(X) -> U11(X) [1] a__U21(X) -> U21(X) [1] a__U31(X) -> U31(X) [1] a__U41(X1, X2) -> U41(X1, X2) [1] a__U42(X) -> U42(X) [1] a__isNatIList(X) -> isNatIList(X) [1] a__U51(X1, X2) -> U51(X1, X2) [1] a__U52(X) -> U52(X) [1] a__isNatList(X) -> isNatList(X) [1] a__U61(X1, X2, X3) -> U61(X1, X2, X3) [1] a__U62(X1, X2) -> U62(X1, X2) [1] a__isNat(X) -> isNat(X) [1] a__length(X) -> length(X) [1] The TRS has the following type information: a__zeros :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat cons :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat 0 :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat zeros :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat a__U11 :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat tt :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat a__U21 :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat a__U31 :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat a__U41 :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat a__U42 :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat a__isNatIList :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat a__U51 :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat a__U52 :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat a__isNatList :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat a__U61 :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat a__U62 :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat a__isNat :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat s :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat a__length :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat mark :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat length :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat nil :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat U11 :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat U21 :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat U31 :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat U41 :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat U42 :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat isNatIList :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat U51 :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat U52 :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat isNatList :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat U61 :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat U62 :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat isNat :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat Rewrite Strategy: INNERMOST ---------------------------------------- (11) NarrowingProof (BOTH BOUNDS(ID, ID)) Narrowed the inner basic terms of all right-hand sides by a single narrowing step. ---------------------------------------- (12) Obligation: Runtime Complexity Weighted TRS where critical functions are completely defined. The underlying TRS is: Runtime Complexity Weighted TRS with Types. The TRS R consists of the following rules: a__zeros -> cons(0, zeros) [1] a__U11(tt) -> tt [1] a__U21(tt) -> tt [1] a__U31(tt) -> tt [1] a__U41(tt, V2) -> a__U42(a__U31(a__isNatList(V2))) [2] a__U41(tt, zeros) -> a__U42(tt) [2] a__U41(tt, cons(V1', V2')) -> a__U42(a__U41(a__isNat(V1'), V2')) [2] a__U41(tt, V2) -> a__U42(isNatIList(V2)) [2] a__U42(tt) -> tt [1] a__U51(tt, nil) -> a__U52(tt) [2] a__U51(tt, cons(V1'', V2'')) -> a__U52(a__U51(a__isNat(V1''), V2'')) [2] a__U51(tt, V2) -> a__U52(isNatList(V2)) [2] a__U52(tt) -> tt [1] a__U61(tt, L, 0) -> a__U62(tt, L) [2] a__U61(tt, L, length(V11)) -> a__U62(a__U11(a__isNatList(V11)), L) [2] a__U61(tt, L, s(V12)) -> a__U62(a__U21(a__isNat(V12)), L) [2] a__U61(tt, L, N) -> a__U62(isNat(N), L) [2] a__U62(tt, zeros) -> s(a__length(a__zeros)) [2] a__U62(tt, U11(X')) -> s(a__length(a__U11(mark(X')))) [2] a__U62(tt, U21(X'')) -> s(a__length(a__U21(mark(X'')))) [2] a__U62(tt, U31(X4)) -> s(a__length(a__U31(mark(X4)))) [2] a__U62(tt, U41(X1', X2')) -> s(a__length(a__U41(mark(X1'), X2'))) [2] a__U62(tt, U42(X5)) -> s(a__length(a__U42(mark(X5)))) [2] a__U62(tt, isNatIList(X6)) -> s(a__length(a__isNatIList(X6))) [2] a__U62(tt, U51(X1'', X2'')) -> s(a__length(a__U51(mark(X1''), X2''))) [2] a__U62(tt, U52(X7)) -> s(a__length(a__U52(mark(X7)))) [2] a__U62(tt, isNatList(X8)) -> s(a__length(a__isNatList(X8))) [2] a__U62(tt, U61(X11, X21, X3')) -> s(a__length(a__U61(mark(X11), X21, X3'))) [2] a__U62(tt, U62(X12, X22)) -> s(a__length(a__U62(mark(X12), X22))) [2] a__U62(tt, isNat(X9)) -> s(a__length(a__isNat(X9))) [2] a__U62(tt, length(X10)) -> s(a__length(a__length(mark(X10)))) [2] a__U62(tt, cons(X13, X23)) -> s(a__length(cons(mark(X13), X23))) [2] a__U62(tt, 0) -> s(a__length(0)) [2] a__U62(tt, tt) -> s(a__length(tt)) [2] a__U62(tt, s(X14)) -> s(a__length(s(mark(X14)))) [2] a__U62(tt, nil) -> s(a__length(nil)) [2] a__isNat(0) -> tt [1] a__isNat(length(nil)) -> a__U11(tt) [2] a__isNat(length(cons(V13, V21))) -> a__U11(a__U51(a__isNat(V13), V21)) [2] a__isNat(length(V1)) -> a__U11(isNatList(V1)) [2] a__isNat(s(0)) -> a__U21(tt) [2] a__isNat(s(length(V14))) -> a__U21(a__U11(a__isNatList(V14))) [2] a__isNat(s(s(V15))) -> a__U21(a__U21(a__isNat(V15))) [2] a__isNat(s(V1)) -> a__U21(isNat(V1)) [2] a__isNatIList(nil) -> a__U31(tt) [2] a__isNatIList(cons(V16, V22)) -> a__U31(a__U51(a__isNat(V16), V22)) [2] a__isNatIList(V) -> a__U31(isNatList(V)) [2] a__isNatIList(zeros) -> tt [1] a__isNatIList(cons(0, V2)) -> a__U41(tt, V2) [2] a__isNatIList(cons(length(V17), V2)) -> a__U41(a__U11(a__isNatList(V17)), V2) [2] a__isNatIList(cons(s(V18), V2)) -> a__U41(a__U21(a__isNat(V18)), V2) [2] a__isNatIList(cons(V1, V2)) -> a__U41(isNat(V1), V2) [2] a__isNatList(nil) -> tt [1] a__isNatList(cons(0, V2)) -> a__U51(tt, V2) [2] a__isNatList(cons(length(V19), V2)) -> a__U51(a__U11(a__isNatList(V19)), V2) [2] a__isNatList(cons(s(V110), V2)) -> a__U51(a__U21(a__isNat(V110)), V2) [2] a__isNatList(cons(V1, V2)) -> a__U51(isNat(V1), V2) [2] a__length(nil) -> 0 [1] a__length(cons(N, nil)) -> a__U61(tt, nil, N) [2] a__length(cons(N, cons(V111, V23))) -> a__U61(a__U51(a__isNat(V111), V23), cons(V111, V23), N) [2] a__length(cons(N, L)) -> a__U61(isNatList(L), L, N) [2] mark(zeros) -> a__zeros [1] mark(U11(zeros)) -> a__U11(a__zeros) [2] mark(U11(U11(X15))) -> a__U11(a__U11(mark(X15))) [2] mark(U11(U21(X16))) -> a__U11(a__U21(mark(X16))) [2] mark(U11(U31(X17))) -> a__U11(a__U31(mark(X17))) [2] mark(U11(U41(X18, X24))) -> a__U11(a__U41(mark(X18), X24)) [2] mark(U11(U42(X19))) -> a__U11(a__U42(mark(X19))) [2] mark(U11(isNatIList(X20))) -> a__U11(a__isNatIList(X20)) [2] mark(U11(U51(X110, X25))) -> a__U11(a__U51(mark(X110), X25)) [2] mark(U11(U52(X26))) -> a__U11(a__U52(mark(X26))) [2] mark(U11(isNatList(X27))) -> a__U11(a__isNatList(X27)) [2] mark(U11(U61(X111, X28, X3''))) -> a__U11(a__U61(mark(X111), X28, X3'')) [2] mark(U11(U62(X112, X29))) -> a__U11(a__U62(mark(X112), X29)) [2] mark(U11(isNat(X30))) -> a__U11(a__isNat(X30)) [2] mark(U11(length(X31))) -> a__U11(a__length(mark(X31))) [2] mark(U11(cons(X113, X210))) -> a__U11(cons(mark(X113), X210)) [2] mark(U11(0)) -> a__U11(0) [2] mark(U11(tt)) -> a__U11(tt) [2] mark(U11(s(X32))) -> a__U11(s(mark(X32))) [2] mark(U11(nil)) -> a__U11(nil) [2] mark(U21(zeros)) -> a__U21(a__zeros) [2] mark(U21(U11(X33))) -> a__U21(a__U11(mark(X33))) [2] mark(U21(U21(X34))) -> a__U21(a__U21(mark(X34))) [2] mark(U21(U31(X35))) -> a__U21(a__U31(mark(X35))) [2] mark(U21(U41(X114, X211))) -> a__U21(a__U41(mark(X114), X211)) [2] mark(U21(U42(X36))) -> a__U21(a__U42(mark(X36))) [2] mark(U21(isNatIList(X37))) -> a__U21(a__isNatIList(X37)) [2] mark(U21(U51(X115, X212))) -> a__U21(a__U51(mark(X115), X212)) [2] mark(U21(U52(X38))) -> a__U21(a__U52(mark(X38))) [2] mark(U21(isNatList(X39))) -> a__U21(a__isNatList(X39)) [2] mark(U21(U61(X116, X213, X310))) -> a__U21(a__U61(mark(X116), X213, X310)) [2] mark(U21(U62(X117, X214))) -> a__U21(a__U62(mark(X117), X214)) [2] mark(U21(isNat(X40))) -> a__U21(a__isNat(X40)) [2] mark(U21(length(X41))) -> a__U21(a__length(mark(X41))) [2] mark(U21(cons(X118, X215))) -> a__U21(cons(mark(X118), X215)) [2] mark(U21(0)) -> a__U21(0) [2] mark(U21(tt)) -> a__U21(tt) [2] mark(U21(s(X42))) -> a__U21(s(mark(X42))) [2] mark(U21(nil)) -> a__U21(nil) [2] mark(U31(zeros)) -> a__U31(a__zeros) [2] mark(U31(U11(X43))) -> a__U31(a__U11(mark(X43))) [2] mark(U31(U21(X44))) -> a__U31(a__U21(mark(X44))) [2] mark(U31(U31(X45))) -> a__U31(a__U31(mark(X45))) [2] mark(U31(U41(X119, X216))) -> a__U31(a__U41(mark(X119), X216)) [2] mark(U31(U42(X46))) -> a__U31(a__U42(mark(X46))) [2] mark(U31(isNatIList(X47))) -> a__U31(a__isNatIList(X47)) [2] mark(U31(U51(X120, X217))) -> a__U31(a__U51(mark(X120), X217)) [2] mark(U31(U52(X48))) -> a__U31(a__U52(mark(X48))) [2] mark(U31(isNatList(X49))) -> a__U31(a__isNatList(X49)) [2] mark(U31(U61(X121, X218, X311))) -> a__U31(a__U61(mark(X121), X218, X311)) [2] mark(U31(U62(X122, X219))) -> a__U31(a__U62(mark(X122), X219)) [2] mark(U31(isNat(X50))) -> a__U31(a__isNat(X50)) [2] mark(U31(length(X51))) -> a__U31(a__length(mark(X51))) [2] mark(U31(cons(X123, X220))) -> a__U31(cons(mark(X123), X220)) [2] mark(U31(0)) -> a__U31(0) [2] mark(U31(tt)) -> a__U31(tt) [2] mark(U31(s(X52))) -> a__U31(s(mark(X52))) [2] mark(U31(nil)) -> a__U31(nil) [2] mark(U41(zeros, X2)) -> a__U41(a__zeros, X2) [2] mark(U41(U11(X53), X2)) -> a__U41(a__U11(mark(X53)), X2) [2] mark(U41(U21(X54), X2)) -> a__U41(a__U21(mark(X54)), X2) [2] mark(U41(U31(X55), X2)) -> a__U41(a__U31(mark(X55)), X2) [2] mark(U41(U41(X124, X221), X2)) -> a__U41(a__U41(mark(X124), X221), X2) [2] mark(U41(U42(X56), X2)) -> a__U41(a__U42(mark(X56)), X2) [2] mark(U41(isNatIList(X57), X2)) -> a__U41(a__isNatIList(X57), X2) [2] mark(U41(U51(X125, X222), X2)) -> a__U41(a__U51(mark(X125), X222), X2) [2] mark(U41(U52(X58), X2)) -> a__U41(a__U52(mark(X58)), X2) [2] mark(U41(isNatList(X59), X2)) -> a__U41(a__isNatList(X59), X2) [2] mark(U41(U61(X126, X223, X312), X2)) -> a__U41(a__U61(mark(X126), X223, X312), X2) [2] mark(U41(U62(X127, X224), X2)) -> a__U41(a__U62(mark(X127), X224), X2) [2] mark(U41(isNat(X60), X2)) -> a__U41(a__isNat(X60), X2) [2] mark(U41(length(X61), X2)) -> a__U41(a__length(mark(X61)), X2) [2] mark(U41(cons(X128, X225), X2)) -> a__U41(cons(mark(X128), X225), X2) [2] mark(U41(0, X2)) -> a__U41(0, X2) [2] mark(U41(tt, X2)) -> a__U41(tt, X2) [2] mark(U41(s(X62), X2)) -> a__U41(s(mark(X62)), X2) [2] mark(U41(nil, X2)) -> a__U41(nil, X2) [2] mark(U42(zeros)) -> a__U42(a__zeros) [2] mark(U42(U11(X63))) -> a__U42(a__U11(mark(X63))) [2] mark(U42(U21(X64))) -> a__U42(a__U21(mark(X64))) [2] mark(U42(U31(X65))) -> a__U42(a__U31(mark(X65))) [2] mark(U42(U41(X129, X226))) -> a__U42(a__U41(mark(X129), X226)) [2] mark(U42(U42(X66))) -> a__U42(a__U42(mark(X66))) [2] mark(U42(isNatIList(X67))) -> a__U42(a__isNatIList(X67)) [2] mark(U42(U51(X130, X227))) -> a__U42(a__U51(mark(X130), X227)) [2] mark(U42(U52(X68))) -> a__U42(a__U52(mark(X68))) [2] mark(U42(isNatList(X69))) -> a__U42(a__isNatList(X69)) [2] mark(U42(U61(X131, X228, X313))) -> a__U42(a__U61(mark(X131), X228, X313)) [2] mark(U42(U62(X132, X229))) -> a__U42(a__U62(mark(X132), X229)) [2] mark(U42(isNat(X70))) -> a__U42(a__isNat(X70)) [2] mark(U42(length(X71))) -> a__U42(a__length(mark(X71))) [2] mark(U42(cons(X133, X230))) -> a__U42(cons(mark(X133), X230)) [2] mark(U42(0)) -> a__U42(0) [2] mark(U42(tt)) -> a__U42(tt) [2] mark(U42(s(X72))) -> a__U42(s(mark(X72))) [2] mark(U42(nil)) -> a__U42(nil) [2] mark(isNatIList(X)) -> a__isNatIList(X) [1] mark(U51(zeros, X2)) -> a__U51(a__zeros, X2) [2] mark(U51(U11(X73), X2)) -> a__U51(a__U11(mark(X73)), X2) [2] mark(U51(U21(X74), X2)) -> a__U51(a__U21(mark(X74)), X2) [2] mark(U51(U31(X75), X2)) -> a__U51(a__U31(mark(X75)), X2) [2] mark(U51(U41(X134, X231), X2)) -> a__U51(a__U41(mark(X134), X231), X2) [2] mark(U51(U42(X76), X2)) -> a__U51(a__U42(mark(X76)), X2) [2] mark(U51(isNatIList(X77), X2)) -> a__U51(a__isNatIList(X77), X2) [2] mark(U51(U51(X135, X232), X2)) -> a__U51(a__U51(mark(X135), X232), X2) [2] mark(U51(U52(X78), X2)) -> a__U51(a__U52(mark(X78)), X2) [2] mark(U51(isNatList(X79), X2)) -> a__U51(a__isNatList(X79), X2) [2] mark(U51(U61(X136, X233, X314), X2)) -> a__U51(a__U61(mark(X136), X233, X314), X2) [2] mark(U51(U62(X137, X234), X2)) -> a__U51(a__U62(mark(X137), X234), X2) [2] mark(U51(isNat(X80), X2)) -> a__U51(a__isNat(X80), X2) [2] mark(U51(length(X81), X2)) -> a__U51(a__length(mark(X81)), X2) [2] mark(U51(cons(X138, X235), X2)) -> a__U51(cons(mark(X138), X235), X2) [2] mark(U51(0, X2)) -> a__U51(0, X2) [2] mark(U51(tt, X2)) -> a__U51(tt, X2) [2] mark(U51(s(X82), X2)) -> a__U51(s(mark(X82)), X2) [2] mark(U51(nil, X2)) -> a__U51(nil, X2) [2] mark(U52(zeros)) -> a__U52(a__zeros) [2] mark(U52(U11(X83))) -> a__U52(a__U11(mark(X83))) [2] mark(U52(U21(X84))) -> a__U52(a__U21(mark(X84))) [2] mark(U52(U31(X85))) -> a__U52(a__U31(mark(X85))) [2] mark(U52(U41(X139, X236))) -> a__U52(a__U41(mark(X139), X236)) [2] mark(U52(U42(X86))) -> a__U52(a__U42(mark(X86))) [2] mark(U52(isNatIList(X87))) -> a__U52(a__isNatIList(X87)) [2] mark(U52(U51(X140, X237))) -> a__U52(a__U51(mark(X140), X237)) [2] mark(U52(U52(X88))) -> a__U52(a__U52(mark(X88))) [2] mark(U52(isNatList(X89))) -> a__U52(a__isNatList(X89)) [2] mark(U52(U61(X141, X238, X315))) -> a__U52(a__U61(mark(X141), X238, X315)) [2] mark(U52(U62(X142, X239))) -> a__U52(a__U62(mark(X142), X239)) [2] mark(U52(isNat(X90))) -> a__U52(a__isNat(X90)) [2] mark(U52(length(X91))) -> a__U52(a__length(mark(X91))) [2] mark(U52(cons(X143, X240))) -> a__U52(cons(mark(X143), X240)) [2] mark(U52(0)) -> a__U52(0) [2] mark(U52(tt)) -> a__U52(tt) [2] mark(U52(s(X92))) -> a__U52(s(mark(X92))) [2] mark(U52(nil)) -> a__U52(nil) [2] mark(isNatList(X)) -> a__isNatList(X) [1] mark(U61(zeros, X2, X3)) -> a__U61(a__zeros, X2, X3) [2] mark(U61(U11(X93), X2, X3)) -> a__U61(a__U11(mark(X93)), X2, X3) [2] mark(U61(U21(X94), X2, X3)) -> a__U61(a__U21(mark(X94)), X2, X3) [2] mark(U61(U31(X95), X2, X3)) -> a__U61(a__U31(mark(X95)), X2, X3) [2] mark(U61(U41(X144, X241), X2, X3)) -> a__U61(a__U41(mark(X144), X241), X2, X3) [2] mark(U61(U42(X96), X2, X3)) -> a__U61(a__U42(mark(X96)), X2, X3) [2] mark(U61(isNatIList(X97), X2, X3)) -> a__U61(a__isNatIList(X97), X2, X3) [2] mark(U61(U51(X145, X242), X2, X3)) -> a__U61(a__U51(mark(X145), X242), X2, X3) [2] mark(U61(U52(X98), X2, X3)) -> a__U61(a__U52(mark(X98)), X2, X3) [2] mark(U61(isNatList(X99), X2, X3)) -> a__U61(a__isNatList(X99), X2, X3) [2] mark(U61(U61(X146, X243, X316), X2, X3)) -> a__U61(a__U61(mark(X146), X243, X316), X2, X3) [2] mark(U61(U62(X147, X244), X2, X3)) -> a__U61(a__U62(mark(X147), X244), X2, X3) [2] mark(U61(isNat(X100), X2, X3)) -> a__U61(a__isNat(X100), X2, X3) [2] mark(U61(length(X101), X2, X3)) -> a__U61(a__length(mark(X101)), X2, X3) [2] mark(U61(cons(X148, X245), X2, X3)) -> a__U61(cons(mark(X148), X245), X2, X3) [2] mark(U61(0, X2, X3)) -> a__U61(0, X2, X3) [2] mark(U61(tt, X2, X3)) -> a__U61(tt, X2, X3) [2] mark(U61(s(X102), X2, X3)) -> a__U61(s(mark(X102)), X2, X3) [2] mark(U61(nil, X2, X3)) -> a__U61(nil, X2, X3) [2] mark(U62(zeros, X2)) -> a__U62(a__zeros, X2) [2] mark(U62(U11(X103), X2)) -> a__U62(a__U11(mark(X103)), X2) [2] mark(U62(U21(X104), X2)) -> a__U62(a__U21(mark(X104)), X2) [2] mark(U62(U31(X105), X2)) -> a__U62(a__U31(mark(X105)), X2) [2] mark(U62(U41(X149, X246), X2)) -> a__U62(a__U41(mark(X149), X246), X2) [2] mark(U62(U42(X106), X2)) -> a__U62(a__U42(mark(X106)), X2) [2] mark(U62(isNatIList(X107), X2)) -> a__U62(a__isNatIList(X107), X2) [2] mark(U62(U51(X150, X247), X2)) -> a__U62(a__U51(mark(X150), X247), X2) [2] mark(U62(U52(X108), X2)) -> a__U62(a__U52(mark(X108)), X2) [2] mark(U62(isNatList(X109), X2)) -> a__U62(a__isNatList(X109), X2) [2] mark(U62(U61(X151, X248, X317), X2)) -> a__U62(a__U61(mark(X151), X248, X317), X2) [2] mark(U62(U62(X152, X249), X2)) -> a__U62(a__U62(mark(X152), X249), X2) [2] mark(U62(isNat(X153), X2)) -> a__U62(a__isNat(X153), X2) [2] mark(U62(length(X154), X2)) -> a__U62(a__length(mark(X154)), X2) [2] mark(U62(cons(X155, X250), X2)) -> a__U62(cons(mark(X155), X250), X2) [2] mark(U62(0, X2)) -> a__U62(0, X2) [2] mark(U62(tt, X2)) -> a__U62(tt, X2) [2] mark(U62(s(X156), X2)) -> a__U62(s(mark(X156)), X2) [2] mark(U62(nil, X2)) -> a__U62(nil, X2) [2] mark(isNat(X)) -> a__isNat(X) [1] mark(length(zeros)) -> a__length(a__zeros) [2] mark(length(U11(X157))) -> a__length(a__U11(mark(X157))) [2] mark(length(U21(X158))) -> a__length(a__U21(mark(X158))) [2] mark(length(U31(X159))) -> a__length(a__U31(mark(X159))) [2] mark(length(U41(X160, X251))) -> a__length(a__U41(mark(X160), X251)) [2] mark(length(U42(X161))) -> a__length(a__U42(mark(X161))) [2] mark(length(isNatIList(X162))) -> a__length(a__isNatIList(X162)) [2] mark(length(U51(X163, X252))) -> a__length(a__U51(mark(X163), X252)) [2] mark(length(U52(X164))) -> a__length(a__U52(mark(X164))) [2] mark(length(isNatList(X165))) -> a__length(a__isNatList(X165)) [2] mark(length(U61(X166, X253, X318))) -> a__length(a__U61(mark(X166), X253, X318)) [2] mark(length(U62(X167, X254))) -> a__length(a__U62(mark(X167), X254)) [2] mark(length(isNat(X168))) -> a__length(a__isNat(X168)) [2] mark(length(length(X169))) -> a__length(a__length(mark(X169))) [2] mark(length(cons(X170, X255))) -> a__length(cons(mark(X170), X255)) [2] mark(length(0)) -> a__length(0) [2] mark(length(tt)) -> a__length(tt) [2] mark(length(s(X171))) -> a__length(s(mark(X171))) [2] mark(length(nil)) -> a__length(nil) [2] mark(cons(X1, X2)) -> cons(mark(X1), X2) [1] mark(0) -> 0 [1] mark(tt) -> tt [1] mark(s(X)) -> s(mark(X)) [1] mark(nil) -> nil [1] a__zeros -> zeros [1] a__U11(X) -> U11(X) [1] a__U21(X) -> U21(X) [1] a__U31(X) -> U31(X) [1] a__U41(X1, X2) -> U41(X1, X2) [1] a__U42(X) -> U42(X) [1] a__isNatIList(X) -> isNatIList(X) [1] a__U51(X1, X2) -> U51(X1, X2) [1] a__U52(X) -> U52(X) [1] a__isNatList(X) -> isNatList(X) [1] a__U61(X1, X2, X3) -> U61(X1, X2, X3) [1] a__U62(X1, X2) -> U62(X1, X2) [1] a__isNat(X) -> isNat(X) [1] a__length(X) -> length(X) [1] The TRS has the following type information: a__zeros :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat cons :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat 0 :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat zeros :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat a__U11 :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat tt :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat a__U21 :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat a__U31 :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat a__U41 :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat a__U42 :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat a__isNatIList :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat a__U51 :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat a__U52 :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat a__isNatList :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat a__U61 :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat a__U62 :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat a__isNat :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat s :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat a__length :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat mark :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat length :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat nil :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat U11 :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat U21 :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat U31 :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat U41 :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat U42 :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat isNatIList :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat U51 :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat U52 :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat isNatList :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat U61 :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat U62 :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat isNat :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat Rewrite Strategy: INNERMOST ---------------------------------------- (13) CpxTypedWeightedTrsToRntsProof (UPPER BOUND(ID)) Transformed the TRS into an over-approximating RNTS by (improved) Size Abstraction. The constant constructors are abstracted as follows: 0 => 0 zeros => 3 tt => 2 nil => 1 ---------------------------------------- (14) Obligation: Complexity RNTS consisting of the following rules: a__U11(z) -{ 1 }-> 2 :|: z = 2 a__U11(z) -{ 1 }-> 1 + X :|: X >= 0, z = X a__U21(z) -{ 1 }-> 2 :|: z = 2 a__U21(z) -{ 1 }-> 1 + X :|: X >= 0, z = X a__U31(z) -{ 1 }-> 2 :|: z = 2 a__U31(z) -{ 1 }-> 1 + X :|: X >= 0, z = X a__U41(z, z') -{ 2 }-> a__U42(a__U41(a__isNat(V1'), V2')) :|: z = 2, z' = 1 + V1' + V2', V2' >= 0, V1' >= 0 a__U41(z, z') -{ 2 }-> a__U42(a__U31(a__isNatList(V2))) :|: z = 2, z' = V2, V2 >= 0 a__U41(z, z') -{ 2 }-> a__U42(2) :|: z = 2, z' = 3 a__U41(z, z') -{ 2 }-> a__U42(1 + V2) :|: z = 2, z' = V2, V2 >= 0 a__U41(z, z') -{ 1 }-> 1 + X1 + X2 :|: X1 >= 0, X2 >= 0, z = X1, z' = X2 a__U42(z) -{ 1 }-> 2 :|: z = 2 a__U42(z) -{ 1 }-> 1 + X :|: X >= 0, z = X a__U51(z, z') -{ 2 }-> a__U52(a__U51(a__isNat(V1''), V2'')) :|: z = 2, V1'' >= 0, V2'' >= 0, z' = 1 + V1'' + V2'' a__U51(z, z') -{ 2 }-> a__U52(2) :|: z = 2, z' = 1 a__U51(z, z') -{ 2 }-> a__U52(1 + V2) :|: z = 2, z' = V2, V2 >= 0 a__U51(z, z') -{ 1 }-> 1 + X1 + X2 :|: X1 >= 0, X2 >= 0, z = X1, z' = X2 a__U52(z) -{ 1 }-> 2 :|: z = 2 a__U52(z) -{ 1 }-> 1 + X :|: X >= 0, z = X a__U61(z, z', z'') -{ 2 }-> a__U62(a__U21(a__isNat(V12)), L) :|: z = 2, z'' = 1 + V12, V12 >= 0, L >= 0, z' = L a__U61(z, z', z'') -{ 2 }-> a__U62(a__U11(a__isNatList(V11)), L) :|: z = 2, z'' = 1 + V11, V11 >= 0, L >= 0, z' = L a__U61(z, z', z'') -{ 2 }-> a__U62(2, L) :|: z = 2, z'' = 0, L >= 0, z' = L a__U61(z, z', z'') -{ 2 }-> a__U62(1 + N, L) :|: z = 2, L >= 0, z'' = N, z' = L, N >= 0 a__U61(z, z', z'') -{ 1 }-> 1 + X1 + X2 + X3 :|: X1 >= 0, X3 >= 0, X2 >= 0, z = X1, z' = X2, z'' = X3 a__U62(z, z') -{ 2 }-> 1 + a__length(a__zeros) :|: z = 2, z' = 3 a__U62(z, z') -{ 2 }-> 1 + a__length(a__length(mark(X10))) :|: z = 2, z' = 1 + X10, X10 >= 0 a__U62(z, z') -{ 2 }-> 1 + a__length(a__isNatList(X8)) :|: z = 2, X8 >= 0, z' = 1 + X8 a__U62(z, z') -{ 2 }-> 1 + a__length(a__isNatIList(X6)) :|: z = 2, X6 >= 0, z' = 1 + X6 a__U62(z, z') -{ 2 }-> 1 + a__length(a__isNat(X9)) :|: z = 2, X9 >= 0, z' = 1 + X9 a__U62(z, z') -{ 2 }-> 1 + a__length(a__U62(mark(X12), X22)) :|: z = 2, z' = 1 + X12 + X22, X12 >= 0, X22 >= 0 a__U62(z, z') -{ 2 }-> 1 + a__length(a__U61(mark(X11), X21, X3')) :|: z = 2, X3' >= 0, z' = 1 + X11 + X21 + X3', X11 >= 0, X21 >= 0 a__U62(z, z') -{ 2 }-> 1 + a__length(a__U52(mark(X7))) :|: z = 2, X7 >= 0, z' = 1 + X7 a__U62(z, z') -{ 2 }-> 1 + a__length(a__U51(mark(X1''), X2'')) :|: z = 2, z' = 1 + X1'' + X2'', X1'' >= 0, X2'' >= 0 a__U62(z, z') -{ 2 }-> 1 + a__length(a__U42(mark(X5))) :|: z = 2, X5 >= 0, z' = 1 + X5 a__U62(z, z') -{ 2 }-> 1 + a__length(a__U41(mark(X1'), X2')) :|: z = 2, z' = 1 + X1' + X2', X2' >= 0, X1' >= 0 a__U62(z, z') -{ 2 }-> 1 + a__length(a__U31(mark(X4))) :|: z = 2, z' = 1 + X4, X4 >= 0 a__U62(z, z') -{ 2 }-> 1 + a__length(a__U21(mark(X''))) :|: z = 2, z' = 1 + X'', X'' >= 0 a__U62(z, z') -{ 2 }-> 1 + a__length(a__U11(mark(X'))) :|: z = 2, X' >= 0, z' = 1 + X' a__U62(z, z') -{ 2 }-> 1 + a__length(2) :|: z = 2, z' = 2 a__U62(z, z') -{ 2 }-> 1 + a__length(1) :|: z = 2, z' = 1 a__U62(z, z') -{ 2 }-> 1 + a__length(0) :|: z = 2, z' = 0 a__U62(z, z') -{ 2 }-> 1 + a__length(1 + mark(X14)) :|: z = 2, z' = 1 + X14, X14 >= 0 a__U62(z, z') -{ 2 }-> 1 + a__length(1 + mark(X13) + X23) :|: z = 2, X13 >= 0, X23 >= 0, z' = 1 + X13 + X23 a__U62(z, z') -{ 1 }-> 1 + X1 + X2 :|: X1 >= 0, X2 >= 0, z = X1, z' = X2 a__isNat(z) -{ 2 }-> a__U21(a__U21(a__isNat(V15))) :|: z = 1 + (1 + V15), V15 >= 0 a__isNat(z) -{ 2 }-> a__U21(a__U11(a__isNatList(V14))) :|: V14 >= 0, z = 1 + (1 + V14) a__isNat(z) -{ 2 }-> a__U21(2) :|: z = 1 + 0 a__isNat(z) -{ 2 }-> a__U21(1 + V1) :|: z = 1 + V1, V1 >= 0 a__isNat(z) -{ 2 }-> a__U11(a__U51(a__isNat(V13), V21)) :|: z = 1 + (1 + V13 + V21), V21 >= 0, V13 >= 0 a__isNat(z) -{ 2 }-> a__U11(2) :|: z = 1 + 1 a__isNat(z) -{ 2 }-> a__U11(1 + V1) :|: z = 1 + V1, V1 >= 0 a__isNat(z) -{ 1 }-> 2 :|: z = 0 a__isNat(z) -{ 1 }-> 1 + X :|: X >= 0, z = X a__isNatIList(z) -{ 2 }-> a__U41(a__U21(a__isNat(V18)), V2) :|: V18 >= 0, z = 1 + (1 + V18) + V2, V2 >= 0 a__isNatIList(z) -{ 2 }-> a__U41(a__U11(a__isNatList(V17)), V2) :|: z = 1 + (1 + V17) + V2, V2 >= 0, V17 >= 0 a__isNatIList(z) -{ 2 }-> a__U41(2, V2) :|: V2 >= 0, z = 1 + 0 + V2 a__isNatIList(z) -{ 2 }-> a__U41(1 + V1, V2) :|: V1 >= 0, V2 >= 0, z = 1 + V1 + V2 a__isNatIList(z) -{ 2 }-> a__U31(a__U51(a__isNat(V16), V22)) :|: z = 1 + V16 + V22, V22 >= 0, V16 >= 0 a__isNatIList(z) -{ 2 }-> a__U31(2) :|: z = 1 a__isNatIList(z) -{ 2 }-> a__U31(1 + V) :|: z = V, V >= 0 a__isNatIList(z) -{ 1 }-> 2 :|: z = 3 a__isNatIList(z) -{ 1 }-> 1 + X :|: X >= 0, z = X a__isNatList(z) -{ 2 }-> a__U51(a__U21(a__isNat(V110)), V2) :|: V110 >= 0, V2 >= 0, z = 1 + (1 + V110) + V2 a__isNatList(z) -{ 2 }-> a__U51(a__U11(a__isNatList(V19)), V2) :|: V19 >= 0, V2 >= 0, z = 1 + (1 + V19) + V2 a__isNatList(z) -{ 2 }-> a__U51(2, V2) :|: V2 >= 0, z = 1 + 0 + V2 a__isNatList(z) -{ 2 }-> a__U51(1 + V1, V2) :|: V1 >= 0, V2 >= 0, z = 1 + V1 + V2 a__isNatList(z) -{ 1 }-> 2 :|: z = 1 a__isNatList(z) -{ 1 }-> 1 + X :|: X >= 0, z = X a__length(z) -{ 2 }-> a__U61(a__U51(a__isNat(V111), V23), 1 + V111 + V23, N) :|: V23 >= 0, z = 1 + N + (1 + V111 + V23), V111 >= 0, N >= 0 a__length(z) -{ 2 }-> a__U61(2, 1, N) :|: z = 1 + N + 1, N >= 0 a__length(z) -{ 2 }-> a__U61(1 + L, L, N) :|: z = 1 + N + L, L >= 0, N >= 0 a__length(z) -{ 1 }-> 0 :|: z = 1 a__length(z) -{ 1 }-> 1 + X :|: X >= 0, z = X a__zeros -{ 1 }-> 3 :|: a__zeros -{ 1 }-> 1 + 0 + 3 :|: mark(z) -{ 1 }-> a__zeros :|: z = 3 mark(z) -{ 2 }-> a__length(a__zeros) :|: z = 1 + 3 mark(z) -{ 2 }-> a__length(a__length(mark(X169))) :|: z = 1 + (1 + X169), X169 >= 0 mark(z) -{ 2 }-> a__length(a__isNatList(X165)) :|: X165 >= 0, z = 1 + (1 + X165) mark(z) -{ 2 }-> a__length(a__isNatIList(X162)) :|: X162 >= 0, z = 1 + (1 + X162) mark(z) -{ 2 }-> a__length(a__isNat(X168)) :|: X168 >= 0, z = 1 + (1 + X168) mark(z) -{ 2 }-> a__length(a__U62(mark(X167), X254)) :|: z = 1 + (1 + X167 + X254), X254 >= 0, X167 >= 0 mark(z) -{ 2 }-> a__length(a__U61(mark(X166), X253, X318)) :|: X166 >= 0, z = 1 + (1 + X166 + X253 + X318), X253 >= 0, X318 >= 0 mark(z) -{ 2 }-> a__length(a__U52(mark(X164))) :|: X164 >= 0, z = 1 + (1 + X164) mark(z) -{ 2 }-> a__length(a__U51(mark(X163), X252)) :|: X163 >= 0, z = 1 + (1 + X163 + X252), X252 >= 0 mark(z) -{ 2 }-> a__length(a__U42(mark(X161))) :|: z = 1 + (1 + X161), X161 >= 0 mark(z) -{ 2 }-> a__length(a__U41(mark(X160), X251)) :|: X251 >= 0, z = 1 + (1 + X160 + X251), X160 >= 0 mark(z) -{ 2 }-> a__length(a__U31(mark(X159))) :|: z = 1 + (1 + X159), X159 >= 0 mark(z) -{ 2 }-> a__length(a__U21(mark(X158))) :|: X158 >= 0, z = 1 + (1 + X158) mark(z) -{ 2 }-> a__length(a__U11(mark(X157))) :|: z = 1 + (1 + X157), X157 >= 0 mark(z) -{ 2 }-> a__length(2) :|: z = 1 + 2 mark(z) -{ 2 }-> a__length(1) :|: z = 1 + 1 mark(z) -{ 2 }-> a__length(0) :|: z = 1 + 0 mark(z) -{ 2 }-> a__length(1 + mark(X171)) :|: z = 1 + (1 + X171), X171 >= 0 mark(z) -{ 2 }-> a__length(1 + mark(X170) + X255) :|: X255 >= 0, z = 1 + (1 + X170 + X255), X170 >= 0 mark(z) -{ 1 }-> a__isNatList(X) :|: z = 1 + X, X >= 0 mark(z) -{ 1 }-> a__isNatIList(X) :|: z = 1 + X, X >= 0 mark(z) -{ 1 }-> a__isNat(X) :|: z = 1 + X, X >= 0 mark(z) -{ 2 }-> a__U62(a__zeros, X2) :|: X2 >= 0, z = 1 + 3 + X2 mark(z) -{ 2 }-> a__U62(a__length(mark(X154)), X2) :|: X154 >= 0, z = 1 + (1 + X154) + X2, X2 >= 0 mark(z) -{ 2 }-> a__U62(a__isNatList(X109), X2) :|: X2 >= 0, z = 1 + (1 + X109) + X2, X109 >= 0 mark(z) -{ 2 }-> a__U62(a__isNatIList(X107), X2) :|: X107 >= 0, z = 1 + (1 + X107) + X2, X2 >= 0 mark(z) -{ 2 }-> a__U62(a__isNat(X153), X2) :|: z = 1 + (1 + X153) + X2, X153 >= 0, X2 >= 0 mark(z) -{ 2 }-> a__U62(a__U62(mark(X152), X249), X2) :|: X152 >= 0, z = 1 + (1 + X152 + X249) + X2, X249 >= 0, X2 >= 0 mark(z) -{ 2 }-> a__U62(a__U61(mark(X151), X248, X317), X2) :|: X248 >= 0, z = 1 + (1 + X151 + X248 + X317) + X2, X2 >= 0, X317 >= 0, X151 >= 0 mark(z) -{ 2 }-> a__U62(a__U52(mark(X108)), X2) :|: z = 1 + (1 + X108) + X2, X2 >= 0, X108 >= 0 mark(z) -{ 2 }-> a__U62(a__U51(mark(X150), X247), X2) :|: z = 1 + (1 + X150 + X247) + X2, X150 >= 0, X247 >= 0, X2 >= 0 mark(z) -{ 2 }-> a__U62(a__U42(mark(X106)), X2) :|: X106 >= 0, z = 1 + (1 + X106) + X2, X2 >= 0 mark(z) -{ 2 }-> a__U62(a__U41(mark(X149), X246), X2) :|: X149 >= 0, X246 >= 0, z = 1 + (1 + X149 + X246) + X2, X2 >= 0 mark(z) -{ 2 }-> a__U62(a__U31(mark(X105)), X2) :|: X105 >= 0, z = 1 + (1 + X105) + X2, X2 >= 0 mark(z) -{ 2 }-> a__U62(a__U21(mark(X104)), X2) :|: X104 >= 0, z = 1 + (1 + X104) + X2, X2 >= 0 mark(z) -{ 2 }-> a__U62(a__U11(mark(X103)), X2) :|: X103 >= 0, z = 1 + (1 + X103) + X2, X2 >= 0 mark(z) -{ 2 }-> a__U62(2, X2) :|: z = 1 + 2 + X2, X2 >= 0 mark(z) -{ 2 }-> a__U62(1, X2) :|: z = 1 + 1 + X2, X2 >= 0 mark(z) -{ 2 }-> a__U62(0, X2) :|: z = 1 + 0 + X2, X2 >= 0 mark(z) -{ 2 }-> a__U62(1 + mark(X156), X2) :|: X156 >= 0, z = 1 + (1 + X156) + X2, X2 >= 0 mark(z) -{ 2 }-> a__U62(1 + mark(X155) + X250, X2) :|: X155 >= 0, X2 >= 0, z = 1 + (1 + X155 + X250) + X2, X250 >= 0 mark(z) -{ 2 }-> a__U61(a__zeros, X2, X3) :|: z = 1 + 3 + X2 + X3, X3 >= 0, X2 >= 0 mark(z) -{ 2 }-> a__U61(a__length(mark(X101)), X2, X3) :|: X3 >= 0, X2 >= 0, z = 1 + (1 + X101) + X2 + X3, X101 >= 0 mark(z) -{ 2 }-> a__U61(a__isNatList(X99), X2, X3) :|: X99 >= 0, X3 >= 0, X2 >= 0, z = 1 + (1 + X99) + X2 + X3 mark(z) -{ 2 }-> a__U61(a__isNatIList(X97), X2, X3) :|: z = 1 + (1 + X97) + X2 + X3, X97 >= 0, X3 >= 0, X2 >= 0 mark(z) -{ 2 }-> a__U61(a__isNat(X100), X2, X3) :|: z = 1 + (1 + X100) + X2 + X3, X3 >= 0, X2 >= 0, X100 >= 0 mark(z) -{ 2 }-> a__U61(a__U62(mark(X147), X244), X2, X3) :|: X244 >= 0, z = 1 + (1 + X147 + X244) + X2 + X3, X147 >= 0, X3 >= 0, X2 >= 0 mark(z) -{ 2 }-> a__U61(a__U61(mark(X146), X243, X316), X2, X3) :|: X146 >= 0, X243 >= 0, X3 >= 0, z = 1 + (1 + X146 + X243 + X316) + X2 + X3, X2 >= 0, X316 >= 0 mark(z) -{ 2 }-> a__U61(a__U52(mark(X98)), X2, X3) :|: z = 1 + (1 + X98) + X2 + X3, X98 >= 0, X3 >= 0, X2 >= 0 mark(z) -{ 2 }-> a__U61(a__U51(mark(X145), X242), X2, X3) :|: z = 1 + (1 + X145 + X242) + X2 + X3, X145 >= 0, X242 >= 0, X3 >= 0, X2 >= 0 mark(z) -{ 2 }-> a__U61(a__U42(mark(X96)), X2, X3) :|: X96 >= 0, z = 1 + (1 + X96) + X2 + X3, X3 >= 0, X2 >= 0 mark(z) -{ 2 }-> a__U61(a__U41(mark(X144), X241), X2, X3) :|: X144 >= 0, z = 1 + (1 + X144 + X241) + X2 + X3, X3 >= 0, X241 >= 0, X2 >= 0 mark(z) -{ 2 }-> a__U61(a__U31(mark(X95)), X2, X3) :|: X95 >= 0, X3 >= 0, X2 >= 0, z = 1 + (1 + X95) + X2 + X3 mark(z) -{ 2 }-> a__U61(a__U21(mark(X94)), X2, X3) :|: z = 1 + (1 + X94) + X2 + X3, X3 >= 0, X2 >= 0, X94 >= 0 mark(z) -{ 2 }-> a__U61(a__U11(mark(X93)), X2, X3) :|: z = 1 + (1 + X93) + X2 + X3, X3 >= 0, X2 >= 0, X93 >= 0 mark(z) -{ 2 }-> a__U61(2, X2, X3) :|: z = 1 + 2 + X2 + X3, X3 >= 0, X2 >= 0 mark(z) -{ 2 }-> a__U61(1, X2, X3) :|: z = 1 + 1 + X2 + X3, X3 >= 0, X2 >= 0 mark(z) -{ 2 }-> a__U61(0, X2, X3) :|: z = 1 + 0 + X2 + X3, X3 >= 0, X2 >= 0 mark(z) -{ 2 }-> a__U61(1 + mark(X102), X2, X3) :|: z = 1 + (1 + X102) + X2 + X3, X3 >= 0, X2 >= 0, X102 >= 0 mark(z) -{ 2 }-> a__U61(1 + mark(X148) + X245, X2, X3) :|: X245 >= 0, X3 >= 0, z = 1 + (1 + X148 + X245) + X2 + X3, X148 >= 0, X2 >= 0 mark(z) -{ 2 }-> a__U52(a__zeros) :|: z = 1 + 3 mark(z) -{ 2 }-> a__U52(a__length(mark(X91))) :|: X91 >= 0, z = 1 + (1 + X91) mark(z) -{ 2 }-> a__U52(a__isNatList(X89)) :|: X89 >= 0, z = 1 + (1 + X89) mark(z) -{ 2 }-> a__U52(a__isNatIList(X87)) :|: X87 >= 0, z = 1 + (1 + X87) mark(z) -{ 2 }-> a__U52(a__isNat(X90)) :|: z = 1 + (1 + X90), X90 >= 0 mark(z) -{ 2 }-> a__U52(a__U62(mark(X142), X239)) :|: X239 >= 0, X142 >= 0, z = 1 + (1 + X142 + X239) mark(z) -{ 2 }-> a__U52(a__U61(mark(X141), X238, X315)) :|: X315 >= 0, X238 >= 0, z = 1 + (1 + X141 + X238 + X315), X141 >= 0 mark(z) -{ 2 }-> a__U52(a__U52(mark(X88))) :|: X88 >= 0, z = 1 + (1 + X88) mark(z) -{ 2 }-> a__U52(a__U51(mark(X140), X237)) :|: z = 1 + (1 + X140 + X237), X140 >= 0, X237 >= 0 mark(z) -{ 2 }-> a__U52(a__U42(mark(X86))) :|: z = 1 + (1 + X86), X86 >= 0 mark(z) -{ 2 }-> a__U52(a__U41(mark(X139), X236)) :|: z = 1 + (1 + X139 + X236), X236 >= 0, X139 >= 0 mark(z) -{ 2 }-> a__U52(a__U31(mark(X85))) :|: z = 1 + (1 + X85), X85 >= 0 mark(z) -{ 2 }-> a__U52(a__U21(mark(X84))) :|: z = 1 + (1 + X84), X84 >= 0 mark(z) -{ 2 }-> a__U52(a__U11(mark(X83))) :|: z = 1 + (1 + X83), X83 >= 0 mark(z) -{ 2 }-> a__U52(2) :|: z = 1 + 2 mark(z) -{ 2 }-> a__U52(1) :|: z = 1 + 1 mark(z) -{ 2 }-> a__U52(0) :|: z = 1 + 0 mark(z) -{ 2 }-> a__U52(1 + mark(X92)) :|: X92 >= 0, z = 1 + (1 + X92) mark(z) -{ 2 }-> a__U52(1 + mark(X143) + X240) :|: X240 >= 0, X143 >= 0, z = 1 + (1 + X143 + X240) mark(z) -{ 2 }-> a__U51(a__zeros, X2) :|: X2 >= 0, z = 1 + 3 + X2 mark(z) -{ 2 }-> a__U51(a__length(mark(X81)), X2) :|: X81 >= 0, z = 1 + (1 + X81) + X2, X2 >= 0 mark(z) -{ 2 }-> a__U51(a__isNatList(X79), X2) :|: z = 1 + (1 + X79) + X2, X79 >= 0, X2 >= 0 mark(z) -{ 2 }-> a__U51(a__isNatIList(X77), X2) :|: z = 1 + (1 + X77) + X2, X77 >= 0, X2 >= 0 mark(z) -{ 2 }-> a__U51(a__isNat(X80), X2) :|: X80 >= 0, X2 >= 0, z = 1 + (1 + X80) + X2 mark(z) -{ 2 }-> a__U51(a__U62(mark(X137), X234), X2) :|: z = 1 + (1 + X137 + X234) + X2, X234 >= 0, X137 >= 0, X2 >= 0 mark(z) -{ 2 }-> a__U51(a__U61(mark(X136), X233, X314), X2) :|: X136 >= 0, X233 >= 0, z = 1 + (1 + X136 + X233 + X314) + X2, X314 >= 0, X2 >= 0 mark(z) -{ 2 }-> a__U51(a__U52(mark(X78)), X2) :|: X78 >= 0, z = 1 + (1 + X78) + X2, X2 >= 0 mark(z) -{ 2 }-> a__U51(a__U51(mark(X135), X232), X2) :|: X135 >= 0, z = 1 + (1 + X135 + X232) + X2, X232 >= 0, X2 >= 0 mark(z) -{ 2 }-> a__U51(a__U42(mark(X76)), X2) :|: X76 >= 0, X2 >= 0, z = 1 + (1 + X76) + X2 mark(z) -{ 2 }-> a__U51(a__U41(mark(X134), X231), X2) :|: z = 1 + (1 + X134 + X231) + X2, X134 >= 0, X231 >= 0, X2 >= 0 mark(z) -{ 2 }-> a__U51(a__U31(mark(X75)), X2) :|: X75 >= 0, z = 1 + (1 + X75) + X2, X2 >= 0 mark(z) -{ 2 }-> a__U51(a__U21(mark(X74)), X2) :|: z = 1 + (1 + X74) + X2, X2 >= 0, X74 >= 0 mark(z) -{ 2 }-> a__U51(a__U11(mark(X73)), X2) :|: X73 >= 0, z = 1 + (1 + X73) + X2, X2 >= 0 mark(z) -{ 2 }-> a__U51(2, X2) :|: z = 1 + 2 + X2, X2 >= 0 mark(z) -{ 2 }-> a__U51(1, X2) :|: z = 1 + 1 + X2, X2 >= 0 mark(z) -{ 2 }-> a__U51(0, X2) :|: z = 1 + 0 + X2, X2 >= 0 mark(z) -{ 2 }-> a__U51(1 + mark(X82), X2) :|: X82 >= 0, z = 1 + (1 + X82) + X2, X2 >= 0 mark(z) -{ 2 }-> a__U51(1 + mark(X138) + X235, X2) :|: z = 1 + (1 + X138 + X235) + X2, X235 >= 0, X2 >= 0, X138 >= 0 mark(z) -{ 2 }-> a__U42(a__zeros) :|: z = 1 + 3 mark(z) -{ 2 }-> a__U42(a__length(mark(X71))) :|: X71 >= 0, z = 1 + (1 + X71) mark(z) -{ 2 }-> a__U42(a__isNatList(X69)) :|: z = 1 + (1 + X69), X69 >= 0 mark(z) -{ 2 }-> a__U42(a__isNatIList(X67)) :|: X67 >= 0, z = 1 + (1 + X67) mark(z) -{ 2 }-> a__U42(a__isNat(X70)) :|: X70 >= 0, z = 1 + (1 + X70) mark(z) -{ 2 }-> a__U42(a__U62(mark(X132), X229)) :|: X229 >= 0, z = 1 + (1 + X132 + X229), X132 >= 0 mark(z) -{ 2 }-> a__U42(a__U61(mark(X131), X228, X313)) :|: z = 1 + (1 + X131 + X228 + X313), X313 >= 0, X228 >= 0, X131 >= 0 mark(z) -{ 2 }-> a__U42(a__U52(mark(X68))) :|: z = 1 + (1 + X68), X68 >= 0 mark(z) -{ 2 }-> a__U42(a__U51(mark(X130), X227)) :|: z = 1 + (1 + X130 + X227), X227 >= 0, X130 >= 0 mark(z) -{ 2 }-> a__U42(a__U42(mark(X66))) :|: z = 1 + (1 + X66), X66 >= 0 mark(z) -{ 2 }-> a__U42(a__U41(mark(X129), X226)) :|: X129 >= 0, X226 >= 0, z = 1 + (1 + X129 + X226) mark(z) -{ 2 }-> a__U42(a__U31(mark(X65))) :|: z = 1 + (1 + X65), X65 >= 0 mark(z) -{ 2 }-> a__U42(a__U21(mark(X64))) :|: z = 1 + (1 + X64), X64 >= 0 mark(z) -{ 2 }-> a__U42(a__U11(mark(X63))) :|: z = 1 + (1 + X63), X63 >= 0 mark(z) -{ 2 }-> a__U42(2) :|: z = 1 + 2 mark(z) -{ 2 }-> a__U42(1) :|: z = 1 + 1 mark(z) -{ 2 }-> a__U42(0) :|: z = 1 + 0 mark(z) -{ 2 }-> a__U42(1 + mark(X72)) :|: X72 >= 0, z = 1 + (1 + X72) mark(z) -{ 2 }-> a__U42(1 + mark(X133) + X230) :|: X133 >= 0, z = 1 + (1 + X133 + X230), X230 >= 0 mark(z) -{ 2 }-> a__U41(a__zeros, X2) :|: X2 >= 0, z = 1 + 3 + X2 mark(z) -{ 2 }-> a__U41(a__length(mark(X61)), X2) :|: X61 >= 0, z = 1 + (1 + X61) + X2, X2 >= 0 mark(z) -{ 2 }-> a__U41(a__isNatList(X59), X2) :|: z = 1 + (1 + X59) + X2, X59 >= 0, X2 >= 0 mark(z) -{ 2 }-> a__U41(a__isNatIList(X57), X2) :|: X57 >= 0, z = 1 + (1 + X57) + X2, X2 >= 0 mark(z) -{ 2 }-> a__U41(a__isNat(X60), X2) :|: X60 >= 0, X2 >= 0, z = 1 + (1 + X60) + X2 mark(z) -{ 2 }-> a__U41(a__U62(mark(X127), X224), X2) :|: X224 >= 0, z = 1 + (1 + X127 + X224) + X2, X127 >= 0, X2 >= 0 mark(z) -{ 2 }-> a__U41(a__U61(mark(X126), X223, X312), X2) :|: X223 >= 0, z = 1 + (1 + X126 + X223 + X312) + X2, X312 >= 0, X126 >= 0, X2 >= 0 mark(z) -{ 2 }-> a__U41(a__U52(mark(X58)), X2) :|: z = 1 + (1 + X58) + X2, X58 >= 0, X2 >= 0 mark(z) -{ 2 }-> a__U41(a__U51(mark(X125), X222), X2) :|: X222 >= 0, z = 1 + (1 + X125 + X222) + X2, X125 >= 0, X2 >= 0 mark(z) -{ 2 }-> a__U41(a__U42(mark(X56)), X2) :|: z = 1 + (1 + X56) + X2, X56 >= 0, X2 >= 0 mark(z) -{ 2 }-> a__U41(a__U41(mark(X124), X221), X2) :|: X124 >= 0, z = 1 + (1 + X124 + X221) + X2, X221 >= 0, X2 >= 0 mark(z) -{ 2 }-> a__U41(a__U31(mark(X55)), X2) :|: X2 >= 0, z = 1 + (1 + X55) + X2, X55 >= 0 mark(z) -{ 2 }-> a__U41(a__U21(mark(X54)), X2) :|: z = 1 + (1 + X54) + X2, X2 >= 0, X54 >= 0 mark(z) -{ 2 }-> a__U41(a__U11(mark(X53)), X2) :|: z = 1 + (1 + X53) + X2, X2 >= 0, X53 >= 0 mark(z) -{ 2 }-> a__U41(2, X2) :|: z = 1 + 2 + X2, X2 >= 0 mark(z) -{ 2 }-> a__U41(1, X2) :|: z = 1 + 1 + X2, X2 >= 0 mark(z) -{ 2 }-> a__U41(0, X2) :|: z = 1 + 0 + X2, X2 >= 0 mark(z) -{ 2 }-> a__U41(1 + mark(X62), X2) :|: z = 1 + (1 + X62) + X2, X62 >= 0, X2 >= 0 mark(z) -{ 2 }-> a__U41(1 + mark(X128) + X225, X2) :|: X128 >= 0, X225 >= 0, z = 1 + (1 + X128 + X225) + X2, X2 >= 0 mark(z) -{ 2 }-> a__U31(a__zeros) :|: z = 1 + 3 mark(z) -{ 2 }-> a__U31(a__length(mark(X51))) :|: X51 >= 0, z = 1 + (1 + X51) mark(z) -{ 2 }-> a__U31(a__isNatList(X49)) :|: z = 1 + (1 + X49), X49 >= 0 mark(z) -{ 2 }-> a__U31(a__isNatIList(X47)) :|: X47 >= 0, z = 1 + (1 + X47) mark(z) -{ 2 }-> a__U31(a__isNat(X50)) :|: X50 >= 0, z = 1 + (1 + X50) mark(z) -{ 2 }-> a__U31(a__U62(mark(X122), X219)) :|: z = 1 + (1 + X122 + X219), X122 >= 0, X219 >= 0 mark(z) -{ 2 }-> a__U31(a__U61(mark(X121), X218, X311)) :|: X311 >= 0, z = 1 + (1 + X121 + X218 + X311), X218 >= 0, X121 >= 0 mark(z) -{ 2 }-> a__U31(a__U52(mark(X48))) :|: z = 1 + (1 + X48), X48 >= 0 mark(z) -{ 2 }-> a__U31(a__U51(mark(X120), X217)) :|: X120 >= 0, z = 1 + (1 + X120 + X217), X217 >= 0 mark(z) -{ 2 }-> a__U31(a__U42(mark(X46))) :|: X46 >= 0, z = 1 + (1 + X46) mark(z) -{ 2 }-> a__U31(a__U41(mark(X119), X216)) :|: X216 >= 0, z = 1 + (1 + X119 + X216), X119 >= 0 mark(z) -{ 2 }-> a__U31(a__U31(mark(X45))) :|: X45 >= 0, z = 1 + (1 + X45) mark(z) -{ 2 }-> a__U31(a__U21(mark(X44))) :|: z = 1 + (1 + X44), X44 >= 0 mark(z) -{ 2 }-> a__U31(a__U11(mark(X43))) :|: X43 >= 0, z = 1 + (1 + X43) mark(z) -{ 2 }-> a__U31(2) :|: z = 1 + 2 mark(z) -{ 2 }-> a__U31(1) :|: z = 1 + 1 mark(z) -{ 2 }-> a__U31(0) :|: z = 1 + 0 mark(z) -{ 2 }-> a__U31(1 + mark(X52)) :|: z = 1 + (1 + X52), X52 >= 0 mark(z) -{ 2 }-> a__U31(1 + mark(X123) + X220) :|: z = 1 + (1 + X123 + X220), X123 >= 0, X220 >= 0 mark(z) -{ 2 }-> a__U21(a__zeros) :|: z = 1 + 3 mark(z) -{ 2 }-> a__U21(a__length(mark(X41))) :|: X41 >= 0, z = 1 + (1 + X41) mark(z) -{ 2 }-> a__U21(a__isNatList(X39)) :|: z = 1 + (1 + X39), X39 >= 0 mark(z) -{ 2 }-> a__U21(a__isNatIList(X37)) :|: X37 >= 0, z = 1 + (1 + X37) mark(z) -{ 2 }-> a__U21(a__isNat(X40)) :|: z = 1 + (1 + X40), X40 >= 0 mark(z) -{ 2 }-> a__U21(a__U62(mark(X117), X214)) :|: z = 1 + (1 + X117 + X214), X117 >= 0, X214 >= 0 mark(z) -{ 2 }-> a__U21(a__U61(mark(X116), X213, X310)) :|: X213 >= 0, z = 1 + (1 + X116 + X213 + X310), X116 >= 0, X310 >= 0 mark(z) -{ 2 }-> a__U21(a__U52(mark(X38))) :|: X38 >= 0, z = 1 + (1 + X38) mark(z) -{ 2 }-> a__U21(a__U51(mark(X115), X212)) :|: X212 >= 0, z = 1 + (1 + X115 + X212), X115 >= 0 mark(z) -{ 2 }-> a__U21(a__U42(mark(X36))) :|: X36 >= 0, z = 1 + (1 + X36) mark(z) -{ 2 }-> a__U21(a__U41(mark(X114), X211)) :|: X114 >= 0, z = 1 + (1 + X114 + X211), X211 >= 0 mark(z) -{ 2 }-> a__U21(a__U31(mark(X35))) :|: z = 1 + (1 + X35), X35 >= 0 mark(z) -{ 2 }-> a__U21(a__U21(mark(X34))) :|: z = 1 + (1 + X34), X34 >= 0 mark(z) -{ 2 }-> a__U21(a__U11(mark(X33))) :|: X33 >= 0, z = 1 + (1 + X33) mark(z) -{ 2 }-> a__U21(2) :|: z = 1 + 2 mark(z) -{ 2 }-> a__U21(1) :|: z = 1 + 1 mark(z) -{ 2 }-> a__U21(0) :|: z = 1 + 0 mark(z) -{ 2 }-> a__U21(1 + mark(X42)) :|: X42 >= 0, z = 1 + (1 + X42) mark(z) -{ 2 }-> a__U21(1 + mark(X118) + X215) :|: X118 >= 0, X215 >= 0, z = 1 + (1 + X118 + X215) mark(z) -{ 2 }-> a__U11(a__zeros) :|: z = 1 + 3 mark(z) -{ 2 }-> a__U11(a__length(mark(X31))) :|: X31 >= 0, z = 1 + (1 + X31) mark(z) -{ 2 }-> a__U11(a__isNatList(X27)) :|: X27 >= 0, z = 1 + (1 + X27) mark(z) -{ 2 }-> a__U11(a__isNatIList(X20)) :|: z = 1 + (1 + X20), X20 >= 0 mark(z) -{ 2 }-> a__U11(a__isNat(X30)) :|: z = 1 + (1 + X30), X30 >= 0 mark(z) -{ 2 }-> a__U11(a__U62(mark(X112), X29)) :|: z = 1 + (1 + X112 + X29), X29 >= 0, X112 >= 0 mark(z) -{ 2 }-> a__U11(a__U61(mark(X111), X28, X3'')) :|: X28 >= 0, X3'' >= 0, z = 1 + (1 + X111 + X28 + X3''), X111 >= 0 mark(z) -{ 2 }-> a__U11(a__U52(mark(X26))) :|: X26 >= 0, z = 1 + (1 + X26) mark(z) -{ 2 }-> a__U11(a__U51(mark(X110), X25)) :|: X110 >= 0, z = 1 + (1 + X110 + X25), X25 >= 0 mark(z) -{ 2 }-> a__U11(a__U42(mark(X19))) :|: X19 >= 0, z = 1 + (1 + X19) mark(z) -{ 2 }-> a__U11(a__U41(mark(X18), X24)) :|: X18 >= 0, z = 1 + (1 + X18 + X24), X24 >= 0 mark(z) -{ 2 }-> a__U11(a__U31(mark(X17))) :|: X17 >= 0, z = 1 + (1 + X17) mark(z) -{ 2 }-> a__U11(a__U21(mark(X16))) :|: X16 >= 0, z = 1 + (1 + X16) mark(z) -{ 2 }-> a__U11(a__U11(mark(X15))) :|: z = 1 + (1 + X15), X15 >= 0 mark(z) -{ 2 }-> a__U11(2) :|: z = 1 + 2 mark(z) -{ 2 }-> a__U11(1) :|: z = 1 + 1 mark(z) -{ 2 }-> a__U11(0) :|: z = 1 + 0 mark(z) -{ 2 }-> a__U11(1 + mark(X32)) :|: X32 >= 0, z = 1 + (1 + X32) mark(z) -{ 2 }-> a__U11(1 + mark(X113) + X210) :|: X113 >= 0, z = 1 + (1 + X113 + X210), X210 >= 0 mark(z) -{ 1 }-> 2 :|: z = 2 mark(z) -{ 1 }-> 1 :|: z = 1 mark(z) -{ 1 }-> 0 :|: z = 0 mark(z) -{ 1 }-> 1 + mark(X) :|: z = 1 + X, X >= 0 mark(z) -{ 1 }-> 1 + mark(X1) + X2 :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2 ---------------------------------------- (15) InliningProof (UPPER BOUND(ID)) Inlined the following terminating rules on right-hand sides where appropriate: a__zeros -{ 1 }-> 3 :|: a__zeros -{ 1 }-> 1 + 0 + 3 :|: a__U11(z) -{ 1 }-> 1 + X :|: X >= 0, z = X a__U11(z) -{ 1 }-> 2 :|: z = 2 a__U21(z) -{ 1 }-> 1 + X :|: X >= 0, z = X a__U21(z) -{ 1 }-> 2 :|: z = 2 a__U31(z) -{ 1 }-> 1 + X :|: X >= 0, z = X a__U31(z) -{ 1 }-> 2 :|: z = 2 a__U42(z) -{ 1 }-> 1 + X :|: X >= 0, z = X a__U42(z) -{ 1 }-> 2 :|: z = 2 a__U52(z) -{ 1 }-> 2 :|: z = 2 a__U52(z) -{ 1 }-> 1 + X :|: X >= 0, z = X ---------------------------------------- (16) Obligation: Complexity RNTS consisting of the following rules: a__U11(z) -{ 1 }-> 2 :|: z = 2 a__U11(z) -{ 1 }-> 1 + X :|: X >= 0, z = X a__U21(z) -{ 1 }-> 2 :|: z = 2 a__U21(z) -{ 1 }-> 1 + X :|: X >= 0, z = X a__U31(z) -{ 1 }-> 2 :|: z = 2 a__U31(z) -{ 1 }-> 1 + X :|: X >= 0, z = X a__U41(z, z') -{ 2 }-> a__U42(a__U41(a__isNat(V1'), V2')) :|: z = 2, z' = 1 + V1' + V2', V2' >= 0, V1' >= 0 a__U41(z, z') -{ 2 }-> a__U42(a__U31(a__isNatList(V2))) :|: z = 2, z' = V2, V2 >= 0 a__U41(z, z') -{ 3 }-> 2 :|: z = 2, z' = 3, 2 = 2 a__U41(z, z') -{ 3 }-> 2 :|: z = 2, z' = V2, V2 >= 0, 1 + V2 = 2 a__U41(z, z') -{ 3 }-> 1 + X :|: z = 2, z' = 3, X >= 0, 2 = X a__U41(z, z') -{ 3 }-> 1 + X :|: z = 2, z' = V2, V2 >= 0, X >= 0, 1 + V2 = X a__U41(z, z') -{ 1 }-> 1 + X1 + X2 :|: X1 >= 0, X2 >= 0, z = X1, z' = X2 a__U42(z) -{ 1 }-> 2 :|: z = 2 a__U42(z) -{ 1 }-> 1 + X :|: X >= 0, z = X a__U51(z, z') -{ 2 }-> a__U52(a__U51(a__isNat(V1''), V2'')) :|: z = 2, V1'' >= 0, V2'' >= 0, z' = 1 + V1'' + V2'' a__U51(z, z') -{ 3 }-> 2 :|: z = 2, z' = 1, 2 = 2 a__U51(z, z') -{ 3 }-> 2 :|: z = 2, z' = V2, V2 >= 0, 1 + V2 = 2 a__U51(z, z') -{ 3 }-> 1 + X :|: z = 2, z' = 1, X >= 0, 2 = X a__U51(z, z') -{ 3 }-> 1 + X :|: z = 2, z' = V2, V2 >= 0, X >= 0, 1 + V2 = X a__U51(z, z') -{ 1 }-> 1 + X1 + X2 :|: X1 >= 0, X2 >= 0, z = X1, z' = X2 a__U52(z) -{ 1 }-> 2 :|: z = 2 a__U52(z) -{ 1 }-> 1 + X :|: X >= 0, z = X a__U61(z, z', z'') -{ 2 }-> a__U62(a__U21(a__isNat(V12)), L) :|: z = 2, z'' = 1 + V12, V12 >= 0, L >= 0, z' = L a__U61(z, z', z'') -{ 2 }-> a__U62(a__U11(a__isNatList(V11)), L) :|: z = 2, z'' = 1 + V11, V11 >= 0, L >= 0, z' = L a__U61(z, z', z'') -{ 2 }-> a__U62(2, L) :|: z = 2, z'' = 0, L >= 0, z' = L a__U61(z, z', z'') -{ 2 }-> a__U62(1 + N, L) :|: z = 2, L >= 0, z'' = N, z' = L, N >= 0 a__U61(z, z', z'') -{ 1 }-> 1 + X1 + X2 + X3 :|: X1 >= 0, X3 >= 0, X2 >= 0, z = X1, z' = X2, z'' = X3 a__U62(z, z') -{ 2 }-> 1 + a__length(a__length(mark(X10))) :|: z = 2, z' = 1 + X10, X10 >= 0 a__U62(z, z') -{ 2 }-> 1 + a__length(a__isNatList(X8)) :|: z = 2, X8 >= 0, z' = 1 + X8 a__U62(z, z') -{ 2 }-> 1 + a__length(a__isNatIList(X6)) :|: z = 2, X6 >= 0, z' = 1 + X6 a__U62(z, z') -{ 2 }-> 1 + a__length(a__isNat(X9)) :|: z = 2, X9 >= 0, z' = 1 + X9 a__U62(z, z') -{ 2 }-> 1 + a__length(a__U62(mark(X12), X22)) :|: z = 2, z' = 1 + X12 + X22, X12 >= 0, X22 >= 0 a__U62(z, z') -{ 2 }-> 1 + a__length(a__U61(mark(X11), X21, X3')) :|: z = 2, X3' >= 0, z' = 1 + X11 + X21 + X3', X11 >= 0, X21 >= 0 a__U62(z, z') -{ 2 }-> 1 + a__length(a__U52(mark(X7))) :|: z = 2, X7 >= 0, z' = 1 + X7 a__U62(z, z') -{ 2 }-> 1 + a__length(a__U51(mark(X1''), X2'')) :|: z = 2, z' = 1 + X1'' + X2'', X1'' >= 0, X2'' >= 0 a__U62(z, z') -{ 2 }-> 1 + a__length(a__U42(mark(X5))) :|: z = 2, X5 >= 0, z' = 1 + X5 a__U62(z, z') -{ 2 }-> 1 + a__length(a__U41(mark(X1'), X2')) :|: z = 2, z' = 1 + X1' + X2', X2' >= 0, X1' >= 0 a__U62(z, z') -{ 2 }-> 1 + a__length(a__U31(mark(X4))) :|: z = 2, z' = 1 + X4, X4 >= 0 a__U62(z, z') -{ 2 }-> 1 + a__length(a__U21(mark(X''))) :|: z = 2, z' = 1 + X'', X'' >= 0 a__U62(z, z') -{ 2 }-> 1 + a__length(a__U11(mark(X'))) :|: z = 2, X' >= 0, z' = 1 + X' a__U62(z, z') -{ 3 }-> 1 + a__length(3) :|: z = 2, z' = 3 a__U62(z, z') -{ 2 }-> 1 + a__length(2) :|: z = 2, z' = 2 a__U62(z, z') -{ 2 }-> 1 + a__length(1) :|: z = 2, z' = 1 a__U62(z, z') -{ 2 }-> 1 + a__length(0) :|: z = 2, z' = 0 a__U62(z, z') -{ 2 }-> 1 + a__length(1 + mark(X14)) :|: z = 2, z' = 1 + X14, X14 >= 0 a__U62(z, z') -{ 2 }-> 1 + a__length(1 + mark(X13) + X23) :|: z = 2, X13 >= 0, X23 >= 0, z' = 1 + X13 + X23 a__U62(z, z') -{ 3 }-> 1 + a__length(1 + 0 + 3) :|: z = 2, z' = 3 a__U62(z, z') -{ 1 }-> 1 + X1 + X2 :|: X1 >= 0, X2 >= 0, z = X1, z' = X2 a__isNat(z) -{ 2 }-> a__U21(a__U21(a__isNat(V15))) :|: z = 1 + (1 + V15), V15 >= 0 a__isNat(z) -{ 2 }-> a__U21(a__U11(a__isNatList(V14))) :|: V14 >= 0, z = 1 + (1 + V14) a__isNat(z) -{ 2 }-> a__U11(a__U51(a__isNat(V13), V21)) :|: z = 1 + (1 + V13 + V21), V21 >= 0, V13 >= 0 a__isNat(z) -{ 1 }-> 2 :|: z = 0 a__isNat(z) -{ 3 }-> 2 :|: z = 1 + 1, 2 = 2 a__isNat(z) -{ 3 }-> 2 :|: z = 1 + V1, V1 >= 0, 1 + V1 = 2 a__isNat(z) -{ 3 }-> 2 :|: z = 1 + 0, 2 = 2 a__isNat(z) -{ 1 }-> 1 + X :|: X >= 0, z = X a__isNat(z) -{ 3 }-> 1 + X :|: z = 1 + 1, X >= 0, 2 = X a__isNat(z) -{ 3 }-> 1 + X :|: z = 1 + V1, V1 >= 0, X >= 0, 1 + V1 = X a__isNat(z) -{ 3 }-> 1 + X :|: z = 1 + 0, X >= 0, 2 = X a__isNatIList(z) -{ 2 }-> a__U41(a__U21(a__isNat(V18)), V2) :|: V18 >= 0, z = 1 + (1 + V18) + V2, V2 >= 0 a__isNatIList(z) -{ 2 }-> a__U41(a__U11(a__isNatList(V17)), V2) :|: z = 1 + (1 + V17) + V2, V2 >= 0, V17 >= 0 a__isNatIList(z) -{ 2 }-> a__U41(2, V2) :|: V2 >= 0, z = 1 + 0 + V2 a__isNatIList(z) -{ 2 }-> a__U41(1 + V1, V2) :|: V1 >= 0, V2 >= 0, z = 1 + V1 + V2 a__isNatIList(z) -{ 2 }-> a__U31(a__U51(a__isNat(V16), V22)) :|: z = 1 + V16 + V22, V22 >= 0, V16 >= 0 a__isNatIList(z) -{ 1 }-> 2 :|: z = 3 a__isNatIList(z) -{ 3 }-> 2 :|: z = 1, 2 = 2 a__isNatIList(z) -{ 3 }-> 2 :|: z = V, V >= 0, 1 + V = 2 a__isNatIList(z) -{ 1 }-> 1 + X :|: X >= 0, z = X a__isNatIList(z) -{ 3 }-> 1 + X :|: z = 1, X >= 0, 2 = X a__isNatIList(z) -{ 3 }-> 1 + X :|: z = V, V >= 0, X >= 0, 1 + V = X a__isNatList(z) -{ 2 }-> a__U51(a__U21(a__isNat(V110)), V2) :|: V110 >= 0, V2 >= 0, z = 1 + (1 + V110) + V2 a__isNatList(z) -{ 2 }-> a__U51(a__U11(a__isNatList(V19)), V2) :|: V19 >= 0, V2 >= 0, z = 1 + (1 + V19) + V2 a__isNatList(z) -{ 2 }-> a__U51(2, V2) :|: V2 >= 0, z = 1 + 0 + V2 a__isNatList(z) -{ 2 }-> a__U51(1 + V1, V2) :|: V1 >= 0, V2 >= 0, z = 1 + V1 + V2 a__isNatList(z) -{ 1 }-> 2 :|: z = 1 a__isNatList(z) -{ 1 }-> 1 + X :|: X >= 0, z = X a__length(z) -{ 2 }-> a__U61(a__U51(a__isNat(V111), V23), 1 + V111 + V23, N) :|: V23 >= 0, z = 1 + N + (1 + V111 + V23), V111 >= 0, N >= 0 a__length(z) -{ 2 }-> a__U61(2, 1, N) :|: z = 1 + N + 1, N >= 0 a__length(z) -{ 2 }-> a__U61(1 + L, L, N) :|: z = 1 + N + L, L >= 0, N >= 0 a__length(z) -{ 1 }-> 0 :|: z = 1 a__length(z) -{ 1 }-> 1 + X :|: X >= 0, z = X a__zeros -{ 1 }-> 3 :|: a__zeros -{ 1 }-> 1 + 0 + 3 :|: mark(z) -{ 2 }-> a__length(a__length(mark(X169))) :|: z = 1 + (1 + X169), X169 >= 0 mark(z) -{ 2 }-> a__length(a__isNatList(X165)) :|: X165 >= 0, z = 1 + (1 + X165) mark(z) -{ 2 }-> a__length(a__isNatIList(X162)) :|: X162 >= 0, z = 1 + (1 + X162) mark(z) -{ 2 }-> a__length(a__isNat(X168)) :|: X168 >= 0, z = 1 + (1 + X168) mark(z) -{ 2 }-> a__length(a__U62(mark(X167), X254)) :|: z = 1 + (1 + X167 + X254), X254 >= 0, X167 >= 0 mark(z) -{ 2 }-> a__length(a__U61(mark(X166), X253, X318)) :|: X166 >= 0, z = 1 + (1 + X166 + X253 + X318), X253 >= 0, X318 >= 0 mark(z) -{ 2 }-> a__length(a__U52(mark(X164))) :|: X164 >= 0, z = 1 + (1 + X164) mark(z) -{ 2 }-> a__length(a__U51(mark(X163), X252)) :|: X163 >= 0, z = 1 + (1 + X163 + X252), X252 >= 0 mark(z) -{ 2 }-> a__length(a__U42(mark(X161))) :|: z = 1 + (1 + X161), X161 >= 0 mark(z) -{ 2 }-> a__length(a__U41(mark(X160), X251)) :|: X251 >= 0, z = 1 + (1 + X160 + X251), X160 >= 0 mark(z) -{ 2 }-> a__length(a__U31(mark(X159))) :|: z = 1 + (1 + X159), X159 >= 0 mark(z) -{ 2 }-> a__length(a__U21(mark(X158))) :|: X158 >= 0, z = 1 + (1 + X158) mark(z) -{ 2 }-> a__length(a__U11(mark(X157))) :|: z = 1 + (1 + X157), X157 >= 0 mark(z) -{ 3 }-> a__length(3) :|: z = 1 + 3 mark(z) -{ 2 }-> a__length(2) :|: z = 1 + 2 mark(z) -{ 2 }-> a__length(1) :|: z = 1 + 1 mark(z) -{ 2 }-> a__length(0) :|: z = 1 + 0 mark(z) -{ 2 }-> a__length(1 + mark(X171)) :|: z = 1 + (1 + X171), X171 >= 0 mark(z) -{ 2 }-> a__length(1 + mark(X170) + X255) :|: X255 >= 0, z = 1 + (1 + X170 + X255), X170 >= 0 mark(z) -{ 3 }-> a__length(1 + 0 + 3) :|: z = 1 + 3 mark(z) -{ 1 }-> a__isNatList(X) :|: z = 1 + X, X >= 0 mark(z) -{ 1 }-> a__isNatIList(X) :|: z = 1 + X, X >= 0 mark(z) -{ 1 }-> a__isNat(X) :|: z = 1 + X, X >= 0 mark(z) -{ 2 }-> a__U62(a__length(mark(X154)), X2) :|: X154 >= 0, z = 1 + (1 + X154) + X2, X2 >= 0 mark(z) -{ 2 }-> a__U62(a__isNatList(X109), X2) :|: X2 >= 0, z = 1 + (1 + X109) + X2, X109 >= 0 mark(z) -{ 2 }-> a__U62(a__isNatIList(X107), X2) :|: X107 >= 0, z = 1 + (1 + X107) + X2, X2 >= 0 mark(z) -{ 2 }-> a__U62(a__isNat(X153), X2) :|: z = 1 + (1 + X153) + X2, X153 >= 0, X2 >= 0 mark(z) -{ 2 }-> a__U62(a__U62(mark(X152), X249), X2) :|: X152 >= 0, z = 1 + (1 + X152 + X249) + X2, X249 >= 0, X2 >= 0 mark(z) -{ 2 }-> a__U62(a__U61(mark(X151), X248, X317), X2) :|: X248 >= 0, z = 1 + (1 + X151 + X248 + X317) + X2, X2 >= 0, X317 >= 0, X151 >= 0 mark(z) -{ 2 }-> a__U62(a__U52(mark(X108)), X2) :|: z = 1 + (1 + X108) + X2, X2 >= 0, X108 >= 0 mark(z) -{ 2 }-> a__U62(a__U51(mark(X150), X247), X2) :|: z = 1 + (1 + X150 + X247) + X2, X150 >= 0, X247 >= 0, X2 >= 0 mark(z) -{ 2 }-> a__U62(a__U42(mark(X106)), X2) :|: X106 >= 0, z = 1 + (1 + X106) + X2, X2 >= 0 mark(z) -{ 2 }-> a__U62(a__U41(mark(X149), X246), X2) :|: X149 >= 0, X246 >= 0, z = 1 + (1 + X149 + X246) + X2, X2 >= 0 mark(z) -{ 2 }-> a__U62(a__U31(mark(X105)), X2) :|: X105 >= 0, z = 1 + (1 + X105) + X2, X2 >= 0 mark(z) -{ 2 }-> a__U62(a__U21(mark(X104)), X2) :|: X104 >= 0, z = 1 + (1 + X104) + X2, X2 >= 0 mark(z) -{ 2 }-> a__U62(a__U11(mark(X103)), X2) :|: X103 >= 0, z = 1 + (1 + X103) + X2, X2 >= 0 mark(z) -{ 3 }-> a__U62(3, X2) :|: X2 >= 0, z = 1 + 3 + X2 mark(z) -{ 2 }-> a__U62(2, X2) :|: z = 1 + 2 + X2, X2 >= 0 mark(z) -{ 2 }-> a__U62(1, X2) :|: z = 1 + 1 + X2, X2 >= 0 mark(z) -{ 2 }-> a__U62(0, X2) :|: z = 1 + 0 + X2, X2 >= 0 mark(z) -{ 2 }-> a__U62(1 + mark(X156), X2) :|: X156 >= 0, z = 1 + (1 + X156) + X2, X2 >= 0 mark(z) -{ 2 }-> a__U62(1 + mark(X155) + X250, X2) :|: X155 >= 0, X2 >= 0, z = 1 + (1 + X155 + X250) + X2, X250 >= 0 mark(z) -{ 3 }-> a__U62(1 + 0 + 3, X2) :|: X2 >= 0, z = 1 + 3 + X2 mark(z) -{ 2 }-> a__U61(a__length(mark(X101)), X2, X3) :|: X3 >= 0, X2 >= 0, z = 1 + (1 + X101) + X2 + X3, X101 >= 0 mark(z) -{ 2 }-> a__U61(a__isNatList(X99), X2, X3) :|: X99 >= 0, X3 >= 0, X2 >= 0, z = 1 + (1 + X99) + X2 + X3 mark(z) -{ 2 }-> a__U61(a__isNatIList(X97), X2, X3) :|: z = 1 + (1 + X97) + X2 + X3, X97 >= 0, X3 >= 0, X2 >= 0 mark(z) -{ 2 }-> a__U61(a__isNat(X100), X2, X3) :|: z = 1 + (1 + X100) + X2 + X3, X3 >= 0, X2 >= 0, X100 >= 0 mark(z) -{ 2 }-> a__U61(a__U62(mark(X147), X244), X2, X3) :|: X244 >= 0, z = 1 + (1 + X147 + X244) + X2 + X3, X147 >= 0, X3 >= 0, X2 >= 0 mark(z) -{ 2 }-> a__U61(a__U61(mark(X146), X243, X316), X2, X3) :|: X146 >= 0, X243 >= 0, X3 >= 0, z = 1 + (1 + X146 + X243 + X316) + X2 + X3, X2 >= 0, X316 >= 0 mark(z) -{ 2 }-> a__U61(a__U52(mark(X98)), X2, X3) :|: z = 1 + (1 + X98) + X2 + X3, X98 >= 0, X3 >= 0, X2 >= 0 mark(z) -{ 2 }-> a__U61(a__U51(mark(X145), X242), X2, X3) :|: z = 1 + (1 + X145 + X242) + X2 + X3, X145 >= 0, X242 >= 0, X3 >= 0, X2 >= 0 mark(z) -{ 2 }-> a__U61(a__U42(mark(X96)), X2, X3) :|: X96 >= 0, z = 1 + (1 + X96) + X2 + X3, X3 >= 0, X2 >= 0 mark(z) -{ 2 }-> a__U61(a__U41(mark(X144), X241), X2, X3) :|: X144 >= 0, z = 1 + (1 + X144 + X241) + X2 + X3, X3 >= 0, X241 >= 0, X2 >= 0 mark(z) -{ 2 }-> a__U61(a__U31(mark(X95)), X2, X3) :|: X95 >= 0, X3 >= 0, X2 >= 0, z = 1 + (1 + X95) + X2 + X3 mark(z) -{ 2 }-> a__U61(a__U21(mark(X94)), X2, X3) :|: z = 1 + (1 + X94) + X2 + X3, X3 >= 0, X2 >= 0, X94 >= 0 mark(z) -{ 2 }-> a__U61(a__U11(mark(X93)), X2, X3) :|: z = 1 + (1 + X93) + X2 + X3, X3 >= 0, X2 >= 0, X93 >= 0 mark(z) -{ 3 }-> a__U61(3, X2, X3) :|: z = 1 + 3 + X2 + X3, X3 >= 0, X2 >= 0 mark(z) -{ 2 }-> a__U61(2, X2, X3) :|: z = 1 + 2 + X2 + X3, X3 >= 0, X2 >= 0 mark(z) -{ 2 }-> a__U61(1, X2, X3) :|: z = 1 + 1 + X2 + X3, X3 >= 0, X2 >= 0 mark(z) -{ 2 }-> a__U61(0, X2, X3) :|: z = 1 + 0 + X2 + X3, X3 >= 0, X2 >= 0 mark(z) -{ 2 }-> a__U61(1 + mark(X102), X2, X3) :|: z = 1 + (1 + X102) + X2 + X3, X3 >= 0, X2 >= 0, X102 >= 0 mark(z) -{ 2 }-> a__U61(1 + mark(X148) + X245, X2, X3) :|: X245 >= 0, X3 >= 0, z = 1 + (1 + X148 + X245) + X2 + X3, X148 >= 0, X2 >= 0 mark(z) -{ 3 }-> a__U61(1 + 0 + 3, X2, X3) :|: z = 1 + 3 + X2 + X3, X3 >= 0, X2 >= 0 mark(z) -{ 2 }-> a__U52(a__length(mark(X91))) :|: X91 >= 0, z = 1 + (1 + X91) mark(z) -{ 2 }-> a__U52(a__isNatList(X89)) :|: X89 >= 0, z = 1 + (1 + X89) mark(z) -{ 2 }-> a__U52(a__isNatIList(X87)) :|: X87 >= 0, z = 1 + (1 + X87) mark(z) -{ 2 }-> a__U52(a__isNat(X90)) :|: z = 1 + (1 + X90), X90 >= 0 mark(z) -{ 2 }-> a__U52(a__U62(mark(X142), X239)) :|: X239 >= 0, X142 >= 0, z = 1 + (1 + X142 + X239) mark(z) -{ 2 }-> a__U52(a__U61(mark(X141), X238, X315)) :|: X315 >= 0, X238 >= 0, z = 1 + (1 + X141 + X238 + X315), X141 >= 0 mark(z) -{ 2 }-> a__U52(a__U52(mark(X88))) :|: X88 >= 0, z = 1 + (1 + X88) mark(z) -{ 2 }-> a__U52(a__U51(mark(X140), X237)) :|: z = 1 + (1 + X140 + X237), X140 >= 0, X237 >= 0 mark(z) -{ 2 }-> a__U52(a__U42(mark(X86))) :|: z = 1 + (1 + X86), X86 >= 0 mark(z) -{ 2 }-> a__U52(a__U41(mark(X139), X236)) :|: z = 1 + (1 + X139 + X236), X236 >= 0, X139 >= 0 mark(z) -{ 2 }-> a__U52(a__U31(mark(X85))) :|: z = 1 + (1 + X85), X85 >= 0 mark(z) -{ 2 }-> a__U52(a__U21(mark(X84))) :|: z = 1 + (1 + X84), X84 >= 0 mark(z) -{ 2 }-> a__U52(a__U11(mark(X83))) :|: z = 1 + (1 + X83), X83 >= 0 mark(z) -{ 2 }-> a__U52(1 + mark(X92)) :|: X92 >= 0, z = 1 + (1 + X92) mark(z) -{ 2 }-> a__U52(1 + mark(X143) + X240) :|: X240 >= 0, X143 >= 0, z = 1 + (1 + X143 + X240) mark(z) -{ 2 }-> a__U51(a__length(mark(X81)), X2) :|: X81 >= 0, z = 1 + (1 + X81) + X2, X2 >= 0 mark(z) -{ 2 }-> a__U51(a__isNatList(X79), X2) :|: z = 1 + (1 + X79) + X2, X79 >= 0, X2 >= 0 mark(z) -{ 2 }-> a__U51(a__isNatIList(X77), X2) :|: z = 1 + (1 + X77) + X2, X77 >= 0, X2 >= 0 mark(z) -{ 2 }-> a__U51(a__isNat(X80), X2) :|: X80 >= 0, X2 >= 0, z = 1 + (1 + X80) + X2 mark(z) -{ 2 }-> a__U51(a__U62(mark(X137), X234), X2) :|: z = 1 + (1 + X137 + X234) + X2, X234 >= 0, X137 >= 0, X2 >= 0 mark(z) -{ 2 }-> a__U51(a__U61(mark(X136), X233, X314), X2) :|: X136 >= 0, X233 >= 0, z = 1 + (1 + X136 + X233 + X314) + X2, X314 >= 0, X2 >= 0 mark(z) -{ 2 }-> a__U51(a__U52(mark(X78)), X2) :|: X78 >= 0, z = 1 + (1 + X78) + X2, X2 >= 0 mark(z) -{ 2 }-> a__U51(a__U51(mark(X135), X232), X2) :|: X135 >= 0, z = 1 + (1 + X135 + X232) + X2, X232 >= 0, X2 >= 0 mark(z) -{ 2 }-> a__U51(a__U42(mark(X76)), X2) :|: X76 >= 0, X2 >= 0, z = 1 + (1 + X76) + X2 mark(z) -{ 2 }-> a__U51(a__U41(mark(X134), X231), X2) :|: z = 1 + (1 + X134 + X231) + X2, X134 >= 0, X231 >= 0, X2 >= 0 mark(z) -{ 2 }-> a__U51(a__U31(mark(X75)), X2) :|: X75 >= 0, z = 1 + (1 + X75) + X2, X2 >= 0 mark(z) -{ 2 }-> a__U51(a__U21(mark(X74)), X2) :|: z = 1 + (1 + X74) + X2, X2 >= 0, X74 >= 0 mark(z) -{ 2 }-> a__U51(a__U11(mark(X73)), X2) :|: X73 >= 0, z = 1 + (1 + X73) + X2, X2 >= 0 mark(z) -{ 3 }-> a__U51(3, X2) :|: X2 >= 0, z = 1 + 3 + X2 mark(z) -{ 2 }-> a__U51(2, X2) :|: z = 1 + 2 + X2, X2 >= 0 mark(z) -{ 2 }-> a__U51(1, X2) :|: z = 1 + 1 + X2, X2 >= 0 mark(z) -{ 2 }-> a__U51(0, X2) :|: z = 1 + 0 + X2, X2 >= 0 mark(z) -{ 2 }-> a__U51(1 + mark(X82), X2) :|: X82 >= 0, z = 1 + (1 + X82) + X2, X2 >= 0 mark(z) -{ 2 }-> a__U51(1 + mark(X138) + X235, X2) :|: z = 1 + (1 + X138 + X235) + X2, X235 >= 0, X2 >= 0, X138 >= 0 mark(z) -{ 3 }-> a__U51(1 + 0 + 3, X2) :|: X2 >= 0, z = 1 + 3 + X2 mark(z) -{ 2 }-> a__U42(a__length(mark(X71))) :|: X71 >= 0, z = 1 + (1 + X71) mark(z) -{ 2 }-> a__U42(a__isNatList(X69)) :|: z = 1 + (1 + X69), X69 >= 0 mark(z) -{ 2 }-> a__U42(a__isNatIList(X67)) :|: X67 >= 0, z = 1 + (1 + X67) mark(z) -{ 2 }-> a__U42(a__isNat(X70)) :|: X70 >= 0, z = 1 + (1 + X70) mark(z) -{ 2 }-> a__U42(a__U62(mark(X132), X229)) :|: X229 >= 0, z = 1 + (1 + X132 + X229), X132 >= 0 mark(z) -{ 2 }-> a__U42(a__U61(mark(X131), X228, X313)) :|: z = 1 + (1 + X131 + X228 + X313), X313 >= 0, X228 >= 0, X131 >= 0 mark(z) -{ 2 }-> a__U42(a__U52(mark(X68))) :|: z = 1 + (1 + X68), X68 >= 0 mark(z) -{ 2 }-> a__U42(a__U51(mark(X130), X227)) :|: z = 1 + (1 + X130 + X227), X227 >= 0, X130 >= 0 mark(z) -{ 2 }-> a__U42(a__U42(mark(X66))) :|: z = 1 + (1 + X66), X66 >= 0 mark(z) -{ 2 }-> a__U42(a__U41(mark(X129), X226)) :|: X129 >= 0, X226 >= 0, z = 1 + (1 + X129 + X226) mark(z) -{ 2 }-> a__U42(a__U31(mark(X65))) :|: z = 1 + (1 + X65), X65 >= 0 mark(z) -{ 2 }-> a__U42(a__U21(mark(X64))) :|: z = 1 + (1 + X64), X64 >= 0 mark(z) -{ 2 }-> a__U42(a__U11(mark(X63))) :|: z = 1 + (1 + X63), X63 >= 0 mark(z) -{ 2 }-> a__U42(1 + mark(X72)) :|: X72 >= 0, z = 1 + (1 + X72) mark(z) -{ 2 }-> a__U42(1 + mark(X133) + X230) :|: X133 >= 0, z = 1 + (1 + X133 + X230), X230 >= 0 mark(z) -{ 2 }-> a__U41(a__length(mark(X61)), X2) :|: X61 >= 0, z = 1 + (1 + X61) + X2, X2 >= 0 mark(z) -{ 2 }-> a__U41(a__isNatList(X59), X2) :|: z = 1 + (1 + X59) + X2, X59 >= 0, X2 >= 0 mark(z) -{ 2 }-> a__U41(a__isNatIList(X57), X2) :|: X57 >= 0, z = 1 + (1 + X57) + X2, X2 >= 0 mark(z) -{ 2 }-> a__U41(a__isNat(X60), X2) :|: X60 >= 0, X2 >= 0, z = 1 + (1 + X60) + X2 mark(z) -{ 2 }-> a__U41(a__U62(mark(X127), X224), X2) :|: X224 >= 0, z = 1 + (1 + X127 + X224) + X2, X127 >= 0, X2 >= 0 mark(z) -{ 2 }-> a__U41(a__U61(mark(X126), X223, X312), X2) :|: X223 >= 0, z = 1 + (1 + X126 + X223 + X312) + X2, X312 >= 0, X126 >= 0, X2 >= 0 mark(z) -{ 2 }-> a__U41(a__U52(mark(X58)), X2) :|: z = 1 + (1 + X58) + X2, X58 >= 0, X2 >= 0 mark(z) -{ 2 }-> a__U41(a__U51(mark(X125), X222), X2) :|: X222 >= 0, z = 1 + (1 + X125 + X222) + X2, X125 >= 0, X2 >= 0 mark(z) -{ 2 }-> a__U41(a__U42(mark(X56)), X2) :|: z = 1 + (1 + X56) + X2, X56 >= 0, X2 >= 0 mark(z) -{ 2 }-> a__U41(a__U41(mark(X124), X221), X2) :|: X124 >= 0, z = 1 + (1 + X124 + X221) + X2, X221 >= 0, X2 >= 0 mark(z) -{ 2 }-> a__U41(a__U31(mark(X55)), X2) :|: X2 >= 0, z = 1 + (1 + X55) + X2, X55 >= 0 mark(z) -{ 2 }-> a__U41(a__U21(mark(X54)), X2) :|: z = 1 + (1 + X54) + X2, X2 >= 0, X54 >= 0 mark(z) -{ 2 }-> a__U41(a__U11(mark(X53)), X2) :|: z = 1 + (1 + X53) + X2, X2 >= 0, X53 >= 0 mark(z) -{ 3 }-> a__U41(3, X2) :|: X2 >= 0, z = 1 + 3 + X2 mark(z) -{ 2 }-> a__U41(2, X2) :|: z = 1 + 2 + X2, X2 >= 0 mark(z) -{ 2 }-> a__U41(1, X2) :|: z = 1 + 1 + X2, X2 >= 0 mark(z) -{ 2 }-> a__U41(0, X2) :|: z = 1 + 0 + X2, X2 >= 0 mark(z) -{ 2 }-> a__U41(1 + mark(X62), X2) :|: z = 1 + (1 + X62) + X2, X62 >= 0, X2 >= 0 mark(z) -{ 2 }-> a__U41(1 + mark(X128) + X225, X2) :|: X128 >= 0, X225 >= 0, z = 1 + (1 + X128 + X225) + X2, X2 >= 0 mark(z) -{ 3 }-> a__U41(1 + 0 + 3, X2) :|: X2 >= 0, z = 1 + 3 + X2 mark(z) -{ 2 }-> a__U31(a__length(mark(X51))) :|: X51 >= 0, z = 1 + (1 + X51) mark(z) -{ 2 }-> a__U31(a__isNatList(X49)) :|: z = 1 + (1 + X49), X49 >= 0 mark(z) -{ 2 }-> a__U31(a__isNatIList(X47)) :|: X47 >= 0, z = 1 + (1 + X47) mark(z) -{ 2 }-> a__U31(a__isNat(X50)) :|: X50 >= 0, z = 1 + (1 + X50) mark(z) -{ 2 }-> a__U31(a__U62(mark(X122), X219)) :|: z = 1 + (1 + X122 + X219), X122 >= 0, X219 >= 0 mark(z) -{ 2 }-> a__U31(a__U61(mark(X121), X218, X311)) :|: X311 >= 0, z = 1 + (1 + X121 + X218 + X311), X218 >= 0, X121 >= 0 mark(z) -{ 2 }-> a__U31(a__U52(mark(X48))) :|: z = 1 + (1 + X48), X48 >= 0 mark(z) -{ 2 }-> a__U31(a__U51(mark(X120), X217)) :|: X120 >= 0, z = 1 + (1 + X120 + X217), X217 >= 0 mark(z) -{ 2 }-> a__U31(a__U42(mark(X46))) :|: X46 >= 0, z = 1 + (1 + X46) mark(z) -{ 2 }-> a__U31(a__U41(mark(X119), X216)) :|: X216 >= 0, z = 1 + (1 + X119 + X216), X119 >= 0 mark(z) -{ 2 }-> a__U31(a__U31(mark(X45))) :|: X45 >= 0, z = 1 + (1 + X45) mark(z) -{ 2 }-> a__U31(a__U21(mark(X44))) :|: z = 1 + (1 + X44), X44 >= 0 mark(z) -{ 2 }-> a__U31(a__U11(mark(X43))) :|: X43 >= 0, z = 1 + (1 + X43) mark(z) -{ 2 }-> a__U31(1 + mark(X52)) :|: z = 1 + (1 + X52), X52 >= 0 mark(z) -{ 2 }-> a__U31(1 + mark(X123) + X220) :|: z = 1 + (1 + X123 + X220), X123 >= 0, X220 >= 0 mark(z) -{ 2 }-> a__U21(a__length(mark(X41))) :|: X41 >= 0, z = 1 + (1 + X41) mark(z) -{ 2 }-> a__U21(a__isNatList(X39)) :|: z = 1 + (1 + X39), X39 >= 0 mark(z) -{ 2 }-> a__U21(a__isNatIList(X37)) :|: X37 >= 0, z = 1 + (1 + X37) mark(z) -{ 2 }-> a__U21(a__isNat(X40)) :|: z = 1 + (1 + X40), X40 >= 0 mark(z) -{ 2 }-> a__U21(a__U62(mark(X117), X214)) :|: z = 1 + (1 + X117 + X214), X117 >= 0, X214 >= 0 mark(z) -{ 2 }-> a__U21(a__U61(mark(X116), X213, X310)) :|: X213 >= 0, z = 1 + (1 + X116 + X213 + X310), X116 >= 0, X310 >= 0 mark(z) -{ 2 }-> a__U21(a__U52(mark(X38))) :|: X38 >= 0, z = 1 + (1 + X38) mark(z) -{ 2 }-> a__U21(a__U51(mark(X115), X212)) :|: X212 >= 0, z = 1 + (1 + X115 + X212), X115 >= 0 mark(z) -{ 2 }-> a__U21(a__U42(mark(X36))) :|: X36 >= 0, z = 1 + (1 + X36) mark(z) -{ 2 }-> a__U21(a__U41(mark(X114), X211)) :|: X114 >= 0, z = 1 + (1 + X114 + X211), X211 >= 0 mark(z) -{ 2 }-> a__U21(a__U31(mark(X35))) :|: z = 1 + (1 + X35), X35 >= 0 mark(z) -{ 2 }-> a__U21(a__U21(mark(X34))) :|: z = 1 + (1 + X34), X34 >= 0 mark(z) -{ 2 }-> a__U21(a__U11(mark(X33))) :|: X33 >= 0, z = 1 + (1 + X33) mark(z) -{ 2 }-> a__U21(1 + mark(X42)) :|: X42 >= 0, z = 1 + (1 + X42) mark(z) -{ 2 }-> a__U21(1 + mark(X118) + X215) :|: X118 >= 0, X215 >= 0, z = 1 + (1 + X118 + X215) mark(z) -{ 2 }-> a__U11(a__length(mark(X31))) :|: X31 >= 0, z = 1 + (1 + X31) mark(z) -{ 2 }-> a__U11(a__isNatList(X27)) :|: X27 >= 0, z = 1 + (1 + X27) mark(z) -{ 2 }-> a__U11(a__isNatIList(X20)) :|: z = 1 + (1 + X20), X20 >= 0 mark(z) -{ 2 }-> a__U11(a__isNat(X30)) :|: z = 1 + (1 + X30), X30 >= 0 mark(z) -{ 2 }-> a__U11(a__U62(mark(X112), X29)) :|: z = 1 + (1 + X112 + X29), X29 >= 0, X112 >= 0 mark(z) -{ 2 }-> a__U11(a__U61(mark(X111), X28, X3'')) :|: X28 >= 0, X3'' >= 0, z = 1 + (1 + X111 + X28 + X3''), X111 >= 0 mark(z) -{ 2 }-> a__U11(a__U52(mark(X26))) :|: X26 >= 0, z = 1 + (1 + X26) mark(z) -{ 2 }-> a__U11(a__U51(mark(X110), X25)) :|: X110 >= 0, z = 1 + (1 + X110 + X25), X25 >= 0 mark(z) -{ 2 }-> a__U11(a__U42(mark(X19))) :|: X19 >= 0, z = 1 + (1 + X19) mark(z) -{ 2 }-> a__U11(a__U41(mark(X18), X24)) :|: X18 >= 0, z = 1 + (1 + X18 + X24), X24 >= 0 mark(z) -{ 2 }-> a__U11(a__U31(mark(X17))) :|: X17 >= 0, z = 1 + (1 + X17) mark(z) -{ 2 }-> a__U11(a__U21(mark(X16))) :|: X16 >= 0, z = 1 + (1 + X16) mark(z) -{ 2 }-> a__U11(a__U11(mark(X15))) :|: z = 1 + (1 + X15), X15 >= 0 mark(z) -{ 2 }-> a__U11(1 + mark(X32)) :|: X32 >= 0, z = 1 + (1 + X32) mark(z) -{ 2 }-> a__U11(1 + mark(X113) + X210) :|: X113 >= 0, z = 1 + (1 + X113 + X210), X210 >= 0 mark(z) -{ 2 }-> 3 :|: z = 3 mark(z) -{ 1 }-> 2 :|: z = 2 mark(z) -{ 3 }-> 2 :|: z = 1 + 2, 2 = 2 mark(z) -{ 1 }-> 1 :|: z = 1 mark(z) -{ 1 }-> 0 :|: z = 0 mark(z) -{ 3 }-> 1 + X :|: z = 1 + 0, X >= 0, 0 = X mark(z) -{ 3 }-> 1 + X :|: z = 1 + 2, X >= 0, 2 = X mark(z) -{ 3 }-> 1 + X :|: z = 1 + 1, X >= 0, 1 = X mark(z) -{ 4 }-> 1 + X :|: z = 1 + 3, X >= 0, 3 = X mark(z) -{ 4 }-> 1 + X :|: z = 1 + 3, X >= 0, 1 + 0 + 3 = X 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 mark(z) -{ 2 }-> 1 + 0 + 3 :|: z = 3 ---------------------------------------- (17) SimplificationProof (BOTH BOUNDS(ID, ID)) Simplified the RNTS by moving equalities from the constraints into the right-hand sides. ---------------------------------------- (18) Obligation: Complexity RNTS consisting of the following rules: a__U11(z) -{ 1 }-> 2 :|: z = 2 a__U11(z) -{ 1 }-> 1 + z :|: z >= 0 a__U21(z) -{ 1 }-> 2 :|: z = 2 a__U21(z) -{ 1 }-> 1 + z :|: z >= 0 a__U31(z) -{ 1 }-> 2 :|: z = 2 a__U31(z) -{ 1 }-> 1 + z :|: z >= 0 a__U41(z, z') -{ 2 }-> a__U42(a__U41(a__isNat(V1'), V2')) :|: z = 2, z' = 1 + V1' + V2', V2' >= 0, V1' >= 0 a__U41(z, z') -{ 2 }-> a__U42(a__U31(a__isNatList(z'))) :|: z = 2, z' >= 0 a__U41(z, z') -{ 3 }-> 2 :|: z = 2, z' = 3, 2 = 2 a__U41(z, z') -{ 3 }-> 2 :|: z = 2, z' >= 0, 1 + z' = 2 a__U41(z, z') -{ 3 }-> 1 + X :|: z = 2, z' = 3, X >= 0, 2 = X a__U41(z, z') -{ 3 }-> 1 + X :|: z = 2, z' >= 0, X >= 0, 1 + z' = X a__U41(z, z') -{ 1 }-> 1 + z + z' :|: z >= 0, z' >= 0 a__U42(z) -{ 1 }-> 2 :|: z = 2 a__U42(z) -{ 1 }-> 1 + z :|: z >= 0 a__U51(z, z') -{ 2 }-> a__U52(a__U51(a__isNat(V1''), V2'')) :|: z = 2, V1'' >= 0, V2'' >= 0, z' = 1 + V1'' + V2'' a__U51(z, z') -{ 3 }-> 2 :|: z = 2, z' = 1, 2 = 2 a__U51(z, z') -{ 3 }-> 2 :|: z = 2, z' >= 0, 1 + z' = 2 a__U51(z, z') -{ 3 }-> 1 + X :|: z = 2, z' = 1, X >= 0, 2 = X a__U51(z, z') -{ 3 }-> 1 + X :|: z = 2, z' >= 0, X >= 0, 1 + z' = X a__U51(z, z') -{ 1 }-> 1 + z + z' :|: z >= 0, z' >= 0 a__U52(z) -{ 1 }-> 2 :|: z = 2 a__U52(z) -{ 1 }-> 1 + z :|: z >= 0 a__U61(z, z', z'') -{ 2 }-> a__U62(a__U21(a__isNat(z'' - 1)), z') :|: z = 2, z'' - 1 >= 0, z' >= 0 a__U61(z, z', z'') -{ 2 }-> a__U62(a__U11(a__isNatList(z'' - 1)), z') :|: z = 2, z'' - 1 >= 0, z' >= 0 a__U61(z, z', z'') -{ 2 }-> a__U62(2, z') :|: z = 2, z'' = 0, z' >= 0 a__U61(z, z', z'') -{ 2 }-> a__U62(1 + z'', z') :|: z = 2, z' >= 0, z'' >= 0 a__U61(z, z', z'') -{ 1 }-> 1 + z + z' + z'' :|: z >= 0, z'' >= 0, z' >= 0 a__U62(z, z') -{ 2 }-> 1 + a__length(a__length(mark(z' - 1))) :|: z = 2, z' - 1 >= 0 a__U62(z, z') -{ 2 }-> 1 + a__length(a__isNatList(z' - 1)) :|: z = 2, z' - 1 >= 0 a__U62(z, z') -{ 2 }-> 1 + a__length(a__isNatIList(z' - 1)) :|: z = 2, z' - 1 >= 0 a__U62(z, z') -{ 2 }-> 1 + a__length(a__isNat(z' - 1)) :|: z = 2, z' - 1 >= 0 a__U62(z, z') -{ 2 }-> 1 + a__length(a__U62(mark(X12), X22)) :|: z = 2, z' = 1 + X12 + X22, X12 >= 0, X22 >= 0 a__U62(z, z') -{ 2 }-> 1 + a__length(a__U61(mark(X11), X21, X3')) :|: z = 2, X3' >= 0, z' = 1 + X11 + X21 + X3', X11 >= 0, X21 >= 0 a__U62(z, z') -{ 2 }-> 1 + a__length(a__U52(mark(z' - 1))) :|: z = 2, z' - 1 >= 0 a__U62(z, z') -{ 2 }-> 1 + a__length(a__U51(mark(X1''), X2'')) :|: z = 2, z' = 1 + X1'' + X2'', X1'' >= 0, X2'' >= 0 a__U62(z, z') -{ 2 }-> 1 + a__length(a__U42(mark(z' - 1))) :|: z = 2, z' - 1 >= 0 a__U62(z, z') -{ 2 }-> 1 + a__length(a__U41(mark(X1'), X2')) :|: z = 2, z' = 1 + X1' + X2', X2' >= 0, X1' >= 0 a__U62(z, z') -{ 2 }-> 1 + a__length(a__U31(mark(z' - 1))) :|: z = 2, z' - 1 >= 0 a__U62(z, z') -{ 2 }-> 1 + a__length(a__U21(mark(z' - 1))) :|: z = 2, z' - 1 >= 0 a__U62(z, z') -{ 2 }-> 1 + a__length(a__U11(mark(z' - 1))) :|: z = 2, z' - 1 >= 0 a__U62(z, z') -{ 3 }-> 1 + a__length(3) :|: z = 2, z' = 3 a__U62(z, z') -{ 2 }-> 1 + a__length(2) :|: z = 2, z' = 2 a__U62(z, z') -{ 2 }-> 1 + a__length(1) :|: z = 2, z' = 1 a__U62(z, z') -{ 2 }-> 1 + a__length(0) :|: z = 2, z' = 0 a__U62(z, z') -{ 2 }-> 1 + a__length(1 + mark(z' - 1)) :|: z = 2, z' - 1 >= 0 a__U62(z, z') -{ 2 }-> 1 + a__length(1 + mark(X13) + X23) :|: z = 2, X13 >= 0, X23 >= 0, z' = 1 + X13 + X23 a__U62(z, z') -{ 3 }-> 1 + a__length(1 + 0 + 3) :|: z = 2, z' = 3 a__U62(z, z') -{ 1 }-> 1 + z + z' :|: z >= 0, z' >= 0 a__isNat(z) -{ 2 }-> a__U21(a__U21(a__isNat(z - 2))) :|: z - 2 >= 0 a__isNat(z) -{ 2 }-> a__U21(a__U11(a__isNatList(z - 2))) :|: z - 2 >= 0 a__isNat(z) -{ 2 }-> a__U11(a__U51(a__isNat(V13), V21)) :|: z = 1 + (1 + V13 + V21), V21 >= 0, V13 >= 0 a__isNat(z) -{ 1 }-> 2 :|: z = 0 a__isNat(z) -{ 3 }-> 2 :|: z = 1 + 1, 2 = 2 a__isNat(z) -{ 3 }-> 2 :|: z - 1 >= 0, 1 + (z - 1) = 2 a__isNat(z) -{ 3 }-> 2 :|: z = 1 + 0, 2 = 2 a__isNat(z) -{ 3 }-> 1 + X :|: z = 1 + 1, X >= 0, 2 = X a__isNat(z) -{ 3 }-> 1 + X :|: z - 1 >= 0, X >= 0, 1 + (z - 1) = X a__isNat(z) -{ 3 }-> 1 + X :|: z = 1 + 0, X >= 0, 2 = X a__isNat(z) -{ 1 }-> 1 + z :|: z >= 0 a__isNatIList(z) -{ 2 }-> a__U41(a__U21(a__isNat(V18)), V2) :|: V18 >= 0, z = 1 + (1 + V18) + V2, V2 >= 0 a__isNatIList(z) -{ 2 }-> a__U41(a__U11(a__isNatList(V17)), V2) :|: z = 1 + (1 + V17) + V2, V2 >= 0, V17 >= 0 a__isNatIList(z) -{ 2 }-> a__U41(2, z - 1) :|: z - 1 >= 0 a__isNatIList(z) -{ 2 }-> a__U41(1 + V1, V2) :|: V1 >= 0, V2 >= 0, z = 1 + V1 + V2 a__isNatIList(z) -{ 2 }-> a__U31(a__U51(a__isNat(V16), V22)) :|: z = 1 + V16 + V22, V22 >= 0, V16 >= 0 a__isNatIList(z) -{ 1 }-> 2 :|: z = 3 a__isNatIList(z) -{ 3 }-> 2 :|: z = 1, 2 = 2 a__isNatIList(z) -{ 3 }-> 2 :|: z >= 0, 1 + z = 2 a__isNatIList(z) -{ 3 }-> 1 + X :|: z = 1, X >= 0, 2 = X a__isNatIList(z) -{ 3 }-> 1 + X :|: z >= 0, X >= 0, 1 + z = X a__isNatIList(z) -{ 1 }-> 1 + z :|: z >= 0 a__isNatList(z) -{ 2 }-> a__U51(a__U21(a__isNat(V110)), V2) :|: V110 >= 0, V2 >= 0, z = 1 + (1 + V110) + V2 a__isNatList(z) -{ 2 }-> a__U51(a__U11(a__isNatList(V19)), V2) :|: V19 >= 0, V2 >= 0, z = 1 + (1 + V19) + V2 a__isNatList(z) -{ 2 }-> a__U51(2, z - 1) :|: z - 1 >= 0 a__isNatList(z) -{ 2 }-> a__U51(1 + V1, V2) :|: V1 >= 0, V2 >= 0, z = 1 + V1 + V2 a__isNatList(z) -{ 1 }-> 2 :|: z = 1 a__isNatList(z) -{ 1 }-> 1 + z :|: z >= 0 a__length(z) -{ 2 }-> a__U61(a__U51(a__isNat(V111), V23), 1 + V111 + V23, N) :|: V23 >= 0, z = 1 + N + (1 + V111 + V23), V111 >= 0, N >= 0 a__length(z) -{ 2 }-> a__U61(2, 1, z - 2) :|: z - 2 >= 0 a__length(z) -{ 2 }-> a__U61(1 + L, L, N) :|: z = 1 + N + L, L >= 0, N >= 0 a__length(z) -{ 1 }-> 0 :|: z = 1 a__length(z) -{ 1 }-> 1 + z :|: z >= 0 a__zeros -{ 1 }-> 3 :|: a__zeros -{ 1 }-> 1 + 0 + 3 :|: mark(z) -{ 2 }-> a__length(a__length(mark(z - 2))) :|: z - 2 >= 0 mark(z) -{ 2 }-> a__length(a__isNatList(z - 2)) :|: z - 2 >= 0 mark(z) -{ 2 }-> a__length(a__isNatIList(z - 2)) :|: z - 2 >= 0 mark(z) -{ 2 }-> a__length(a__isNat(z - 2)) :|: z - 2 >= 0 mark(z) -{ 2 }-> a__length(a__U62(mark(X167), X254)) :|: z = 1 + (1 + X167 + X254), X254 >= 0, X167 >= 0 mark(z) -{ 2 }-> a__length(a__U61(mark(X166), X253, X318)) :|: X166 >= 0, z = 1 + (1 + X166 + X253 + X318), X253 >= 0, X318 >= 0 mark(z) -{ 2 }-> a__length(a__U52(mark(z - 2))) :|: z - 2 >= 0 mark(z) -{ 2 }-> a__length(a__U51(mark(X163), X252)) :|: X163 >= 0, z = 1 + (1 + X163 + X252), X252 >= 0 mark(z) -{ 2 }-> a__length(a__U42(mark(z - 2))) :|: z - 2 >= 0 mark(z) -{ 2 }-> a__length(a__U41(mark(X160), X251)) :|: X251 >= 0, z = 1 + (1 + X160 + X251), X160 >= 0 mark(z) -{ 2 }-> a__length(a__U31(mark(z - 2))) :|: z - 2 >= 0 mark(z) -{ 2 }-> a__length(a__U21(mark(z - 2))) :|: z - 2 >= 0 mark(z) -{ 2 }-> a__length(a__U11(mark(z - 2))) :|: z - 2 >= 0 mark(z) -{ 3 }-> a__length(3) :|: z = 1 + 3 mark(z) -{ 2 }-> a__length(2) :|: z = 1 + 2 mark(z) -{ 2 }-> a__length(1) :|: z = 1 + 1 mark(z) -{ 2 }-> a__length(0) :|: z = 1 + 0 mark(z) -{ 2 }-> a__length(1 + mark(z - 2)) :|: z - 2 >= 0 mark(z) -{ 2 }-> a__length(1 + mark(X170) + X255) :|: X255 >= 0, z = 1 + (1 + X170 + X255), X170 >= 0 mark(z) -{ 3 }-> a__length(1 + 0 + 3) :|: z = 1 + 3 mark(z) -{ 1 }-> a__isNatList(z - 1) :|: z - 1 >= 0 mark(z) -{ 1 }-> a__isNatIList(z - 1) :|: z - 1 >= 0 mark(z) -{ 1 }-> a__isNat(z - 1) :|: z - 1 >= 0 mark(z) -{ 2 }-> a__U62(a__length(mark(X154)), X2) :|: X154 >= 0, z = 1 + (1 + X154) + X2, X2 >= 0 mark(z) -{ 2 }-> a__U62(a__isNatList(X109), X2) :|: X2 >= 0, z = 1 + (1 + X109) + X2, X109 >= 0 mark(z) -{ 2 }-> a__U62(a__isNatIList(X107), X2) :|: X107 >= 0, z = 1 + (1 + X107) + X2, X2 >= 0 mark(z) -{ 2 }-> a__U62(a__isNat(X153), X2) :|: z = 1 + (1 + X153) + X2, X153 >= 0, X2 >= 0 mark(z) -{ 2 }-> a__U62(a__U62(mark(X152), X249), X2) :|: X152 >= 0, z = 1 + (1 + X152 + X249) + X2, X249 >= 0, X2 >= 0 mark(z) -{ 2 }-> a__U62(a__U61(mark(X151), X248, X317), X2) :|: X248 >= 0, z = 1 + (1 + X151 + X248 + X317) + X2, X2 >= 0, X317 >= 0, X151 >= 0 mark(z) -{ 2 }-> a__U62(a__U52(mark(X108)), X2) :|: z = 1 + (1 + X108) + X2, X2 >= 0, X108 >= 0 mark(z) -{ 2 }-> a__U62(a__U51(mark(X150), X247), X2) :|: z = 1 + (1 + X150 + X247) + X2, X150 >= 0, X247 >= 0, X2 >= 0 mark(z) -{ 2 }-> a__U62(a__U42(mark(X106)), X2) :|: X106 >= 0, z = 1 + (1 + X106) + X2, X2 >= 0 mark(z) -{ 2 }-> a__U62(a__U41(mark(X149), X246), X2) :|: X149 >= 0, X246 >= 0, z = 1 + (1 + X149 + X246) + X2, X2 >= 0 mark(z) -{ 2 }-> a__U62(a__U31(mark(X105)), X2) :|: X105 >= 0, z = 1 + (1 + X105) + X2, X2 >= 0 mark(z) -{ 2 }-> a__U62(a__U21(mark(X104)), X2) :|: X104 >= 0, z = 1 + (1 + X104) + X2, X2 >= 0 mark(z) -{ 2 }-> a__U62(a__U11(mark(X103)), X2) :|: X103 >= 0, z = 1 + (1 + X103) + X2, X2 >= 0 mark(z) -{ 3 }-> a__U62(3, z - 4) :|: z - 4 >= 0 mark(z) -{ 2 }-> a__U62(2, z - 3) :|: z - 3 >= 0 mark(z) -{ 2 }-> a__U62(1, z - 2) :|: z - 2 >= 0 mark(z) -{ 2 }-> a__U62(0, z - 1) :|: z - 1 >= 0 mark(z) -{ 2 }-> a__U62(1 + mark(X156), X2) :|: X156 >= 0, z = 1 + (1 + X156) + X2, X2 >= 0 mark(z) -{ 2 }-> a__U62(1 + mark(X155) + X250, X2) :|: X155 >= 0, X2 >= 0, z = 1 + (1 + X155 + X250) + X2, X250 >= 0 mark(z) -{ 3 }-> a__U62(1 + 0 + 3, z - 4) :|: z - 4 >= 0 mark(z) -{ 2 }-> a__U61(a__length(mark(X101)), X2, X3) :|: X3 >= 0, X2 >= 0, z = 1 + (1 + X101) + X2 + X3, X101 >= 0 mark(z) -{ 2 }-> a__U61(a__isNatList(X99), X2, X3) :|: X99 >= 0, X3 >= 0, X2 >= 0, z = 1 + (1 + X99) + X2 + X3 mark(z) -{ 2 }-> a__U61(a__isNatIList(X97), X2, X3) :|: z = 1 + (1 + X97) + X2 + X3, X97 >= 0, X3 >= 0, X2 >= 0 mark(z) -{ 2 }-> a__U61(a__isNat(X100), X2, X3) :|: z = 1 + (1 + X100) + X2 + X3, X3 >= 0, X2 >= 0, X100 >= 0 mark(z) -{ 2 }-> a__U61(a__U62(mark(X147), X244), X2, X3) :|: X244 >= 0, z = 1 + (1 + X147 + X244) + X2 + X3, X147 >= 0, X3 >= 0, X2 >= 0 mark(z) -{ 2 }-> a__U61(a__U61(mark(X146), X243, X316), X2, X3) :|: X146 >= 0, X243 >= 0, X3 >= 0, z = 1 + (1 + X146 + X243 + X316) + X2 + X3, X2 >= 0, X316 >= 0 mark(z) -{ 2 }-> a__U61(a__U52(mark(X98)), X2, X3) :|: z = 1 + (1 + X98) + X2 + X3, X98 >= 0, X3 >= 0, X2 >= 0 mark(z) -{ 2 }-> a__U61(a__U51(mark(X145), X242), X2, X3) :|: z = 1 + (1 + X145 + X242) + X2 + X3, X145 >= 0, X242 >= 0, X3 >= 0, X2 >= 0 mark(z) -{ 2 }-> a__U61(a__U42(mark(X96)), X2, X3) :|: X96 >= 0, z = 1 + (1 + X96) + X2 + X3, X3 >= 0, X2 >= 0 mark(z) -{ 2 }-> a__U61(a__U41(mark(X144), X241), X2, X3) :|: X144 >= 0, z = 1 + (1 + X144 + X241) + X2 + X3, X3 >= 0, X241 >= 0, X2 >= 0 mark(z) -{ 2 }-> a__U61(a__U31(mark(X95)), X2, X3) :|: X95 >= 0, X3 >= 0, X2 >= 0, z = 1 + (1 + X95) + X2 + X3 mark(z) -{ 2 }-> a__U61(a__U21(mark(X94)), X2, X3) :|: z = 1 + (1 + X94) + X2 + X3, X3 >= 0, X2 >= 0, X94 >= 0 mark(z) -{ 2 }-> a__U61(a__U11(mark(X93)), X2, X3) :|: z = 1 + (1 + X93) + X2 + X3, X3 >= 0, X2 >= 0, X93 >= 0 mark(z) -{ 3 }-> a__U61(3, X2, X3) :|: z = 1 + 3 + X2 + X3, X3 >= 0, X2 >= 0 mark(z) -{ 2 }-> a__U61(2, X2, X3) :|: z = 1 + 2 + X2 + X3, X3 >= 0, X2 >= 0 mark(z) -{ 2 }-> a__U61(1, X2, X3) :|: z = 1 + 1 + X2 + X3, X3 >= 0, X2 >= 0 mark(z) -{ 2 }-> a__U61(0, X2, X3) :|: z = 1 + 0 + X2 + X3, X3 >= 0, X2 >= 0 mark(z) -{ 2 }-> a__U61(1 + mark(X102), X2, X3) :|: z = 1 + (1 + X102) + X2 + X3, X3 >= 0, X2 >= 0, X102 >= 0 mark(z) -{ 2 }-> a__U61(1 + mark(X148) + X245, X2, X3) :|: X245 >= 0, X3 >= 0, z = 1 + (1 + X148 + X245) + X2 + X3, X148 >= 0, X2 >= 0 mark(z) -{ 3 }-> a__U61(1 + 0 + 3, X2, X3) :|: z = 1 + 3 + X2 + X3, X3 >= 0, X2 >= 0 mark(z) -{ 2 }-> a__U52(a__length(mark(z - 2))) :|: z - 2 >= 0 mark(z) -{ 2 }-> a__U52(a__isNatList(z - 2)) :|: z - 2 >= 0 mark(z) -{ 2 }-> a__U52(a__isNatIList(z - 2)) :|: z - 2 >= 0 mark(z) -{ 2 }-> a__U52(a__isNat(z - 2)) :|: z - 2 >= 0 mark(z) -{ 2 }-> a__U52(a__U62(mark(X142), X239)) :|: X239 >= 0, X142 >= 0, z = 1 + (1 + X142 + X239) mark(z) -{ 2 }-> a__U52(a__U61(mark(X141), X238, X315)) :|: X315 >= 0, X238 >= 0, z = 1 + (1 + X141 + X238 + X315), X141 >= 0 mark(z) -{ 2 }-> a__U52(a__U52(mark(z - 2))) :|: z - 2 >= 0 mark(z) -{ 2 }-> a__U52(a__U51(mark(X140), X237)) :|: z = 1 + (1 + X140 + X237), X140 >= 0, X237 >= 0 mark(z) -{ 2 }-> a__U52(a__U42(mark(z - 2))) :|: z - 2 >= 0 mark(z) -{ 2 }-> a__U52(a__U41(mark(X139), X236)) :|: z = 1 + (1 + X139 + X236), X236 >= 0, X139 >= 0 mark(z) -{ 2 }-> a__U52(a__U31(mark(z - 2))) :|: z - 2 >= 0 mark(z) -{ 2 }-> a__U52(a__U21(mark(z - 2))) :|: z - 2 >= 0 mark(z) -{ 2 }-> a__U52(a__U11(mark(z - 2))) :|: z - 2 >= 0 mark(z) -{ 2 }-> a__U52(1 + mark(z - 2)) :|: z - 2 >= 0 mark(z) -{ 2 }-> a__U52(1 + mark(X143) + X240) :|: X240 >= 0, X143 >= 0, z = 1 + (1 + X143 + X240) mark(z) -{ 2 }-> a__U51(a__length(mark(X81)), X2) :|: X81 >= 0, z = 1 + (1 + X81) + X2, X2 >= 0 mark(z) -{ 2 }-> a__U51(a__isNatList(X79), X2) :|: z = 1 + (1 + X79) + X2, X79 >= 0, X2 >= 0 mark(z) -{ 2 }-> a__U51(a__isNatIList(X77), X2) :|: z = 1 + (1 + X77) + X2, X77 >= 0, X2 >= 0 mark(z) -{ 2 }-> a__U51(a__isNat(X80), X2) :|: X80 >= 0, X2 >= 0, z = 1 + (1 + X80) + X2 mark(z) -{ 2 }-> a__U51(a__U62(mark(X137), X234), X2) :|: z = 1 + (1 + X137 + X234) + X2, X234 >= 0, X137 >= 0, X2 >= 0 mark(z) -{ 2 }-> a__U51(a__U61(mark(X136), X233, X314), X2) :|: X136 >= 0, X233 >= 0, z = 1 + (1 + X136 + X233 + X314) + X2, X314 >= 0, X2 >= 0 mark(z) -{ 2 }-> a__U51(a__U52(mark(X78)), X2) :|: X78 >= 0, z = 1 + (1 + X78) + X2, X2 >= 0 mark(z) -{ 2 }-> a__U51(a__U51(mark(X135), X232), X2) :|: X135 >= 0, z = 1 + (1 + X135 + X232) + X2, X232 >= 0, X2 >= 0 mark(z) -{ 2 }-> a__U51(a__U42(mark(X76)), X2) :|: X76 >= 0, X2 >= 0, z = 1 + (1 + X76) + X2 mark(z) -{ 2 }-> a__U51(a__U41(mark(X134), X231), X2) :|: z = 1 + (1 + X134 + X231) + X2, X134 >= 0, X231 >= 0, X2 >= 0 mark(z) -{ 2 }-> a__U51(a__U31(mark(X75)), X2) :|: X75 >= 0, z = 1 + (1 + X75) + X2, X2 >= 0 mark(z) -{ 2 }-> a__U51(a__U21(mark(X74)), X2) :|: z = 1 + (1 + X74) + X2, X2 >= 0, X74 >= 0 mark(z) -{ 2 }-> a__U51(a__U11(mark(X73)), X2) :|: X73 >= 0, z = 1 + (1 + X73) + X2, X2 >= 0 mark(z) -{ 3 }-> a__U51(3, z - 4) :|: z - 4 >= 0 mark(z) -{ 2 }-> a__U51(2, z - 3) :|: z - 3 >= 0 mark(z) -{ 2 }-> a__U51(1, z - 2) :|: z - 2 >= 0 mark(z) -{ 2 }-> a__U51(0, z - 1) :|: z - 1 >= 0 mark(z) -{ 2 }-> a__U51(1 + mark(X82), X2) :|: X82 >= 0, z = 1 + (1 + X82) + X2, X2 >= 0 mark(z) -{ 2 }-> a__U51(1 + mark(X138) + X235, X2) :|: z = 1 + (1 + X138 + X235) + X2, X235 >= 0, X2 >= 0, X138 >= 0 mark(z) -{ 3 }-> a__U51(1 + 0 + 3, z - 4) :|: z - 4 >= 0 mark(z) -{ 2 }-> a__U42(a__length(mark(z - 2))) :|: z - 2 >= 0 mark(z) -{ 2 }-> a__U42(a__isNatList(z - 2)) :|: z - 2 >= 0 mark(z) -{ 2 }-> a__U42(a__isNatIList(z - 2)) :|: z - 2 >= 0 mark(z) -{ 2 }-> a__U42(a__isNat(z - 2)) :|: z - 2 >= 0 mark(z) -{ 2 }-> a__U42(a__U62(mark(X132), X229)) :|: X229 >= 0, z = 1 + (1 + X132 + X229), X132 >= 0 mark(z) -{ 2 }-> a__U42(a__U61(mark(X131), X228, X313)) :|: z = 1 + (1 + X131 + X228 + X313), X313 >= 0, X228 >= 0, X131 >= 0 mark(z) -{ 2 }-> a__U42(a__U52(mark(z - 2))) :|: z - 2 >= 0 mark(z) -{ 2 }-> a__U42(a__U51(mark(X130), X227)) :|: z = 1 + (1 + X130 + X227), X227 >= 0, X130 >= 0 mark(z) -{ 2 }-> a__U42(a__U42(mark(z - 2))) :|: z - 2 >= 0 mark(z) -{ 2 }-> a__U42(a__U41(mark(X129), X226)) :|: X129 >= 0, X226 >= 0, z = 1 + (1 + X129 + X226) mark(z) -{ 2 }-> a__U42(a__U31(mark(z - 2))) :|: z - 2 >= 0 mark(z) -{ 2 }-> a__U42(a__U21(mark(z - 2))) :|: z - 2 >= 0 mark(z) -{ 2 }-> a__U42(a__U11(mark(z - 2))) :|: z - 2 >= 0 mark(z) -{ 2 }-> a__U42(1 + mark(z - 2)) :|: z - 2 >= 0 mark(z) -{ 2 }-> a__U42(1 + mark(X133) + X230) :|: X133 >= 0, z = 1 + (1 + X133 + X230), X230 >= 0 mark(z) -{ 2 }-> a__U41(a__length(mark(X61)), X2) :|: X61 >= 0, z = 1 + (1 + X61) + X2, X2 >= 0 mark(z) -{ 2 }-> a__U41(a__isNatList(X59), X2) :|: z = 1 + (1 + X59) + X2, X59 >= 0, X2 >= 0 mark(z) -{ 2 }-> a__U41(a__isNatIList(X57), X2) :|: X57 >= 0, z = 1 + (1 + X57) + X2, X2 >= 0 mark(z) -{ 2 }-> a__U41(a__isNat(X60), X2) :|: X60 >= 0, X2 >= 0, z = 1 + (1 + X60) + X2 mark(z) -{ 2 }-> a__U41(a__U62(mark(X127), X224), X2) :|: X224 >= 0, z = 1 + (1 + X127 + X224) + X2, X127 >= 0, X2 >= 0 mark(z) -{ 2 }-> a__U41(a__U61(mark(X126), X223, X312), X2) :|: X223 >= 0, z = 1 + (1 + X126 + X223 + X312) + X2, X312 >= 0, X126 >= 0, X2 >= 0 mark(z) -{ 2 }-> a__U41(a__U52(mark(X58)), X2) :|: z = 1 + (1 + X58) + X2, X58 >= 0, X2 >= 0 mark(z) -{ 2 }-> a__U41(a__U51(mark(X125), X222), X2) :|: X222 >= 0, z = 1 + (1 + X125 + X222) + X2, X125 >= 0, X2 >= 0 mark(z) -{ 2 }-> a__U41(a__U42(mark(X56)), X2) :|: z = 1 + (1 + X56) + X2, X56 >= 0, X2 >= 0 mark(z) -{ 2 }-> a__U41(a__U41(mark(X124), X221), X2) :|: X124 >= 0, z = 1 + (1 + X124 + X221) + X2, X221 >= 0, X2 >= 0 mark(z) -{ 2 }-> a__U41(a__U31(mark(X55)), X2) :|: X2 >= 0, z = 1 + (1 + X55) + X2, X55 >= 0 mark(z) -{ 2 }-> a__U41(a__U21(mark(X54)), X2) :|: z = 1 + (1 + X54) + X2, X2 >= 0, X54 >= 0 mark(z) -{ 2 }-> a__U41(a__U11(mark(X53)), X2) :|: z = 1 + (1 + X53) + X2, X2 >= 0, X53 >= 0 mark(z) -{ 3 }-> a__U41(3, z - 4) :|: z - 4 >= 0 mark(z) -{ 2 }-> a__U41(2, z - 3) :|: z - 3 >= 0 mark(z) -{ 2 }-> a__U41(1, z - 2) :|: z - 2 >= 0 mark(z) -{ 2 }-> a__U41(0, z - 1) :|: z - 1 >= 0 mark(z) -{ 2 }-> a__U41(1 + mark(X62), X2) :|: z = 1 + (1 + X62) + X2, X62 >= 0, X2 >= 0 mark(z) -{ 2 }-> a__U41(1 + mark(X128) + X225, X2) :|: X128 >= 0, X225 >= 0, z = 1 + (1 + X128 + X225) + X2, X2 >= 0 mark(z) -{ 3 }-> a__U41(1 + 0 + 3, z - 4) :|: z - 4 >= 0 mark(z) -{ 2 }-> a__U31(a__length(mark(z - 2))) :|: z - 2 >= 0 mark(z) -{ 2 }-> a__U31(a__isNatList(z - 2)) :|: z - 2 >= 0 mark(z) -{ 2 }-> a__U31(a__isNatIList(z - 2)) :|: z - 2 >= 0 mark(z) -{ 2 }-> a__U31(a__isNat(z - 2)) :|: z - 2 >= 0 mark(z) -{ 2 }-> a__U31(a__U62(mark(X122), X219)) :|: z = 1 + (1 + X122 + X219), X122 >= 0, X219 >= 0 mark(z) -{ 2 }-> a__U31(a__U61(mark(X121), X218, X311)) :|: X311 >= 0, z = 1 + (1 + X121 + X218 + X311), X218 >= 0, X121 >= 0 mark(z) -{ 2 }-> a__U31(a__U52(mark(z - 2))) :|: z - 2 >= 0 mark(z) -{ 2 }-> a__U31(a__U51(mark(X120), X217)) :|: X120 >= 0, z = 1 + (1 + X120 + X217), X217 >= 0 mark(z) -{ 2 }-> a__U31(a__U42(mark(z - 2))) :|: z - 2 >= 0 mark(z) -{ 2 }-> a__U31(a__U41(mark(X119), X216)) :|: X216 >= 0, z = 1 + (1 + X119 + X216), X119 >= 0 mark(z) -{ 2 }-> a__U31(a__U31(mark(z - 2))) :|: z - 2 >= 0 mark(z) -{ 2 }-> a__U31(a__U21(mark(z - 2))) :|: z - 2 >= 0 mark(z) -{ 2 }-> a__U31(a__U11(mark(z - 2))) :|: z - 2 >= 0 mark(z) -{ 2 }-> a__U31(1 + mark(z - 2)) :|: z - 2 >= 0 mark(z) -{ 2 }-> a__U31(1 + mark(X123) + X220) :|: z = 1 + (1 + X123 + X220), X123 >= 0, X220 >= 0 mark(z) -{ 2 }-> a__U21(a__length(mark(z - 2))) :|: z - 2 >= 0 mark(z) -{ 2 }-> a__U21(a__isNatList(z - 2)) :|: z - 2 >= 0 mark(z) -{ 2 }-> a__U21(a__isNatIList(z - 2)) :|: z - 2 >= 0 mark(z) -{ 2 }-> a__U21(a__isNat(z - 2)) :|: z - 2 >= 0 mark(z) -{ 2 }-> a__U21(a__U62(mark(X117), X214)) :|: z = 1 + (1 + X117 + X214), X117 >= 0, X214 >= 0 mark(z) -{ 2 }-> a__U21(a__U61(mark(X116), X213, X310)) :|: X213 >= 0, z = 1 + (1 + X116 + X213 + X310), X116 >= 0, X310 >= 0 mark(z) -{ 2 }-> a__U21(a__U52(mark(z - 2))) :|: z - 2 >= 0 mark(z) -{ 2 }-> a__U21(a__U51(mark(X115), X212)) :|: X212 >= 0, z = 1 + (1 + X115 + X212), X115 >= 0 mark(z) -{ 2 }-> a__U21(a__U42(mark(z - 2))) :|: z - 2 >= 0 mark(z) -{ 2 }-> a__U21(a__U41(mark(X114), X211)) :|: X114 >= 0, z = 1 + (1 + X114 + X211), X211 >= 0 mark(z) -{ 2 }-> a__U21(a__U31(mark(z - 2))) :|: z - 2 >= 0 mark(z) -{ 2 }-> a__U21(a__U21(mark(z - 2))) :|: z - 2 >= 0 mark(z) -{ 2 }-> a__U21(a__U11(mark(z - 2))) :|: z - 2 >= 0 mark(z) -{ 2 }-> a__U21(1 + mark(z - 2)) :|: z - 2 >= 0 mark(z) -{ 2 }-> a__U21(1 + mark(X118) + X215) :|: X118 >= 0, X215 >= 0, z = 1 + (1 + X118 + X215) mark(z) -{ 2 }-> a__U11(a__length(mark(z - 2))) :|: z - 2 >= 0 mark(z) -{ 2 }-> a__U11(a__isNatList(z - 2)) :|: z - 2 >= 0 mark(z) -{ 2 }-> a__U11(a__isNatIList(z - 2)) :|: z - 2 >= 0 mark(z) -{ 2 }-> a__U11(a__isNat(z - 2)) :|: z - 2 >= 0 mark(z) -{ 2 }-> a__U11(a__U62(mark(X112), X29)) :|: z = 1 + (1 + X112 + X29), X29 >= 0, X112 >= 0 mark(z) -{ 2 }-> a__U11(a__U61(mark(X111), X28, X3'')) :|: X28 >= 0, X3'' >= 0, z = 1 + (1 + X111 + X28 + X3''), X111 >= 0 mark(z) -{ 2 }-> a__U11(a__U52(mark(z - 2))) :|: z - 2 >= 0 mark(z) -{ 2 }-> a__U11(a__U51(mark(X110), X25)) :|: X110 >= 0, z = 1 + (1 + X110 + X25), X25 >= 0 mark(z) -{ 2 }-> a__U11(a__U42(mark(z - 2))) :|: z - 2 >= 0 mark(z) -{ 2 }-> a__U11(a__U41(mark(X18), X24)) :|: X18 >= 0, z = 1 + (1 + X18 + X24), X24 >= 0 mark(z) -{ 2 }-> a__U11(a__U31(mark(z - 2))) :|: z - 2 >= 0 mark(z) -{ 2 }-> a__U11(a__U21(mark(z - 2))) :|: z - 2 >= 0 mark(z) -{ 2 }-> a__U11(a__U11(mark(z - 2))) :|: z - 2 >= 0 mark(z) -{ 2 }-> a__U11(1 + mark(z - 2)) :|: z - 2 >= 0 mark(z) -{ 2 }-> a__U11(1 + mark(X113) + X210) :|: X113 >= 0, z = 1 + (1 + X113 + X210), X210 >= 0 mark(z) -{ 2 }-> 3 :|: z = 3 mark(z) -{ 1 }-> 2 :|: z = 2 mark(z) -{ 3 }-> 2 :|: z = 1 + 2, 2 = 2 mark(z) -{ 1 }-> 1 :|: z = 1 mark(z) -{ 1 }-> 0 :|: z = 0 mark(z) -{ 3 }-> 1 + X :|: z = 1 + 0, X >= 0, 0 = X mark(z) -{ 3 }-> 1 + X :|: z = 1 + 2, X >= 0, 2 = X mark(z) -{ 3 }-> 1 + X :|: z = 1 + 1, X >= 0, 1 = X mark(z) -{ 4 }-> 1 + X :|: z = 1 + 3, X >= 0, 3 = X mark(z) -{ 4 }-> 1 + X :|: z = 1 + 3, X >= 0, 1 + 0 + 3 = X 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 mark(z) -{ 2 }-> 1 + 0 + 3 :|: z = 3 ---------------------------------------- (19) 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 ---------------------------------------- (20) 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__zeros -> cons(0, zeros) [1] a__U11(tt) -> tt [1] a__U21(tt) -> tt [1] a__U31(tt) -> tt [1] a__U41(tt, V2) -> a__U42(a__isNatIList(V2)) [1] a__U42(tt) -> tt [1] a__U51(tt, V2) -> a__U52(a__isNatList(V2)) [1] a__U52(tt) -> tt [1] a__U61(tt, L, N) -> a__U62(a__isNat(N), L) [1] a__U62(tt, L) -> s(a__length(mark(L))) [1] a__isNat(0) -> tt [1] a__isNat(length(V1)) -> a__U11(a__isNatList(V1)) [1] a__isNat(s(V1)) -> a__U21(a__isNat(V1)) [1] a__isNatIList(V) -> a__U31(a__isNatList(V)) [1] a__isNatIList(zeros) -> tt [1] a__isNatIList(cons(V1, V2)) -> a__U41(a__isNat(V1), V2) [1] a__isNatList(nil) -> tt [1] a__isNatList(cons(V1, V2)) -> a__U51(a__isNat(V1), V2) [1] a__length(nil) -> 0 [1] a__length(cons(N, L)) -> a__U61(a__isNatList(L), L, N) [1] mark(zeros) -> a__zeros [1] mark(U11(X)) -> a__U11(mark(X)) [1] mark(U21(X)) -> a__U21(mark(X)) [1] mark(U31(X)) -> a__U31(mark(X)) [1] mark(U41(X1, X2)) -> a__U41(mark(X1), X2) [1] mark(U42(X)) -> a__U42(mark(X)) [1] mark(isNatIList(X)) -> a__isNatIList(X) [1] mark(U51(X1, X2)) -> a__U51(mark(X1), X2) [1] mark(U52(X)) -> a__U52(mark(X)) [1] mark(isNatList(X)) -> a__isNatList(X) [1] mark(U61(X1, X2, X3)) -> a__U61(mark(X1), X2, X3) [1] mark(U62(X1, X2)) -> a__U62(mark(X1), X2) [1] mark(isNat(X)) -> a__isNat(X) [1] mark(length(X)) -> a__length(mark(X)) [1] mark(cons(X1, X2)) -> cons(mark(X1), X2) [1] mark(0) -> 0 [1] mark(tt) -> tt [1] mark(s(X)) -> s(mark(X)) [1] mark(nil) -> nil [1] a__zeros -> zeros [1] a__U11(X) -> U11(X) [1] a__U21(X) -> U21(X) [1] a__U31(X) -> U31(X) [1] a__U41(X1, X2) -> U41(X1, X2) [1] a__U42(X) -> U42(X) [1] a__isNatIList(X) -> isNatIList(X) [1] a__U51(X1, X2) -> U51(X1, X2) [1] a__U52(X) -> U52(X) [1] a__isNatList(X) -> isNatList(X) [1] a__U61(X1, X2, X3) -> U61(X1, X2, X3) [1] a__U62(X1, X2) -> U62(X1, X2) [1] a__isNat(X) -> isNat(X) [1] a__length(X) -> length(X) [1] The TRS has the following type information: a__zeros :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat cons :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat 0 :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat zeros :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat a__U11 :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat tt :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat a__U21 :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat a__U31 :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat a__U41 :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat a__U42 :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat a__isNatIList :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat a__U51 :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat a__U52 :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat a__isNatList :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat a__U61 :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat a__U62 :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat a__isNat :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat s :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat a__length :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat mark :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat length :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat nil :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat U11 :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat U21 :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat U31 :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat U41 :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat U42 :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat isNatIList :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat U51 :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat U52 :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat isNatList :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat U61 :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat U62 :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat isNat :: 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat -> 0:zeros:cons:tt:s:length:nil:U11:U21:U31:U41:U42:isNatIList:U51:U52:isNatList:U61:U62:isNat Rewrite Strategy: INNERMOST ---------------------------------------- (21) 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 zeros => 3 tt => 2 nil => 1 ---------------------------------------- (22) Obligation: Complexity RNTS consisting of the following rules: a__U11(z) -{ 1 }-> 2 :|: z = 2 a__U11(z) -{ 1 }-> 1 + X :|: X >= 0, z = X a__U21(z) -{ 1 }-> 2 :|: z = 2 a__U21(z) -{ 1 }-> 1 + X :|: X >= 0, z = X a__U31(z) -{ 1 }-> 2 :|: z = 2 a__U31(z) -{ 1 }-> 1 + X :|: X >= 0, z = X a__U41(z, z') -{ 1 }-> a__U42(a__isNatIList(V2)) :|: z = 2, z' = V2, V2 >= 0 a__U41(z, z') -{ 1 }-> 1 + X1 + X2 :|: X1 >= 0, X2 >= 0, z = X1, z' = X2 a__U42(z) -{ 1 }-> 2 :|: z = 2 a__U42(z) -{ 1 }-> 1 + X :|: X >= 0, z = X a__U51(z, z') -{ 1 }-> a__U52(a__isNatList(V2)) :|: z = 2, z' = V2, V2 >= 0 a__U51(z, z') -{ 1 }-> 1 + X1 + X2 :|: X1 >= 0, X2 >= 0, z = X1, z' = X2 a__U52(z) -{ 1 }-> 2 :|: z = 2 a__U52(z) -{ 1 }-> 1 + X :|: X >= 0, z = X a__U61(z, z', z'') -{ 1 }-> a__U62(a__isNat(N), L) :|: z = 2, L >= 0, z'' = N, z' = L, N >= 0 a__U61(z, z', z'') -{ 1 }-> 1 + X1 + X2 + X3 :|: X1 >= 0, X3 >= 0, X2 >= 0, z = X1, z' = X2, z'' = X3 a__U62(z, z') -{ 1 }-> 1 + a__length(mark(L)) :|: z = 2, L >= 0, z' = L a__U62(z, z') -{ 1 }-> 1 + X1 + X2 :|: X1 >= 0, X2 >= 0, z = X1, z' = X2 a__isNat(z) -{ 1 }-> a__U21(a__isNat(V1)) :|: z = 1 + V1, V1 >= 0 a__isNat(z) -{ 1 }-> a__U11(a__isNatList(V1)) :|: z = 1 + V1, V1 >= 0 a__isNat(z) -{ 1 }-> 2 :|: z = 0 a__isNat(z) -{ 1 }-> 1 + X :|: X >= 0, z = X a__isNatIList(z) -{ 1 }-> a__U41(a__isNat(V1), V2) :|: V1 >= 0, V2 >= 0, z = 1 + V1 + V2 a__isNatIList(z) -{ 1 }-> a__U31(a__isNatList(V)) :|: z = V, V >= 0 a__isNatIList(z) -{ 1 }-> 2 :|: z = 3 a__isNatIList(z) -{ 1 }-> 1 + X :|: X >= 0, z = X a__isNatList(z) -{ 1 }-> a__U51(a__isNat(V1), V2) :|: V1 >= 0, V2 >= 0, z = 1 + V1 + V2 a__isNatList(z) -{ 1 }-> 2 :|: z = 1 a__isNatList(z) -{ 1 }-> 1 + X :|: X >= 0, z = X a__length(z) -{ 1 }-> a__U61(a__isNatList(L), L, N) :|: z = 1 + N + L, L >= 0, N >= 0 a__length(z) -{ 1 }-> 0 :|: z = 1 a__length(z) -{ 1 }-> 1 + X :|: X >= 0, z = X a__zeros -{ 1 }-> 3 :|: a__zeros -{ 1 }-> 1 + 0 + 3 :|: mark(z) -{ 1 }-> a__zeros :|: z = 3 mark(z) -{ 1 }-> a__length(mark(X)) :|: z = 1 + X, X >= 0 mark(z) -{ 1 }-> a__isNatList(X) :|: z = 1 + X, X >= 0 mark(z) -{ 1 }-> a__isNatIList(X) :|: z = 1 + X, X >= 0 mark(z) -{ 1 }-> a__isNat(X) :|: z = 1 + X, X >= 0 mark(z) -{ 1 }-> a__U62(mark(X1), X2) :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2 mark(z) -{ 1 }-> a__U61(mark(X1), X2, X3) :|: X1 >= 0, X3 >= 0, z = 1 + X1 + X2 + X3, X2 >= 0 mark(z) -{ 1 }-> a__U52(mark(X)) :|: z = 1 + X, X >= 0 mark(z) -{ 1 }-> a__U51(mark(X1), X2) :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2 mark(z) -{ 1 }-> a__U42(mark(X)) :|: z = 1 + X, X >= 0 mark(z) -{ 1 }-> a__U41(mark(X1), X2) :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2 mark(z) -{ 1 }-> a__U31(mark(X)) :|: z = 1 + X, X >= 0 mark(z) -{ 1 }-> a__U21(mark(X)) :|: z = 1 + X, X >= 0 mark(z) -{ 1 }-> a__U11(mark(X)) :|: z = 1 + X, X >= 0 mark(z) -{ 1 }-> 2 :|: z = 2 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. ---------------------------------------- (23) CpxTrsToCdtProof (UPPER BOUND(ID)) Converted Cpx (relative) TRS with rewrite strategy PARALLEL_INNERMOST to CDT ---------------------------------------- (24) Obligation: Complexity Dependency Tuples Problem Rules: a__zeros -> cons(0, zeros) a__zeros -> zeros a__U11(tt) -> tt a__U11(z0) -> U11(z0) a__U21(tt) -> tt a__U21(z0) -> U21(z0) a__U31(tt) -> tt a__U31(z0) -> U31(z0) a__U41(tt, z0) -> a__U42(a__isNatIList(z0)) a__U41(z0, z1) -> U41(z0, z1) a__U42(tt) -> tt a__U42(z0) -> U42(z0) a__U51(tt, z0) -> a__U52(a__isNatList(z0)) a__U51(z0, z1) -> U51(z0, z1) a__U52(tt) -> tt a__U52(z0) -> U52(z0) a__U61(tt, z0, z1) -> a__U62(a__isNat(z1), z0) a__U61(z0, z1, z2) -> U61(z0, z1, z2) a__U62(tt, z0) -> s(a__length(mark(z0))) a__U62(z0, z1) -> U62(z0, z1) a__isNat(0) -> tt a__isNat(length(z0)) -> a__U11(a__isNatList(z0)) a__isNat(s(z0)) -> a__U21(a__isNat(z0)) a__isNat(z0) -> isNat(z0) a__isNatIList(z0) -> a__U31(a__isNatList(z0)) a__isNatIList(zeros) -> tt a__isNatIList(cons(z0, z1)) -> a__U41(a__isNat(z0), z1) a__isNatIList(z0) -> isNatIList(z0) a__isNatList(nil) -> tt a__isNatList(cons(z0, z1)) -> a__U51(a__isNat(z0), z1) a__isNatList(z0) -> isNatList(z0) a__length(nil) -> 0 a__length(cons(z0, z1)) -> a__U61(a__isNatList(z1), z1, z0) a__length(z0) -> length(z0) mark(zeros) -> a__zeros mark(U11(z0)) -> a__U11(mark(z0)) mark(U21(z0)) -> a__U21(mark(z0)) mark(U31(z0)) -> a__U31(mark(z0)) mark(U41(z0, z1)) -> a__U41(mark(z0), z1) mark(U42(z0)) -> a__U42(mark(z0)) mark(isNatIList(z0)) -> a__isNatIList(z0) mark(U51(z0, z1)) -> a__U51(mark(z0), z1) mark(U52(z0)) -> a__U52(mark(z0)) mark(isNatList(z0)) -> a__isNatList(z0) mark(U61(z0, z1, z2)) -> a__U61(mark(z0), z1, z2) mark(U62(z0, z1)) -> a__U62(mark(z0), z1) mark(isNat(z0)) -> a__isNat(z0) mark(length(z0)) -> a__length(mark(z0)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(0) -> 0 mark(tt) -> tt mark(s(z0)) -> s(mark(z0)) mark(nil) -> nil Tuples: A__ZEROS -> c A__ZEROS -> c1 A__U11(tt) -> c2 A__U11(z0) -> c3 A__U21(tt) -> c4 A__U21(z0) -> c5 A__U31(tt) -> c6 A__U31(z0) -> c7 A__U41(tt, z0) -> c8(A__U42(a__isNatIList(z0)), A__ISNATILIST(z0)) A__U41(z0, z1) -> c9 A__U42(tt) -> c10 A__U42(z0) -> c11 A__U51(tt, z0) -> c12(A__U52(a__isNatList(z0)), A__ISNATLIST(z0)) A__U51(z0, z1) -> c13 A__U52(tt) -> c14 A__U52(z0) -> c15 A__U61(tt, z0, z1) -> c16(A__U62(a__isNat(z1), z0), A__ISNAT(z1)) A__U61(z0, z1, z2) -> c17 A__U62(tt, z0) -> c18(A__LENGTH(mark(z0)), MARK(z0)) A__U62(z0, z1) -> c19 A__ISNAT(0) -> c20 A__ISNAT(length(z0)) -> c21(A__U11(a__isNatList(z0)), A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__U21(a__isNat(z0)), A__ISNAT(z0)) A__ISNAT(z0) -> c23 A__ISNATILIST(z0) -> c24(A__U31(a__isNatList(z0)), A__ISNATLIST(z0)) A__ISNATILIST(zeros) -> c25 A__ISNATILIST(cons(z0, z1)) -> c26(A__U41(a__isNat(z0), z1), A__ISNAT(z0)) A__ISNATILIST(z0) -> c27 A__ISNATLIST(nil) -> c28 A__ISNATLIST(cons(z0, z1)) -> c29(A__U51(a__isNat(z0), z1), A__ISNAT(z0)) A__ISNATLIST(z0) -> c30 A__LENGTH(nil) -> c31 A__LENGTH(cons(z0, z1)) -> c32(A__U61(a__isNatList(z1), z1, z0), A__ISNATLIST(z1)) A__LENGTH(z0) -> c33 MARK(zeros) -> c34(A__ZEROS) MARK(U11(z0)) -> c35(A__U11(mark(z0)), MARK(z0)) MARK(U21(z0)) -> c36(A__U21(mark(z0)), MARK(z0)) MARK(U31(z0)) -> c37(A__U31(mark(z0)), MARK(z0)) MARK(U41(z0, z1)) -> c38(A__U41(mark(z0), z1), MARK(z0)) MARK(U42(z0)) -> c39(A__U42(mark(z0)), MARK(z0)) MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(U51(z0, z1)) -> c41(A__U51(mark(z0), z1), MARK(z0)) MARK(U52(z0)) -> c42(A__U52(mark(z0)), MARK(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(U61(z0, z1, z2)) -> c44(A__U61(mark(z0), z1, z2), MARK(z0)) MARK(U62(z0, z1)) -> c45(A__U62(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(length(z0)) -> c47(A__LENGTH(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(0) -> c49 MARK(tt) -> c50 MARK(s(z0)) -> c51(MARK(z0)) MARK(nil) -> c52 S tuples: A__ZEROS -> c A__ZEROS -> c1 A__U11(tt) -> c2 A__U11(z0) -> c3 A__U21(tt) -> c4 A__U21(z0) -> c5 A__U31(tt) -> c6 A__U31(z0) -> c7 A__U41(tt, z0) -> c8(A__U42(a__isNatIList(z0)), A__ISNATILIST(z0)) A__U41(z0, z1) -> c9 A__U42(tt) -> c10 A__U42(z0) -> c11 A__U51(tt, z0) -> c12(A__U52(a__isNatList(z0)), A__ISNATLIST(z0)) A__U51(z0, z1) -> c13 A__U52(tt) -> c14 A__U52(z0) -> c15 A__U61(tt, z0, z1) -> c16(A__U62(a__isNat(z1), z0), A__ISNAT(z1)) A__U61(z0, z1, z2) -> c17 A__U62(tt, z0) -> c18(A__LENGTH(mark(z0)), MARK(z0)) A__U62(z0, z1) -> c19 A__ISNAT(0) -> c20 A__ISNAT(length(z0)) -> c21(A__U11(a__isNatList(z0)), A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__U21(a__isNat(z0)), A__ISNAT(z0)) A__ISNAT(z0) -> c23 A__ISNATILIST(z0) -> c24(A__U31(a__isNatList(z0)), A__ISNATLIST(z0)) A__ISNATILIST(zeros) -> c25 A__ISNATILIST(cons(z0, z1)) -> c26(A__U41(a__isNat(z0), z1), A__ISNAT(z0)) A__ISNATILIST(z0) -> c27 A__ISNATLIST(nil) -> c28 A__ISNATLIST(cons(z0, z1)) -> c29(A__U51(a__isNat(z0), z1), A__ISNAT(z0)) A__ISNATLIST(z0) -> c30 A__LENGTH(nil) -> c31 A__LENGTH(cons(z0, z1)) -> c32(A__U61(a__isNatList(z1), z1, z0), A__ISNATLIST(z1)) A__LENGTH(z0) -> c33 MARK(zeros) -> c34(A__ZEROS) MARK(U11(z0)) -> c35(A__U11(mark(z0)), MARK(z0)) MARK(U21(z0)) -> c36(A__U21(mark(z0)), MARK(z0)) MARK(U31(z0)) -> c37(A__U31(mark(z0)), MARK(z0)) MARK(U41(z0, z1)) -> c38(A__U41(mark(z0), z1), MARK(z0)) MARK(U42(z0)) -> c39(A__U42(mark(z0)), MARK(z0)) MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(U51(z0, z1)) -> c41(A__U51(mark(z0), z1), MARK(z0)) MARK(U52(z0)) -> c42(A__U52(mark(z0)), MARK(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(U61(z0, z1, z2)) -> c44(A__U61(mark(z0), z1, z2), MARK(z0)) MARK(U62(z0, z1)) -> c45(A__U62(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(length(z0)) -> c47(A__LENGTH(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(0) -> c49 MARK(tt) -> c50 MARK(s(z0)) -> c51(MARK(z0)) MARK(nil) -> c52 K tuples:none Defined Rule Symbols: a__zeros, a__U11_1, a__U21_1, a__U31_1, a__U41_2, a__U42_1, a__U51_2, a__U52_1, a__U61_3, a__U62_2, a__isNat_1, a__isNatIList_1, a__isNatList_1, a__length_1, mark_1 Defined Pair Symbols: A__ZEROS, A__U11_1, A__U21_1, A__U31_1, A__U41_2, A__U42_1, A__U51_2, A__U52_1, A__U61_3, A__U62_2, A__ISNAT_1, A__ISNATILIST_1, A__ISNATLIST_1, A__LENGTH_1, MARK_1 Compound Symbols: c, c1, c2, c3, c4, c5, c6, c7, c8_2, c9, c10, c11, c12_2, c13, c14, c15, c16_2, c17, c18_2, c19, c20, c21_2, c22_2, c23, c24_2, c25, c26_2, c27, c28, c29_2, c30, c31, c32_2, c33, c34_1, c35_2, c36_2, c37_2, c38_2, c39_2, c40_1, c41_2, c42_2, c43_1, c44_2, c45_2, c46_1, c47_2, c48_1, c49, c50, c51_1, c52 ---------------------------------------- (25) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 28 trailing nodes: A__ISNATLIST(nil) -> c28 MARK(nil) -> c52 A__U11(z0) -> c3 A__ISNATLIST(z0) -> c30 A__ISNATILIST(z0) -> c27 A__ISNATILIST(zeros) -> c25 A__U61(z0, z1, z2) -> c17 A__U42(z0) -> c11 MARK(tt) -> c50 A__LENGTH(z0) -> c33 A__U51(z0, z1) -> c13 A__ISNAT(0) -> c20 A__U52(tt) -> c14 A__U42(tt) -> c10 A__LENGTH(nil) -> c31 A__U52(z0) -> c15 A__ISNAT(z0) -> c23 A__U31(z0) -> c7 A__U21(tt) -> c4 MARK(0) -> c49 A__ZEROS -> c A__U31(tt) -> c6 A__U21(z0) -> c5 A__U11(tt) -> c2 A__ZEROS -> c1 MARK(zeros) -> c34(A__ZEROS) A__U41(z0, z1) -> c9 A__U62(z0, z1) -> c19 ---------------------------------------- (26) Obligation: Complexity Dependency Tuples Problem Rules: a__zeros -> cons(0, zeros) a__zeros -> zeros a__U11(tt) -> tt a__U11(z0) -> U11(z0) a__U21(tt) -> tt a__U21(z0) -> U21(z0) a__U31(tt) -> tt a__U31(z0) -> U31(z0) a__U41(tt, z0) -> a__U42(a__isNatIList(z0)) a__U41(z0, z1) -> U41(z0, z1) a__U42(tt) -> tt a__U42(z0) -> U42(z0) a__U51(tt, z0) -> a__U52(a__isNatList(z0)) a__U51(z0, z1) -> U51(z0, z1) a__U52(tt) -> tt a__U52(z0) -> U52(z0) a__U61(tt, z0, z1) -> a__U62(a__isNat(z1), z0) a__U61(z0, z1, z2) -> U61(z0, z1, z2) a__U62(tt, z0) -> s(a__length(mark(z0))) a__U62(z0, z1) -> U62(z0, z1) a__isNat(0) -> tt a__isNat(length(z0)) -> a__U11(a__isNatList(z0)) a__isNat(s(z0)) -> a__U21(a__isNat(z0)) a__isNat(z0) -> isNat(z0) a__isNatIList(z0) -> a__U31(a__isNatList(z0)) a__isNatIList(zeros) -> tt a__isNatIList(cons(z0, z1)) -> a__U41(a__isNat(z0), z1) a__isNatIList(z0) -> isNatIList(z0) a__isNatList(nil) -> tt a__isNatList(cons(z0, z1)) -> a__U51(a__isNat(z0), z1) a__isNatList(z0) -> isNatList(z0) a__length(nil) -> 0 a__length(cons(z0, z1)) -> a__U61(a__isNatList(z1), z1, z0) a__length(z0) -> length(z0) mark(zeros) -> a__zeros mark(U11(z0)) -> a__U11(mark(z0)) mark(U21(z0)) -> a__U21(mark(z0)) mark(U31(z0)) -> a__U31(mark(z0)) mark(U41(z0, z1)) -> a__U41(mark(z0), z1) mark(U42(z0)) -> a__U42(mark(z0)) mark(isNatIList(z0)) -> a__isNatIList(z0) mark(U51(z0, z1)) -> a__U51(mark(z0), z1) mark(U52(z0)) -> a__U52(mark(z0)) mark(isNatList(z0)) -> a__isNatList(z0) mark(U61(z0, z1, z2)) -> a__U61(mark(z0), z1, z2) mark(U62(z0, z1)) -> a__U62(mark(z0), z1) mark(isNat(z0)) -> a__isNat(z0) mark(length(z0)) -> a__length(mark(z0)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(0) -> 0 mark(tt) -> tt mark(s(z0)) -> s(mark(z0)) mark(nil) -> nil Tuples: A__U41(tt, z0) -> c8(A__U42(a__isNatIList(z0)), A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__U52(a__isNatList(z0)), A__ISNATLIST(z0)) A__U61(tt, z0, z1) -> c16(A__U62(a__isNat(z1), z0), A__ISNAT(z1)) A__U62(tt, z0) -> c18(A__LENGTH(mark(z0)), MARK(z0)) A__ISNAT(length(z0)) -> c21(A__U11(a__isNatList(z0)), A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__U21(a__isNat(z0)), A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__U31(a__isNatList(z0)), A__ISNATLIST(z0)) A__ISNATILIST(cons(z0, z1)) -> c26(A__U41(a__isNat(z0), z1), A__ISNAT(z0)) A__ISNATLIST(cons(z0, z1)) -> c29(A__U51(a__isNat(z0), z1), A__ISNAT(z0)) A__LENGTH(cons(z0, z1)) -> c32(A__U61(a__isNatList(z1), z1, z0), A__ISNATLIST(z1)) MARK(U11(z0)) -> c35(A__U11(mark(z0)), MARK(z0)) MARK(U21(z0)) -> c36(A__U21(mark(z0)), MARK(z0)) MARK(U31(z0)) -> c37(A__U31(mark(z0)), MARK(z0)) MARK(U41(z0, z1)) -> c38(A__U41(mark(z0), z1), MARK(z0)) MARK(U42(z0)) -> c39(A__U42(mark(z0)), MARK(z0)) MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(U51(z0, z1)) -> c41(A__U51(mark(z0), z1), MARK(z0)) MARK(U52(z0)) -> c42(A__U52(mark(z0)), MARK(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(U61(z0, z1, z2)) -> c44(A__U61(mark(z0), z1, z2), MARK(z0)) MARK(U62(z0, z1)) -> c45(A__U62(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(length(z0)) -> c47(A__LENGTH(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) S tuples: A__U41(tt, z0) -> c8(A__U42(a__isNatIList(z0)), A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__U52(a__isNatList(z0)), A__ISNATLIST(z0)) A__U61(tt, z0, z1) -> c16(A__U62(a__isNat(z1), z0), A__ISNAT(z1)) A__U62(tt, z0) -> c18(A__LENGTH(mark(z0)), MARK(z0)) A__ISNAT(length(z0)) -> c21(A__U11(a__isNatList(z0)), A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__U21(a__isNat(z0)), A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__U31(a__isNatList(z0)), A__ISNATLIST(z0)) A__ISNATILIST(cons(z0, z1)) -> c26(A__U41(a__isNat(z0), z1), A__ISNAT(z0)) A__ISNATLIST(cons(z0, z1)) -> c29(A__U51(a__isNat(z0), z1), A__ISNAT(z0)) A__LENGTH(cons(z0, z1)) -> c32(A__U61(a__isNatList(z1), z1, z0), A__ISNATLIST(z1)) MARK(U11(z0)) -> c35(A__U11(mark(z0)), MARK(z0)) MARK(U21(z0)) -> c36(A__U21(mark(z0)), MARK(z0)) MARK(U31(z0)) -> c37(A__U31(mark(z0)), MARK(z0)) MARK(U41(z0, z1)) -> c38(A__U41(mark(z0), z1), MARK(z0)) MARK(U42(z0)) -> c39(A__U42(mark(z0)), MARK(z0)) MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(U51(z0, z1)) -> c41(A__U51(mark(z0), z1), MARK(z0)) MARK(U52(z0)) -> c42(A__U52(mark(z0)), MARK(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(U61(z0, z1, z2)) -> c44(A__U61(mark(z0), z1, z2), MARK(z0)) MARK(U62(z0, z1)) -> c45(A__U62(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(length(z0)) -> c47(A__LENGTH(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) K tuples:none Defined Rule Symbols: a__zeros, a__U11_1, a__U21_1, a__U31_1, a__U41_2, a__U42_1, a__U51_2, a__U52_1, a__U61_3, a__U62_2, a__isNat_1, a__isNatIList_1, a__isNatList_1, a__length_1, mark_1 Defined Pair Symbols: A__U41_2, A__U51_2, A__U61_3, A__U62_2, A__ISNAT_1, A__ISNATILIST_1, A__ISNATLIST_1, A__LENGTH_1, MARK_1 Compound Symbols: c8_2, c12_2, c16_2, c18_2, c21_2, c22_2, c24_2, c26_2, c29_2, c32_2, c35_2, c36_2, c37_2, c38_2, c39_2, c40_1, c41_2, c42_2, c43_1, c44_2, c45_2, c46_1, c47_2, c48_1, c51_1 ---------------------------------------- (27) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 10 trailing tuple parts ---------------------------------------- (28) Obligation: Complexity Dependency Tuples Problem Rules: a__zeros -> cons(0, zeros) a__zeros -> zeros a__U11(tt) -> tt a__U11(z0) -> U11(z0) a__U21(tt) -> tt a__U21(z0) -> U21(z0) a__U31(tt) -> tt a__U31(z0) -> U31(z0) a__U41(tt, z0) -> a__U42(a__isNatIList(z0)) a__U41(z0, z1) -> U41(z0, z1) a__U42(tt) -> tt a__U42(z0) -> U42(z0) a__U51(tt, z0) -> a__U52(a__isNatList(z0)) a__U51(z0, z1) -> U51(z0, z1) a__U52(tt) -> tt a__U52(z0) -> U52(z0) a__U61(tt, z0, z1) -> a__U62(a__isNat(z1), z0) a__U61(z0, z1, z2) -> U61(z0, z1, z2) a__U62(tt, z0) -> s(a__length(mark(z0))) a__U62(z0, z1) -> U62(z0, z1) a__isNat(0) -> tt a__isNat(length(z0)) -> a__U11(a__isNatList(z0)) a__isNat(s(z0)) -> a__U21(a__isNat(z0)) a__isNat(z0) -> isNat(z0) a__isNatIList(z0) -> a__U31(a__isNatList(z0)) a__isNatIList(zeros) -> tt a__isNatIList(cons(z0, z1)) -> a__U41(a__isNat(z0), z1) a__isNatIList(z0) -> isNatIList(z0) a__isNatList(nil) -> tt a__isNatList(cons(z0, z1)) -> a__U51(a__isNat(z0), z1) a__isNatList(z0) -> isNatList(z0) a__length(nil) -> 0 a__length(cons(z0, z1)) -> a__U61(a__isNatList(z1), z1, z0) a__length(z0) -> length(z0) mark(zeros) -> a__zeros mark(U11(z0)) -> a__U11(mark(z0)) mark(U21(z0)) -> a__U21(mark(z0)) mark(U31(z0)) -> a__U31(mark(z0)) mark(U41(z0, z1)) -> a__U41(mark(z0), z1) mark(U42(z0)) -> a__U42(mark(z0)) mark(isNatIList(z0)) -> a__isNatIList(z0) mark(U51(z0, z1)) -> a__U51(mark(z0), z1) mark(U52(z0)) -> a__U52(mark(z0)) mark(isNatList(z0)) -> a__isNatList(z0) mark(U61(z0, z1, z2)) -> a__U61(mark(z0), z1, z2) mark(U62(z0, z1)) -> a__U62(mark(z0), z1) mark(isNat(z0)) -> a__isNat(z0) mark(length(z0)) -> a__length(mark(z0)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(0) -> 0 mark(tt) -> tt mark(s(z0)) -> s(mark(z0)) mark(nil) -> nil Tuples: A__U61(tt, z0, z1) -> c16(A__U62(a__isNat(z1), z0), A__ISNAT(z1)) A__U62(tt, z0) -> c18(A__LENGTH(mark(z0)), MARK(z0)) A__ISNATILIST(cons(z0, z1)) -> c26(A__U41(a__isNat(z0), z1), A__ISNAT(z0)) A__ISNATLIST(cons(z0, z1)) -> c29(A__U51(a__isNat(z0), z1), A__ISNAT(z0)) A__LENGTH(cons(z0, z1)) -> c32(A__U61(a__isNatList(z1), z1, z0), A__ISNATLIST(z1)) MARK(U41(z0, z1)) -> c38(A__U41(mark(z0), z1), MARK(z0)) MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(U51(z0, z1)) -> c41(A__U51(mark(z0), z1), MARK(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(U61(z0, z1, z2)) -> c44(A__U61(mark(z0), z1, z2), MARK(z0)) MARK(U62(z0, z1)) -> c45(A__U62(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(length(z0)) -> c47(A__LENGTH(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) S tuples: A__U61(tt, z0, z1) -> c16(A__U62(a__isNat(z1), z0), A__ISNAT(z1)) A__U62(tt, z0) -> c18(A__LENGTH(mark(z0)), MARK(z0)) A__ISNATILIST(cons(z0, z1)) -> c26(A__U41(a__isNat(z0), z1), A__ISNAT(z0)) A__ISNATLIST(cons(z0, z1)) -> c29(A__U51(a__isNat(z0), z1), A__ISNAT(z0)) A__LENGTH(cons(z0, z1)) -> c32(A__U61(a__isNatList(z1), z1, z0), A__ISNATLIST(z1)) MARK(U41(z0, z1)) -> c38(A__U41(mark(z0), z1), MARK(z0)) MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(U51(z0, z1)) -> c41(A__U51(mark(z0), z1), MARK(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(U61(z0, z1, z2)) -> c44(A__U61(mark(z0), z1, z2), MARK(z0)) MARK(U62(z0, z1)) -> c45(A__U62(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(length(z0)) -> c47(A__LENGTH(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) K tuples:none Defined Rule Symbols: a__zeros, a__U11_1, a__U21_1, a__U31_1, a__U41_2, a__U42_1, a__U51_2, a__U52_1, a__U61_3, a__U62_2, a__isNat_1, a__isNatIList_1, a__isNatList_1, a__length_1, mark_1 Defined Pair Symbols: A__U61_3, A__U62_2, A__ISNATILIST_1, A__ISNATLIST_1, A__LENGTH_1, MARK_1, A__U41_2, A__U51_2, A__ISNAT_1 Compound Symbols: c16_2, c18_2, c26_2, c29_2, c32_2, c38_2, c40_1, c41_2, c43_1, c44_2, c45_2, c46_1, c47_2, c48_1, c51_1, c8_1, c12_1, c21_1, c22_1, c24_1, c35_1, c36_1, c37_1, c39_1, c42_1 ---------------------------------------- (29) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace A__U61(tt, z0, z1) -> c16(A__U62(a__isNat(z1), z0), A__ISNAT(z1)) by A__U61(tt, x0, 0) -> c16(A__U62(tt, x0), A__ISNAT(0)) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(a__isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(a__isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, z0) -> c16(A__U62(isNat(z0), x0), A__ISNAT(z0)) ---------------------------------------- (30) Obligation: Complexity Dependency Tuples Problem Rules: a__zeros -> cons(0, zeros) a__zeros -> zeros a__U11(tt) -> tt a__U11(z0) -> U11(z0) a__U21(tt) -> tt a__U21(z0) -> U21(z0) a__U31(tt) -> tt a__U31(z0) -> U31(z0) a__U41(tt, z0) -> a__U42(a__isNatIList(z0)) a__U41(z0, z1) -> U41(z0, z1) a__U42(tt) -> tt a__U42(z0) -> U42(z0) a__U51(tt, z0) -> a__U52(a__isNatList(z0)) a__U51(z0, z1) -> U51(z0, z1) a__U52(tt) -> tt a__U52(z0) -> U52(z0) a__U61(tt, z0, z1) -> a__U62(a__isNat(z1), z0) a__U61(z0, z1, z2) -> U61(z0, z1, z2) a__U62(tt, z0) -> s(a__length(mark(z0))) a__U62(z0, z1) -> U62(z0, z1) a__isNat(0) -> tt a__isNat(length(z0)) -> a__U11(a__isNatList(z0)) a__isNat(s(z0)) -> a__U21(a__isNat(z0)) a__isNat(z0) -> isNat(z0) a__isNatIList(z0) -> a__U31(a__isNatList(z0)) a__isNatIList(zeros) -> tt a__isNatIList(cons(z0, z1)) -> a__U41(a__isNat(z0), z1) a__isNatIList(z0) -> isNatIList(z0) a__isNatList(nil) -> tt a__isNatList(cons(z0, z1)) -> a__U51(a__isNat(z0), z1) a__isNatList(z0) -> isNatList(z0) a__length(nil) -> 0 a__length(cons(z0, z1)) -> a__U61(a__isNatList(z1), z1, z0) a__length(z0) -> length(z0) mark(zeros) -> a__zeros mark(U11(z0)) -> a__U11(mark(z0)) mark(U21(z0)) -> a__U21(mark(z0)) mark(U31(z0)) -> a__U31(mark(z0)) mark(U41(z0, z1)) -> a__U41(mark(z0), z1) mark(U42(z0)) -> a__U42(mark(z0)) mark(isNatIList(z0)) -> a__isNatIList(z0) mark(U51(z0, z1)) -> a__U51(mark(z0), z1) mark(U52(z0)) -> a__U52(mark(z0)) mark(isNatList(z0)) -> a__isNatList(z0) mark(U61(z0, z1, z2)) -> a__U61(mark(z0), z1, z2) mark(U62(z0, z1)) -> a__U62(mark(z0), z1) mark(isNat(z0)) -> a__isNat(z0) mark(length(z0)) -> a__length(mark(z0)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(0) -> 0 mark(tt) -> tt mark(s(z0)) -> s(mark(z0)) mark(nil) -> nil Tuples: A__U62(tt, z0) -> c18(A__LENGTH(mark(z0)), MARK(z0)) A__ISNATILIST(cons(z0, z1)) -> c26(A__U41(a__isNat(z0), z1), A__ISNAT(z0)) A__ISNATLIST(cons(z0, z1)) -> c29(A__U51(a__isNat(z0), z1), A__ISNAT(z0)) A__LENGTH(cons(z0, z1)) -> c32(A__U61(a__isNatList(z1), z1, z0), A__ISNATLIST(z1)) MARK(U41(z0, z1)) -> c38(A__U41(mark(z0), z1), MARK(z0)) MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(U51(z0, z1)) -> c41(A__U51(mark(z0), z1), MARK(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(U61(z0, z1, z2)) -> c44(A__U61(mark(z0), z1, z2), MARK(z0)) MARK(U62(z0, z1)) -> c45(A__U62(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(length(z0)) -> c47(A__LENGTH(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0), A__ISNAT(0)) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(a__isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(a__isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, z0) -> c16(A__U62(isNat(z0), x0), A__ISNAT(z0)) S tuples: A__U62(tt, z0) -> c18(A__LENGTH(mark(z0)), MARK(z0)) A__ISNATILIST(cons(z0, z1)) -> c26(A__U41(a__isNat(z0), z1), A__ISNAT(z0)) A__ISNATLIST(cons(z0, z1)) -> c29(A__U51(a__isNat(z0), z1), A__ISNAT(z0)) A__LENGTH(cons(z0, z1)) -> c32(A__U61(a__isNatList(z1), z1, z0), A__ISNATLIST(z1)) MARK(U41(z0, z1)) -> c38(A__U41(mark(z0), z1), MARK(z0)) MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(U51(z0, z1)) -> c41(A__U51(mark(z0), z1), MARK(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(U61(z0, z1, z2)) -> c44(A__U61(mark(z0), z1, z2), MARK(z0)) MARK(U62(z0, z1)) -> c45(A__U62(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(length(z0)) -> c47(A__LENGTH(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0), A__ISNAT(0)) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(a__isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(a__isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, z0) -> c16(A__U62(isNat(z0), x0), A__ISNAT(z0)) K tuples:none Defined Rule Symbols: a__zeros, a__U11_1, a__U21_1, a__U31_1, a__U41_2, a__U42_1, a__U51_2, a__U52_1, a__U61_3, a__U62_2, a__isNat_1, a__isNatIList_1, a__isNatList_1, a__length_1, mark_1 Defined Pair Symbols: A__U62_2, A__ISNATILIST_1, A__ISNATLIST_1, A__LENGTH_1, MARK_1, A__U41_2, A__U51_2, A__ISNAT_1, A__U61_3 Compound Symbols: c18_2, c26_2, c29_2, c32_2, c38_2, c40_1, c41_2, c43_1, c44_2, c45_2, c46_1, c47_2, c48_1, c51_1, c8_1, c12_1, c21_1, c22_1, c24_1, c35_1, c36_1, c37_1, c39_1, c42_1, c16_2 ---------------------------------------- (31) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 2 trailing tuple parts ---------------------------------------- (32) Obligation: Complexity Dependency Tuples Problem Rules: a__zeros -> cons(0, zeros) a__zeros -> zeros a__U11(tt) -> tt a__U11(z0) -> U11(z0) a__U21(tt) -> tt a__U21(z0) -> U21(z0) a__U31(tt) -> tt a__U31(z0) -> U31(z0) a__U41(tt, z0) -> a__U42(a__isNatIList(z0)) a__U41(z0, z1) -> U41(z0, z1) a__U42(tt) -> tt a__U42(z0) -> U42(z0) a__U51(tt, z0) -> a__U52(a__isNatList(z0)) a__U51(z0, z1) -> U51(z0, z1) a__U52(tt) -> tt a__U52(z0) -> U52(z0) a__U61(tt, z0, z1) -> a__U62(a__isNat(z1), z0) a__U61(z0, z1, z2) -> U61(z0, z1, z2) a__U62(tt, z0) -> s(a__length(mark(z0))) a__U62(z0, z1) -> U62(z0, z1) a__isNat(0) -> tt a__isNat(length(z0)) -> a__U11(a__isNatList(z0)) a__isNat(s(z0)) -> a__U21(a__isNat(z0)) a__isNat(z0) -> isNat(z0) a__isNatIList(z0) -> a__U31(a__isNatList(z0)) a__isNatIList(zeros) -> tt a__isNatIList(cons(z0, z1)) -> a__U41(a__isNat(z0), z1) a__isNatIList(z0) -> isNatIList(z0) a__isNatList(nil) -> tt a__isNatList(cons(z0, z1)) -> a__U51(a__isNat(z0), z1) a__isNatList(z0) -> isNatList(z0) a__length(nil) -> 0 a__length(cons(z0, z1)) -> a__U61(a__isNatList(z1), z1, z0) a__length(z0) -> length(z0) mark(zeros) -> a__zeros mark(U11(z0)) -> a__U11(mark(z0)) mark(U21(z0)) -> a__U21(mark(z0)) mark(U31(z0)) -> a__U31(mark(z0)) mark(U41(z0, z1)) -> a__U41(mark(z0), z1) mark(U42(z0)) -> a__U42(mark(z0)) mark(isNatIList(z0)) -> a__isNatIList(z0) mark(U51(z0, z1)) -> a__U51(mark(z0), z1) mark(U52(z0)) -> a__U52(mark(z0)) mark(isNatList(z0)) -> a__isNatList(z0) mark(U61(z0, z1, z2)) -> a__U61(mark(z0), z1, z2) mark(U62(z0, z1)) -> a__U62(mark(z0), z1) mark(isNat(z0)) -> a__isNat(z0) mark(length(z0)) -> a__length(mark(z0)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(0) -> 0 mark(tt) -> tt mark(s(z0)) -> s(mark(z0)) mark(nil) -> nil Tuples: A__U62(tt, z0) -> c18(A__LENGTH(mark(z0)), MARK(z0)) A__ISNATILIST(cons(z0, z1)) -> c26(A__U41(a__isNat(z0), z1), A__ISNAT(z0)) A__ISNATLIST(cons(z0, z1)) -> c29(A__U51(a__isNat(z0), z1), A__ISNAT(z0)) A__LENGTH(cons(z0, z1)) -> c32(A__U61(a__isNatList(z1), z1, z0), A__ISNATLIST(z1)) MARK(U41(z0, z1)) -> c38(A__U41(mark(z0), z1), MARK(z0)) MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(U51(z0, z1)) -> c41(A__U51(mark(z0), z1), MARK(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(U61(z0, z1, z2)) -> c44(A__U61(mark(z0), z1, z2), MARK(z0)) MARK(U62(z0, z1)) -> c45(A__U62(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(length(z0)) -> c47(A__LENGTH(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(a__isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(a__isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) S tuples: A__U62(tt, z0) -> c18(A__LENGTH(mark(z0)), MARK(z0)) A__ISNATILIST(cons(z0, z1)) -> c26(A__U41(a__isNat(z0), z1), A__ISNAT(z0)) A__ISNATLIST(cons(z0, z1)) -> c29(A__U51(a__isNat(z0), z1), A__ISNAT(z0)) A__LENGTH(cons(z0, z1)) -> c32(A__U61(a__isNatList(z1), z1, z0), A__ISNATLIST(z1)) MARK(U41(z0, z1)) -> c38(A__U41(mark(z0), z1), MARK(z0)) MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(U51(z0, z1)) -> c41(A__U51(mark(z0), z1), MARK(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(U61(z0, z1, z2)) -> c44(A__U61(mark(z0), z1, z2), MARK(z0)) MARK(U62(z0, z1)) -> c45(A__U62(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(length(z0)) -> c47(A__LENGTH(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(a__isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(a__isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) K tuples:none Defined Rule Symbols: a__zeros, a__U11_1, a__U21_1, a__U31_1, a__U41_2, a__U42_1, a__U51_2, a__U52_1, a__U61_3, a__U62_2, a__isNat_1, a__isNatIList_1, a__isNatList_1, a__length_1, mark_1 Defined Pair Symbols: A__U62_2, A__ISNATILIST_1, A__ISNATLIST_1, A__LENGTH_1, MARK_1, A__U41_2, A__U51_2, A__ISNAT_1, A__U61_3 Compound Symbols: c18_2, c26_2, c29_2, c32_2, c38_2, c40_1, c41_2, c43_1, c44_2, c45_2, c46_1, c47_2, c48_1, c51_1, c8_1, c12_1, c21_1, c22_1, c24_1, c35_1, c36_1, c37_1, c39_1, c42_1, c16_2, c16_1 ---------------------------------------- (33) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace A__U62(tt, z0) -> c18(A__LENGTH(mark(z0)), MARK(z0)) by A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros), MARK(zeros)) A__U62(tt, U11(z0)) -> c18(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) A__U62(tt, U21(z0)) -> c18(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) A__U62(tt, U31(z0)) -> c18(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) A__U62(tt, U41(z0, z1)) -> c18(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) A__U62(tt, U42(z0)) -> c18(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) A__U62(tt, U51(z0, z1)) -> c18(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) A__U62(tt, U52(z0)) -> c18(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) A__U62(tt, isNatList(z0)) -> c18(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) A__U62(tt, U61(z0, z1, z2)) -> c18(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) A__U62(tt, U62(z0, z1)) -> c18(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, 0) -> c18(A__LENGTH(0), MARK(0)) A__U62(tt, tt) -> c18(A__LENGTH(tt), MARK(tt)) A__U62(tt, s(z0)) -> c18(A__LENGTH(s(mark(z0))), MARK(s(z0))) A__U62(tt, nil) -> c18(A__LENGTH(nil), MARK(nil)) ---------------------------------------- (34) Obligation: Complexity Dependency Tuples Problem Rules: a__zeros -> cons(0, zeros) a__zeros -> zeros a__U11(tt) -> tt a__U11(z0) -> U11(z0) a__U21(tt) -> tt a__U21(z0) -> U21(z0) a__U31(tt) -> tt a__U31(z0) -> U31(z0) a__U41(tt, z0) -> a__U42(a__isNatIList(z0)) a__U41(z0, z1) -> U41(z0, z1) a__U42(tt) -> tt a__U42(z0) -> U42(z0) a__U51(tt, z0) -> a__U52(a__isNatList(z0)) a__U51(z0, z1) -> U51(z0, z1) a__U52(tt) -> tt a__U52(z0) -> U52(z0) a__U61(tt, z0, z1) -> a__U62(a__isNat(z1), z0) a__U61(z0, z1, z2) -> U61(z0, z1, z2) a__U62(tt, z0) -> s(a__length(mark(z0))) a__U62(z0, z1) -> U62(z0, z1) a__isNat(0) -> tt a__isNat(length(z0)) -> a__U11(a__isNatList(z0)) a__isNat(s(z0)) -> a__U21(a__isNat(z0)) a__isNat(z0) -> isNat(z0) a__isNatIList(z0) -> a__U31(a__isNatList(z0)) a__isNatIList(zeros) -> tt a__isNatIList(cons(z0, z1)) -> a__U41(a__isNat(z0), z1) a__isNatIList(z0) -> isNatIList(z0) a__isNatList(nil) -> tt a__isNatList(cons(z0, z1)) -> a__U51(a__isNat(z0), z1) a__isNatList(z0) -> isNatList(z0) a__length(nil) -> 0 a__length(cons(z0, z1)) -> a__U61(a__isNatList(z1), z1, z0) a__length(z0) -> length(z0) mark(zeros) -> a__zeros mark(U11(z0)) -> a__U11(mark(z0)) mark(U21(z0)) -> a__U21(mark(z0)) mark(U31(z0)) -> a__U31(mark(z0)) mark(U41(z0, z1)) -> a__U41(mark(z0), z1) mark(U42(z0)) -> a__U42(mark(z0)) mark(isNatIList(z0)) -> a__isNatIList(z0) mark(U51(z0, z1)) -> a__U51(mark(z0), z1) mark(U52(z0)) -> a__U52(mark(z0)) mark(isNatList(z0)) -> a__isNatList(z0) mark(U61(z0, z1, z2)) -> a__U61(mark(z0), z1, z2) mark(U62(z0, z1)) -> a__U62(mark(z0), z1) mark(isNat(z0)) -> a__isNat(z0) mark(length(z0)) -> a__length(mark(z0)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(0) -> 0 mark(tt) -> tt mark(s(z0)) -> s(mark(z0)) mark(nil) -> nil Tuples: A__ISNATILIST(cons(z0, z1)) -> c26(A__U41(a__isNat(z0), z1), A__ISNAT(z0)) A__ISNATLIST(cons(z0, z1)) -> c29(A__U51(a__isNat(z0), z1), A__ISNAT(z0)) A__LENGTH(cons(z0, z1)) -> c32(A__U61(a__isNatList(z1), z1, z0), A__ISNATLIST(z1)) MARK(U41(z0, z1)) -> c38(A__U41(mark(z0), z1), MARK(z0)) MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(U51(z0, z1)) -> c41(A__U51(mark(z0), z1), MARK(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(U61(z0, z1, z2)) -> c44(A__U61(mark(z0), z1, z2), MARK(z0)) MARK(U62(z0, z1)) -> c45(A__U62(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(length(z0)) -> c47(A__LENGTH(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(a__isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(a__isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros), MARK(zeros)) A__U62(tt, U11(z0)) -> c18(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) A__U62(tt, U21(z0)) -> c18(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) A__U62(tt, U31(z0)) -> c18(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) A__U62(tt, U41(z0, z1)) -> c18(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) A__U62(tt, U42(z0)) -> c18(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) A__U62(tt, U51(z0, z1)) -> c18(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) A__U62(tt, U52(z0)) -> c18(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) A__U62(tt, isNatList(z0)) -> c18(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) A__U62(tt, U61(z0, z1, z2)) -> c18(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) A__U62(tt, U62(z0, z1)) -> c18(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, 0) -> c18(A__LENGTH(0), MARK(0)) A__U62(tt, tt) -> c18(A__LENGTH(tt), MARK(tt)) A__U62(tt, s(z0)) -> c18(A__LENGTH(s(mark(z0))), MARK(s(z0))) A__U62(tt, nil) -> c18(A__LENGTH(nil), MARK(nil)) S tuples: A__ISNATILIST(cons(z0, z1)) -> c26(A__U41(a__isNat(z0), z1), A__ISNAT(z0)) A__ISNATLIST(cons(z0, z1)) -> c29(A__U51(a__isNat(z0), z1), A__ISNAT(z0)) A__LENGTH(cons(z0, z1)) -> c32(A__U61(a__isNatList(z1), z1, z0), A__ISNATLIST(z1)) MARK(U41(z0, z1)) -> c38(A__U41(mark(z0), z1), MARK(z0)) MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(U51(z0, z1)) -> c41(A__U51(mark(z0), z1), MARK(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(U61(z0, z1, z2)) -> c44(A__U61(mark(z0), z1, z2), MARK(z0)) MARK(U62(z0, z1)) -> c45(A__U62(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(length(z0)) -> c47(A__LENGTH(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(a__isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(a__isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros), MARK(zeros)) A__U62(tt, U11(z0)) -> c18(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) A__U62(tt, U21(z0)) -> c18(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) A__U62(tt, U31(z0)) -> c18(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) A__U62(tt, U41(z0, z1)) -> c18(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) A__U62(tt, U42(z0)) -> c18(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) A__U62(tt, U51(z0, z1)) -> c18(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) A__U62(tt, U52(z0)) -> c18(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) A__U62(tt, isNatList(z0)) -> c18(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) A__U62(tt, U61(z0, z1, z2)) -> c18(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) A__U62(tt, U62(z0, z1)) -> c18(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, 0) -> c18(A__LENGTH(0), MARK(0)) A__U62(tt, tt) -> c18(A__LENGTH(tt), MARK(tt)) A__U62(tt, s(z0)) -> c18(A__LENGTH(s(mark(z0))), MARK(s(z0))) A__U62(tt, nil) -> c18(A__LENGTH(nil), MARK(nil)) K tuples:none Defined Rule Symbols: a__zeros, a__U11_1, a__U21_1, a__U31_1, a__U41_2, a__U42_1, a__U51_2, a__U52_1, a__U61_3, a__U62_2, a__isNat_1, a__isNatIList_1, a__isNatList_1, a__length_1, mark_1 Defined Pair Symbols: A__ISNATILIST_1, A__ISNATLIST_1, A__LENGTH_1, MARK_1, A__U41_2, A__U51_2, A__ISNAT_1, A__U61_3, A__U62_2 Compound Symbols: c26_2, c29_2, c32_2, c38_2, c40_1, c41_2, c43_1, c44_2, c45_2, c46_1, c47_2, c48_1, c51_1, c8_1, c12_1, c21_1, c22_1, c24_1, c35_1, c36_1, c37_1, c39_1, c42_1, c16_2, c16_1, c18_2 ---------------------------------------- (35) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 3 trailing nodes: A__U62(tt, tt) -> c18(A__LENGTH(tt), MARK(tt)) A__U62(tt, nil) -> c18(A__LENGTH(nil), MARK(nil)) A__U62(tt, 0) -> c18(A__LENGTH(0), MARK(0)) ---------------------------------------- (36) Obligation: Complexity Dependency Tuples Problem Rules: a__zeros -> cons(0, zeros) a__zeros -> zeros a__U11(tt) -> tt a__U11(z0) -> U11(z0) a__U21(tt) -> tt a__U21(z0) -> U21(z0) a__U31(tt) -> tt a__U31(z0) -> U31(z0) a__U41(tt, z0) -> a__U42(a__isNatIList(z0)) a__U41(z0, z1) -> U41(z0, z1) a__U42(tt) -> tt a__U42(z0) -> U42(z0) a__U51(tt, z0) -> a__U52(a__isNatList(z0)) a__U51(z0, z1) -> U51(z0, z1) a__U52(tt) -> tt a__U52(z0) -> U52(z0) a__U61(tt, z0, z1) -> a__U62(a__isNat(z1), z0) a__U61(z0, z1, z2) -> U61(z0, z1, z2) a__U62(tt, z0) -> s(a__length(mark(z0))) a__U62(z0, z1) -> U62(z0, z1) a__isNat(0) -> tt a__isNat(length(z0)) -> a__U11(a__isNatList(z0)) a__isNat(s(z0)) -> a__U21(a__isNat(z0)) a__isNat(z0) -> isNat(z0) a__isNatIList(z0) -> a__U31(a__isNatList(z0)) a__isNatIList(zeros) -> tt a__isNatIList(cons(z0, z1)) -> a__U41(a__isNat(z0), z1) a__isNatIList(z0) -> isNatIList(z0) a__isNatList(nil) -> tt a__isNatList(cons(z0, z1)) -> a__U51(a__isNat(z0), z1) a__isNatList(z0) -> isNatList(z0) a__length(nil) -> 0 a__length(cons(z0, z1)) -> a__U61(a__isNatList(z1), z1, z0) a__length(z0) -> length(z0) mark(zeros) -> a__zeros mark(U11(z0)) -> a__U11(mark(z0)) mark(U21(z0)) -> a__U21(mark(z0)) mark(U31(z0)) -> a__U31(mark(z0)) mark(U41(z0, z1)) -> a__U41(mark(z0), z1) mark(U42(z0)) -> a__U42(mark(z0)) mark(isNatIList(z0)) -> a__isNatIList(z0) mark(U51(z0, z1)) -> a__U51(mark(z0), z1) mark(U52(z0)) -> a__U52(mark(z0)) mark(isNatList(z0)) -> a__isNatList(z0) mark(U61(z0, z1, z2)) -> a__U61(mark(z0), z1, z2) mark(U62(z0, z1)) -> a__U62(mark(z0), z1) mark(isNat(z0)) -> a__isNat(z0) mark(length(z0)) -> a__length(mark(z0)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(0) -> 0 mark(tt) -> tt mark(s(z0)) -> s(mark(z0)) mark(nil) -> nil Tuples: A__ISNATILIST(cons(z0, z1)) -> c26(A__U41(a__isNat(z0), z1), A__ISNAT(z0)) A__ISNATLIST(cons(z0, z1)) -> c29(A__U51(a__isNat(z0), z1), A__ISNAT(z0)) A__LENGTH(cons(z0, z1)) -> c32(A__U61(a__isNatList(z1), z1, z0), A__ISNATLIST(z1)) MARK(U41(z0, z1)) -> c38(A__U41(mark(z0), z1), MARK(z0)) MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(U51(z0, z1)) -> c41(A__U51(mark(z0), z1), MARK(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(U61(z0, z1, z2)) -> c44(A__U61(mark(z0), z1, z2), MARK(z0)) MARK(U62(z0, z1)) -> c45(A__U62(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(length(z0)) -> c47(A__LENGTH(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(a__isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(a__isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros), MARK(zeros)) A__U62(tt, U11(z0)) -> c18(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) A__U62(tt, U21(z0)) -> c18(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) A__U62(tt, U31(z0)) -> c18(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) A__U62(tt, U41(z0, z1)) -> c18(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) A__U62(tt, U42(z0)) -> c18(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) A__U62(tt, U51(z0, z1)) -> c18(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) A__U62(tt, U52(z0)) -> c18(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) A__U62(tt, isNatList(z0)) -> c18(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) A__U62(tt, U61(z0, z1, z2)) -> c18(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) A__U62(tt, U62(z0, z1)) -> c18(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, s(z0)) -> c18(A__LENGTH(s(mark(z0))), MARK(s(z0))) S tuples: A__ISNATILIST(cons(z0, z1)) -> c26(A__U41(a__isNat(z0), z1), A__ISNAT(z0)) A__ISNATLIST(cons(z0, z1)) -> c29(A__U51(a__isNat(z0), z1), A__ISNAT(z0)) A__LENGTH(cons(z0, z1)) -> c32(A__U61(a__isNatList(z1), z1, z0), A__ISNATLIST(z1)) MARK(U41(z0, z1)) -> c38(A__U41(mark(z0), z1), MARK(z0)) MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(U51(z0, z1)) -> c41(A__U51(mark(z0), z1), MARK(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(U61(z0, z1, z2)) -> c44(A__U61(mark(z0), z1, z2), MARK(z0)) MARK(U62(z0, z1)) -> c45(A__U62(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(length(z0)) -> c47(A__LENGTH(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(a__isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(a__isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros), MARK(zeros)) A__U62(tt, U11(z0)) -> c18(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) A__U62(tt, U21(z0)) -> c18(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) A__U62(tt, U31(z0)) -> c18(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) A__U62(tt, U41(z0, z1)) -> c18(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) A__U62(tt, U42(z0)) -> c18(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) A__U62(tt, U51(z0, z1)) -> c18(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) A__U62(tt, U52(z0)) -> c18(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) A__U62(tt, isNatList(z0)) -> c18(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) A__U62(tt, U61(z0, z1, z2)) -> c18(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) A__U62(tt, U62(z0, z1)) -> c18(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, s(z0)) -> c18(A__LENGTH(s(mark(z0))), MARK(s(z0))) K tuples:none Defined Rule Symbols: a__zeros, a__U11_1, a__U21_1, a__U31_1, a__U41_2, a__U42_1, a__U51_2, a__U52_1, a__U61_3, a__U62_2, a__isNat_1, a__isNatIList_1, a__isNatList_1, a__length_1, mark_1 Defined Pair Symbols: A__ISNATILIST_1, A__ISNATLIST_1, A__LENGTH_1, MARK_1, A__U41_2, A__U51_2, A__ISNAT_1, A__U61_3, A__U62_2 Compound Symbols: c26_2, c29_2, c32_2, c38_2, c40_1, c41_2, c43_1, c44_2, c45_2, c46_1, c47_2, c48_1, c51_1, c8_1, c12_1, c21_1, c22_1, c24_1, c35_1, c36_1, c37_1, c39_1, c42_1, c16_2, c16_1, c18_2 ---------------------------------------- (37) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 2 trailing tuple parts ---------------------------------------- (38) Obligation: Complexity Dependency Tuples Problem Rules: a__zeros -> cons(0, zeros) a__zeros -> zeros a__U11(tt) -> tt a__U11(z0) -> U11(z0) a__U21(tt) -> tt a__U21(z0) -> U21(z0) a__U31(tt) -> tt a__U31(z0) -> U31(z0) a__U41(tt, z0) -> a__U42(a__isNatIList(z0)) a__U41(z0, z1) -> U41(z0, z1) a__U42(tt) -> tt a__U42(z0) -> U42(z0) a__U51(tt, z0) -> a__U52(a__isNatList(z0)) a__U51(z0, z1) -> U51(z0, z1) a__U52(tt) -> tt a__U52(z0) -> U52(z0) a__U61(tt, z0, z1) -> a__U62(a__isNat(z1), z0) a__U61(z0, z1, z2) -> U61(z0, z1, z2) a__U62(tt, z0) -> s(a__length(mark(z0))) a__U62(z0, z1) -> U62(z0, z1) a__isNat(0) -> tt a__isNat(length(z0)) -> a__U11(a__isNatList(z0)) a__isNat(s(z0)) -> a__U21(a__isNat(z0)) a__isNat(z0) -> isNat(z0) a__isNatIList(z0) -> a__U31(a__isNatList(z0)) a__isNatIList(zeros) -> tt a__isNatIList(cons(z0, z1)) -> a__U41(a__isNat(z0), z1) a__isNatIList(z0) -> isNatIList(z0) a__isNatList(nil) -> tt a__isNatList(cons(z0, z1)) -> a__U51(a__isNat(z0), z1) a__isNatList(z0) -> isNatList(z0) a__length(nil) -> 0 a__length(cons(z0, z1)) -> a__U61(a__isNatList(z1), z1, z0) a__length(z0) -> length(z0) mark(zeros) -> a__zeros mark(U11(z0)) -> a__U11(mark(z0)) mark(U21(z0)) -> a__U21(mark(z0)) mark(U31(z0)) -> a__U31(mark(z0)) mark(U41(z0, z1)) -> a__U41(mark(z0), z1) mark(U42(z0)) -> a__U42(mark(z0)) mark(isNatIList(z0)) -> a__isNatIList(z0) mark(U51(z0, z1)) -> a__U51(mark(z0), z1) mark(U52(z0)) -> a__U52(mark(z0)) mark(isNatList(z0)) -> a__isNatList(z0) mark(U61(z0, z1, z2)) -> a__U61(mark(z0), z1, z2) mark(U62(z0, z1)) -> a__U62(mark(z0), z1) mark(isNat(z0)) -> a__isNat(z0) mark(length(z0)) -> a__length(mark(z0)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(0) -> 0 mark(tt) -> tt mark(s(z0)) -> s(mark(z0)) mark(nil) -> nil Tuples: A__ISNATILIST(cons(z0, z1)) -> c26(A__U41(a__isNat(z0), z1), A__ISNAT(z0)) A__ISNATLIST(cons(z0, z1)) -> c29(A__U51(a__isNat(z0), z1), A__ISNAT(z0)) A__LENGTH(cons(z0, z1)) -> c32(A__U61(a__isNatList(z1), z1, z0), A__ISNATLIST(z1)) MARK(U41(z0, z1)) -> c38(A__U41(mark(z0), z1), MARK(z0)) MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(U51(z0, z1)) -> c41(A__U51(mark(z0), z1), MARK(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(U61(z0, z1, z2)) -> c44(A__U61(mark(z0), z1, z2), MARK(z0)) MARK(U62(z0, z1)) -> c45(A__U62(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(length(z0)) -> c47(A__LENGTH(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(a__isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(a__isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, U11(z0)) -> c18(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) A__U62(tt, U21(z0)) -> c18(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) A__U62(tt, U31(z0)) -> c18(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) A__U62(tt, U41(z0, z1)) -> c18(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) A__U62(tt, U42(z0)) -> c18(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) A__U62(tt, U51(z0, z1)) -> c18(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) A__U62(tt, U52(z0)) -> c18(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) A__U62(tt, isNatList(z0)) -> c18(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) A__U62(tt, U61(z0, z1, z2)) -> c18(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) A__U62(tt, U62(z0, z1)) -> c18(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) S tuples: A__ISNATILIST(cons(z0, z1)) -> c26(A__U41(a__isNat(z0), z1), A__ISNAT(z0)) A__ISNATLIST(cons(z0, z1)) -> c29(A__U51(a__isNat(z0), z1), A__ISNAT(z0)) A__LENGTH(cons(z0, z1)) -> c32(A__U61(a__isNatList(z1), z1, z0), A__ISNATLIST(z1)) MARK(U41(z0, z1)) -> c38(A__U41(mark(z0), z1), MARK(z0)) MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(U51(z0, z1)) -> c41(A__U51(mark(z0), z1), MARK(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(U61(z0, z1, z2)) -> c44(A__U61(mark(z0), z1, z2), MARK(z0)) MARK(U62(z0, z1)) -> c45(A__U62(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(length(z0)) -> c47(A__LENGTH(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(a__isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(a__isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, U11(z0)) -> c18(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) A__U62(tt, U21(z0)) -> c18(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) A__U62(tt, U31(z0)) -> c18(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) A__U62(tt, U41(z0, z1)) -> c18(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) A__U62(tt, U42(z0)) -> c18(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) A__U62(tt, U51(z0, z1)) -> c18(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) A__U62(tt, U52(z0)) -> c18(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) A__U62(tt, isNatList(z0)) -> c18(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) A__U62(tt, U61(z0, z1, z2)) -> c18(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) A__U62(tt, U62(z0, z1)) -> c18(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) K tuples:none Defined Rule Symbols: a__zeros, a__U11_1, a__U21_1, a__U31_1, a__U41_2, a__U42_1, a__U51_2, a__U52_1, a__U61_3, a__U62_2, a__isNat_1, a__isNatIList_1, a__isNatList_1, a__length_1, mark_1 Defined Pair Symbols: A__ISNATILIST_1, A__ISNATLIST_1, A__LENGTH_1, MARK_1, A__U41_2, A__U51_2, A__ISNAT_1, A__U61_3, A__U62_2 Compound Symbols: c26_2, c29_2, c32_2, c38_2, c40_1, c41_2, c43_1, c44_2, c45_2, c46_1, c47_2, c48_1, c51_1, c8_1, c12_1, c21_1, c22_1, c24_1, c35_1, c36_1, c37_1, c39_1, c42_1, c16_2, c16_1, c18_2, c18_1 ---------------------------------------- (39) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace A__ISNATILIST(cons(z0, z1)) -> c26(A__U41(a__isNat(z0), z1), A__ISNAT(z0)) by A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1), A__ISNAT(0)) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(z0, x1)) -> c26(A__U41(isNat(z0), x1), A__ISNAT(z0)) ---------------------------------------- (40) Obligation: Complexity Dependency Tuples Problem Rules: a__zeros -> cons(0, zeros) a__zeros -> zeros a__U11(tt) -> tt a__U11(z0) -> U11(z0) a__U21(tt) -> tt a__U21(z0) -> U21(z0) a__U31(tt) -> tt a__U31(z0) -> U31(z0) a__U41(tt, z0) -> a__U42(a__isNatIList(z0)) a__U41(z0, z1) -> U41(z0, z1) a__U42(tt) -> tt a__U42(z0) -> U42(z0) a__U51(tt, z0) -> a__U52(a__isNatList(z0)) a__U51(z0, z1) -> U51(z0, z1) a__U52(tt) -> tt a__U52(z0) -> U52(z0) a__U61(tt, z0, z1) -> a__U62(a__isNat(z1), z0) a__U61(z0, z1, z2) -> U61(z0, z1, z2) a__U62(tt, z0) -> s(a__length(mark(z0))) a__U62(z0, z1) -> U62(z0, z1) a__isNat(0) -> tt a__isNat(length(z0)) -> a__U11(a__isNatList(z0)) a__isNat(s(z0)) -> a__U21(a__isNat(z0)) a__isNat(z0) -> isNat(z0) a__isNatIList(z0) -> a__U31(a__isNatList(z0)) a__isNatIList(zeros) -> tt a__isNatIList(cons(z0, z1)) -> a__U41(a__isNat(z0), z1) a__isNatIList(z0) -> isNatIList(z0) a__isNatList(nil) -> tt a__isNatList(cons(z0, z1)) -> a__U51(a__isNat(z0), z1) a__isNatList(z0) -> isNatList(z0) a__length(nil) -> 0 a__length(cons(z0, z1)) -> a__U61(a__isNatList(z1), z1, z0) a__length(z0) -> length(z0) mark(zeros) -> a__zeros mark(U11(z0)) -> a__U11(mark(z0)) mark(U21(z0)) -> a__U21(mark(z0)) mark(U31(z0)) -> a__U31(mark(z0)) mark(U41(z0, z1)) -> a__U41(mark(z0), z1) mark(U42(z0)) -> a__U42(mark(z0)) mark(isNatIList(z0)) -> a__isNatIList(z0) mark(U51(z0, z1)) -> a__U51(mark(z0), z1) mark(U52(z0)) -> a__U52(mark(z0)) mark(isNatList(z0)) -> a__isNatList(z0) mark(U61(z0, z1, z2)) -> a__U61(mark(z0), z1, z2) mark(U62(z0, z1)) -> a__U62(mark(z0), z1) mark(isNat(z0)) -> a__isNat(z0) mark(length(z0)) -> a__length(mark(z0)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(0) -> 0 mark(tt) -> tt mark(s(z0)) -> s(mark(z0)) mark(nil) -> nil Tuples: A__ISNATLIST(cons(z0, z1)) -> c29(A__U51(a__isNat(z0), z1), A__ISNAT(z0)) A__LENGTH(cons(z0, z1)) -> c32(A__U61(a__isNatList(z1), z1, z0), A__ISNATLIST(z1)) MARK(U41(z0, z1)) -> c38(A__U41(mark(z0), z1), MARK(z0)) MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(U51(z0, z1)) -> c41(A__U51(mark(z0), z1), MARK(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(U61(z0, z1, z2)) -> c44(A__U61(mark(z0), z1, z2), MARK(z0)) MARK(U62(z0, z1)) -> c45(A__U62(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(length(z0)) -> c47(A__LENGTH(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(a__isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(a__isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, U11(z0)) -> c18(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) A__U62(tt, U21(z0)) -> c18(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) A__U62(tt, U31(z0)) -> c18(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) A__U62(tt, U41(z0, z1)) -> c18(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) A__U62(tt, U42(z0)) -> c18(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) A__U62(tt, U51(z0, z1)) -> c18(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) A__U62(tt, U52(z0)) -> c18(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) A__U62(tt, isNatList(z0)) -> c18(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) A__U62(tt, U61(z0, z1, z2)) -> c18(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) A__U62(tt, U62(z0, z1)) -> c18(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1), A__ISNAT(0)) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(z0, x1)) -> c26(A__U41(isNat(z0), x1), A__ISNAT(z0)) S tuples: A__ISNATLIST(cons(z0, z1)) -> c29(A__U51(a__isNat(z0), z1), A__ISNAT(z0)) A__LENGTH(cons(z0, z1)) -> c32(A__U61(a__isNatList(z1), z1, z0), A__ISNATLIST(z1)) MARK(U41(z0, z1)) -> c38(A__U41(mark(z0), z1), MARK(z0)) MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(U51(z0, z1)) -> c41(A__U51(mark(z0), z1), MARK(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(U61(z0, z1, z2)) -> c44(A__U61(mark(z0), z1, z2), MARK(z0)) MARK(U62(z0, z1)) -> c45(A__U62(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(length(z0)) -> c47(A__LENGTH(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(a__isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(a__isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, U11(z0)) -> c18(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) A__U62(tt, U21(z0)) -> c18(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) A__U62(tt, U31(z0)) -> c18(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) A__U62(tt, U41(z0, z1)) -> c18(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) A__U62(tt, U42(z0)) -> c18(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) A__U62(tt, U51(z0, z1)) -> c18(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) A__U62(tt, U52(z0)) -> c18(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) A__U62(tt, isNatList(z0)) -> c18(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) A__U62(tt, U61(z0, z1, z2)) -> c18(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) A__U62(tt, U62(z0, z1)) -> c18(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1), A__ISNAT(0)) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(z0, x1)) -> c26(A__U41(isNat(z0), x1), A__ISNAT(z0)) K tuples:none Defined Rule Symbols: a__zeros, a__U11_1, a__U21_1, a__U31_1, a__U41_2, a__U42_1, a__U51_2, a__U52_1, a__U61_3, a__U62_2, a__isNat_1, a__isNatIList_1, a__isNatList_1, a__length_1, mark_1 Defined Pair Symbols: A__ISNATLIST_1, A__LENGTH_1, MARK_1, A__U41_2, A__U51_2, A__ISNAT_1, A__ISNATILIST_1, A__U61_3, A__U62_2 Compound Symbols: c29_2, c32_2, c38_2, c40_1, c41_2, c43_1, c44_2, c45_2, c46_1, c47_2, c48_1, c51_1, c8_1, c12_1, c21_1, c22_1, c24_1, c35_1, c36_1, c37_1, c39_1, c42_1, c16_2, c16_1, c18_2, c18_1, c26_2 ---------------------------------------- (41) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 2 trailing tuple parts ---------------------------------------- (42) Obligation: Complexity Dependency Tuples Problem Rules: a__zeros -> cons(0, zeros) a__zeros -> zeros a__U11(tt) -> tt a__U11(z0) -> U11(z0) a__U21(tt) -> tt a__U21(z0) -> U21(z0) a__U31(tt) -> tt a__U31(z0) -> U31(z0) a__U41(tt, z0) -> a__U42(a__isNatIList(z0)) a__U41(z0, z1) -> U41(z0, z1) a__U42(tt) -> tt a__U42(z0) -> U42(z0) a__U51(tt, z0) -> a__U52(a__isNatList(z0)) a__U51(z0, z1) -> U51(z0, z1) a__U52(tt) -> tt a__U52(z0) -> U52(z0) a__U61(tt, z0, z1) -> a__U62(a__isNat(z1), z0) a__U61(z0, z1, z2) -> U61(z0, z1, z2) a__U62(tt, z0) -> s(a__length(mark(z0))) a__U62(z0, z1) -> U62(z0, z1) a__isNat(0) -> tt a__isNat(length(z0)) -> a__U11(a__isNatList(z0)) a__isNat(s(z0)) -> a__U21(a__isNat(z0)) a__isNat(z0) -> isNat(z0) a__isNatIList(z0) -> a__U31(a__isNatList(z0)) a__isNatIList(zeros) -> tt a__isNatIList(cons(z0, z1)) -> a__U41(a__isNat(z0), z1) a__isNatIList(z0) -> isNatIList(z0) a__isNatList(nil) -> tt a__isNatList(cons(z0, z1)) -> a__U51(a__isNat(z0), z1) a__isNatList(z0) -> isNatList(z0) a__length(nil) -> 0 a__length(cons(z0, z1)) -> a__U61(a__isNatList(z1), z1, z0) a__length(z0) -> length(z0) mark(zeros) -> a__zeros mark(U11(z0)) -> a__U11(mark(z0)) mark(U21(z0)) -> a__U21(mark(z0)) mark(U31(z0)) -> a__U31(mark(z0)) mark(U41(z0, z1)) -> a__U41(mark(z0), z1) mark(U42(z0)) -> a__U42(mark(z0)) mark(isNatIList(z0)) -> a__isNatIList(z0) mark(U51(z0, z1)) -> a__U51(mark(z0), z1) mark(U52(z0)) -> a__U52(mark(z0)) mark(isNatList(z0)) -> a__isNatList(z0) mark(U61(z0, z1, z2)) -> a__U61(mark(z0), z1, z2) mark(U62(z0, z1)) -> a__U62(mark(z0), z1) mark(isNat(z0)) -> a__isNat(z0) mark(length(z0)) -> a__length(mark(z0)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(0) -> 0 mark(tt) -> tt mark(s(z0)) -> s(mark(z0)) mark(nil) -> nil Tuples: A__ISNATLIST(cons(z0, z1)) -> c29(A__U51(a__isNat(z0), z1), A__ISNAT(z0)) A__LENGTH(cons(z0, z1)) -> c32(A__U61(a__isNatList(z1), z1, z0), A__ISNATLIST(z1)) MARK(U41(z0, z1)) -> c38(A__U41(mark(z0), z1), MARK(z0)) MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(U51(z0, z1)) -> c41(A__U51(mark(z0), z1), MARK(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(U61(z0, z1, z2)) -> c44(A__U61(mark(z0), z1, z2), MARK(z0)) MARK(U62(z0, z1)) -> c45(A__U62(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(length(z0)) -> c47(A__LENGTH(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(a__isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(a__isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, U11(z0)) -> c18(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) A__U62(tt, U21(z0)) -> c18(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) A__U62(tt, U31(z0)) -> c18(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) A__U62(tt, U41(z0, z1)) -> c18(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) A__U62(tt, U42(z0)) -> c18(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) A__U62(tt, U51(z0, z1)) -> c18(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) A__U62(tt, U52(z0)) -> c18(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) A__U62(tt, isNatList(z0)) -> c18(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) A__U62(tt, U61(z0, z1, z2)) -> c18(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) A__U62(tt, U62(z0, z1)) -> c18(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) S tuples: A__ISNATLIST(cons(z0, z1)) -> c29(A__U51(a__isNat(z0), z1), A__ISNAT(z0)) A__LENGTH(cons(z0, z1)) -> c32(A__U61(a__isNatList(z1), z1, z0), A__ISNATLIST(z1)) MARK(U41(z0, z1)) -> c38(A__U41(mark(z0), z1), MARK(z0)) MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(U51(z0, z1)) -> c41(A__U51(mark(z0), z1), MARK(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(U61(z0, z1, z2)) -> c44(A__U61(mark(z0), z1, z2), MARK(z0)) MARK(U62(z0, z1)) -> c45(A__U62(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(length(z0)) -> c47(A__LENGTH(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(a__isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(a__isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, U11(z0)) -> c18(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) A__U62(tt, U21(z0)) -> c18(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) A__U62(tt, U31(z0)) -> c18(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) A__U62(tt, U41(z0, z1)) -> c18(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) A__U62(tt, U42(z0)) -> c18(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) A__U62(tt, U51(z0, z1)) -> c18(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) A__U62(tt, U52(z0)) -> c18(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) A__U62(tt, isNatList(z0)) -> c18(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) A__U62(tt, U61(z0, z1, z2)) -> c18(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) A__U62(tt, U62(z0, z1)) -> c18(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) K tuples:none Defined Rule Symbols: a__zeros, a__U11_1, a__U21_1, a__U31_1, a__U41_2, a__U42_1, a__U51_2, a__U52_1, a__U61_3, a__U62_2, a__isNat_1, a__isNatIList_1, a__isNatList_1, a__length_1, mark_1 Defined Pair Symbols: A__ISNATLIST_1, A__LENGTH_1, MARK_1, A__U41_2, A__U51_2, A__ISNAT_1, A__ISNATILIST_1, A__U61_3, A__U62_2 Compound Symbols: c29_2, c32_2, c38_2, c40_1, c41_2, c43_1, c44_2, c45_2, c46_1, c47_2, c48_1, c51_1, c8_1, c12_1, c21_1, c22_1, c24_1, c35_1, c36_1, c37_1, c39_1, c42_1, c16_2, c16_1, c18_2, c18_1, c26_2, c26_1 ---------------------------------------- (43) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace A__ISNATLIST(cons(z0, z1)) -> c29(A__U51(a__isNat(z0), z1), A__ISNAT(z0)) by A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1), A__ISNAT(0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(z0, x1)) -> c29(A__U51(isNat(z0), x1), A__ISNAT(z0)) ---------------------------------------- (44) Obligation: Complexity Dependency Tuples Problem Rules: a__zeros -> cons(0, zeros) a__zeros -> zeros a__U11(tt) -> tt a__U11(z0) -> U11(z0) a__U21(tt) -> tt a__U21(z0) -> U21(z0) a__U31(tt) -> tt a__U31(z0) -> U31(z0) a__U41(tt, z0) -> a__U42(a__isNatIList(z0)) a__U41(z0, z1) -> U41(z0, z1) a__U42(tt) -> tt a__U42(z0) -> U42(z0) a__U51(tt, z0) -> a__U52(a__isNatList(z0)) a__U51(z0, z1) -> U51(z0, z1) a__U52(tt) -> tt a__U52(z0) -> U52(z0) a__U61(tt, z0, z1) -> a__U62(a__isNat(z1), z0) a__U61(z0, z1, z2) -> U61(z0, z1, z2) a__U62(tt, z0) -> s(a__length(mark(z0))) a__U62(z0, z1) -> U62(z0, z1) a__isNat(0) -> tt a__isNat(length(z0)) -> a__U11(a__isNatList(z0)) a__isNat(s(z0)) -> a__U21(a__isNat(z0)) a__isNat(z0) -> isNat(z0) a__isNatIList(z0) -> a__U31(a__isNatList(z0)) a__isNatIList(zeros) -> tt a__isNatIList(cons(z0, z1)) -> a__U41(a__isNat(z0), z1) a__isNatIList(z0) -> isNatIList(z0) a__isNatList(nil) -> tt a__isNatList(cons(z0, z1)) -> a__U51(a__isNat(z0), z1) a__isNatList(z0) -> isNatList(z0) a__length(nil) -> 0 a__length(cons(z0, z1)) -> a__U61(a__isNatList(z1), z1, z0) a__length(z0) -> length(z0) mark(zeros) -> a__zeros mark(U11(z0)) -> a__U11(mark(z0)) mark(U21(z0)) -> a__U21(mark(z0)) mark(U31(z0)) -> a__U31(mark(z0)) mark(U41(z0, z1)) -> a__U41(mark(z0), z1) mark(U42(z0)) -> a__U42(mark(z0)) mark(isNatIList(z0)) -> a__isNatIList(z0) mark(U51(z0, z1)) -> a__U51(mark(z0), z1) mark(U52(z0)) -> a__U52(mark(z0)) mark(isNatList(z0)) -> a__isNatList(z0) mark(U61(z0, z1, z2)) -> a__U61(mark(z0), z1, z2) mark(U62(z0, z1)) -> a__U62(mark(z0), z1) mark(isNat(z0)) -> a__isNat(z0) mark(length(z0)) -> a__length(mark(z0)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(0) -> 0 mark(tt) -> tt mark(s(z0)) -> s(mark(z0)) mark(nil) -> nil Tuples: A__LENGTH(cons(z0, z1)) -> c32(A__U61(a__isNatList(z1), z1, z0), A__ISNATLIST(z1)) MARK(U41(z0, z1)) -> c38(A__U41(mark(z0), z1), MARK(z0)) MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(U51(z0, z1)) -> c41(A__U51(mark(z0), z1), MARK(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(U61(z0, z1, z2)) -> c44(A__U61(mark(z0), z1, z2), MARK(z0)) MARK(U62(z0, z1)) -> c45(A__U62(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(length(z0)) -> c47(A__LENGTH(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(a__isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(a__isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, U11(z0)) -> c18(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) A__U62(tt, U21(z0)) -> c18(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) A__U62(tt, U31(z0)) -> c18(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) A__U62(tt, U41(z0, z1)) -> c18(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) A__U62(tt, U42(z0)) -> c18(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) A__U62(tt, U51(z0, z1)) -> c18(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) A__U62(tt, U52(z0)) -> c18(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) A__U62(tt, isNatList(z0)) -> c18(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) A__U62(tt, U61(z0, z1, z2)) -> c18(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) A__U62(tt, U62(z0, z1)) -> c18(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1), A__ISNAT(0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(z0, x1)) -> c29(A__U51(isNat(z0), x1), A__ISNAT(z0)) S tuples: A__LENGTH(cons(z0, z1)) -> c32(A__U61(a__isNatList(z1), z1, z0), A__ISNATLIST(z1)) MARK(U41(z0, z1)) -> c38(A__U41(mark(z0), z1), MARK(z0)) MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(U51(z0, z1)) -> c41(A__U51(mark(z0), z1), MARK(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(U61(z0, z1, z2)) -> c44(A__U61(mark(z0), z1, z2), MARK(z0)) MARK(U62(z0, z1)) -> c45(A__U62(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(length(z0)) -> c47(A__LENGTH(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(a__isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(a__isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, U11(z0)) -> c18(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) A__U62(tt, U21(z0)) -> c18(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) A__U62(tt, U31(z0)) -> c18(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) A__U62(tt, U41(z0, z1)) -> c18(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) A__U62(tt, U42(z0)) -> c18(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) A__U62(tt, U51(z0, z1)) -> c18(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) A__U62(tt, U52(z0)) -> c18(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) A__U62(tt, isNatList(z0)) -> c18(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) A__U62(tt, U61(z0, z1, z2)) -> c18(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) A__U62(tt, U62(z0, z1)) -> c18(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1), A__ISNAT(0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(z0, x1)) -> c29(A__U51(isNat(z0), x1), A__ISNAT(z0)) K tuples:none Defined Rule Symbols: a__zeros, a__U11_1, a__U21_1, a__U31_1, a__U41_2, a__U42_1, a__U51_2, a__U52_1, a__U61_3, a__U62_2, a__isNat_1, a__isNatIList_1, a__isNatList_1, a__length_1, mark_1 Defined Pair Symbols: A__LENGTH_1, MARK_1, A__U41_2, A__U51_2, A__ISNAT_1, A__ISNATILIST_1, A__U61_3, A__U62_2, A__ISNATLIST_1 Compound Symbols: c32_2, c38_2, c40_1, c41_2, c43_1, c44_2, c45_2, c46_1, c47_2, c48_1, c51_1, c8_1, c12_1, c21_1, c22_1, c24_1, c35_1, c36_1, c37_1, c39_1, c42_1, c16_2, c16_1, c18_2, c18_1, c26_2, c26_1, c29_2 ---------------------------------------- (45) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 2 trailing tuple parts ---------------------------------------- (46) Obligation: Complexity Dependency Tuples Problem Rules: a__zeros -> cons(0, zeros) a__zeros -> zeros a__U11(tt) -> tt a__U11(z0) -> U11(z0) a__U21(tt) -> tt a__U21(z0) -> U21(z0) a__U31(tt) -> tt a__U31(z0) -> U31(z0) a__U41(tt, z0) -> a__U42(a__isNatIList(z0)) a__U41(z0, z1) -> U41(z0, z1) a__U42(tt) -> tt a__U42(z0) -> U42(z0) a__U51(tt, z0) -> a__U52(a__isNatList(z0)) a__U51(z0, z1) -> U51(z0, z1) a__U52(tt) -> tt a__U52(z0) -> U52(z0) a__U61(tt, z0, z1) -> a__U62(a__isNat(z1), z0) a__U61(z0, z1, z2) -> U61(z0, z1, z2) a__U62(tt, z0) -> s(a__length(mark(z0))) a__U62(z0, z1) -> U62(z0, z1) a__isNat(0) -> tt a__isNat(length(z0)) -> a__U11(a__isNatList(z0)) a__isNat(s(z0)) -> a__U21(a__isNat(z0)) a__isNat(z0) -> isNat(z0) a__isNatIList(z0) -> a__U31(a__isNatList(z0)) a__isNatIList(zeros) -> tt a__isNatIList(cons(z0, z1)) -> a__U41(a__isNat(z0), z1) a__isNatIList(z0) -> isNatIList(z0) a__isNatList(nil) -> tt a__isNatList(cons(z0, z1)) -> a__U51(a__isNat(z0), z1) a__isNatList(z0) -> isNatList(z0) a__length(nil) -> 0 a__length(cons(z0, z1)) -> a__U61(a__isNatList(z1), z1, z0) a__length(z0) -> length(z0) mark(zeros) -> a__zeros mark(U11(z0)) -> a__U11(mark(z0)) mark(U21(z0)) -> a__U21(mark(z0)) mark(U31(z0)) -> a__U31(mark(z0)) mark(U41(z0, z1)) -> a__U41(mark(z0), z1) mark(U42(z0)) -> a__U42(mark(z0)) mark(isNatIList(z0)) -> a__isNatIList(z0) mark(U51(z0, z1)) -> a__U51(mark(z0), z1) mark(U52(z0)) -> a__U52(mark(z0)) mark(isNatList(z0)) -> a__isNatList(z0) mark(U61(z0, z1, z2)) -> a__U61(mark(z0), z1, z2) mark(U62(z0, z1)) -> a__U62(mark(z0), z1) mark(isNat(z0)) -> a__isNat(z0) mark(length(z0)) -> a__length(mark(z0)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(0) -> 0 mark(tt) -> tt mark(s(z0)) -> s(mark(z0)) mark(nil) -> nil Tuples: A__LENGTH(cons(z0, z1)) -> c32(A__U61(a__isNatList(z1), z1, z0), A__ISNATLIST(z1)) MARK(U41(z0, z1)) -> c38(A__U41(mark(z0), z1), MARK(z0)) MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(U51(z0, z1)) -> c41(A__U51(mark(z0), z1), MARK(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(U61(z0, z1, z2)) -> c44(A__U61(mark(z0), z1, z2), MARK(z0)) MARK(U62(z0, z1)) -> c45(A__U62(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(length(z0)) -> c47(A__LENGTH(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(a__isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(a__isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, U11(z0)) -> c18(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) A__U62(tt, U21(z0)) -> c18(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) A__U62(tt, U31(z0)) -> c18(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) A__U62(tt, U41(z0, z1)) -> c18(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) A__U62(tt, U42(z0)) -> c18(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) A__U62(tt, U51(z0, z1)) -> c18(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) A__U62(tt, U52(z0)) -> c18(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) A__U62(tt, isNatList(z0)) -> c18(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) A__U62(tt, U61(z0, z1, z2)) -> c18(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) A__U62(tt, U62(z0, z1)) -> c18(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) S tuples: A__LENGTH(cons(z0, z1)) -> c32(A__U61(a__isNatList(z1), z1, z0), A__ISNATLIST(z1)) MARK(U41(z0, z1)) -> c38(A__U41(mark(z0), z1), MARK(z0)) MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(U51(z0, z1)) -> c41(A__U51(mark(z0), z1), MARK(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(U61(z0, z1, z2)) -> c44(A__U61(mark(z0), z1, z2), MARK(z0)) MARK(U62(z0, z1)) -> c45(A__U62(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(length(z0)) -> c47(A__LENGTH(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(a__isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(a__isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, U11(z0)) -> c18(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) A__U62(tt, U21(z0)) -> c18(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) A__U62(tt, U31(z0)) -> c18(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) A__U62(tt, U41(z0, z1)) -> c18(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) A__U62(tt, U42(z0)) -> c18(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) A__U62(tt, U51(z0, z1)) -> c18(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) A__U62(tt, U52(z0)) -> c18(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) A__U62(tt, isNatList(z0)) -> c18(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) A__U62(tt, U61(z0, z1, z2)) -> c18(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) A__U62(tt, U62(z0, z1)) -> c18(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) K tuples:none Defined Rule Symbols: a__zeros, a__U11_1, a__U21_1, a__U31_1, a__U41_2, a__U42_1, a__U51_2, a__U52_1, a__U61_3, a__U62_2, a__isNat_1, a__isNatIList_1, a__isNatList_1, a__length_1, mark_1 Defined Pair Symbols: A__LENGTH_1, MARK_1, A__U41_2, A__U51_2, A__ISNAT_1, A__ISNATILIST_1, A__U61_3, A__U62_2, A__ISNATLIST_1 Compound Symbols: c32_2, c38_2, c40_1, c41_2, c43_1, c44_2, c45_2, c46_1, c47_2, c48_1, c51_1, c8_1, c12_1, c21_1, c22_1, c24_1, c35_1, c36_1, c37_1, c39_1, c42_1, c16_2, c16_1, c18_2, c18_1, c26_2, c26_1, c29_2, c29_1 ---------------------------------------- (47) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace A__LENGTH(cons(z0, z1)) -> c32(A__U61(a__isNatList(z1), z1, z0), A__ISNATLIST(z1)) by A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0), A__ISNATLIST(nil)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, z0)) -> c32(A__U61(isNatList(z0), z0, x0), A__ISNATLIST(z0)) ---------------------------------------- (48) Obligation: Complexity Dependency Tuples Problem Rules: a__zeros -> cons(0, zeros) a__zeros -> zeros a__U11(tt) -> tt a__U11(z0) -> U11(z0) a__U21(tt) -> tt a__U21(z0) -> U21(z0) a__U31(tt) -> tt a__U31(z0) -> U31(z0) a__U41(tt, z0) -> a__U42(a__isNatIList(z0)) a__U41(z0, z1) -> U41(z0, z1) a__U42(tt) -> tt a__U42(z0) -> U42(z0) a__U51(tt, z0) -> a__U52(a__isNatList(z0)) a__U51(z0, z1) -> U51(z0, z1) a__U52(tt) -> tt a__U52(z0) -> U52(z0) a__U61(tt, z0, z1) -> a__U62(a__isNat(z1), z0) a__U61(z0, z1, z2) -> U61(z0, z1, z2) a__U62(tt, z0) -> s(a__length(mark(z0))) a__U62(z0, z1) -> U62(z0, z1) a__isNat(0) -> tt a__isNat(length(z0)) -> a__U11(a__isNatList(z0)) a__isNat(s(z0)) -> a__U21(a__isNat(z0)) a__isNat(z0) -> isNat(z0) a__isNatIList(z0) -> a__U31(a__isNatList(z0)) a__isNatIList(zeros) -> tt a__isNatIList(cons(z0, z1)) -> a__U41(a__isNat(z0), z1) a__isNatIList(z0) -> isNatIList(z0) a__isNatList(nil) -> tt a__isNatList(cons(z0, z1)) -> a__U51(a__isNat(z0), z1) a__isNatList(z0) -> isNatList(z0) a__length(nil) -> 0 a__length(cons(z0, z1)) -> a__U61(a__isNatList(z1), z1, z0) a__length(z0) -> length(z0) mark(zeros) -> a__zeros mark(U11(z0)) -> a__U11(mark(z0)) mark(U21(z0)) -> a__U21(mark(z0)) mark(U31(z0)) -> a__U31(mark(z0)) mark(U41(z0, z1)) -> a__U41(mark(z0), z1) mark(U42(z0)) -> a__U42(mark(z0)) mark(isNatIList(z0)) -> a__isNatIList(z0) mark(U51(z0, z1)) -> a__U51(mark(z0), z1) mark(U52(z0)) -> a__U52(mark(z0)) mark(isNatList(z0)) -> a__isNatList(z0) mark(U61(z0, z1, z2)) -> a__U61(mark(z0), z1, z2) mark(U62(z0, z1)) -> a__U62(mark(z0), z1) mark(isNat(z0)) -> a__isNat(z0) mark(length(z0)) -> a__length(mark(z0)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(0) -> 0 mark(tt) -> tt mark(s(z0)) -> s(mark(z0)) mark(nil) -> nil Tuples: MARK(U41(z0, z1)) -> c38(A__U41(mark(z0), z1), MARK(z0)) MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(U51(z0, z1)) -> c41(A__U51(mark(z0), z1), MARK(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(U61(z0, z1, z2)) -> c44(A__U61(mark(z0), z1, z2), MARK(z0)) MARK(U62(z0, z1)) -> c45(A__U62(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(length(z0)) -> c47(A__LENGTH(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(a__isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(a__isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, U11(z0)) -> c18(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) A__U62(tt, U21(z0)) -> c18(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) A__U62(tt, U31(z0)) -> c18(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) A__U62(tt, U41(z0, z1)) -> c18(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) A__U62(tt, U42(z0)) -> c18(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) A__U62(tt, U51(z0, z1)) -> c18(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) A__U62(tt, U52(z0)) -> c18(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) A__U62(tt, isNatList(z0)) -> c18(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) A__U62(tt, U61(z0, z1, z2)) -> c18(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) A__U62(tt, U62(z0, z1)) -> c18(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0), A__ISNATLIST(nil)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, z0)) -> c32(A__U61(isNatList(z0), z0, x0), A__ISNATLIST(z0)) S tuples: MARK(U41(z0, z1)) -> c38(A__U41(mark(z0), z1), MARK(z0)) MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(U51(z0, z1)) -> c41(A__U51(mark(z0), z1), MARK(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(U61(z0, z1, z2)) -> c44(A__U61(mark(z0), z1, z2), MARK(z0)) MARK(U62(z0, z1)) -> c45(A__U62(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(length(z0)) -> c47(A__LENGTH(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(a__isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(a__isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, U11(z0)) -> c18(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) A__U62(tt, U21(z0)) -> c18(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) A__U62(tt, U31(z0)) -> c18(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) A__U62(tt, U41(z0, z1)) -> c18(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) A__U62(tt, U42(z0)) -> c18(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) A__U62(tt, U51(z0, z1)) -> c18(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) A__U62(tt, U52(z0)) -> c18(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) A__U62(tt, isNatList(z0)) -> c18(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) A__U62(tt, U61(z0, z1, z2)) -> c18(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) A__U62(tt, U62(z0, z1)) -> c18(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0), A__ISNATLIST(nil)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, z0)) -> c32(A__U61(isNatList(z0), z0, x0), A__ISNATLIST(z0)) K tuples:none Defined Rule Symbols: a__zeros, a__U11_1, a__U21_1, a__U31_1, a__U41_2, a__U42_1, a__U51_2, a__U52_1, a__U61_3, a__U62_2, a__isNat_1, a__isNatIList_1, a__isNatList_1, a__length_1, mark_1 Defined Pair Symbols: MARK_1, A__U41_2, A__U51_2, A__ISNAT_1, A__ISNATILIST_1, A__U61_3, A__U62_2, A__ISNATLIST_1, A__LENGTH_1 Compound Symbols: c38_2, c40_1, c41_2, c43_1, c44_2, c45_2, c46_1, c47_2, c48_1, c51_1, c8_1, c12_1, c21_1, c22_1, c24_1, c35_1, c36_1, c37_1, c39_1, c42_1, c16_2, c16_1, c18_2, c18_1, c26_2, c26_1, c29_2, c29_1, c32_2 ---------------------------------------- (49) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 2 trailing tuple parts ---------------------------------------- (50) Obligation: Complexity Dependency Tuples Problem Rules: a__zeros -> cons(0, zeros) a__zeros -> zeros a__U11(tt) -> tt a__U11(z0) -> U11(z0) a__U21(tt) -> tt a__U21(z0) -> U21(z0) a__U31(tt) -> tt a__U31(z0) -> U31(z0) a__U41(tt, z0) -> a__U42(a__isNatIList(z0)) a__U41(z0, z1) -> U41(z0, z1) a__U42(tt) -> tt a__U42(z0) -> U42(z0) a__U51(tt, z0) -> a__U52(a__isNatList(z0)) a__U51(z0, z1) -> U51(z0, z1) a__U52(tt) -> tt a__U52(z0) -> U52(z0) a__U61(tt, z0, z1) -> a__U62(a__isNat(z1), z0) a__U61(z0, z1, z2) -> U61(z0, z1, z2) a__U62(tt, z0) -> s(a__length(mark(z0))) a__U62(z0, z1) -> U62(z0, z1) a__isNat(0) -> tt a__isNat(length(z0)) -> a__U11(a__isNatList(z0)) a__isNat(s(z0)) -> a__U21(a__isNat(z0)) a__isNat(z0) -> isNat(z0) a__isNatIList(z0) -> a__U31(a__isNatList(z0)) a__isNatIList(zeros) -> tt a__isNatIList(cons(z0, z1)) -> a__U41(a__isNat(z0), z1) a__isNatIList(z0) -> isNatIList(z0) a__isNatList(nil) -> tt a__isNatList(cons(z0, z1)) -> a__U51(a__isNat(z0), z1) a__isNatList(z0) -> isNatList(z0) a__length(nil) -> 0 a__length(cons(z0, z1)) -> a__U61(a__isNatList(z1), z1, z0) a__length(z0) -> length(z0) mark(zeros) -> a__zeros mark(U11(z0)) -> a__U11(mark(z0)) mark(U21(z0)) -> a__U21(mark(z0)) mark(U31(z0)) -> a__U31(mark(z0)) mark(U41(z0, z1)) -> a__U41(mark(z0), z1) mark(U42(z0)) -> a__U42(mark(z0)) mark(isNatIList(z0)) -> a__isNatIList(z0) mark(U51(z0, z1)) -> a__U51(mark(z0), z1) mark(U52(z0)) -> a__U52(mark(z0)) mark(isNatList(z0)) -> a__isNatList(z0) mark(U61(z0, z1, z2)) -> a__U61(mark(z0), z1, z2) mark(U62(z0, z1)) -> a__U62(mark(z0), z1) mark(isNat(z0)) -> a__isNat(z0) mark(length(z0)) -> a__length(mark(z0)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(0) -> 0 mark(tt) -> tt mark(s(z0)) -> s(mark(z0)) mark(nil) -> nil Tuples: MARK(U41(z0, z1)) -> c38(A__U41(mark(z0), z1), MARK(z0)) MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(U51(z0, z1)) -> c41(A__U51(mark(z0), z1), MARK(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(U61(z0, z1, z2)) -> c44(A__U61(mark(z0), z1, z2), MARK(z0)) MARK(U62(z0, z1)) -> c45(A__U62(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(length(z0)) -> c47(A__LENGTH(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(a__isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(a__isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, U11(z0)) -> c18(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) A__U62(tt, U21(z0)) -> c18(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) A__U62(tt, U31(z0)) -> c18(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) A__U62(tt, U41(z0, z1)) -> c18(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) A__U62(tt, U42(z0)) -> c18(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) A__U62(tt, U51(z0, z1)) -> c18(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) A__U62(tt, U52(z0)) -> c18(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) A__U62(tt, isNatList(z0)) -> c18(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) A__U62(tt, U61(z0, z1, z2)) -> c18(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) A__U62(tt, U62(z0, z1)) -> c18(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) S tuples: MARK(U41(z0, z1)) -> c38(A__U41(mark(z0), z1), MARK(z0)) MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(U51(z0, z1)) -> c41(A__U51(mark(z0), z1), MARK(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(U61(z0, z1, z2)) -> c44(A__U61(mark(z0), z1, z2), MARK(z0)) MARK(U62(z0, z1)) -> c45(A__U62(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(length(z0)) -> c47(A__LENGTH(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(a__isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(a__isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, U11(z0)) -> c18(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) A__U62(tt, U21(z0)) -> c18(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) A__U62(tt, U31(z0)) -> c18(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) A__U62(tt, U41(z0, z1)) -> c18(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) A__U62(tt, U42(z0)) -> c18(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) A__U62(tt, U51(z0, z1)) -> c18(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) A__U62(tt, U52(z0)) -> c18(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) A__U62(tt, isNatList(z0)) -> c18(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) A__U62(tt, U61(z0, z1, z2)) -> c18(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) A__U62(tt, U62(z0, z1)) -> c18(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) K tuples:none Defined Rule Symbols: a__zeros, a__U11_1, a__U21_1, a__U31_1, a__U41_2, a__U42_1, a__U51_2, a__U52_1, a__U61_3, a__U62_2, a__isNat_1, a__isNatIList_1, a__isNatList_1, a__length_1, mark_1 Defined Pair Symbols: MARK_1, A__U41_2, A__U51_2, A__ISNAT_1, A__ISNATILIST_1, A__U61_3, A__U62_2, A__ISNATLIST_1, A__LENGTH_1 Compound Symbols: c38_2, c40_1, c41_2, c43_1, c44_2, c45_2, c46_1, c47_2, c48_1, c51_1, c8_1, c12_1, c21_1, c22_1, c24_1, c35_1, c36_1, c37_1, c39_1, c42_1, c16_2, c16_1, c18_2, c18_1, c26_2, c26_1, c29_2, c29_1, c32_2, c32_1 ---------------------------------------- (51) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace MARK(U41(z0, z1)) -> c38(A__U41(mark(z0), z1), MARK(z0)) by MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1), MARK(zeros)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(isNatIList(z0), x1)) -> c38(A__U41(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(isNatList(z0), x1)) -> c38(A__U41(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(isNat(z0), x1)) -> c38(A__U41(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(cons(z0, z1), x1)) -> c38(A__U41(cons(mark(z0), z1), x1), MARK(cons(z0, z1))) MARK(U41(0, x1)) -> c38(A__U41(0, x1), MARK(0)) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1), MARK(tt)) MARK(U41(s(z0), x1)) -> c38(A__U41(s(mark(z0)), x1), MARK(s(z0))) MARK(U41(nil, x1)) -> c38(A__U41(nil, x1), MARK(nil)) ---------------------------------------- (52) Obligation: Complexity Dependency Tuples Problem Rules: a__zeros -> cons(0, zeros) a__zeros -> zeros a__U11(tt) -> tt a__U11(z0) -> U11(z0) a__U21(tt) -> tt a__U21(z0) -> U21(z0) a__U31(tt) -> tt a__U31(z0) -> U31(z0) a__U41(tt, z0) -> a__U42(a__isNatIList(z0)) a__U41(z0, z1) -> U41(z0, z1) a__U42(tt) -> tt a__U42(z0) -> U42(z0) a__U51(tt, z0) -> a__U52(a__isNatList(z0)) a__U51(z0, z1) -> U51(z0, z1) a__U52(tt) -> tt a__U52(z0) -> U52(z0) a__U61(tt, z0, z1) -> a__U62(a__isNat(z1), z0) a__U61(z0, z1, z2) -> U61(z0, z1, z2) a__U62(tt, z0) -> s(a__length(mark(z0))) a__U62(z0, z1) -> U62(z0, z1) a__isNat(0) -> tt a__isNat(length(z0)) -> a__U11(a__isNatList(z0)) a__isNat(s(z0)) -> a__U21(a__isNat(z0)) a__isNat(z0) -> isNat(z0) a__isNatIList(z0) -> a__U31(a__isNatList(z0)) a__isNatIList(zeros) -> tt a__isNatIList(cons(z0, z1)) -> a__U41(a__isNat(z0), z1) a__isNatIList(z0) -> isNatIList(z0) a__isNatList(nil) -> tt a__isNatList(cons(z0, z1)) -> a__U51(a__isNat(z0), z1) a__isNatList(z0) -> isNatList(z0) a__length(nil) -> 0 a__length(cons(z0, z1)) -> a__U61(a__isNatList(z1), z1, z0) a__length(z0) -> length(z0) mark(zeros) -> a__zeros mark(U11(z0)) -> a__U11(mark(z0)) mark(U21(z0)) -> a__U21(mark(z0)) mark(U31(z0)) -> a__U31(mark(z0)) mark(U41(z0, z1)) -> a__U41(mark(z0), z1) mark(U42(z0)) -> a__U42(mark(z0)) mark(isNatIList(z0)) -> a__isNatIList(z0) mark(U51(z0, z1)) -> a__U51(mark(z0), z1) mark(U52(z0)) -> a__U52(mark(z0)) mark(isNatList(z0)) -> a__isNatList(z0) mark(U61(z0, z1, z2)) -> a__U61(mark(z0), z1, z2) mark(U62(z0, z1)) -> a__U62(mark(z0), z1) mark(isNat(z0)) -> a__isNat(z0) mark(length(z0)) -> a__length(mark(z0)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(0) -> 0 mark(tt) -> tt mark(s(z0)) -> s(mark(z0)) mark(nil) -> nil Tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(U51(z0, z1)) -> c41(A__U51(mark(z0), z1), MARK(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(U61(z0, z1, z2)) -> c44(A__U61(mark(z0), z1, z2), MARK(z0)) MARK(U62(z0, z1)) -> c45(A__U62(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(length(z0)) -> c47(A__LENGTH(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(a__isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(a__isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, U11(z0)) -> c18(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) A__U62(tt, U21(z0)) -> c18(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) A__U62(tt, U31(z0)) -> c18(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) A__U62(tt, U41(z0, z1)) -> c18(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) A__U62(tt, U42(z0)) -> c18(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) A__U62(tt, U51(z0, z1)) -> c18(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) A__U62(tt, U52(z0)) -> c18(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) A__U62(tt, isNatList(z0)) -> c18(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) A__U62(tt, U61(z0, z1, z2)) -> c18(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) A__U62(tt, U62(z0, z1)) -> c18(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1), MARK(zeros)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(isNatIList(z0), x1)) -> c38(A__U41(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(isNatList(z0), x1)) -> c38(A__U41(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(isNat(z0), x1)) -> c38(A__U41(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(cons(z0, z1), x1)) -> c38(A__U41(cons(mark(z0), z1), x1), MARK(cons(z0, z1))) MARK(U41(0, x1)) -> c38(A__U41(0, x1), MARK(0)) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1), MARK(tt)) MARK(U41(s(z0), x1)) -> c38(A__U41(s(mark(z0)), x1), MARK(s(z0))) MARK(U41(nil, x1)) -> c38(A__U41(nil, x1), MARK(nil)) S tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(U51(z0, z1)) -> c41(A__U51(mark(z0), z1), MARK(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(U61(z0, z1, z2)) -> c44(A__U61(mark(z0), z1, z2), MARK(z0)) MARK(U62(z0, z1)) -> c45(A__U62(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(length(z0)) -> c47(A__LENGTH(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(a__isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(a__isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, U11(z0)) -> c18(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) A__U62(tt, U21(z0)) -> c18(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) A__U62(tt, U31(z0)) -> c18(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) A__U62(tt, U41(z0, z1)) -> c18(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) A__U62(tt, U42(z0)) -> c18(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) A__U62(tt, U51(z0, z1)) -> c18(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) A__U62(tt, U52(z0)) -> c18(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) A__U62(tt, isNatList(z0)) -> c18(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) A__U62(tt, U61(z0, z1, z2)) -> c18(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) A__U62(tt, U62(z0, z1)) -> c18(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1), MARK(zeros)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(isNatIList(z0), x1)) -> c38(A__U41(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(isNatList(z0), x1)) -> c38(A__U41(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(isNat(z0), x1)) -> c38(A__U41(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(cons(z0, z1), x1)) -> c38(A__U41(cons(mark(z0), z1), x1), MARK(cons(z0, z1))) MARK(U41(0, x1)) -> c38(A__U41(0, x1), MARK(0)) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1), MARK(tt)) MARK(U41(s(z0), x1)) -> c38(A__U41(s(mark(z0)), x1), MARK(s(z0))) MARK(U41(nil, x1)) -> c38(A__U41(nil, x1), MARK(nil)) K tuples:none Defined Rule Symbols: a__zeros, a__U11_1, a__U21_1, a__U31_1, a__U41_2, a__U42_1, a__U51_2, a__U52_1, a__U61_3, a__U62_2, a__isNat_1, a__isNatIList_1, a__isNatList_1, a__length_1, mark_1 Defined Pair Symbols: MARK_1, A__U41_2, A__U51_2, A__ISNAT_1, A__ISNATILIST_1, A__U61_3, A__U62_2, A__ISNATLIST_1, A__LENGTH_1 Compound Symbols: c40_1, c41_2, c43_1, c44_2, c45_2, c46_1, c47_2, c48_1, c51_1, c8_1, c12_1, c21_1, c22_1, c24_1, c35_1, c36_1, c37_1, c39_1, c42_1, c16_2, c16_1, c18_2, c18_1, c26_2, c26_1, c29_2, c29_1, c32_2, c32_1, c38_2 ---------------------------------------- (53) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 2 trailing nodes: MARK(U41(0, x1)) -> c38(A__U41(0, x1), MARK(0)) MARK(U41(nil, x1)) -> c38(A__U41(nil, x1), MARK(nil)) ---------------------------------------- (54) Obligation: Complexity Dependency Tuples Problem Rules: a__zeros -> cons(0, zeros) a__zeros -> zeros a__U11(tt) -> tt a__U11(z0) -> U11(z0) a__U21(tt) -> tt a__U21(z0) -> U21(z0) a__U31(tt) -> tt a__U31(z0) -> U31(z0) a__U41(tt, z0) -> a__U42(a__isNatIList(z0)) a__U41(z0, z1) -> U41(z0, z1) a__U42(tt) -> tt a__U42(z0) -> U42(z0) a__U51(tt, z0) -> a__U52(a__isNatList(z0)) a__U51(z0, z1) -> U51(z0, z1) a__U52(tt) -> tt a__U52(z0) -> U52(z0) a__U61(tt, z0, z1) -> a__U62(a__isNat(z1), z0) a__U61(z0, z1, z2) -> U61(z0, z1, z2) a__U62(tt, z0) -> s(a__length(mark(z0))) a__U62(z0, z1) -> U62(z0, z1) a__isNat(0) -> tt a__isNat(length(z0)) -> a__U11(a__isNatList(z0)) a__isNat(s(z0)) -> a__U21(a__isNat(z0)) a__isNat(z0) -> isNat(z0) a__isNatIList(z0) -> a__U31(a__isNatList(z0)) a__isNatIList(zeros) -> tt a__isNatIList(cons(z0, z1)) -> a__U41(a__isNat(z0), z1) a__isNatIList(z0) -> isNatIList(z0) a__isNatList(nil) -> tt a__isNatList(cons(z0, z1)) -> a__U51(a__isNat(z0), z1) a__isNatList(z0) -> isNatList(z0) a__length(nil) -> 0 a__length(cons(z0, z1)) -> a__U61(a__isNatList(z1), z1, z0) a__length(z0) -> length(z0) mark(zeros) -> a__zeros mark(U11(z0)) -> a__U11(mark(z0)) mark(U21(z0)) -> a__U21(mark(z0)) mark(U31(z0)) -> a__U31(mark(z0)) mark(U41(z0, z1)) -> a__U41(mark(z0), z1) mark(U42(z0)) -> a__U42(mark(z0)) mark(isNatIList(z0)) -> a__isNatIList(z0) mark(U51(z0, z1)) -> a__U51(mark(z0), z1) mark(U52(z0)) -> a__U52(mark(z0)) mark(isNatList(z0)) -> a__isNatList(z0) mark(U61(z0, z1, z2)) -> a__U61(mark(z0), z1, z2) mark(U62(z0, z1)) -> a__U62(mark(z0), z1) mark(isNat(z0)) -> a__isNat(z0) mark(length(z0)) -> a__length(mark(z0)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(0) -> 0 mark(tt) -> tt mark(s(z0)) -> s(mark(z0)) mark(nil) -> nil Tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(U51(z0, z1)) -> c41(A__U51(mark(z0), z1), MARK(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(U61(z0, z1, z2)) -> c44(A__U61(mark(z0), z1, z2), MARK(z0)) MARK(U62(z0, z1)) -> c45(A__U62(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(length(z0)) -> c47(A__LENGTH(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(a__isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(a__isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, U11(z0)) -> c18(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) A__U62(tt, U21(z0)) -> c18(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) A__U62(tt, U31(z0)) -> c18(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) A__U62(tt, U41(z0, z1)) -> c18(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) A__U62(tt, U42(z0)) -> c18(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) A__U62(tt, U51(z0, z1)) -> c18(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) A__U62(tt, U52(z0)) -> c18(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) A__U62(tt, isNatList(z0)) -> c18(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) A__U62(tt, U61(z0, z1, z2)) -> c18(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) A__U62(tt, U62(z0, z1)) -> c18(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1), MARK(zeros)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(isNatIList(z0), x1)) -> c38(A__U41(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(isNatList(z0), x1)) -> c38(A__U41(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(isNat(z0), x1)) -> c38(A__U41(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(cons(z0, z1), x1)) -> c38(A__U41(cons(mark(z0), z1), x1), MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1), MARK(tt)) MARK(U41(s(z0), x1)) -> c38(A__U41(s(mark(z0)), x1), MARK(s(z0))) S tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(U51(z0, z1)) -> c41(A__U51(mark(z0), z1), MARK(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(U61(z0, z1, z2)) -> c44(A__U61(mark(z0), z1, z2), MARK(z0)) MARK(U62(z0, z1)) -> c45(A__U62(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(length(z0)) -> c47(A__LENGTH(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(a__isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(a__isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, U11(z0)) -> c18(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) A__U62(tt, U21(z0)) -> c18(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) A__U62(tt, U31(z0)) -> c18(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) A__U62(tt, U41(z0, z1)) -> c18(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) A__U62(tt, U42(z0)) -> c18(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) A__U62(tt, U51(z0, z1)) -> c18(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) A__U62(tt, U52(z0)) -> c18(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) A__U62(tt, isNatList(z0)) -> c18(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) A__U62(tt, U61(z0, z1, z2)) -> c18(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) A__U62(tt, U62(z0, z1)) -> c18(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1), MARK(zeros)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(isNatIList(z0), x1)) -> c38(A__U41(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(isNatList(z0), x1)) -> c38(A__U41(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(isNat(z0), x1)) -> c38(A__U41(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(cons(z0, z1), x1)) -> c38(A__U41(cons(mark(z0), z1), x1), MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1), MARK(tt)) MARK(U41(s(z0), x1)) -> c38(A__U41(s(mark(z0)), x1), MARK(s(z0))) K tuples:none Defined Rule Symbols: a__zeros, a__U11_1, a__U21_1, a__U31_1, a__U41_2, a__U42_1, a__U51_2, a__U52_1, a__U61_3, a__U62_2, a__isNat_1, a__isNatIList_1, a__isNatList_1, a__length_1, mark_1 Defined Pair Symbols: MARK_1, A__U41_2, A__U51_2, A__ISNAT_1, A__ISNATILIST_1, A__U61_3, A__U62_2, A__ISNATLIST_1, A__LENGTH_1 Compound Symbols: c40_1, c41_2, c43_1, c44_2, c45_2, c46_1, c47_2, c48_1, c51_1, c8_1, c12_1, c21_1, c22_1, c24_1, c35_1, c36_1, c37_1, c39_1, c42_1, c16_2, c16_1, c18_2, c18_1, c26_2, c26_1, c29_2, c29_1, c32_2, c32_1, c38_2 ---------------------------------------- (55) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 4 trailing tuple parts ---------------------------------------- (56) Obligation: Complexity Dependency Tuples Problem Rules: a__zeros -> cons(0, zeros) a__zeros -> zeros a__U11(tt) -> tt a__U11(z0) -> U11(z0) a__U21(tt) -> tt a__U21(z0) -> U21(z0) a__U31(tt) -> tt a__U31(z0) -> U31(z0) a__U41(tt, z0) -> a__U42(a__isNatIList(z0)) a__U41(z0, z1) -> U41(z0, z1) a__U42(tt) -> tt a__U42(z0) -> U42(z0) a__U51(tt, z0) -> a__U52(a__isNatList(z0)) a__U51(z0, z1) -> U51(z0, z1) a__U52(tt) -> tt a__U52(z0) -> U52(z0) a__U61(tt, z0, z1) -> a__U62(a__isNat(z1), z0) a__U61(z0, z1, z2) -> U61(z0, z1, z2) a__U62(tt, z0) -> s(a__length(mark(z0))) a__U62(z0, z1) -> U62(z0, z1) a__isNat(0) -> tt a__isNat(length(z0)) -> a__U11(a__isNatList(z0)) a__isNat(s(z0)) -> a__U21(a__isNat(z0)) a__isNat(z0) -> isNat(z0) a__isNatIList(z0) -> a__U31(a__isNatList(z0)) a__isNatIList(zeros) -> tt a__isNatIList(cons(z0, z1)) -> a__U41(a__isNat(z0), z1) a__isNatIList(z0) -> isNatIList(z0) a__isNatList(nil) -> tt a__isNatList(cons(z0, z1)) -> a__U51(a__isNat(z0), z1) a__isNatList(z0) -> isNatList(z0) a__length(nil) -> 0 a__length(cons(z0, z1)) -> a__U61(a__isNatList(z1), z1, z0) a__length(z0) -> length(z0) mark(zeros) -> a__zeros mark(U11(z0)) -> a__U11(mark(z0)) mark(U21(z0)) -> a__U21(mark(z0)) mark(U31(z0)) -> a__U31(mark(z0)) mark(U41(z0, z1)) -> a__U41(mark(z0), z1) mark(U42(z0)) -> a__U42(mark(z0)) mark(isNatIList(z0)) -> a__isNatIList(z0) mark(U51(z0, z1)) -> a__U51(mark(z0), z1) mark(U52(z0)) -> a__U52(mark(z0)) mark(isNatList(z0)) -> a__isNatList(z0) mark(U61(z0, z1, z2)) -> a__U61(mark(z0), z1, z2) mark(U62(z0, z1)) -> a__U62(mark(z0), z1) mark(isNat(z0)) -> a__isNat(z0) mark(length(z0)) -> a__length(mark(z0)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(0) -> 0 mark(tt) -> tt mark(s(z0)) -> s(mark(z0)) mark(nil) -> nil Tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(U51(z0, z1)) -> c41(A__U51(mark(z0), z1), MARK(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(U61(z0, z1, z2)) -> c44(A__U61(mark(z0), z1, z2), MARK(z0)) MARK(U62(z0, z1)) -> c45(A__U62(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(length(z0)) -> c47(A__LENGTH(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(a__isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(a__isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, U11(z0)) -> c18(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) A__U62(tt, U21(z0)) -> c18(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) A__U62(tt, U31(z0)) -> c18(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) A__U62(tt, U41(z0, z1)) -> c18(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) A__U62(tt, U42(z0)) -> c18(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) A__U62(tt, U51(z0, z1)) -> c18(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) A__U62(tt, U52(z0)) -> c18(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) A__U62(tt, isNatList(z0)) -> c18(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) A__U62(tt, U61(z0, z1, z2)) -> c18(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) A__U62(tt, U62(z0, z1)) -> c18(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(isNatIList(z0), x1)) -> c38(A__U41(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(isNatList(z0), x1)) -> c38(A__U41(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(isNat(z0), x1)) -> c38(A__U41(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) S tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(U51(z0, z1)) -> c41(A__U51(mark(z0), z1), MARK(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(U61(z0, z1, z2)) -> c44(A__U61(mark(z0), z1, z2), MARK(z0)) MARK(U62(z0, z1)) -> c45(A__U62(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(length(z0)) -> c47(A__LENGTH(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(a__isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(a__isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, U11(z0)) -> c18(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) A__U62(tt, U21(z0)) -> c18(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) A__U62(tt, U31(z0)) -> c18(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) A__U62(tt, U41(z0, z1)) -> c18(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) A__U62(tt, U42(z0)) -> c18(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) A__U62(tt, U51(z0, z1)) -> c18(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) A__U62(tt, U52(z0)) -> c18(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) A__U62(tt, isNatList(z0)) -> c18(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) A__U62(tt, U61(z0, z1, z2)) -> c18(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) A__U62(tt, U62(z0, z1)) -> c18(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(isNatIList(z0), x1)) -> c38(A__U41(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(isNatList(z0), x1)) -> c38(A__U41(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(isNat(z0), x1)) -> c38(A__U41(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) K tuples:none Defined Rule Symbols: a__zeros, a__U11_1, a__U21_1, a__U31_1, a__U41_2, a__U42_1, a__U51_2, a__U52_1, a__U61_3, a__U62_2, a__isNat_1, a__isNatIList_1, a__isNatList_1, a__length_1, mark_1 Defined Pair Symbols: MARK_1, A__U41_2, A__U51_2, A__ISNAT_1, A__ISNATILIST_1, A__U61_3, A__U62_2, A__ISNATLIST_1, A__LENGTH_1 Compound Symbols: c40_1, c41_2, c43_1, c44_2, c45_2, c46_1, c47_2, c48_1, c51_1, c8_1, c12_1, c21_1, c22_1, c24_1, c35_1, c36_1, c37_1, c39_1, c42_1, c16_2, c16_1, c18_2, c18_1, c26_2, c26_1, c29_2, c29_1, c32_2, c32_1, c38_2, c38_1 ---------------------------------------- (57) CdtGraphSplitRhsProof (BOTH BOUNDS(ID, ID)) Split RHS of tuples not part of any SCC ---------------------------------------- (58) Obligation: Complexity Dependency Tuples Problem Rules: a__zeros -> cons(0, zeros) a__zeros -> zeros a__U11(tt) -> tt a__U11(z0) -> U11(z0) a__U21(tt) -> tt a__U21(z0) -> U21(z0) a__U31(tt) -> tt a__U31(z0) -> U31(z0) a__U41(tt, z0) -> a__U42(a__isNatIList(z0)) a__U41(z0, z1) -> U41(z0, z1) a__U42(tt) -> tt a__U42(z0) -> U42(z0) a__U51(tt, z0) -> a__U52(a__isNatList(z0)) a__U51(z0, z1) -> U51(z0, z1) a__U52(tt) -> tt a__U52(z0) -> U52(z0) a__U61(tt, z0, z1) -> a__U62(a__isNat(z1), z0) a__U61(z0, z1, z2) -> U61(z0, z1, z2) a__U62(tt, z0) -> s(a__length(mark(z0))) a__U62(z0, z1) -> U62(z0, z1) a__isNat(0) -> tt a__isNat(length(z0)) -> a__U11(a__isNatList(z0)) a__isNat(s(z0)) -> a__U21(a__isNat(z0)) a__isNat(z0) -> isNat(z0) a__isNatIList(z0) -> a__U31(a__isNatList(z0)) a__isNatIList(zeros) -> tt a__isNatIList(cons(z0, z1)) -> a__U41(a__isNat(z0), z1) a__isNatIList(z0) -> isNatIList(z0) a__isNatList(nil) -> tt a__isNatList(cons(z0, z1)) -> a__U51(a__isNat(z0), z1) a__isNatList(z0) -> isNatList(z0) a__length(nil) -> 0 a__length(cons(z0, z1)) -> a__U61(a__isNatList(z1), z1, z0) a__length(z0) -> length(z0) mark(zeros) -> a__zeros mark(U11(z0)) -> a__U11(mark(z0)) mark(U21(z0)) -> a__U21(mark(z0)) mark(U31(z0)) -> a__U31(mark(z0)) mark(U41(z0, z1)) -> a__U41(mark(z0), z1) mark(U42(z0)) -> a__U42(mark(z0)) mark(isNatIList(z0)) -> a__isNatIList(z0) mark(U51(z0, z1)) -> a__U51(mark(z0), z1) mark(U52(z0)) -> a__U52(mark(z0)) mark(isNatList(z0)) -> a__isNatList(z0) mark(U61(z0, z1, z2)) -> a__U61(mark(z0), z1, z2) mark(U62(z0, z1)) -> a__U62(mark(z0), z1) mark(isNat(z0)) -> a__isNat(z0) mark(length(z0)) -> a__length(mark(z0)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(0) -> 0 mark(tt) -> tt mark(s(z0)) -> s(mark(z0)) mark(nil) -> nil Tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(U51(z0, z1)) -> c41(A__U51(mark(z0), z1), MARK(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(U61(z0, z1, z2)) -> c44(A__U61(mark(z0), z1, z2), MARK(z0)) MARK(U62(z0, z1)) -> c45(A__U62(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(length(z0)) -> c47(A__LENGTH(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(a__isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(a__isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, U11(z0)) -> c18(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) A__U62(tt, U21(z0)) -> c18(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) A__U62(tt, U31(z0)) -> c18(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) A__U62(tt, U41(z0, z1)) -> c18(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) A__U62(tt, U42(z0)) -> c18(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) A__U62(tt, U51(z0, z1)) -> c18(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) A__U62(tt, U52(z0)) -> c18(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) A__U62(tt, isNatList(z0)) -> c18(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) A__U62(tt, U61(z0, z1, z2)) -> c18(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) A__U62(tt, U62(z0, z1)) -> c18(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) S tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(U51(z0, z1)) -> c41(A__U51(mark(z0), z1), MARK(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(U61(z0, z1, z2)) -> c44(A__U61(mark(z0), z1, z2), MARK(z0)) MARK(U62(z0, z1)) -> c45(A__U62(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(length(z0)) -> c47(A__LENGTH(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(a__isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(a__isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, U11(z0)) -> c18(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) A__U62(tt, U21(z0)) -> c18(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) A__U62(tt, U31(z0)) -> c18(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) A__U62(tt, U41(z0, z1)) -> c18(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) A__U62(tt, U42(z0)) -> c18(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) A__U62(tt, U51(z0, z1)) -> c18(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) A__U62(tt, U52(z0)) -> c18(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) A__U62(tt, isNatList(z0)) -> c18(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) A__U62(tt, U61(z0, z1, z2)) -> c18(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) A__U62(tt, U62(z0, z1)) -> c18(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) K tuples:none Defined Rule Symbols: a__zeros, a__U11_1, a__U21_1, a__U31_1, a__U41_2, a__U42_1, a__U51_2, a__U52_1, a__U61_3, a__U62_2, a__isNat_1, a__isNatIList_1, a__isNatList_1, a__length_1, mark_1 Defined Pair Symbols: MARK_1, A__U41_2, A__U51_2, A__ISNAT_1, A__ISNATILIST_1, A__U61_3, A__U62_2, A__ISNATLIST_1, A__LENGTH_1 Compound Symbols: c40_1, c41_2, c43_1, c44_2, c45_2, c46_1, c47_2, c48_1, c51_1, c8_1, c12_1, c21_1, c22_1, c24_1, c35_1, c36_1, c37_1, c39_1, c42_1, c16_2, c16_1, c18_2, c18_1, c26_2, c26_1, c29_2, c29_1, c32_2, c32_1, c38_2, c38_1, c_1 ---------------------------------------- (59) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace MARK(U51(z0, z1)) -> c41(A__U51(mark(z0), z1), MARK(z0)) by MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1), MARK(zeros)) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(isNatIList(z0), x1)) -> c41(A__U51(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(isNatList(z0), x1)) -> c41(A__U51(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(isNat(z0), x1)) -> c41(A__U51(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(cons(z0, z1), x1)) -> c41(A__U51(cons(mark(z0), z1), x1), MARK(cons(z0, z1))) MARK(U51(0, x1)) -> c41(A__U51(0, x1), MARK(0)) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1), MARK(tt)) MARK(U51(s(z0), x1)) -> c41(A__U51(s(mark(z0)), x1), MARK(s(z0))) MARK(U51(nil, x1)) -> c41(A__U51(nil, x1), MARK(nil)) ---------------------------------------- (60) Obligation: Complexity Dependency Tuples Problem Rules: a__zeros -> cons(0, zeros) a__zeros -> zeros a__U11(tt) -> tt a__U11(z0) -> U11(z0) a__U21(tt) -> tt a__U21(z0) -> U21(z0) a__U31(tt) -> tt a__U31(z0) -> U31(z0) a__U41(tt, z0) -> a__U42(a__isNatIList(z0)) a__U41(z0, z1) -> U41(z0, z1) a__U42(tt) -> tt a__U42(z0) -> U42(z0) a__U51(tt, z0) -> a__U52(a__isNatList(z0)) a__U51(z0, z1) -> U51(z0, z1) a__U52(tt) -> tt a__U52(z0) -> U52(z0) a__U61(tt, z0, z1) -> a__U62(a__isNat(z1), z0) a__U61(z0, z1, z2) -> U61(z0, z1, z2) a__U62(tt, z0) -> s(a__length(mark(z0))) a__U62(z0, z1) -> U62(z0, z1) a__isNat(0) -> tt a__isNat(length(z0)) -> a__U11(a__isNatList(z0)) a__isNat(s(z0)) -> a__U21(a__isNat(z0)) a__isNat(z0) -> isNat(z0) a__isNatIList(z0) -> a__U31(a__isNatList(z0)) a__isNatIList(zeros) -> tt a__isNatIList(cons(z0, z1)) -> a__U41(a__isNat(z0), z1) a__isNatIList(z0) -> isNatIList(z0) a__isNatList(nil) -> tt a__isNatList(cons(z0, z1)) -> a__U51(a__isNat(z0), z1) a__isNatList(z0) -> isNatList(z0) a__length(nil) -> 0 a__length(cons(z0, z1)) -> a__U61(a__isNatList(z1), z1, z0) a__length(z0) -> length(z0) mark(zeros) -> a__zeros mark(U11(z0)) -> a__U11(mark(z0)) mark(U21(z0)) -> a__U21(mark(z0)) mark(U31(z0)) -> a__U31(mark(z0)) mark(U41(z0, z1)) -> a__U41(mark(z0), z1) mark(U42(z0)) -> a__U42(mark(z0)) mark(isNatIList(z0)) -> a__isNatIList(z0) mark(U51(z0, z1)) -> a__U51(mark(z0), z1) mark(U52(z0)) -> a__U52(mark(z0)) mark(isNatList(z0)) -> a__isNatList(z0) mark(U61(z0, z1, z2)) -> a__U61(mark(z0), z1, z2) mark(U62(z0, z1)) -> a__U62(mark(z0), z1) mark(isNat(z0)) -> a__isNat(z0) mark(length(z0)) -> a__length(mark(z0)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(0) -> 0 mark(tt) -> tt mark(s(z0)) -> s(mark(z0)) mark(nil) -> nil Tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(U61(z0, z1, z2)) -> c44(A__U61(mark(z0), z1, z2), MARK(z0)) MARK(U62(z0, z1)) -> c45(A__U62(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(length(z0)) -> c47(A__LENGTH(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(a__isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(a__isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, U11(z0)) -> c18(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) A__U62(tt, U21(z0)) -> c18(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) A__U62(tt, U31(z0)) -> c18(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) A__U62(tt, U41(z0, z1)) -> c18(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) A__U62(tt, U42(z0)) -> c18(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) A__U62(tt, U51(z0, z1)) -> c18(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) A__U62(tt, U52(z0)) -> c18(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) A__U62(tt, isNatList(z0)) -> c18(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) A__U62(tt, U61(z0, z1, z2)) -> c18(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) A__U62(tt, U62(z0, z1)) -> c18(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1), MARK(zeros)) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(isNatIList(z0), x1)) -> c41(A__U51(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(isNatList(z0), x1)) -> c41(A__U51(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(isNat(z0), x1)) -> c41(A__U51(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(cons(z0, z1), x1)) -> c41(A__U51(cons(mark(z0), z1), x1), MARK(cons(z0, z1))) MARK(U51(0, x1)) -> c41(A__U51(0, x1), MARK(0)) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1), MARK(tt)) MARK(U51(s(z0), x1)) -> c41(A__U51(s(mark(z0)), x1), MARK(s(z0))) MARK(U51(nil, x1)) -> c41(A__U51(nil, x1), MARK(nil)) S tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(U61(z0, z1, z2)) -> c44(A__U61(mark(z0), z1, z2), MARK(z0)) MARK(U62(z0, z1)) -> c45(A__U62(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(length(z0)) -> c47(A__LENGTH(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(a__isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(a__isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, U11(z0)) -> c18(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) A__U62(tt, U21(z0)) -> c18(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) A__U62(tt, U31(z0)) -> c18(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) A__U62(tt, U41(z0, z1)) -> c18(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) A__U62(tt, U42(z0)) -> c18(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) A__U62(tt, U51(z0, z1)) -> c18(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) A__U62(tt, U52(z0)) -> c18(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) A__U62(tt, isNatList(z0)) -> c18(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) A__U62(tt, U61(z0, z1, z2)) -> c18(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) A__U62(tt, U62(z0, z1)) -> c18(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1), MARK(zeros)) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(isNatIList(z0), x1)) -> c41(A__U51(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(isNatList(z0), x1)) -> c41(A__U51(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(isNat(z0), x1)) -> c41(A__U51(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(cons(z0, z1), x1)) -> c41(A__U51(cons(mark(z0), z1), x1), MARK(cons(z0, z1))) MARK(U51(0, x1)) -> c41(A__U51(0, x1), MARK(0)) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1), MARK(tt)) MARK(U51(s(z0), x1)) -> c41(A__U51(s(mark(z0)), x1), MARK(s(z0))) MARK(U51(nil, x1)) -> c41(A__U51(nil, x1), MARK(nil)) K tuples:none Defined Rule Symbols: a__zeros, a__U11_1, a__U21_1, a__U31_1, a__U41_2, a__U42_1, a__U51_2, a__U52_1, a__U61_3, a__U62_2, a__isNat_1, a__isNatIList_1, a__isNatList_1, a__length_1, mark_1 Defined Pair Symbols: MARK_1, A__U41_2, A__U51_2, A__ISNAT_1, A__ISNATILIST_1, A__U61_3, A__U62_2, A__ISNATLIST_1, A__LENGTH_1 Compound Symbols: c40_1, c43_1, c44_2, c45_2, c46_1, c47_2, c48_1, c51_1, c8_1, c12_1, c21_1, c22_1, c24_1, c35_1, c36_1, c37_1, c39_1, c42_1, c16_2, c16_1, c18_2, c18_1, c26_2, c26_1, c29_2, c29_1, c32_2, c32_1, c38_2, c38_1, c_1, c41_2 ---------------------------------------- (61) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 2 trailing nodes: MARK(U51(0, x1)) -> c41(A__U51(0, x1), MARK(0)) MARK(U51(nil, x1)) -> c41(A__U51(nil, x1), MARK(nil)) ---------------------------------------- (62) Obligation: Complexity Dependency Tuples Problem Rules: a__zeros -> cons(0, zeros) a__zeros -> zeros a__U11(tt) -> tt a__U11(z0) -> U11(z0) a__U21(tt) -> tt a__U21(z0) -> U21(z0) a__U31(tt) -> tt a__U31(z0) -> U31(z0) a__U41(tt, z0) -> a__U42(a__isNatIList(z0)) a__U41(z0, z1) -> U41(z0, z1) a__U42(tt) -> tt a__U42(z0) -> U42(z0) a__U51(tt, z0) -> a__U52(a__isNatList(z0)) a__U51(z0, z1) -> U51(z0, z1) a__U52(tt) -> tt a__U52(z0) -> U52(z0) a__U61(tt, z0, z1) -> a__U62(a__isNat(z1), z0) a__U61(z0, z1, z2) -> U61(z0, z1, z2) a__U62(tt, z0) -> s(a__length(mark(z0))) a__U62(z0, z1) -> U62(z0, z1) a__isNat(0) -> tt a__isNat(length(z0)) -> a__U11(a__isNatList(z0)) a__isNat(s(z0)) -> a__U21(a__isNat(z0)) a__isNat(z0) -> isNat(z0) a__isNatIList(z0) -> a__U31(a__isNatList(z0)) a__isNatIList(zeros) -> tt a__isNatIList(cons(z0, z1)) -> a__U41(a__isNat(z0), z1) a__isNatIList(z0) -> isNatIList(z0) a__isNatList(nil) -> tt a__isNatList(cons(z0, z1)) -> a__U51(a__isNat(z0), z1) a__isNatList(z0) -> isNatList(z0) a__length(nil) -> 0 a__length(cons(z0, z1)) -> a__U61(a__isNatList(z1), z1, z0) a__length(z0) -> length(z0) mark(zeros) -> a__zeros mark(U11(z0)) -> a__U11(mark(z0)) mark(U21(z0)) -> a__U21(mark(z0)) mark(U31(z0)) -> a__U31(mark(z0)) mark(U41(z0, z1)) -> a__U41(mark(z0), z1) mark(U42(z0)) -> a__U42(mark(z0)) mark(isNatIList(z0)) -> a__isNatIList(z0) mark(U51(z0, z1)) -> a__U51(mark(z0), z1) mark(U52(z0)) -> a__U52(mark(z0)) mark(isNatList(z0)) -> a__isNatList(z0) mark(U61(z0, z1, z2)) -> a__U61(mark(z0), z1, z2) mark(U62(z0, z1)) -> a__U62(mark(z0), z1) mark(isNat(z0)) -> a__isNat(z0) mark(length(z0)) -> a__length(mark(z0)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(0) -> 0 mark(tt) -> tt mark(s(z0)) -> s(mark(z0)) mark(nil) -> nil Tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(U61(z0, z1, z2)) -> c44(A__U61(mark(z0), z1, z2), MARK(z0)) MARK(U62(z0, z1)) -> c45(A__U62(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(length(z0)) -> c47(A__LENGTH(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(a__isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(a__isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, U11(z0)) -> c18(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) A__U62(tt, U21(z0)) -> c18(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) A__U62(tt, U31(z0)) -> c18(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) A__U62(tt, U41(z0, z1)) -> c18(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) A__U62(tt, U42(z0)) -> c18(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) A__U62(tt, U51(z0, z1)) -> c18(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) A__U62(tt, U52(z0)) -> c18(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) A__U62(tt, isNatList(z0)) -> c18(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) A__U62(tt, U61(z0, z1, z2)) -> c18(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) A__U62(tt, U62(z0, z1)) -> c18(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1), MARK(zeros)) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(isNatIList(z0), x1)) -> c41(A__U51(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(isNatList(z0), x1)) -> c41(A__U51(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(isNat(z0), x1)) -> c41(A__U51(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(cons(z0, z1), x1)) -> c41(A__U51(cons(mark(z0), z1), x1), MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1), MARK(tt)) MARK(U51(s(z0), x1)) -> c41(A__U51(s(mark(z0)), x1), MARK(s(z0))) S tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(U61(z0, z1, z2)) -> c44(A__U61(mark(z0), z1, z2), MARK(z0)) MARK(U62(z0, z1)) -> c45(A__U62(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(length(z0)) -> c47(A__LENGTH(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(a__isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(a__isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, U11(z0)) -> c18(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) A__U62(tt, U21(z0)) -> c18(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) A__U62(tt, U31(z0)) -> c18(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) A__U62(tt, U41(z0, z1)) -> c18(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) A__U62(tt, U42(z0)) -> c18(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) A__U62(tt, U51(z0, z1)) -> c18(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) A__U62(tt, U52(z0)) -> c18(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) A__U62(tt, isNatList(z0)) -> c18(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) A__U62(tt, U61(z0, z1, z2)) -> c18(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) A__U62(tt, U62(z0, z1)) -> c18(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1), MARK(zeros)) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(isNatIList(z0), x1)) -> c41(A__U51(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(isNatList(z0), x1)) -> c41(A__U51(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(isNat(z0), x1)) -> c41(A__U51(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(cons(z0, z1), x1)) -> c41(A__U51(cons(mark(z0), z1), x1), MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1), MARK(tt)) MARK(U51(s(z0), x1)) -> c41(A__U51(s(mark(z0)), x1), MARK(s(z0))) K tuples:none Defined Rule Symbols: a__zeros, a__U11_1, a__U21_1, a__U31_1, a__U41_2, a__U42_1, a__U51_2, a__U52_1, a__U61_3, a__U62_2, a__isNat_1, a__isNatIList_1, a__isNatList_1, a__length_1, mark_1 Defined Pair Symbols: MARK_1, A__U41_2, A__U51_2, A__ISNAT_1, A__ISNATILIST_1, A__U61_3, A__U62_2, A__ISNATLIST_1, A__LENGTH_1 Compound Symbols: c40_1, c43_1, c44_2, c45_2, c46_1, c47_2, c48_1, c51_1, c8_1, c12_1, c21_1, c22_1, c24_1, c35_1, c36_1, c37_1, c39_1, c42_1, c16_2, c16_1, c18_2, c18_1, c26_2, c26_1, c29_2, c29_1, c32_2, c32_1, c38_2, c38_1, c_1, c41_2 ---------------------------------------- (63) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 4 trailing tuple parts ---------------------------------------- (64) Obligation: Complexity Dependency Tuples Problem Rules: a__zeros -> cons(0, zeros) a__zeros -> zeros a__U11(tt) -> tt a__U11(z0) -> U11(z0) a__U21(tt) -> tt a__U21(z0) -> U21(z0) a__U31(tt) -> tt a__U31(z0) -> U31(z0) a__U41(tt, z0) -> a__U42(a__isNatIList(z0)) a__U41(z0, z1) -> U41(z0, z1) a__U42(tt) -> tt a__U42(z0) -> U42(z0) a__U51(tt, z0) -> a__U52(a__isNatList(z0)) a__U51(z0, z1) -> U51(z0, z1) a__U52(tt) -> tt a__U52(z0) -> U52(z0) a__U61(tt, z0, z1) -> a__U62(a__isNat(z1), z0) a__U61(z0, z1, z2) -> U61(z0, z1, z2) a__U62(tt, z0) -> s(a__length(mark(z0))) a__U62(z0, z1) -> U62(z0, z1) a__isNat(0) -> tt a__isNat(length(z0)) -> a__U11(a__isNatList(z0)) a__isNat(s(z0)) -> a__U21(a__isNat(z0)) a__isNat(z0) -> isNat(z0) a__isNatIList(z0) -> a__U31(a__isNatList(z0)) a__isNatIList(zeros) -> tt a__isNatIList(cons(z0, z1)) -> a__U41(a__isNat(z0), z1) a__isNatIList(z0) -> isNatIList(z0) a__isNatList(nil) -> tt a__isNatList(cons(z0, z1)) -> a__U51(a__isNat(z0), z1) a__isNatList(z0) -> isNatList(z0) a__length(nil) -> 0 a__length(cons(z0, z1)) -> a__U61(a__isNatList(z1), z1, z0) a__length(z0) -> length(z0) mark(zeros) -> a__zeros mark(U11(z0)) -> a__U11(mark(z0)) mark(U21(z0)) -> a__U21(mark(z0)) mark(U31(z0)) -> a__U31(mark(z0)) mark(U41(z0, z1)) -> a__U41(mark(z0), z1) mark(U42(z0)) -> a__U42(mark(z0)) mark(isNatIList(z0)) -> a__isNatIList(z0) mark(U51(z0, z1)) -> a__U51(mark(z0), z1) mark(U52(z0)) -> a__U52(mark(z0)) mark(isNatList(z0)) -> a__isNatList(z0) mark(U61(z0, z1, z2)) -> a__U61(mark(z0), z1, z2) mark(U62(z0, z1)) -> a__U62(mark(z0), z1) mark(isNat(z0)) -> a__isNat(z0) mark(length(z0)) -> a__length(mark(z0)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(0) -> 0 mark(tt) -> tt mark(s(z0)) -> s(mark(z0)) mark(nil) -> nil Tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(U61(z0, z1, z2)) -> c44(A__U61(mark(z0), z1, z2), MARK(z0)) MARK(U62(z0, z1)) -> c45(A__U62(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(length(z0)) -> c47(A__LENGTH(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(a__isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(a__isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, U11(z0)) -> c18(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) A__U62(tt, U21(z0)) -> c18(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) A__U62(tt, U31(z0)) -> c18(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) A__U62(tt, U41(z0, z1)) -> c18(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) A__U62(tt, U42(z0)) -> c18(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) A__U62(tt, U51(z0, z1)) -> c18(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) A__U62(tt, U52(z0)) -> c18(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) A__U62(tt, isNatList(z0)) -> c18(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) A__U62(tt, U61(z0, z1, z2)) -> c18(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) A__U62(tt, U62(z0, z1)) -> c18(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(isNatIList(z0), x1)) -> c41(A__U51(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(isNatList(z0), x1)) -> c41(A__U51(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(isNat(z0), x1)) -> c41(A__U51(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) S tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(U61(z0, z1, z2)) -> c44(A__U61(mark(z0), z1, z2), MARK(z0)) MARK(U62(z0, z1)) -> c45(A__U62(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(length(z0)) -> c47(A__LENGTH(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(a__isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(a__isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, U11(z0)) -> c18(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) A__U62(tt, U21(z0)) -> c18(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) A__U62(tt, U31(z0)) -> c18(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) A__U62(tt, U41(z0, z1)) -> c18(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) A__U62(tt, U42(z0)) -> c18(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) A__U62(tt, U51(z0, z1)) -> c18(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) A__U62(tt, U52(z0)) -> c18(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) A__U62(tt, isNatList(z0)) -> c18(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) A__U62(tt, U61(z0, z1, z2)) -> c18(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) A__U62(tt, U62(z0, z1)) -> c18(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(isNatIList(z0), x1)) -> c41(A__U51(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(isNatList(z0), x1)) -> c41(A__U51(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(isNat(z0), x1)) -> c41(A__U51(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) K tuples:none Defined Rule Symbols: a__zeros, a__U11_1, a__U21_1, a__U31_1, a__U41_2, a__U42_1, a__U51_2, a__U52_1, a__U61_3, a__U62_2, a__isNat_1, a__isNatIList_1, a__isNatList_1, a__length_1, mark_1 Defined Pair Symbols: MARK_1, A__U41_2, A__U51_2, A__ISNAT_1, A__ISNATILIST_1, A__U61_3, A__U62_2, A__ISNATLIST_1, A__LENGTH_1 Compound Symbols: c40_1, c43_1, c44_2, c45_2, c46_1, c47_2, c48_1, c51_1, c8_1, c12_1, c21_1, c22_1, c24_1, c35_1, c36_1, c37_1, c39_1, c42_1, c16_2, c16_1, c18_2, c18_1, c26_2, c26_1, c29_2, c29_1, c32_2, c32_1, c38_2, c38_1, c_1, c41_2, c41_1 ---------------------------------------- (65) CdtGraphSplitRhsProof (BOTH BOUNDS(ID, ID)) Split RHS of tuples not part of any SCC ---------------------------------------- (66) Obligation: Complexity Dependency Tuples Problem Rules: a__zeros -> cons(0, zeros) a__zeros -> zeros a__U11(tt) -> tt a__U11(z0) -> U11(z0) a__U21(tt) -> tt a__U21(z0) -> U21(z0) a__U31(tt) -> tt a__U31(z0) -> U31(z0) a__U41(tt, z0) -> a__U42(a__isNatIList(z0)) a__U41(z0, z1) -> U41(z0, z1) a__U42(tt) -> tt a__U42(z0) -> U42(z0) a__U51(tt, z0) -> a__U52(a__isNatList(z0)) a__U51(z0, z1) -> U51(z0, z1) a__U52(tt) -> tt a__U52(z0) -> U52(z0) a__U61(tt, z0, z1) -> a__U62(a__isNat(z1), z0) a__U61(z0, z1, z2) -> U61(z0, z1, z2) a__U62(tt, z0) -> s(a__length(mark(z0))) a__U62(z0, z1) -> U62(z0, z1) a__isNat(0) -> tt a__isNat(length(z0)) -> a__U11(a__isNatList(z0)) a__isNat(s(z0)) -> a__U21(a__isNat(z0)) a__isNat(z0) -> isNat(z0) a__isNatIList(z0) -> a__U31(a__isNatList(z0)) a__isNatIList(zeros) -> tt a__isNatIList(cons(z0, z1)) -> a__U41(a__isNat(z0), z1) a__isNatIList(z0) -> isNatIList(z0) a__isNatList(nil) -> tt a__isNatList(cons(z0, z1)) -> a__U51(a__isNat(z0), z1) a__isNatList(z0) -> isNatList(z0) a__length(nil) -> 0 a__length(cons(z0, z1)) -> a__U61(a__isNatList(z1), z1, z0) a__length(z0) -> length(z0) mark(zeros) -> a__zeros mark(U11(z0)) -> a__U11(mark(z0)) mark(U21(z0)) -> a__U21(mark(z0)) mark(U31(z0)) -> a__U31(mark(z0)) mark(U41(z0, z1)) -> a__U41(mark(z0), z1) mark(U42(z0)) -> a__U42(mark(z0)) mark(isNatIList(z0)) -> a__isNatIList(z0) mark(U51(z0, z1)) -> a__U51(mark(z0), z1) mark(U52(z0)) -> a__U52(mark(z0)) mark(isNatList(z0)) -> a__isNatList(z0) mark(U61(z0, z1, z2)) -> a__U61(mark(z0), z1, z2) mark(U62(z0, z1)) -> a__U62(mark(z0), z1) mark(isNat(z0)) -> a__isNat(z0) mark(length(z0)) -> a__length(mark(z0)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(0) -> 0 mark(tt) -> tt mark(s(z0)) -> s(mark(z0)) mark(nil) -> nil Tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(U61(z0, z1, z2)) -> c44(A__U61(mark(z0), z1, z2), MARK(z0)) MARK(U62(z0, z1)) -> c45(A__U62(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(length(z0)) -> c47(A__LENGTH(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(a__isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(a__isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, U11(z0)) -> c18(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) A__U62(tt, U21(z0)) -> c18(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) A__U62(tt, U31(z0)) -> c18(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) A__U62(tt, U41(z0, z1)) -> c18(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) A__U62(tt, U42(z0)) -> c18(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) A__U62(tt, U51(z0, z1)) -> c18(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) A__U62(tt, U52(z0)) -> c18(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) A__U62(tt, isNatList(z0)) -> c18(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) A__U62(tt, U61(z0, z1, z2)) -> c18(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) A__U62(tt, U62(z0, z1)) -> c18(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) S tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(U61(z0, z1, z2)) -> c44(A__U61(mark(z0), z1, z2), MARK(z0)) MARK(U62(z0, z1)) -> c45(A__U62(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(length(z0)) -> c47(A__LENGTH(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(a__isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(a__isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, U11(z0)) -> c18(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) A__U62(tt, U21(z0)) -> c18(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) A__U62(tt, U31(z0)) -> c18(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) A__U62(tt, U41(z0, z1)) -> c18(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) A__U62(tt, U42(z0)) -> c18(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) A__U62(tt, U51(z0, z1)) -> c18(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) A__U62(tt, U52(z0)) -> c18(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) A__U62(tt, isNatList(z0)) -> c18(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) A__U62(tt, U61(z0, z1, z2)) -> c18(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) A__U62(tt, U62(z0, z1)) -> c18(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) K tuples:none Defined Rule Symbols: a__zeros, a__U11_1, a__U21_1, a__U31_1, a__U41_2, a__U42_1, a__U51_2, a__U52_1, a__U61_3, a__U62_2, a__isNat_1, a__isNatIList_1, a__isNatList_1, a__length_1, mark_1 Defined Pair Symbols: MARK_1, A__U41_2, A__U51_2, A__ISNAT_1, A__ISNATILIST_1, A__U61_3, A__U62_2, A__ISNATLIST_1, A__LENGTH_1 Compound Symbols: c40_1, c43_1, c44_2, c45_2, c46_1, c47_2, c48_1, c51_1, c8_1, c12_1, c21_1, c22_1, c24_1, c35_1, c36_1, c37_1, c39_1, c42_1, c16_2, c16_1, c18_2, c18_1, c26_2, c26_1, c29_2, c29_1, c32_2, c32_1, c38_2, c38_1, c_1, c41_2, c41_1, c1_1 ---------------------------------------- (67) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace MARK(U61(z0, z1, z2)) -> c44(A__U61(mark(z0), z1, z2), MARK(z0)) by MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2), MARK(zeros)) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(cons(z0, z1), x1, x2)) -> c44(A__U61(cons(mark(z0), z1), x1, x2), MARK(cons(z0, z1))) MARK(U61(0, x1, x2)) -> c44(A__U61(0, x1, x2), MARK(0)) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2), MARK(tt)) MARK(U61(s(z0), x1, x2)) -> c44(A__U61(s(mark(z0)), x1, x2), MARK(s(z0))) MARK(U61(nil, x1, x2)) -> c44(A__U61(nil, x1, x2), MARK(nil)) ---------------------------------------- (68) Obligation: Complexity Dependency Tuples Problem Rules: a__zeros -> cons(0, zeros) a__zeros -> zeros a__U11(tt) -> tt a__U11(z0) -> U11(z0) a__U21(tt) -> tt a__U21(z0) -> U21(z0) a__U31(tt) -> tt a__U31(z0) -> U31(z0) a__U41(tt, z0) -> a__U42(a__isNatIList(z0)) a__U41(z0, z1) -> U41(z0, z1) a__U42(tt) -> tt a__U42(z0) -> U42(z0) a__U51(tt, z0) -> a__U52(a__isNatList(z0)) a__U51(z0, z1) -> U51(z0, z1) a__U52(tt) -> tt a__U52(z0) -> U52(z0) a__U61(tt, z0, z1) -> a__U62(a__isNat(z1), z0) a__U61(z0, z1, z2) -> U61(z0, z1, z2) a__U62(tt, z0) -> s(a__length(mark(z0))) a__U62(z0, z1) -> U62(z0, z1) a__isNat(0) -> tt a__isNat(length(z0)) -> a__U11(a__isNatList(z0)) a__isNat(s(z0)) -> a__U21(a__isNat(z0)) a__isNat(z0) -> isNat(z0) a__isNatIList(z0) -> a__U31(a__isNatList(z0)) a__isNatIList(zeros) -> tt a__isNatIList(cons(z0, z1)) -> a__U41(a__isNat(z0), z1) a__isNatIList(z0) -> isNatIList(z0) a__isNatList(nil) -> tt a__isNatList(cons(z0, z1)) -> a__U51(a__isNat(z0), z1) a__isNatList(z0) -> isNatList(z0) a__length(nil) -> 0 a__length(cons(z0, z1)) -> a__U61(a__isNatList(z1), z1, z0) a__length(z0) -> length(z0) mark(zeros) -> a__zeros mark(U11(z0)) -> a__U11(mark(z0)) mark(U21(z0)) -> a__U21(mark(z0)) mark(U31(z0)) -> a__U31(mark(z0)) mark(U41(z0, z1)) -> a__U41(mark(z0), z1) mark(U42(z0)) -> a__U42(mark(z0)) mark(isNatIList(z0)) -> a__isNatIList(z0) mark(U51(z0, z1)) -> a__U51(mark(z0), z1) mark(U52(z0)) -> a__U52(mark(z0)) mark(isNatList(z0)) -> a__isNatList(z0) mark(U61(z0, z1, z2)) -> a__U61(mark(z0), z1, z2) mark(U62(z0, z1)) -> a__U62(mark(z0), z1) mark(isNat(z0)) -> a__isNat(z0) mark(length(z0)) -> a__length(mark(z0)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(0) -> 0 mark(tt) -> tt mark(s(z0)) -> s(mark(z0)) mark(nil) -> nil Tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(U62(z0, z1)) -> c45(A__U62(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(length(z0)) -> c47(A__LENGTH(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(a__isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(a__isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, U11(z0)) -> c18(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) A__U62(tt, U21(z0)) -> c18(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) A__U62(tt, U31(z0)) -> c18(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) A__U62(tt, U41(z0, z1)) -> c18(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) A__U62(tt, U42(z0)) -> c18(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) A__U62(tt, U51(z0, z1)) -> c18(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) A__U62(tt, U52(z0)) -> c18(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) A__U62(tt, isNatList(z0)) -> c18(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) A__U62(tt, U61(z0, z1, z2)) -> c18(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) A__U62(tt, U62(z0, z1)) -> c18(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2), MARK(zeros)) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(cons(z0, z1), x1, x2)) -> c44(A__U61(cons(mark(z0), z1), x1, x2), MARK(cons(z0, z1))) MARK(U61(0, x1, x2)) -> c44(A__U61(0, x1, x2), MARK(0)) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2), MARK(tt)) MARK(U61(s(z0), x1, x2)) -> c44(A__U61(s(mark(z0)), x1, x2), MARK(s(z0))) MARK(U61(nil, x1, x2)) -> c44(A__U61(nil, x1, x2), MARK(nil)) S tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(U62(z0, z1)) -> c45(A__U62(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(length(z0)) -> c47(A__LENGTH(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(a__isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(a__isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, U11(z0)) -> c18(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) A__U62(tt, U21(z0)) -> c18(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) A__U62(tt, U31(z0)) -> c18(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) A__U62(tt, U41(z0, z1)) -> c18(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) A__U62(tt, U42(z0)) -> c18(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) A__U62(tt, U51(z0, z1)) -> c18(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) A__U62(tt, U52(z0)) -> c18(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) A__U62(tt, isNatList(z0)) -> c18(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) A__U62(tt, U61(z0, z1, z2)) -> c18(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) A__U62(tt, U62(z0, z1)) -> c18(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2), MARK(zeros)) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(cons(z0, z1), x1, x2)) -> c44(A__U61(cons(mark(z0), z1), x1, x2), MARK(cons(z0, z1))) MARK(U61(0, x1, x2)) -> c44(A__U61(0, x1, x2), MARK(0)) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2), MARK(tt)) MARK(U61(s(z0), x1, x2)) -> c44(A__U61(s(mark(z0)), x1, x2), MARK(s(z0))) MARK(U61(nil, x1, x2)) -> c44(A__U61(nil, x1, x2), MARK(nil)) K tuples:none Defined Rule Symbols: a__zeros, a__U11_1, a__U21_1, a__U31_1, a__U41_2, a__U42_1, a__U51_2, a__U52_1, a__U61_3, a__U62_2, a__isNat_1, a__isNatIList_1, a__isNatList_1, a__length_1, mark_1 Defined Pair Symbols: MARK_1, A__U41_2, A__U51_2, A__ISNAT_1, A__ISNATILIST_1, A__U61_3, A__U62_2, A__ISNATLIST_1, A__LENGTH_1 Compound Symbols: c40_1, c43_1, c45_2, c46_1, c47_2, c48_1, c51_1, c8_1, c12_1, c21_1, c22_1, c24_1, c35_1, c36_1, c37_1, c39_1, c42_1, c16_2, c16_1, c18_2, c18_1, c26_2, c26_1, c29_2, c29_1, c32_2, c32_1, c38_2, c38_1, c_1, c41_2, c41_1, c1_1, c44_2 ---------------------------------------- (69) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 2 trailing nodes: MARK(U61(nil, x1, x2)) -> c44(A__U61(nil, x1, x2), MARK(nil)) MARK(U61(0, x1, x2)) -> c44(A__U61(0, x1, x2), MARK(0)) ---------------------------------------- (70) Obligation: Complexity Dependency Tuples Problem Rules: a__zeros -> cons(0, zeros) a__zeros -> zeros a__U11(tt) -> tt a__U11(z0) -> U11(z0) a__U21(tt) -> tt a__U21(z0) -> U21(z0) a__U31(tt) -> tt a__U31(z0) -> U31(z0) a__U41(tt, z0) -> a__U42(a__isNatIList(z0)) a__U41(z0, z1) -> U41(z0, z1) a__U42(tt) -> tt a__U42(z0) -> U42(z0) a__U51(tt, z0) -> a__U52(a__isNatList(z0)) a__U51(z0, z1) -> U51(z0, z1) a__U52(tt) -> tt a__U52(z0) -> U52(z0) a__U61(tt, z0, z1) -> a__U62(a__isNat(z1), z0) a__U61(z0, z1, z2) -> U61(z0, z1, z2) a__U62(tt, z0) -> s(a__length(mark(z0))) a__U62(z0, z1) -> U62(z0, z1) a__isNat(0) -> tt a__isNat(length(z0)) -> a__U11(a__isNatList(z0)) a__isNat(s(z0)) -> a__U21(a__isNat(z0)) a__isNat(z0) -> isNat(z0) a__isNatIList(z0) -> a__U31(a__isNatList(z0)) a__isNatIList(zeros) -> tt a__isNatIList(cons(z0, z1)) -> a__U41(a__isNat(z0), z1) a__isNatIList(z0) -> isNatIList(z0) a__isNatList(nil) -> tt a__isNatList(cons(z0, z1)) -> a__U51(a__isNat(z0), z1) a__isNatList(z0) -> isNatList(z0) a__length(nil) -> 0 a__length(cons(z0, z1)) -> a__U61(a__isNatList(z1), z1, z0) a__length(z0) -> length(z0) mark(zeros) -> a__zeros mark(U11(z0)) -> a__U11(mark(z0)) mark(U21(z0)) -> a__U21(mark(z0)) mark(U31(z0)) -> a__U31(mark(z0)) mark(U41(z0, z1)) -> a__U41(mark(z0), z1) mark(U42(z0)) -> a__U42(mark(z0)) mark(isNatIList(z0)) -> a__isNatIList(z0) mark(U51(z0, z1)) -> a__U51(mark(z0), z1) mark(U52(z0)) -> a__U52(mark(z0)) mark(isNatList(z0)) -> a__isNatList(z0) mark(U61(z0, z1, z2)) -> a__U61(mark(z0), z1, z2) mark(U62(z0, z1)) -> a__U62(mark(z0), z1) mark(isNat(z0)) -> a__isNat(z0) mark(length(z0)) -> a__length(mark(z0)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(0) -> 0 mark(tt) -> tt mark(s(z0)) -> s(mark(z0)) mark(nil) -> nil Tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(U62(z0, z1)) -> c45(A__U62(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(length(z0)) -> c47(A__LENGTH(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(a__isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(a__isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, U11(z0)) -> c18(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) A__U62(tt, U21(z0)) -> c18(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) A__U62(tt, U31(z0)) -> c18(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) A__U62(tt, U41(z0, z1)) -> c18(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) A__U62(tt, U42(z0)) -> c18(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) A__U62(tt, U51(z0, z1)) -> c18(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) A__U62(tt, U52(z0)) -> c18(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) A__U62(tt, isNatList(z0)) -> c18(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) A__U62(tt, U61(z0, z1, z2)) -> c18(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) A__U62(tt, U62(z0, z1)) -> c18(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2), MARK(zeros)) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(cons(z0, z1), x1, x2)) -> c44(A__U61(cons(mark(z0), z1), x1, x2), MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2), MARK(tt)) MARK(U61(s(z0), x1, x2)) -> c44(A__U61(s(mark(z0)), x1, x2), MARK(s(z0))) S tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(U62(z0, z1)) -> c45(A__U62(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(length(z0)) -> c47(A__LENGTH(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(a__isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(a__isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, U11(z0)) -> c18(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) A__U62(tt, U21(z0)) -> c18(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) A__U62(tt, U31(z0)) -> c18(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) A__U62(tt, U41(z0, z1)) -> c18(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) A__U62(tt, U42(z0)) -> c18(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) A__U62(tt, U51(z0, z1)) -> c18(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) A__U62(tt, U52(z0)) -> c18(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) A__U62(tt, isNatList(z0)) -> c18(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) A__U62(tt, U61(z0, z1, z2)) -> c18(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) A__U62(tt, U62(z0, z1)) -> c18(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2), MARK(zeros)) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(cons(z0, z1), x1, x2)) -> c44(A__U61(cons(mark(z0), z1), x1, x2), MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2), MARK(tt)) MARK(U61(s(z0), x1, x2)) -> c44(A__U61(s(mark(z0)), x1, x2), MARK(s(z0))) K tuples:none Defined Rule Symbols: a__zeros, a__U11_1, a__U21_1, a__U31_1, a__U41_2, a__U42_1, a__U51_2, a__U52_1, a__U61_3, a__U62_2, a__isNat_1, a__isNatIList_1, a__isNatList_1, a__length_1, mark_1 Defined Pair Symbols: MARK_1, A__U41_2, A__U51_2, A__ISNAT_1, A__ISNATILIST_1, A__U61_3, A__U62_2, A__ISNATLIST_1, A__LENGTH_1 Compound Symbols: c40_1, c43_1, c45_2, c46_1, c47_2, c48_1, c51_1, c8_1, c12_1, c21_1, c22_1, c24_1, c35_1, c36_1, c37_1, c39_1, c42_1, c16_2, c16_1, c18_2, c18_1, c26_2, c26_1, c29_2, c29_1, c32_2, c32_1, c38_2, c38_1, c_1, c41_2, c41_1, c1_1, c44_2 ---------------------------------------- (71) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 4 trailing tuple parts ---------------------------------------- (72) Obligation: Complexity Dependency Tuples Problem Rules: a__zeros -> cons(0, zeros) a__zeros -> zeros a__U11(tt) -> tt a__U11(z0) -> U11(z0) a__U21(tt) -> tt a__U21(z0) -> U21(z0) a__U31(tt) -> tt a__U31(z0) -> U31(z0) a__U41(tt, z0) -> a__U42(a__isNatIList(z0)) a__U41(z0, z1) -> U41(z0, z1) a__U42(tt) -> tt a__U42(z0) -> U42(z0) a__U51(tt, z0) -> a__U52(a__isNatList(z0)) a__U51(z0, z1) -> U51(z0, z1) a__U52(tt) -> tt a__U52(z0) -> U52(z0) a__U61(tt, z0, z1) -> a__U62(a__isNat(z1), z0) a__U61(z0, z1, z2) -> U61(z0, z1, z2) a__U62(tt, z0) -> s(a__length(mark(z0))) a__U62(z0, z1) -> U62(z0, z1) a__isNat(0) -> tt a__isNat(length(z0)) -> a__U11(a__isNatList(z0)) a__isNat(s(z0)) -> a__U21(a__isNat(z0)) a__isNat(z0) -> isNat(z0) a__isNatIList(z0) -> a__U31(a__isNatList(z0)) a__isNatIList(zeros) -> tt a__isNatIList(cons(z0, z1)) -> a__U41(a__isNat(z0), z1) a__isNatIList(z0) -> isNatIList(z0) a__isNatList(nil) -> tt a__isNatList(cons(z0, z1)) -> a__U51(a__isNat(z0), z1) a__isNatList(z0) -> isNatList(z0) a__length(nil) -> 0 a__length(cons(z0, z1)) -> a__U61(a__isNatList(z1), z1, z0) a__length(z0) -> length(z0) mark(zeros) -> a__zeros mark(U11(z0)) -> a__U11(mark(z0)) mark(U21(z0)) -> a__U21(mark(z0)) mark(U31(z0)) -> a__U31(mark(z0)) mark(U41(z0, z1)) -> a__U41(mark(z0), z1) mark(U42(z0)) -> a__U42(mark(z0)) mark(isNatIList(z0)) -> a__isNatIList(z0) mark(U51(z0, z1)) -> a__U51(mark(z0), z1) mark(U52(z0)) -> a__U52(mark(z0)) mark(isNatList(z0)) -> a__isNatList(z0) mark(U61(z0, z1, z2)) -> a__U61(mark(z0), z1, z2) mark(U62(z0, z1)) -> a__U62(mark(z0), z1) mark(isNat(z0)) -> a__isNat(z0) mark(length(z0)) -> a__length(mark(z0)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(0) -> 0 mark(tt) -> tt mark(s(z0)) -> s(mark(z0)) mark(nil) -> nil Tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(U62(z0, z1)) -> c45(A__U62(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(length(z0)) -> c47(A__LENGTH(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(a__isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(a__isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, U11(z0)) -> c18(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) A__U62(tt, U21(z0)) -> c18(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) A__U62(tt, U31(z0)) -> c18(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) A__U62(tt, U41(z0, z1)) -> c18(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) A__U62(tt, U42(z0)) -> c18(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) A__U62(tt, U51(z0, z1)) -> c18(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) A__U62(tt, U52(z0)) -> c18(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) A__U62(tt, isNatList(z0)) -> c18(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) A__U62(tt, U61(z0, z1, z2)) -> c18(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) A__U62(tt, U62(z0, z1)) -> c18(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) S tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(U62(z0, z1)) -> c45(A__U62(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(length(z0)) -> c47(A__LENGTH(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(a__isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(a__isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, U11(z0)) -> c18(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) A__U62(tt, U21(z0)) -> c18(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) A__U62(tt, U31(z0)) -> c18(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) A__U62(tt, U41(z0, z1)) -> c18(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) A__U62(tt, U42(z0)) -> c18(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) A__U62(tt, U51(z0, z1)) -> c18(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) A__U62(tt, U52(z0)) -> c18(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) A__U62(tt, isNatList(z0)) -> c18(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) A__U62(tt, U61(z0, z1, z2)) -> c18(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) A__U62(tt, U62(z0, z1)) -> c18(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) K tuples:none Defined Rule Symbols: a__zeros, a__U11_1, a__U21_1, a__U31_1, a__U41_2, a__U42_1, a__U51_2, a__U52_1, a__U61_3, a__U62_2, a__isNat_1, a__isNatIList_1, a__isNatList_1, a__length_1, mark_1 Defined Pair Symbols: MARK_1, A__U41_2, A__U51_2, A__ISNAT_1, A__ISNATILIST_1, A__U61_3, A__U62_2, A__ISNATLIST_1, A__LENGTH_1 Compound Symbols: c40_1, c43_1, c45_2, c46_1, c47_2, c48_1, c51_1, c8_1, c12_1, c21_1, c22_1, c24_1, c35_1, c36_1, c37_1, c39_1, c42_1, c16_2, c16_1, c18_2, c18_1, c26_2, c26_1, c29_2, c29_1, c32_2, c32_1, c38_2, c38_1, c_1, c41_2, c41_1, c1_1, c44_2, c44_1 ---------------------------------------- (73) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace MARK(U62(z0, z1)) -> c45(A__U62(mark(z0), z1), MARK(z0)) by MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1), MARK(zeros)) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(cons(z0, z1), x1)) -> c45(A__U62(cons(mark(z0), z1), x1), MARK(cons(z0, z1))) MARK(U62(0, x1)) -> c45(A__U62(0, x1), MARK(0)) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1), MARK(tt)) MARK(U62(s(z0), x1)) -> c45(A__U62(s(mark(z0)), x1), MARK(s(z0))) MARK(U62(nil, x1)) -> c45(A__U62(nil, x1), MARK(nil)) ---------------------------------------- (74) Obligation: Complexity Dependency Tuples Problem Rules: a__zeros -> cons(0, zeros) a__zeros -> zeros a__U11(tt) -> tt a__U11(z0) -> U11(z0) a__U21(tt) -> tt a__U21(z0) -> U21(z0) a__U31(tt) -> tt a__U31(z0) -> U31(z0) a__U41(tt, z0) -> a__U42(a__isNatIList(z0)) a__U41(z0, z1) -> U41(z0, z1) a__U42(tt) -> tt a__U42(z0) -> U42(z0) a__U51(tt, z0) -> a__U52(a__isNatList(z0)) a__U51(z0, z1) -> U51(z0, z1) a__U52(tt) -> tt a__U52(z0) -> U52(z0) a__U61(tt, z0, z1) -> a__U62(a__isNat(z1), z0) a__U61(z0, z1, z2) -> U61(z0, z1, z2) a__U62(tt, z0) -> s(a__length(mark(z0))) a__U62(z0, z1) -> U62(z0, z1) a__isNat(0) -> tt a__isNat(length(z0)) -> a__U11(a__isNatList(z0)) a__isNat(s(z0)) -> a__U21(a__isNat(z0)) a__isNat(z0) -> isNat(z0) a__isNatIList(z0) -> a__U31(a__isNatList(z0)) a__isNatIList(zeros) -> tt a__isNatIList(cons(z0, z1)) -> a__U41(a__isNat(z0), z1) a__isNatIList(z0) -> isNatIList(z0) a__isNatList(nil) -> tt a__isNatList(cons(z0, z1)) -> a__U51(a__isNat(z0), z1) a__isNatList(z0) -> isNatList(z0) a__length(nil) -> 0 a__length(cons(z0, z1)) -> a__U61(a__isNatList(z1), z1, z0) a__length(z0) -> length(z0) mark(zeros) -> a__zeros mark(U11(z0)) -> a__U11(mark(z0)) mark(U21(z0)) -> a__U21(mark(z0)) mark(U31(z0)) -> a__U31(mark(z0)) mark(U41(z0, z1)) -> a__U41(mark(z0), z1) mark(U42(z0)) -> a__U42(mark(z0)) mark(isNatIList(z0)) -> a__isNatIList(z0) mark(U51(z0, z1)) -> a__U51(mark(z0), z1) mark(U52(z0)) -> a__U52(mark(z0)) mark(isNatList(z0)) -> a__isNatList(z0) mark(U61(z0, z1, z2)) -> a__U61(mark(z0), z1, z2) mark(U62(z0, z1)) -> a__U62(mark(z0), z1) mark(isNat(z0)) -> a__isNat(z0) mark(length(z0)) -> a__length(mark(z0)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(0) -> 0 mark(tt) -> tt mark(s(z0)) -> s(mark(z0)) mark(nil) -> nil Tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(length(z0)) -> c47(A__LENGTH(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(a__isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(a__isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, U11(z0)) -> c18(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) A__U62(tt, U21(z0)) -> c18(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) A__U62(tt, U31(z0)) -> c18(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) A__U62(tt, U41(z0, z1)) -> c18(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) A__U62(tt, U42(z0)) -> c18(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) A__U62(tt, U51(z0, z1)) -> c18(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) A__U62(tt, U52(z0)) -> c18(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) A__U62(tt, isNatList(z0)) -> c18(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) A__U62(tt, U61(z0, z1, z2)) -> c18(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) A__U62(tt, U62(z0, z1)) -> c18(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1), MARK(zeros)) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(cons(z0, z1), x1)) -> c45(A__U62(cons(mark(z0), z1), x1), MARK(cons(z0, z1))) MARK(U62(0, x1)) -> c45(A__U62(0, x1), MARK(0)) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1), MARK(tt)) MARK(U62(s(z0), x1)) -> c45(A__U62(s(mark(z0)), x1), MARK(s(z0))) MARK(U62(nil, x1)) -> c45(A__U62(nil, x1), MARK(nil)) S tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(length(z0)) -> c47(A__LENGTH(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(a__isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(a__isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, U11(z0)) -> c18(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) A__U62(tt, U21(z0)) -> c18(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) A__U62(tt, U31(z0)) -> c18(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) A__U62(tt, U41(z0, z1)) -> c18(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) A__U62(tt, U42(z0)) -> c18(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) A__U62(tt, U51(z0, z1)) -> c18(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) A__U62(tt, U52(z0)) -> c18(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) A__U62(tt, isNatList(z0)) -> c18(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) A__U62(tt, U61(z0, z1, z2)) -> c18(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) A__U62(tt, U62(z0, z1)) -> c18(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1), MARK(zeros)) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(cons(z0, z1), x1)) -> c45(A__U62(cons(mark(z0), z1), x1), MARK(cons(z0, z1))) MARK(U62(0, x1)) -> c45(A__U62(0, x1), MARK(0)) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1), MARK(tt)) MARK(U62(s(z0), x1)) -> c45(A__U62(s(mark(z0)), x1), MARK(s(z0))) MARK(U62(nil, x1)) -> c45(A__U62(nil, x1), MARK(nil)) K tuples:none Defined Rule Symbols: a__zeros, a__U11_1, a__U21_1, a__U31_1, a__U41_2, a__U42_1, a__U51_2, a__U52_1, a__U61_3, a__U62_2, a__isNat_1, a__isNatIList_1, a__isNatList_1, a__length_1, mark_1 Defined Pair Symbols: MARK_1, A__U41_2, A__U51_2, A__ISNAT_1, A__ISNATILIST_1, A__U61_3, A__U62_2, A__ISNATLIST_1, A__LENGTH_1 Compound Symbols: c40_1, c43_1, c46_1, c47_2, c48_1, c51_1, c8_1, c12_1, c21_1, c22_1, c24_1, c35_1, c36_1, c37_1, c39_1, c42_1, c16_2, c16_1, c18_2, c18_1, c26_2, c26_1, c29_2, c29_1, c32_2, c32_1, c38_2, c38_1, c_1, c41_2, c41_1, c1_1, c44_2, c44_1, c45_2 ---------------------------------------- (75) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 2 trailing nodes: MARK(U62(0, x1)) -> c45(A__U62(0, x1), MARK(0)) MARK(U62(nil, x1)) -> c45(A__U62(nil, x1), MARK(nil)) ---------------------------------------- (76) Obligation: Complexity Dependency Tuples Problem Rules: a__zeros -> cons(0, zeros) a__zeros -> zeros a__U11(tt) -> tt a__U11(z0) -> U11(z0) a__U21(tt) -> tt a__U21(z0) -> U21(z0) a__U31(tt) -> tt a__U31(z0) -> U31(z0) a__U41(tt, z0) -> a__U42(a__isNatIList(z0)) a__U41(z0, z1) -> U41(z0, z1) a__U42(tt) -> tt a__U42(z0) -> U42(z0) a__U51(tt, z0) -> a__U52(a__isNatList(z0)) a__U51(z0, z1) -> U51(z0, z1) a__U52(tt) -> tt a__U52(z0) -> U52(z0) a__U61(tt, z0, z1) -> a__U62(a__isNat(z1), z0) a__U61(z0, z1, z2) -> U61(z0, z1, z2) a__U62(tt, z0) -> s(a__length(mark(z0))) a__U62(z0, z1) -> U62(z0, z1) a__isNat(0) -> tt a__isNat(length(z0)) -> a__U11(a__isNatList(z0)) a__isNat(s(z0)) -> a__U21(a__isNat(z0)) a__isNat(z0) -> isNat(z0) a__isNatIList(z0) -> a__U31(a__isNatList(z0)) a__isNatIList(zeros) -> tt a__isNatIList(cons(z0, z1)) -> a__U41(a__isNat(z0), z1) a__isNatIList(z0) -> isNatIList(z0) a__isNatList(nil) -> tt a__isNatList(cons(z0, z1)) -> a__U51(a__isNat(z0), z1) a__isNatList(z0) -> isNatList(z0) a__length(nil) -> 0 a__length(cons(z0, z1)) -> a__U61(a__isNatList(z1), z1, z0) a__length(z0) -> length(z0) mark(zeros) -> a__zeros mark(U11(z0)) -> a__U11(mark(z0)) mark(U21(z0)) -> a__U21(mark(z0)) mark(U31(z0)) -> a__U31(mark(z0)) mark(U41(z0, z1)) -> a__U41(mark(z0), z1) mark(U42(z0)) -> a__U42(mark(z0)) mark(isNatIList(z0)) -> a__isNatIList(z0) mark(U51(z0, z1)) -> a__U51(mark(z0), z1) mark(U52(z0)) -> a__U52(mark(z0)) mark(isNatList(z0)) -> a__isNatList(z0) mark(U61(z0, z1, z2)) -> a__U61(mark(z0), z1, z2) mark(U62(z0, z1)) -> a__U62(mark(z0), z1) mark(isNat(z0)) -> a__isNat(z0) mark(length(z0)) -> a__length(mark(z0)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(0) -> 0 mark(tt) -> tt mark(s(z0)) -> s(mark(z0)) mark(nil) -> nil Tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(length(z0)) -> c47(A__LENGTH(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(a__isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(a__isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, U11(z0)) -> c18(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) A__U62(tt, U21(z0)) -> c18(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) A__U62(tt, U31(z0)) -> c18(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) A__U62(tt, U41(z0, z1)) -> c18(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) A__U62(tt, U42(z0)) -> c18(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) A__U62(tt, U51(z0, z1)) -> c18(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) A__U62(tt, U52(z0)) -> c18(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) A__U62(tt, isNatList(z0)) -> c18(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) A__U62(tt, U61(z0, z1, z2)) -> c18(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) A__U62(tt, U62(z0, z1)) -> c18(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1), MARK(zeros)) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(cons(z0, z1), x1)) -> c45(A__U62(cons(mark(z0), z1), x1), MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1), MARK(tt)) MARK(U62(s(z0), x1)) -> c45(A__U62(s(mark(z0)), x1), MARK(s(z0))) S tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(length(z0)) -> c47(A__LENGTH(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(a__isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(a__isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, U11(z0)) -> c18(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) A__U62(tt, U21(z0)) -> c18(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) A__U62(tt, U31(z0)) -> c18(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) A__U62(tt, U41(z0, z1)) -> c18(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) A__U62(tt, U42(z0)) -> c18(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) A__U62(tt, U51(z0, z1)) -> c18(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) A__U62(tt, U52(z0)) -> c18(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) A__U62(tt, isNatList(z0)) -> c18(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) A__U62(tt, U61(z0, z1, z2)) -> c18(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) A__U62(tt, U62(z0, z1)) -> c18(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1), MARK(zeros)) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(cons(z0, z1), x1)) -> c45(A__U62(cons(mark(z0), z1), x1), MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1), MARK(tt)) MARK(U62(s(z0), x1)) -> c45(A__U62(s(mark(z0)), x1), MARK(s(z0))) K tuples:none Defined Rule Symbols: a__zeros, a__U11_1, a__U21_1, a__U31_1, a__U41_2, a__U42_1, a__U51_2, a__U52_1, a__U61_3, a__U62_2, a__isNat_1, a__isNatIList_1, a__isNatList_1, a__length_1, mark_1 Defined Pair Symbols: MARK_1, A__U41_2, A__U51_2, A__ISNAT_1, A__ISNATILIST_1, A__U61_3, A__U62_2, A__ISNATLIST_1, A__LENGTH_1 Compound Symbols: c40_1, c43_1, c46_1, c47_2, c48_1, c51_1, c8_1, c12_1, c21_1, c22_1, c24_1, c35_1, c36_1, c37_1, c39_1, c42_1, c16_2, c16_1, c18_2, c18_1, c26_2, c26_1, c29_2, c29_1, c32_2, c32_1, c38_2, c38_1, c_1, c41_2, c41_1, c1_1, c44_2, c44_1, c45_2 ---------------------------------------- (77) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 4 trailing tuple parts ---------------------------------------- (78) Obligation: Complexity Dependency Tuples Problem Rules: a__zeros -> cons(0, zeros) a__zeros -> zeros a__U11(tt) -> tt a__U11(z0) -> U11(z0) a__U21(tt) -> tt a__U21(z0) -> U21(z0) a__U31(tt) -> tt a__U31(z0) -> U31(z0) a__U41(tt, z0) -> a__U42(a__isNatIList(z0)) a__U41(z0, z1) -> U41(z0, z1) a__U42(tt) -> tt a__U42(z0) -> U42(z0) a__U51(tt, z0) -> a__U52(a__isNatList(z0)) a__U51(z0, z1) -> U51(z0, z1) a__U52(tt) -> tt a__U52(z0) -> U52(z0) a__U61(tt, z0, z1) -> a__U62(a__isNat(z1), z0) a__U61(z0, z1, z2) -> U61(z0, z1, z2) a__U62(tt, z0) -> s(a__length(mark(z0))) a__U62(z0, z1) -> U62(z0, z1) a__isNat(0) -> tt a__isNat(length(z0)) -> a__U11(a__isNatList(z0)) a__isNat(s(z0)) -> a__U21(a__isNat(z0)) a__isNat(z0) -> isNat(z0) a__isNatIList(z0) -> a__U31(a__isNatList(z0)) a__isNatIList(zeros) -> tt a__isNatIList(cons(z0, z1)) -> a__U41(a__isNat(z0), z1) a__isNatIList(z0) -> isNatIList(z0) a__isNatList(nil) -> tt a__isNatList(cons(z0, z1)) -> a__U51(a__isNat(z0), z1) a__isNatList(z0) -> isNatList(z0) a__length(nil) -> 0 a__length(cons(z0, z1)) -> a__U61(a__isNatList(z1), z1, z0) a__length(z0) -> length(z0) mark(zeros) -> a__zeros mark(U11(z0)) -> a__U11(mark(z0)) mark(U21(z0)) -> a__U21(mark(z0)) mark(U31(z0)) -> a__U31(mark(z0)) mark(U41(z0, z1)) -> a__U41(mark(z0), z1) mark(U42(z0)) -> a__U42(mark(z0)) mark(isNatIList(z0)) -> a__isNatIList(z0) mark(U51(z0, z1)) -> a__U51(mark(z0), z1) mark(U52(z0)) -> a__U52(mark(z0)) mark(isNatList(z0)) -> a__isNatList(z0) mark(U61(z0, z1, z2)) -> a__U61(mark(z0), z1, z2) mark(U62(z0, z1)) -> a__U62(mark(z0), z1) mark(isNat(z0)) -> a__isNat(z0) mark(length(z0)) -> a__length(mark(z0)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(0) -> 0 mark(tt) -> tt mark(s(z0)) -> s(mark(z0)) mark(nil) -> nil Tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(length(z0)) -> c47(A__LENGTH(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(a__isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(a__isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, U11(z0)) -> c18(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) A__U62(tt, U21(z0)) -> c18(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) A__U62(tt, U31(z0)) -> c18(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) A__U62(tt, U41(z0, z1)) -> c18(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) A__U62(tt, U42(z0)) -> c18(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) A__U62(tt, U51(z0, z1)) -> c18(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) A__U62(tt, U52(z0)) -> c18(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) A__U62(tt, isNatList(z0)) -> c18(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) A__U62(tt, U61(z0, z1, z2)) -> c18(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) A__U62(tt, U62(z0, z1)) -> c18(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) S tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(length(z0)) -> c47(A__LENGTH(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(a__isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(a__isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, U11(z0)) -> c18(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) A__U62(tt, U21(z0)) -> c18(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) A__U62(tt, U31(z0)) -> c18(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) A__U62(tt, U41(z0, z1)) -> c18(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) A__U62(tt, U42(z0)) -> c18(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) A__U62(tt, U51(z0, z1)) -> c18(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) A__U62(tt, U52(z0)) -> c18(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) A__U62(tt, isNatList(z0)) -> c18(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) A__U62(tt, U61(z0, z1, z2)) -> c18(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) A__U62(tt, U62(z0, z1)) -> c18(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) K tuples:none Defined Rule Symbols: a__zeros, a__U11_1, a__U21_1, a__U31_1, a__U41_2, a__U42_1, a__U51_2, a__U52_1, a__U61_3, a__U62_2, a__isNat_1, a__isNatIList_1, a__isNatList_1, a__length_1, mark_1 Defined Pair Symbols: MARK_1, A__U41_2, A__U51_2, A__ISNAT_1, A__ISNATILIST_1, A__U61_3, A__U62_2, A__ISNATLIST_1, A__LENGTH_1 Compound Symbols: c40_1, c43_1, c46_1, c47_2, c48_1, c51_1, c8_1, c12_1, c21_1, c22_1, c24_1, c35_1, c36_1, c37_1, c39_1, c42_1, c16_2, c16_1, c18_2, c18_1, c26_2, c26_1, c29_2, c29_1, c32_2, c32_1, c38_2, c38_1, c_1, c41_2, c41_1, c1_1, c44_2, c44_1, c45_2, c45_1 ---------------------------------------- (79) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace MARK(length(z0)) -> c47(A__LENGTH(mark(z0)), MARK(z0)) by MARK(length(zeros)) -> c47(A__LENGTH(a__zeros), MARK(zeros)) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(0)) -> c47(A__LENGTH(0), MARK(0)) MARK(length(tt)) -> c47(A__LENGTH(tt), MARK(tt)) MARK(length(s(z0))) -> c47(A__LENGTH(s(mark(z0))), MARK(s(z0))) MARK(length(nil)) -> c47(A__LENGTH(nil), MARK(nil)) ---------------------------------------- (80) Obligation: Complexity Dependency Tuples Problem Rules: a__zeros -> cons(0, zeros) a__zeros -> zeros a__U11(tt) -> tt a__U11(z0) -> U11(z0) a__U21(tt) -> tt a__U21(z0) -> U21(z0) a__U31(tt) -> tt a__U31(z0) -> U31(z0) a__U41(tt, z0) -> a__U42(a__isNatIList(z0)) a__U41(z0, z1) -> U41(z0, z1) a__U42(tt) -> tt a__U42(z0) -> U42(z0) a__U51(tt, z0) -> a__U52(a__isNatList(z0)) a__U51(z0, z1) -> U51(z0, z1) a__U52(tt) -> tt a__U52(z0) -> U52(z0) a__U61(tt, z0, z1) -> a__U62(a__isNat(z1), z0) a__U61(z0, z1, z2) -> U61(z0, z1, z2) a__U62(tt, z0) -> s(a__length(mark(z0))) a__U62(z0, z1) -> U62(z0, z1) a__isNat(0) -> tt a__isNat(length(z0)) -> a__U11(a__isNatList(z0)) a__isNat(s(z0)) -> a__U21(a__isNat(z0)) a__isNat(z0) -> isNat(z0) a__isNatIList(z0) -> a__U31(a__isNatList(z0)) a__isNatIList(zeros) -> tt a__isNatIList(cons(z0, z1)) -> a__U41(a__isNat(z0), z1) a__isNatIList(z0) -> isNatIList(z0) a__isNatList(nil) -> tt a__isNatList(cons(z0, z1)) -> a__U51(a__isNat(z0), z1) a__isNatList(z0) -> isNatList(z0) a__length(nil) -> 0 a__length(cons(z0, z1)) -> a__U61(a__isNatList(z1), z1, z0) a__length(z0) -> length(z0) mark(zeros) -> a__zeros mark(U11(z0)) -> a__U11(mark(z0)) mark(U21(z0)) -> a__U21(mark(z0)) mark(U31(z0)) -> a__U31(mark(z0)) mark(U41(z0, z1)) -> a__U41(mark(z0), z1) mark(U42(z0)) -> a__U42(mark(z0)) mark(isNatIList(z0)) -> a__isNatIList(z0) mark(U51(z0, z1)) -> a__U51(mark(z0), z1) mark(U52(z0)) -> a__U52(mark(z0)) mark(isNatList(z0)) -> a__isNatList(z0) mark(U61(z0, z1, z2)) -> a__U61(mark(z0), z1, z2) mark(U62(z0, z1)) -> a__U62(mark(z0), z1) mark(isNat(z0)) -> a__isNat(z0) mark(length(z0)) -> a__length(mark(z0)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(0) -> 0 mark(tt) -> tt mark(s(z0)) -> s(mark(z0)) mark(nil) -> nil Tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(a__isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(a__isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, U11(z0)) -> c18(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) A__U62(tt, U21(z0)) -> c18(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) A__U62(tt, U31(z0)) -> c18(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) A__U62(tt, U41(z0, z1)) -> c18(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) A__U62(tt, U42(z0)) -> c18(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) A__U62(tt, U51(z0, z1)) -> c18(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) A__U62(tt, U52(z0)) -> c18(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) A__U62(tt, isNatList(z0)) -> c18(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) A__U62(tt, U61(z0, z1, z2)) -> c18(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) A__U62(tt, U62(z0, z1)) -> c18(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros), MARK(zeros)) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(0)) -> c47(A__LENGTH(0), MARK(0)) MARK(length(tt)) -> c47(A__LENGTH(tt), MARK(tt)) MARK(length(s(z0))) -> c47(A__LENGTH(s(mark(z0))), MARK(s(z0))) MARK(length(nil)) -> c47(A__LENGTH(nil), MARK(nil)) S tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(a__isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(a__isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, U11(z0)) -> c18(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) A__U62(tt, U21(z0)) -> c18(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) A__U62(tt, U31(z0)) -> c18(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) A__U62(tt, U41(z0, z1)) -> c18(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) A__U62(tt, U42(z0)) -> c18(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) A__U62(tt, U51(z0, z1)) -> c18(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) A__U62(tt, U52(z0)) -> c18(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) A__U62(tt, isNatList(z0)) -> c18(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) A__U62(tt, U61(z0, z1, z2)) -> c18(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) A__U62(tt, U62(z0, z1)) -> c18(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros), MARK(zeros)) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(0)) -> c47(A__LENGTH(0), MARK(0)) MARK(length(tt)) -> c47(A__LENGTH(tt), MARK(tt)) MARK(length(s(z0))) -> c47(A__LENGTH(s(mark(z0))), MARK(s(z0))) MARK(length(nil)) -> c47(A__LENGTH(nil), MARK(nil)) K tuples:none Defined Rule Symbols: a__zeros, a__U11_1, a__U21_1, a__U31_1, a__U41_2, a__U42_1, a__U51_2, a__U52_1, a__U61_3, a__U62_2, a__isNat_1, a__isNatIList_1, a__isNatList_1, a__length_1, mark_1 Defined Pair Symbols: MARK_1, A__U41_2, A__U51_2, A__ISNAT_1, A__ISNATILIST_1, A__U61_3, A__U62_2, A__ISNATLIST_1, A__LENGTH_1 Compound Symbols: c40_1, c43_1, c46_1, c48_1, c51_1, c8_1, c12_1, c21_1, c22_1, c24_1, c35_1, c36_1, c37_1, c39_1, c42_1, c16_2, c16_1, c18_2, c18_1, c26_2, c26_1, c29_2, c29_1, c32_2, c32_1, c38_2, c38_1, c_1, c41_2, c41_1, c1_1, c44_2, c44_1, c45_2, c45_1, c47_2 ---------------------------------------- (81) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 3 trailing nodes: MARK(length(nil)) -> c47(A__LENGTH(nil), MARK(nil)) MARK(length(0)) -> c47(A__LENGTH(0), MARK(0)) MARK(length(tt)) -> c47(A__LENGTH(tt), MARK(tt)) ---------------------------------------- (82) Obligation: Complexity Dependency Tuples Problem Rules: a__zeros -> cons(0, zeros) a__zeros -> zeros a__U11(tt) -> tt a__U11(z0) -> U11(z0) a__U21(tt) -> tt a__U21(z0) -> U21(z0) a__U31(tt) -> tt a__U31(z0) -> U31(z0) a__U41(tt, z0) -> a__U42(a__isNatIList(z0)) a__U41(z0, z1) -> U41(z0, z1) a__U42(tt) -> tt a__U42(z0) -> U42(z0) a__U51(tt, z0) -> a__U52(a__isNatList(z0)) a__U51(z0, z1) -> U51(z0, z1) a__U52(tt) -> tt a__U52(z0) -> U52(z0) a__U61(tt, z0, z1) -> a__U62(a__isNat(z1), z0) a__U61(z0, z1, z2) -> U61(z0, z1, z2) a__U62(tt, z0) -> s(a__length(mark(z0))) a__U62(z0, z1) -> U62(z0, z1) a__isNat(0) -> tt a__isNat(length(z0)) -> a__U11(a__isNatList(z0)) a__isNat(s(z0)) -> a__U21(a__isNat(z0)) a__isNat(z0) -> isNat(z0) a__isNatIList(z0) -> a__U31(a__isNatList(z0)) a__isNatIList(zeros) -> tt a__isNatIList(cons(z0, z1)) -> a__U41(a__isNat(z0), z1) a__isNatIList(z0) -> isNatIList(z0) a__isNatList(nil) -> tt a__isNatList(cons(z0, z1)) -> a__U51(a__isNat(z0), z1) a__isNatList(z0) -> isNatList(z0) a__length(nil) -> 0 a__length(cons(z0, z1)) -> a__U61(a__isNatList(z1), z1, z0) a__length(z0) -> length(z0) mark(zeros) -> a__zeros mark(U11(z0)) -> a__U11(mark(z0)) mark(U21(z0)) -> a__U21(mark(z0)) mark(U31(z0)) -> a__U31(mark(z0)) mark(U41(z0, z1)) -> a__U41(mark(z0), z1) mark(U42(z0)) -> a__U42(mark(z0)) mark(isNatIList(z0)) -> a__isNatIList(z0) mark(U51(z0, z1)) -> a__U51(mark(z0), z1) mark(U52(z0)) -> a__U52(mark(z0)) mark(isNatList(z0)) -> a__isNatList(z0) mark(U61(z0, z1, z2)) -> a__U61(mark(z0), z1, z2) mark(U62(z0, z1)) -> a__U62(mark(z0), z1) mark(isNat(z0)) -> a__isNat(z0) mark(length(z0)) -> a__length(mark(z0)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(0) -> 0 mark(tt) -> tt mark(s(z0)) -> s(mark(z0)) mark(nil) -> nil Tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(a__isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(a__isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, U11(z0)) -> c18(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) A__U62(tt, U21(z0)) -> c18(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) A__U62(tt, U31(z0)) -> c18(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) A__U62(tt, U41(z0, z1)) -> c18(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) A__U62(tt, U42(z0)) -> c18(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) A__U62(tt, U51(z0, z1)) -> c18(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) A__U62(tt, U52(z0)) -> c18(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) A__U62(tt, isNatList(z0)) -> c18(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) A__U62(tt, U61(z0, z1, z2)) -> c18(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) A__U62(tt, U62(z0, z1)) -> c18(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros), MARK(zeros)) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(s(z0))) -> c47(A__LENGTH(s(mark(z0))), MARK(s(z0))) S tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(a__isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(a__isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, U11(z0)) -> c18(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) A__U62(tt, U21(z0)) -> c18(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) A__U62(tt, U31(z0)) -> c18(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) A__U62(tt, U41(z0, z1)) -> c18(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) A__U62(tt, U42(z0)) -> c18(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) A__U62(tt, U51(z0, z1)) -> c18(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) A__U62(tt, U52(z0)) -> c18(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) A__U62(tt, isNatList(z0)) -> c18(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) A__U62(tt, U61(z0, z1, z2)) -> c18(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) A__U62(tt, U62(z0, z1)) -> c18(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros), MARK(zeros)) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(s(z0))) -> c47(A__LENGTH(s(mark(z0))), MARK(s(z0))) K tuples:none Defined Rule Symbols: a__zeros, a__U11_1, a__U21_1, a__U31_1, a__U41_2, a__U42_1, a__U51_2, a__U52_1, a__U61_3, a__U62_2, a__isNat_1, a__isNatIList_1, a__isNatList_1, a__length_1, mark_1 Defined Pair Symbols: MARK_1, A__U41_2, A__U51_2, A__ISNAT_1, A__ISNATILIST_1, A__U61_3, A__U62_2, A__ISNATLIST_1, A__LENGTH_1 Compound Symbols: c40_1, c43_1, c46_1, c48_1, c51_1, c8_1, c12_1, c21_1, c22_1, c24_1, c35_1, c36_1, c37_1, c39_1, c42_1, c16_2, c16_1, c18_2, c18_1, c26_2, c26_1, c29_2, c29_1, c32_2, c32_1, c38_2, c38_1, c_1, c41_2, c41_1, c1_1, c44_2, c44_1, c45_2, c45_1, c47_2 ---------------------------------------- (83) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 2 trailing tuple parts ---------------------------------------- (84) Obligation: Complexity Dependency Tuples Problem Rules: a__zeros -> cons(0, zeros) a__zeros -> zeros a__U11(tt) -> tt a__U11(z0) -> U11(z0) a__U21(tt) -> tt a__U21(z0) -> U21(z0) a__U31(tt) -> tt a__U31(z0) -> U31(z0) a__U41(tt, z0) -> a__U42(a__isNatIList(z0)) a__U41(z0, z1) -> U41(z0, z1) a__U42(tt) -> tt a__U42(z0) -> U42(z0) a__U51(tt, z0) -> a__U52(a__isNatList(z0)) a__U51(z0, z1) -> U51(z0, z1) a__U52(tt) -> tt a__U52(z0) -> U52(z0) a__U61(tt, z0, z1) -> a__U62(a__isNat(z1), z0) a__U61(z0, z1, z2) -> U61(z0, z1, z2) a__U62(tt, z0) -> s(a__length(mark(z0))) a__U62(z0, z1) -> U62(z0, z1) a__isNat(0) -> tt a__isNat(length(z0)) -> a__U11(a__isNatList(z0)) a__isNat(s(z0)) -> a__U21(a__isNat(z0)) a__isNat(z0) -> isNat(z0) a__isNatIList(z0) -> a__U31(a__isNatList(z0)) a__isNatIList(zeros) -> tt a__isNatIList(cons(z0, z1)) -> a__U41(a__isNat(z0), z1) a__isNatIList(z0) -> isNatIList(z0) a__isNatList(nil) -> tt a__isNatList(cons(z0, z1)) -> a__U51(a__isNat(z0), z1) a__isNatList(z0) -> isNatList(z0) a__length(nil) -> 0 a__length(cons(z0, z1)) -> a__U61(a__isNatList(z1), z1, z0) a__length(z0) -> length(z0) mark(zeros) -> a__zeros mark(U11(z0)) -> a__U11(mark(z0)) mark(U21(z0)) -> a__U21(mark(z0)) mark(U31(z0)) -> a__U31(mark(z0)) mark(U41(z0, z1)) -> a__U41(mark(z0), z1) mark(U42(z0)) -> a__U42(mark(z0)) mark(isNatIList(z0)) -> a__isNatIList(z0) mark(U51(z0, z1)) -> a__U51(mark(z0), z1) mark(U52(z0)) -> a__U52(mark(z0)) mark(isNatList(z0)) -> a__isNatList(z0) mark(U61(z0, z1, z2)) -> a__U61(mark(z0), z1, z2) mark(U62(z0, z1)) -> a__U62(mark(z0), z1) mark(isNat(z0)) -> a__isNat(z0) mark(length(z0)) -> a__length(mark(z0)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(0) -> 0 mark(tt) -> tt mark(s(z0)) -> s(mark(z0)) mark(nil) -> nil Tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(a__isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(a__isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, U11(z0)) -> c18(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) A__U62(tt, U21(z0)) -> c18(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) A__U62(tt, U31(z0)) -> c18(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) A__U62(tt, U41(z0, z1)) -> c18(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) A__U62(tt, U42(z0)) -> c18(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) A__U62(tt, U51(z0, z1)) -> c18(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) A__U62(tt, U52(z0)) -> c18(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) A__U62(tt, isNatList(z0)) -> c18(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) A__U62(tt, U61(z0, z1, z2)) -> c18(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) A__U62(tt, U62(z0, z1)) -> c18(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) S tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(a__isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(a__isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, U11(z0)) -> c18(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) A__U62(tt, U21(z0)) -> c18(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) A__U62(tt, U31(z0)) -> c18(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) A__U62(tt, U41(z0, z1)) -> c18(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) A__U62(tt, U42(z0)) -> c18(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) A__U62(tt, U51(z0, z1)) -> c18(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) A__U62(tt, U52(z0)) -> c18(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) A__U62(tt, isNatList(z0)) -> c18(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) A__U62(tt, U61(z0, z1, z2)) -> c18(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) A__U62(tt, U62(z0, z1)) -> c18(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) K tuples:none Defined Rule Symbols: a__zeros, a__U11_1, a__U21_1, a__U31_1, a__U41_2, a__U42_1, a__U51_2, a__U52_1, a__U61_3, a__U62_2, a__isNat_1, a__isNatIList_1, a__isNatList_1, a__length_1, mark_1 Defined Pair Symbols: MARK_1, A__U41_2, A__U51_2, A__ISNAT_1, A__ISNATILIST_1, A__U61_3, A__U62_2, A__ISNATLIST_1, A__LENGTH_1 Compound Symbols: c40_1, c43_1, c46_1, c48_1, c51_1, c8_1, c12_1, c21_1, c22_1, c24_1, c35_1, c36_1, c37_1, c39_1, c42_1, c16_2, c16_1, c18_2, c18_1, c26_2, c26_1, c29_2, c29_1, c32_2, c32_1, c38_2, c38_1, c_1, c41_2, c41_1, c1_1, c44_2, c44_1, c45_2, c45_1, c47_2, c47_1 ---------------------------------------- (85) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(a__isNatList(z0)), x0), A__ISNAT(length(z0))) by A__U61(tt, x0, length(x1)) -> c16(A__U62(U11(a__isNatList(x1)), x0), A__ISNAT(length(x1))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) ---------------------------------------- (86) Obligation: Complexity Dependency Tuples Problem Rules: a__zeros -> cons(0, zeros) a__zeros -> zeros a__U11(tt) -> tt a__U11(z0) -> U11(z0) a__U21(tt) -> tt a__U21(z0) -> U21(z0) a__U31(tt) -> tt a__U31(z0) -> U31(z0) a__U41(tt, z0) -> a__U42(a__isNatIList(z0)) a__U41(z0, z1) -> U41(z0, z1) a__U42(tt) -> tt a__U42(z0) -> U42(z0) a__U51(tt, z0) -> a__U52(a__isNatList(z0)) a__U51(z0, z1) -> U51(z0, z1) a__U52(tt) -> tt a__U52(z0) -> U52(z0) a__U61(tt, z0, z1) -> a__U62(a__isNat(z1), z0) a__U61(z0, z1, z2) -> U61(z0, z1, z2) a__U62(tt, z0) -> s(a__length(mark(z0))) a__U62(z0, z1) -> U62(z0, z1) a__isNat(0) -> tt a__isNat(length(z0)) -> a__U11(a__isNatList(z0)) a__isNat(s(z0)) -> a__U21(a__isNat(z0)) a__isNat(z0) -> isNat(z0) a__isNatIList(z0) -> a__U31(a__isNatList(z0)) a__isNatIList(zeros) -> tt a__isNatIList(cons(z0, z1)) -> a__U41(a__isNat(z0), z1) a__isNatIList(z0) -> isNatIList(z0) a__isNatList(nil) -> tt a__isNatList(cons(z0, z1)) -> a__U51(a__isNat(z0), z1) a__isNatList(z0) -> isNatList(z0) a__length(nil) -> 0 a__length(cons(z0, z1)) -> a__U61(a__isNatList(z1), z1, z0) a__length(z0) -> length(z0) mark(zeros) -> a__zeros mark(U11(z0)) -> a__U11(mark(z0)) mark(U21(z0)) -> a__U21(mark(z0)) mark(U31(z0)) -> a__U31(mark(z0)) mark(U41(z0, z1)) -> a__U41(mark(z0), z1) mark(U42(z0)) -> a__U42(mark(z0)) mark(isNatIList(z0)) -> a__isNatIList(z0) mark(U51(z0, z1)) -> a__U51(mark(z0), z1) mark(U52(z0)) -> a__U52(mark(z0)) mark(isNatList(z0)) -> a__isNatList(z0) mark(U61(z0, z1, z2)) -> a__U61(mark(z0), z1, z2) mark(U62(z0, z1)) -> a__U62(mark(z0), z1) mark(isNat(z0)) -> a__isNat(z0) mark(length(z0)) -> a__length(mark(z0)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(0) -> 0 mark(tt) -> tt mark(s(z0)) -> s(mark(z0)) mark(nil) -> nil Tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(a__isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, U11(z0)) -> c18(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) A__U62(tt, U21(z0)) -> c18(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) A__U62(tt, U31(z0)) -> c18(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) A__U62(tt, U41(z0, z1)) -> c18(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) A__U62(tt, U42(z0)) -> c18(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) A__U62(tt, U51(z0, z1)) -> c18(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) A__U62(tt, U52(z0)) -> c18(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) A__U62(tt, isNatList(z0)) -> c18(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) A__U62(tt, U61(z0, z1, z2)) -> c18(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) A__U62(tt, U62(z0, z1)) -> c18(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(x1)) -> c16(A__U62(U11(a__isNatList(x1)), x0), A__ISNAT(length(x1))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) S tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(a__isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, U11(z0)) -> c18(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) A__U62(tt, U21(z0)) -> c18(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) A__U62(tt, U31(z0)) -> c18(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) A__U62(tt, U41(z0, z1)) -> c18(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) A__U62(tt, U42(z0)) -> c18(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) A__U62(tt, U51(z0, z1)) -> c18(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) A__U62(tt, U52(z0)) -> c18(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) A__U62(tt, isNatList(z0)) -> c18(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) A__U62(tt, U61(z0, z1, z2)) -> c18(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) A__U62(tt, U62(z0, z1)) -> c18(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(x1)) -> c16(A__U62(U11(a__isNatList(x1)), x0), A__ISNAT(length(x1))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) K tuples:none Defined Rule Symbols: a__zeros, a__U11_1, a__U21_1, a__U31_1, a__U41_2, a__U42_1, a__U51_2, a__U52_1, a__U61_3, a__U62_2, a__isNat_1, a__isNatIList_1, a__isNatList_1, a__length_1, mark_1 Defined Pair Symbols: MARK_1, A__U41_2, A__U51_2, A__ISNAT_1, A__ISNATILIST_1, A__U61_3, A__U62_2, A__ISNATLIST_1, A__LENGTH_1 Compound Symbols: c40_1, c43_1, c46_1, c48_1, c51_1, c8_1, c12_1, c21_1, c22_1, c24_1, c35_1, c36_1, c37_1, c39_1, c42_1, c16_2, c16_1, c18_2, c18_1, c26_2, c26_1, c29_2, c29_1, c32_2, c32_1, c38_2, c38_1, c_1, c41_2, c41_1, c1_1, c44_2, c44_1, c45_2, c45_1, c47_2, c47_1 ---------------------------------------- (87) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 1 trailing tuple parts ---------------------------------------- (88) Obligation: Complexity Dependency Tuples Problem Rules: a__zeros -> cons(0, zeros) a__zeros -> zeros a__U11(tt) -> tt a__U11(z0) -> U11(z0) a__U21(tt) -> tt a__U21(z0) -> U21(z0) a__U31(tt) -> tt a__U31(z0) -> U31(z0) a__U41(tt, z0) -> a__U42(a__isNatIList(z0)) a__U41(z0, z1) -> U41(z0, z1) a__U42(tt) -> tt a__U42(z0) -> U42(z0) a__U51(tt, z0) -> a__U52(a__isNatList(z0)) a__U51(z0, z1) -> U51(z0, z1) a__U52(tt) -> tt a__U52(z0) -> U52(z0) a__U61(tt, z0, z1) -> a__U62(a__isNat(z1), z0) a__U61(z0, z1, z2) -> U61(z0, z1, z2) a__U62(tt, z0) -> s(a__length(mark(z0))) a__U62(z0, z1) -> U62(z0, z1) a__isNat(0) -> tt a__isNat(length(z0)) -> a__U11(a__isNatList(z0)) a__isNat(s(z0)) -> a__U21(a__isNat(z0)) a__isNat(z0) -> isNat(z0) a__isNatIList(z0) -> a__U31(a__isNatList(z0)) a__isNatIList(zeros) -> tt a__isNatIList(cons(z0, z1)) -> a__U41(a__isNat(z0), z1) a__isNatIList(z0) -> isNatIList(z0) a__isNatList(nil) -> tt a__isNatList(cons(z0, z1)) -> a__U51(a__isNat(z0), z1) a__isNatList(z0) -> isNatList(z0) a__length(nil) -> 0 a__length(cons(z0, z1)) -> a__U61(a__isNatList(z1), z1, z0) a__length(z0) -> length(z0) mark(zeros) -> a__zeros mark(U11(z0)) -> a__U11(mark(z0)) mark(U21(z0)) -> a__U21(mark(z0)) mark(U31(z0)) -> a__U31(mark(z0)) mark(U41(z0, z1)) -> a__U41(mark(z0), z1) mark(U42(z0)) -> a__U42(mark(z0)) mark(isNatIList(z0)) -> a__isNatIList(z0) mark(U51(z0, z1)) -> a__U51(mark(z0), z1) mark(U52(z0)) -> a__U52(mark(z0)) mark(isNatList(z0)) -> a__isNatList(z0) mark(U61(z0, z1, z2)) -> a__U61(mark(z0), z1, z2) mark(U62(z0, z1)) -> a__U62(mark(z0), z1) mark(isNat(z0)) -> a__isNat(z0) mark(length(z0)) -> a__length(mark(z0)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(0) -> 0 mark(tt) -> tt mark(s(z0)) -> s(mark(z0)) mark(nil) -> nil Tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(a__isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, U11(z0)) -> c18(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) A__U62(tt, U21(z0)) -> c18(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) A__U62(tt, U31(z0)) -> c18(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) A__U62(tt, U41(z0, z1)) -> c18(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) A__U62(tt, U42(z0)) -> c18(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) A__U62(tt, U51(z0, z1)) -> c18(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) A__U62(tt, U52(z0)) -> c18(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) A__U62(tt, isNatList(z0)) -> c18(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) A__U62(tt, U61(z0, z1, z2)) -> c18(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) A__U62(tt, U62(z0, z1)) -> c18(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) S tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(a__isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, U11(z0)) -> c18(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) A__U62(tt, U21(z0)) -> c18(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) A__U62(tt, U31(z0)) -> c18(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) A__U62(tt, U41(z0, z1)) -> c18(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) A__U62(tt, U42(z0)) -> c18(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) A__U62(tt, U51(z0, z1)) -> c18(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) A__U62(tt, U52(z0)) -> c18(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) A__U62(tt, isNatList(z0)) -> c18(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) A__U62(tt, U61(z0, z1, z2)) -> c18(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) A__U62(tt, U62(z0, z1)) -> c18(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) K tuples:none Defined Rule Symbols: a__zeros, a__U11_1, a__U21_1, a__U31_1, a__U41_2, a__U42_1, a__U51_2, a__U52_1, a__U61_3, a__U62_2, a__isNat_1, a__isNatIList_1, a__isNatList_1, a__length_1, mark_1 Defined Pair Symbols: MARK_1, A__U41_2, A__U51_2, A__ISNAT_1, A__ISNATILIST_1, A__U61_3, A__U62_2, A__ISNATLIST_1, A__LENGTH_1 Compound Symbols: c40_1, c43_1, c46_1, c48_1, c51_1, c8_1, c12_1, c21_1, c22_1, c24_1, c35_1, c36_1, c37_1, c39_1, c42_1, c16_2, c16_1, c18_2, c18_1, c26_2, c26_1, c29_2, c29_1, c32_2, c32_1, c38_2, c38_1, c_1, c41_2, c41_1, c1_1, c44_2, c44_1, c45_2, c45_1, c47_2, c47_1 ---------------------------------------- (89) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(a__isNat(z0)), x0), A__ISNAT(s(z0))) by A__U61(tt, x0, s(x1)) -> c16(A__U62(U21(a__isNat(x1)), x0), A__ISNAT(s(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) ---------------------------------------- (90) Obligation: Complexity Dependency Tuples Problem Rules: a__zeros -> cons(0, zeros) a__zeros -> zeros a__U11(tt) -> tt a__U11(z0) -> U11(z0) a__U21(tt) -> tt a__U21(z0) -> U21(z0) a__U31(tt) -> tt a__U31(z0) -> U31(z0) a__U41(tt, z0) -> a__U42(a__isNatIList(z0)) a__U41(z0, z1) -> U41(z0, z1) a__U42(tt) -> tt a__U42(z0) -> U42(z0) a__U51(tt, z0) -> a__U52(a__isNatList(z0)) a__U51(z0, z1) -> U51(z0, z1) a__U52(tt) -> tt a__U52(z0) -> U52(z0) a__U61(tt, z0, z1) -> a__U62(a__isNat(z1), z0) a__U61(z0, z1, z2) -> U61(z0, z1, z2) a__U62(tt, z0) -> s(a__length(mark(z0))) a__U62(z0, z1) -> U62(z0, z1) a__isNat(0) -> tt a__isNat(length(z0)) -> a__U11(a__isNatList(z0)) a__isNat(s(z0)) -> a__U21(a__isNat(z0)) a__isNat(z0) -> isNat(z0) a__isNatIList(z0) -> a__U31(a__isNatList(z0)) a__isNatIList(zeros) -> tt a__isNatIList(cons(z0, z1)) -> a__U41(a__isNat(z0), z1) a__isNatIList(z0) -> isNatIList(z0) a__isNatList(nil) -> tt a__isNatList(cons(z0, z1)) -> a__U51(a__isNat(z0), z1) a__isNatList(z0) -> isNatList(z0) a__length(nil) -> 0 a__length(cons(z0, z1)) -> a__U61(a__isNatList(z1), z1, z0) a__length(z0) -> length(z0) mark(zeros) -> a__zeros mark(U11(z0)) -> a__U11(mark(z0)) mark(U21(z0)) -> a__U21(mark(z0)) mark(U31(z0)) -> a__U31(mark(z0)) mark(U41(z0, z1)) -> a__U41(mark(z0), z1) mark(U42(z0)) -> a__U42(mark(z0)) mark(isNatIList(z0)) -> a__isNatIList(z0) mark(U51(z0, z1)) -> a__U51(mark(z0), z1) mark(U52(z0)) -> a__U52(mark(z0)) mark(isNatList(z0)) -> a__isNatList(z0) mark(U61(z0, z1, z2)) -> a__U61(mark(z0), z1, z2) mark(U62(z0, z1)) -> a__U62(mark(z0), z1) mark(isNat(z0)) -> a__isNat(z0) mark(length(z0)) -> a__length(mark(z0)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(0) -> 0 mark(tt) -> tt mark(s(z0)) -> s(mark(z0)) mark(nil) -> nil Tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, U11(z0)) -> c18(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) A__U62(tt, U21(z0)) -> c18(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) A__U62(tt, U31(z0)) -> c18(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) A__U62(tt, U41(z0, z1)) -> c18(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) A__U62(tt, U42(z0)) -> c18(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) A__U62(tt, U51(z0, z1)) -> c18(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) A__U62(tt, U52(z0)) -> c18(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) A__U62(tt, isNatList(z0)) -> c18(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) A__U62(tt, U61(z0, z1, z2)) -> c18(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) A__U62(tt, U62(z0, z1)) -> c18(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(x1)) -> c16(A__U62(U21(a__isNat(x1)), x0), A__ISNAT(s(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) S tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, U11(z0)) -> c18(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) A__U62(tt, U21(z0)) -> c18(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) A__U62(tt, U31(z0)) -> c18(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) A__U62(tt, U41(z0, z1)) -> c18(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) A__U62(tt, U42(z0)) -> c18(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) A__U62(tt, U51(z0, z1)) -> c18(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) A__U62(tt, U52(z0)) -> c18(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) A__U62(tt, isNatList(z0)) -> c18(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) A__U62(tt, U61(z0, z1, z2)) -> c18(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) A__U62(tt, U62(z0, z1)) -> c18(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(x1)) -> c16(A__U62(U21(a__isNat(x1)), x0), A__ISNAT(s(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) K tuples:none Defined Rule Symbols: a__zeros, a__U11_1, a__U21_1, a__U31_1, a__U41_2, a__U42_1, a__U51_2, a__U52_1, a__U61_3, a__U62_2, a__isNat_1, a__isNatIList_1, a__isNatList_1, a__length_1, mark_1 Defined Pair Symbols: MARK_1, A__U41_2, A__U51_2, A__ISNAT_1, A__ISNATILIST_1, A__U61_3, A__U62_2, A__ISNATLIST_1, A__LENGTH_1 Compound Symbols: c40_1, c43_1, c46_1, c48_1, c51_1, c8_1, c12_1, c21_1, c22_1, c24_1, c35_1, c36_1, c37_1, c39_1, c42_1, c16_1, c18_2, c18_1, c26_2, c26_1, c29_2, c29_1, c32_2, c32_1, c38_2, c38_1, c_1, c41_2, c41_1, c1_1, c44_2, c44_1, c45_2, c45_1, c47_2, c47_1, c16_2 ---------------------------------------- (91) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 1 trailing tuple parts ---------------------------------------- (92) Obligation: Complexity Dependency Tuples Problem Rules: a__zeros -> cons(0, zeros) a__zeros -> zeros a__U11(tt) -> tt a__U11(z0) -> U11(z0) a__U21(tt) -> tt a__U21(z0) -> U21(z0) a__U31(tt) -> tt a__U31(z0) -> U31(z0) a__U41(tt, z0) -> a__U42(a__isNatIList(z0)) a__U41(z0, z1) -> U41(z0, z1) a__U42(tt) -> tt a__U42(z0) -> U42(z0) a__U51(tt, z0) -> a__U52(a__isNatList(z0)) a__U51(z0, z1) -> U51(z0, z1) a__U52(tt) -> tt a__U52(z0) -> U52(z0) a__U61(tt, z0, z1) -> a__U62(a__isNat(z1), z0) a__U61(z0, z1, z2) -> U61(z0, z1, z2) a__U62(tt, z0) -> s(a__length(mark(z0))) a__U62(z0, z1) -> U62(z0, z1) a__isNat(0) -> tt a__isNat(length(z0)) -> a__U11(a__isNatList(z0)) a__isNat(s(z0)) -> a__U21(a__isNat(z0)) a__isNat(z0) -> isNat(z0) a__isNatIList(z0) -> a__U31(a__isNatList(z0)) a__isNatIList(zeros) -> tt a__isNatIList(cons(z0, z1)) -> a__U41(a__isNat(z0), z1) a__isNatIList(z0) -> isNatIList(z0) a__isNatList(nil) -> tt a__isNatList(cons(z0, z1)) -> a__U51(a__isNat(z0), z1) a__isNatList(z0) -> isNatList(z0) a__length(nil) -> 0 a__length(cons(z0, z1)) -> a__U61(a__isNatList(z1), z1, z0) a__length(z0) -> length(z0) mark(zeros) -> a__zeros mark(U11(z0)) -> a__U11(mark(z0)) mark(U21(z0)) -> a__U21(mark(z0)) mark(U31(z0)) -> a__U31(mark(z0)) mark(U41(z0, z1)) -> a__U41(mark(z0), z1) mark(U42(z0)) -> a__U42(mark(z0)) mark(isNatIList(z0)) -> a__isNatIList(z0) mark(U51(z0, z1)) -> a__U51(mark(z0), z1) mark(U52(z0)) -> a__U52(mark(z0)) mark(isNatList(z0)) -> a__isNatList(z0) mark(U61(z0, z1, z2)) -> a__U61(mark(z0), z1, z2) mark(U62(z0, z1)) -> a__U62(mark(z0), z1) mark(isNat(z0)) -> a__isNat(z0) mark(length(z0)) -> a__length(mark(z0)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(0) -> 0 mark(tt) -> tt mark(s(z0)) -> s(mark(z0)) mark(nil) -> nil Tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, U11(z0)) -> c18(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) A__U62(tt, U21(z0)) -> c18(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) A__U62(tt, U31(z0)) -> c18(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) A__U62(tt, U41(z0, z1)) -> c18(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) A__U62(tt, U42(z0)) -> c18(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) A__U62(tt, U51(z0, z1)) -> c18(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) A__U62(tt, U52(z0)) -> c18(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) A__U62(tt, isNatList(z0)) -> c18(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) A__U62(tt, U61(z0, z1, z2)) -> c18(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) A__U62(tt, U62(z0, z1)) -> c18(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) S tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, U11(z0)) -> c18(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) A__U62(tt, U21(z0)) -> c18(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) A__U62(tt, U31(z0)) -> c18(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) A__U62(tt, U41(z0, z1)) -> c18(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) A__U62(tt, U42(z0)) -> c18(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) A__U62(tt, U51(z0, z1)) -> c18(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) A__U62(tt, U52(z0)) -> c18(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) A__U62(tt, isNatList(z0)) -> c18(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) A__U62(tt, U61(z0, z1, z2)) -> c18(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) A__U62(tt, U62(z0, z1)) -> c18(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) K tuples:none Defined Rule Symbols: a__zeros, a__U11_1, a__U21_1, a__U31_1, a__U41_2, a__U42_1, a__U51_2, a__U52_1, a__U61_3, a__U62_2, a__isNat_1, a__isNatIList_1, a__isNatList_1, a__length_1, mark_1 Defined Pair Symbols: MARK_1, A__U41_2, A__U51_2, A__ISNAT_1, A__ISNATILIST_1, A__U61_3, A__U62_2, A__ISNATLIST_1, A__LENGTH_1 Compound Symbols: c40_1, c43_1, c46_1, c48_1, c51_1, c8_1, c12_1, c21_1, c22_1, c24_1, c35_1, c36_1, c37_1, c39_1, c42_1, c16_1, c18_2, c18_1, c26_2, c26_1, c29_2, c29_1, c32_2, c32_1, c38_2, c38_1, c_1, c41_2, c41_1, c1_1, c44_2, c44_1, c45_2, c45_1, c47_2, c47_1, c16_2 ---------------------------------------- (93) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace A__U62(tt, U11(z0)) -> c18(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) by A__U62(tt, U11(x0)) -> c18(A__LENGTH(U11(mark(x0))), MARK(U11(x0))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) ---------------------------------------- (94) Obligation: Complexity Dependency Tuples Problem Rules: a__zeros -> cons(0, zeros) a__zeros -> zeros a__U11(tt) -> tt a__U11(z0) -> U11(z0) a__U21(tt) -> tt a__U21(z0) -> U21(z0) a__U31(tt) -> tt a__U31(z0) -> U31(z0) a__U41(tt, z0) -> a__U42(a__isNatIList(z0)) a__U41(z0, z1) -> U41(z0, z1) a__U42(tt) -> tt a__U42(z0) -> U42(z0) a__U51(tt, z0) -> a__U52(a__isNatList(z0)) a__U51(z0, z1) -> U51(z0, z1) a__U52(tt) -> tt a__U52(z0) -> U52(z0) a__U61(tt, z0, z1) -> a__U62(a__isNat(z1), z0) a__U61(z0, z1, z2) -> U61(z0, z1, z2) a__U62(tt, z0) -> s(a__length(mark(z0))) a__U62(z0, z1) -> U62(z0, z1) a__isNat(0) -> tt a__isNat(length(z0)) -> a__U11(a__isNatList(z0)) a__isNat(s(z0)) -> a__U21(a__isNat(z0)) a__isNat(z0) -> isNat(z0) a__isNatIList(z0) -> a__U31(a__isNatList(z0)) a__isNatIList(zeros) -> tt a__isNatIList(cons(z0, z1)) -> a__U41(a__isNat(z0), z1) a__isNatIList(z0) -> isNatIList(z0) a__isNatList(nil) -> tt a__isNatList(cons(z0, z1)) -> a__U51(a__isNat(z0), z1) a__isNatList(z0) -> isNatList(z0) a__length(nil) -> 0 a__length(cons(z0, z1)) -> a__U61(a__isNatList(z1), z1, z0) a__length(z0) -> length(z0) mark(zeros) -> a__zeros mark(U11(z0)) -> a__U11(mark(z0)) mark(U21(z0)) -> a__U21(mark(z0)) mark(U31(z0)) -> a__U31(mark(z0)) mark(U41(z0, z1)) -> a__U41(mark(z0), z1) mark(U42(z0)) -> a__U42(mark(z0)) mark(isNatIList(z0)) -> a__isNatIList(z0) mark(U51(z0, z1)) -> a__U51(mark(z0), z1) mark(U52(z0)) -> a__U52(mark(z0)) mark(isNatList(z0)) -> a__isNatList(z0) mark(U61(z0, z1, z2)) -> a__U61(mark(z0), z1, z2) mark(U62(z0, z1)) -> a__U62(mark(z0), z1) mark(isNat(z0)) -> a__isNat(z0) mark(length(z0)) -> a__length(mark(z0)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(0) -> 0 mark(tt) -> tt mark(s(z0)) -> s(mark(z0)) mark(nil) -> nil Tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, U21(z0)) -> c18(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) A__U62(tt, U31(z0)) -> c18(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) A__U62(tt, U41(z0, z1)) -> c18(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) A__U62(tt, U42(z0)) -> c18(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) A__U62(tt, U51(z0, z1)) -> c18(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) A__U62(tt, U52(z0)) -> c18(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) A__U62(tt, isNatList(z0)) -> c18(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) A__U62(tt, U61(z0, z1, z2)) -> c18(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) A__U62(tt, U62(z0, z1)) -> c18(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(x0)) -> c18(A__LENGTH(U11(mark(x0))), MARK(U11(x0))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) S tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, U21(z0)) -> c18(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) A__U62(tt, U31(z0)) -> c18(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) A__U62(tt, U41(z0, z1)) -> c18(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) A__U62(tt, U42(z0)) -> c18(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) A__U62(tt, U51(z0, z1)) -> c18(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) A__U62(tt, U52(z0)) -> c18(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) A__U62(tt, isNatList(z0)) -> c18(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) A__U62(tt, U61(z0, z1, z2)) -> c18(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) A__U62(tt, U62(z0, z1)) -> c18(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(x0)) -> c18(A__LENGTH(U11(mark(x0))), MARK(U11(x0))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) K tuples:none Defined Rule Symbols: a__zeros, a__U11_1, a__U21_1, a__U31_1, a__U41_2, a__U42_1, a__U51_2, a__U52_1, a__U61_3, a__U62_2, a__isNat_1, a__isNatIList_1, a__isNatList_1, a__length_1, mark_1 Defined Pair Symbols: MARK_1, A__U41_2, A__U51_2, A__ISNAT_1, A__ISNATILIST_1, A__U61_3, A__U62_2, A__ISNATLIST_1, A__LENGTH_1 Compound Symbols: c40_1, c43_1, c46_1, c48_1, c51_1, c8_1, c12_1, c21_1, c22_1, c24_1, c35_1, c36_1, c37_1, c39_1, c42_1, c16_1, c18_2, c18_1, c26_2, c26_1, c29_2, c29_1, c32_2, c32_1, c38_2, c38_1, c_1, c41_2, c41_1, c1_1, c44_2, c44_1, c45_2, c45_1, c47_2, c47_1, c16_2 ---------------------------------------- (95) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 1 trailing tuple parts ---------------------------------------- (96) Obligation: Complexity Dependency Tuples Problem Rules: a__zeros -> cons(0, zeros) a__zeros -> zeros a__U11(tt) -> tt a__U11(z0) -> U11(z0) a__U21(tt) -> tt a__U21(z0) -> U21(z0) a__U31(tt) -> tt a__U31(z0) -> U31(z0) a__U41(tt, z0) -> a__U42(a__isNatIList(z0)) a__U41(z0, z1) -> U41(z0, z1) a__U42(tt) -> tt a__U42(z0) -> U42(z0) a__U51(tt, z0) -> a__U52(a__isNatList(z0)) a__U51(z0, z1) -> U51(z0, z1) a__U52(tt) -> tt a__U52(z0) -> U52(z0) a__U61(tt, z0, z1) -> a__U62(a__isNat(z1), z0) a__U61(z0, z1, z2) -> U61(z0, z1, z2) a__U62(tt, z0) -> s(a__length(mark(z0))) a__U62(z0, z1) -> U62(z0, z1) a__isNat(0) -> tt a__isNat(length(z0)) -> a__U11(a__isNatList(z0)) a__isNat(s(z0)) -> a__U21(a__isNat(z0)) a__isNat(z0) -> isNat(z0) a__isNatIList(z0) -> a__U31(a__isNatList(z0)) a__isNatIList(zeros) -> tt a__isNatIList(cons(z0, z1)) -> a__U41(a__isNat(z0), z1) a__isNatIList(z0) -> isNatIList(z0) a__isNatList(nil) -> tt a__isNatList(cons(z0, z1)) -> a__U51(a__isNat(z0), z1) a__isNatList(z0) -> isNatList(z0) a__length(nil) -> 0 a__length(cons(z0, z1)) -> a__U61(a__isNatList(z1), z1, z0) a__length(z0) -> length(z0) mark(zeros) -> a__zeros mark(U11(z0)) -> a__U11(mark(z0)) mark(U21(z0)) -> a__U21(mark(z0)) mark(U31(z0)) -> a__U31(mark(z0)) mark(U41(z0, z1)) -> a__U41(mark(z0), z1) mark(U42(z0)) -> a__U42(mark(z0)) mark(isNatIList(z0)) -> a__isNatIList(z0) mark(U51(z0, z1)) -> a__U51(mark(z0), z1) mark(U52(z0)) -> a__U52(mark(z0)) mark(isNatList(z0)) -> a__isNatList(z0) mark(U61(z0, z1, z2)) -> a__U61(mark(z0), z1, z2) mark(U62(z0, z1)) -> a__U62(mark(z0), z1) mark(isNat(z0)) -> a__isNat(z0) mark(length(z0)) -> a__length(mark(z0)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(0) -> 0 mark(tt) -> tt mark(s(z0)) -> s(mark(z0)) mark(nil) -> nil Tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, U21(z0)) -> c18(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) A__U62(tt, U31(z0)) -> c18(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) A__U62(tt, U41(z0, z1)) -> c18(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) A__U62(tt, U42(z0)) -> c18(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) A__U62(tt, U51(z0, z1)) -> c18(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) A__U62(tt, U52(z0)) -> c18(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) A__U62(tt, isNatList(z0)) -> c18(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) A__U62(tt, U61(z0, z1, z2)) -> c18(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) A__U62(tt, U62(z0, z1)) -> c18(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) S tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, U21(z0)) -> c18(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) A__U62(tt, U31(z0)) -> c18(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) A__U62(tt, U41(z0, z1)) -> c18(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) A__U62(tt, U42(z0)) -> c18(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) A__U62(tt, U51(z0, z1)) -> c18(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) A__U62(tt, U52(z0)) -> c18(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) A__U62(tt, isNatList(z0)) -> c18(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) A__U62(tt, U61(z0, z1, z2)) -> c18(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) A__U62(tt, U62(z0, z1)) -> c18(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) K tuples:none Defined Rule Symbols: a__zeros, a__U11_1, a__U21_1, a__U31_1, a__U41_2, a__U42_1, a__U51_2, a__U52_1, a__U61_3, a__U62_2, a__isNat_1, a__isNatIList_1, a__isNatList_1, a__length_1, mark_1 Defined Pair Symbols: MARK_1, A__U41_2, A__U51_2, A__ISNAT_1, A__ISNATILIST_1, A__U61_3, A__U62_2, A__ISNATLIST_1, A__LENGTH_1 Compound Symbols: c40_1, c43_1, c46_1, c48_1, c51_1, c8_1, c12_1, c21_1, c22_1, c24_1, c35_1, c36_1, c37_1, c39_1, c42_1, c16_1, c18_2, c18_1, c26_2, c26_1, c29_2, c29_1, c32_2, c32_1, c38_2, c38_1, c_1, c41_2, c41_1, c1_1, c44_2, c44_1, c45_2, c45_1, c47_2, c47_1, c16_2 ---------------------------------------- (97) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace A__U62(tt, U21(z0)) -> c18(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) by A__U62(tt, U21(x0)) -> c18(A__LENGTH(U21(mark(x0))), MARK(U21(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) ---------------------------------------- (98) Obligation: Complexity Dependency Tuples Problem Rules: a__zeros -> cons(0, zeros) a__zeros -> zeros a__U11(tt) -> tt a__U11(z0) -> U11(z0) a__U21(tt) -> tt a__U21(z0) -> U21(z0) a__U31(tt) -> tt a__U31(z0) -> U31(z0) a__U41(tt, z0) -> a__U42(a__isNatIList(z0)) a__U41(z0, z1) -> U41(z0, z1) a__U42(tt) -> tt a__U42(z0) -> U42(z0) a__U51(tt, z0) -> a__U52(a__isNatList(z0)) a__U51(z0, z1) -> U51(z0, z1) a__U52(tt) -> tt a__U52(z0) -> U52(z0) a__U61(tt, z0, z1) -> a__U62(a__isNat(z1), z0) a__U61(z0, z1, z2) -> U61(z0, z1, z2) a__U62(tt, z0) -> s(a__length(mark(z0))) a__U62(z0, z1) -> U62(z0, z1) a__isNat(0) -> tt a__isNat(length(z0)) -> a__U11(a__isNatList(z0)) a__isNat(s(z0)) -> a__U21(a__isNat(z0)) a__isNat(z0) -> isNat(z0) a__isNatIList(z0) -> a__U31(a__isNatList(z0)) a__isNatIList(zeros) -> tt a__isNatIList(cons(z0, z1)) -> a__U41(a__isNat(z0), z1) a__isNatIList(z0) -> isNatIList(z0) a__isNatList(nil) -> tt a__isNatList(cons(z0, z1)) -> a__U51(a__isNat(z0), z1) a__isNatList(z0) -> isNatList(z0) a__length(nil) -> 0 a__length(cons(z0, z1)) -> a__U61(a__isNatList(z1), z1, z0) a__length(z0) -> length(z0) mark(zeros) -> a__zeros mark(U11(z0)) -> a__U11(mark(z0)) mark(U21(z0)) -> a__U21(mark(z0)) mark(U31(z0)) -> a__U31(mark(z0)) mark(U41(z0, z1)) -> a__U41(mark(z0), z1) mark(U42(z0)) -> a__U42(mark(z0)) mark(isNatIList(z0)) -> a__isNatIList(z0) mark(U51(z0, z1)) -> a__U51(mark(z0), z1) mark(U52(z0)) -> a__U52(mark(z0)) mark(isNatList(z0)) -> a__isNatList(z0) mark(U61(z0, z1, z2)) -> a__U61(mark(z0), z1, z2) mark(U62(z0, z1)) -> a__U62(mark(z0), z1) mark(isNat(z0)) -> a__isNat(z0) mark(length(z0)) -> a__length(mark(z0)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(0) -> 0 mark(tt) -> tt mark(s(z0)) -> s(mark(z0)) mark(nil) -> nil Tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, U31(z0)) -> c18(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) A__U62(tt, U41(z0, z1)) -> c18(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) A__U62(tt, U42(z0)) -> c18(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) A__U62(tt, U51(z0, z1)) -> c18(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) A__U62(tt, U52(z0)) -> c18(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) A__U62(tt, isNatList(z0)) -> c18(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) A__U62(tt, U61(z0, z1, z2)) -> c18(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) A__U62(tt, U62(z0, z1)) -> c18(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(x0)) -> c18(A__LENGTH(U21(mark(x0))), MARK(U21(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) S tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, U31(z0)) -> c18(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) A__U62(tt, U41(z0, z1)) -> c18(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) A__U62(tt, U42(z0)) -> c18(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) A__U62(tt, U51(z0, z1)) -> c18(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) A__U62(tt, U52(z0)) -> c18(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) A__U62(tt, isNatList(z0)) -> c18(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) A__U62(tt, U61(z0, z1, z2)) -> c18(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) A__U62(tt, U62(z0, z1)) -> c18(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(x0)) -> c18(A__LENGTH(U21(mark(x0))), MARK(U21(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) K tuples:none Defined Rule Symbols: a__zeros, a__U11_1, a__U21_1, a__U31_1, a__U41_2, a__U42_1, a__U51_2, a__U52_1, a__U61_3, a__U62_2, a__isNat_1, a__isNatIList_1, a__isNatList_1, a__length_1, mark_1 Defined Pair Symbols: MARK_1, A__U41_2, A__U51_2, A__ISNAT_1, A__ISNATILIST_1, A__U61_3, A__U62_2, A__ISNATLIST_1, A__LENGTH_1 Compound Symbols: c40_1, c43_1, c46_1, c48_1, c51_1, c8_1, c12_1, c21_1, c22_1, c24_1, c35_1, c36_1, c37_1, c39_1, c42_1, c16_1, c18_2, c18_1, c26_2, c26_1, c29_2, c29_1, c32_2, c32_1, c38_2, c38_1, c_1, c41_2, c41_1, c1_1, c44_2, c44_1, c45_2, c45_1, c47_2, c47_1, c16_2 ---------------------------------------- (99) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 1 trailing tuple parts ---------------------------------------- (100) Obligation: Complexity Dependency Tuples Problem Rules: a__zeros -> cons(0, zeros) a__zeros -> zeros a__U11(tt) -> tt a__U11(z0) -> U11(z0) a__U21(tt) -> tt a__U21(z0) -> U21(z0) a__U31(tt) -> tt a__U31(z0) -> U31(z0) a__U41(tt, z0) -> a__U42(a__isNatIList(z0)) a__U41(z0, z1) -> U41(z0, z1) a__U42(tt) -> tt a__U42(z0) -> U42(z0) a__U51(tt, z0) -> a__U52(a__isNatList(z0)) a__U51(z0, z1) -> U51(z0, z1) a__U52(tt) -> tt a__U52(z0) -> U52(z0) a__U61(tt, z0, z1) -> a__U62(a__isNat(z1), z0) a__U61(z0, z1, z2) -> U61(z0, z1, z2) a__U62(tt, z0) -> s(a__length(mark(z0))) a__U62(z0, z1) -> U62(z0, z1) a__isNat(0) -> tt a__isNat(length(z0)) -> a__U11(a__isNatList(z0)) a__isNat(s(z0)) -> a__U21(a__isNat(z0)) a__isNat(z0) -> isNat(z0) a__isNatIList(z0) -> a__U31(a__isNatList(z0)) a__isNatIList(zeros) -> tt a__isNatIList(cons(z0, z1)) -> a__U41(a__isNat(z0), z1) a__isNatIList(z0) -> isNatIList(z0) a__isNatList(nil) -> tt a__isNatList(cons(z0, z1)) -> a__U51(a__isNat(z0), z1) a__isNatList(z0) -> isNatList(z0) a__length(nil) -> 0 a__length(cons(z0, z1)) -> a__U61(a__isNatList(z1), z1, z0) a__length(z0) -> length(z0) mark(zeros) -> a__zeros mark(U11(z0)) -> a__U11(mark(z0)) mark(U21(z0)) -> a__U21(mark(z0)) mark(U31(z0)) -> a__U31(mark(z0)) mark(U41(z0, z1)) -> a__U41(mark(z0), z1) mark(U42(z0)) -> a__U42(mark(z0)) mark(isNatIList(z0)) -> a__isNatIList(z0) mark(U51(z0, z1)) -> a__U51(mark(z0), z1) mark(U52(z0)) -> a__U52(mark(z0)) mark(isNatList(z0)) -> a__isNatList(z0) mark(U61(z0, z1, z2)) -> a__U61(mark(z0), z1, z2) mark(U62(z0, z1)) -> a__U62(mark(z0), z1) mark(isNat(z0)) -> a__isNat(z0) mark(length(z0)) -> a__length(mark(z0)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(0) -> 0 mark(tt) -> tt mark(s(z0)) -> s(mark(z0)) mark(nil) -> nil Tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, U31(z0)) -> c18(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) A__U62(tt, U41(z0, z1)) -> c18(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) A__U62(tt, U42(z0)) -> c18(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) A__U62(tt, U51(z0, z1)) -> c18(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) A__U62(tt, U52(z0)) -> c18(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) A__U62(tt, isNatList(z0)) -> c18(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) A__U62(tt, U61(z0, z1, z2)) -> c18(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) A__U62(tt, U62(z0, z1)) -> c18(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) S tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, U31(z0)) -> c18(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) A__U62(tt, U41(z0, z1)) -> c18(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) A__U62(tt, U42(z0)) -> c18(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) A__U62(tt, U51(z0, z1)) -> c18(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) A__U62(tt, U52(z0)) -> c18(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) A__U62(tt, isNatList(z0)) -> c18(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) A__U62(tt, U61(z0, z1, z2)) -> c18(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) A__U62(tt, U62(z0, z1)) -> c18(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) K tuples:none Defined Rule Symbols: a__zeros, a__U11_1, a__U21_1, a__U31_1, a__U41_2, a__U42_1, a__U51_2, a__U52_1, a__U61_3, a__U62_2, a__isNat_1, a__isNatIList_1, a__isNatList_1, a__length_1, mark_1 Defined Pair Symbols: MARK_1, A__U41_2, A__U51_2, A__ISNAT_1, A__ISNATILIST_1, A__U61_3, A__U62_2, A__ISNATLIST_1, A__LENGTH_1 Compound Symbols: c40_1, c43_1, c46_1, c48_1, c51_1, c8_1, c12_1, c21_1, c22_1, c24_1, c35_1, c36_1, c37_1, c39_1, c42_1, c16_1, c18_2, c18_1, c26_2, c26_1, c29_2, c29_1, c32_2, c32_1, c38_2, c38_1, c_1, c41_2, c41_1, c1_1, c44_2, c44_1, c45_2, c45_1, c47_2, c47_1, c16_2 ---------------------------------------- (101) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace A__U62(tt, U31(z0)) -> c18(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) by A__U62(tt, U31(x0)) -> c18(A__LENGTH(U31(mark(x0))), MARK(U31(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) ---------------------------------------- (102) Obligation: Complexity Dependency Tuples Problem Rules: a__zeros -> cons(0, zeros) a__zeros -> zeros a__U11(tt) -> tt a__U11(z0) -> U11(z0) a__U21(tt) -> tt a__U21(z0) -> U21(z0) a__U31(tt) -> tt a__U31(z0) -> U31(z0) a__U41(tt, z0) -> a__U42(a__isNatIList(z0)) a__U41(z0, z1) -> U41(z0, z1) a__U42(tt) -> tt a__U42(z0) -> U42(z0) a__U51(tt, z0) -> a__U52(a__isNatList(z0)) a__U51(z0, z1) -> U51(z0, z1) a__U52(tt) -> tt a__U52(z0) -> U52(z0) a__U61(tt, z0, z1) -> a__U62(a__isNat(z1), z0) a__U61(z0, z1, z2) -> U61(z0, z1, z2) a__U62(tt, z0) -> s(a__length(mark(z0))) a__U62(z0, z1) -> U62(z0, z1) a__isNat(0) -> tt a__isNat(length(z0)) -> a__U11(a__isNatList(z0)) a__isNat(s(z0)) -> a__U21(a__isNat(z0)) a__isNat(z0) -> isNat(z0) a__isNatIList(z0) -> a__U31(a__isNatList(z0)) a__isNatIList(zeros) -> tt a__isNatIList(cons(z0, z1)) -> a__U41(a__isNat(z0), z1) a__isNatIList(z0) -> isNatIList(z0) a__isNatList(nil) -> tt a__isNatList(cons(z0, z1)) -> a__U51(a__isNat(z0), z1) a__isNatList(z0) -> isNatList(z0) a__length(nil) -> 0 a__length(cons(z0, z1)) -> a__U61(a__isNatList(z1), z1, z0) a__length(z0) -> length(z0) mark(zeros) -> a__zeros mark(U11(z0)) -> a__U11(mark(z0)) mark(U21(z0)) -> a__U21(mark(z0)) mark(U31(z0)) -> a__U31(mark(z0)) mark(U41(z0, z1)) -> a__U41(mark(z0), z1) mark(U42(z0)) -> a__U42(mark(z0)) mark(isNatIList(z0)) -> a__isNatIList(z0) mark(U51(z0, z1)) -> a__U51(mark(z0), z1) mark(U52(z0)) -> a__U52(mark(z0)) mark(isNatList(z0)) -> a__isNatList(z0) mark(U61(z0, z1, z2)) -> a__U61(mark(z0), z1, z2) mark(U62(z0, z1)) -> a__U62(mark(z0), z1) mark(isNat(z0)) -> a__isNat(z0) mark(length(z0)) -> a__length(mark(z0)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(0) -> 0 mark(tt) -> tt mark(s(z0)) -> s(mark(z0)) mark(nil) -> nil Tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, U41(z0, z1)) -> c18(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) A__U62(tt, U42(z0)) -> c18(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) A__U62(tt, U51(z0, z1)) -> c18(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) A__U62(tt, U52(z0)) -> c18(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) A__U62(tt, isNatList(z0)) -> c18(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) A__U62(tt, U61(z0, z1, z2)) -> c18(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) A__U62(tt, U62(z0, z1)) -> c18(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(x0)) -> c18(A__LENGTH(U31(mark(x0))), MARK(U31(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) S tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, U41(z0, z1)) -> c18(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) A__U62(tt, U42(z0)) -> c18(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) A__U62(tt, U51(z0, z1)) -> c18(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) A__U62(tt, U52(z0)) -> c18(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) A__U62(tt, isNatList(z0)) -> c18(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) A__U62(tt, U61(z0, z1, z2)) -> c18(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) A__U62(tt, U62(z0, z1)) -> c18(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(x0)) -> c18(A__LENGTH(U31(mark(x0))), MARK(U31(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) K tuples:none Defined Rule Symbols: a__zeros, a__U11_1, a__U21_1, a__U31_1, a__U41_2, a__U42_1, a__U51_2, a__U52_1, a__U61_3, a__U62_2, a__isNat_1, a__isNatIList_1, a__isNatList_1, a__length_1, mark_1 Defined Pair Symbols: MARK_1, A__U41_2, A__U51_2, A__ISNAT_1, A__ISNATILIST_1, A__U61_3, A__U62_2, A__ISNATLIST_1, A__LENGTH_1 Compound Symbols: c40_1, c43_1, c46_1, c48_1, c51_1, c8_1, c12_1, c21_1, c22_1, c24_1, c35_1, c36_1, c37_1, c39_1, c42_1, c16_1, c18_2, c18_1, c26_2, c26_1, c29_2, c29_1, c32_2, c32_1, c38_2, c38_1, c_1, c41_2, c41_1, c1_1, c44_2, c44_1, c45_2, c45_1, c47_2, c47_1, c16_2 ---------------------------------------- (103) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 1 trailing tuple parts ---------------------------------------- (104) Obligation: Complexity Dependency Tuples Problem Rules: a__zeros -> cons(0, zeros) a__zeros -> zeros a__U11(tt) -> tt a__U11(z0) -> U11(z0) a__U21(tt) -> tt a__U21(z0) -> U21(z0) a__U31(tt) -> tt a__U31(z0) -> U31(z0) a__U41(tt, z0) -> a__U42(a__isNatIList(z0)) a__U41(z0, z1) -> U41(z0, z1) a__U42(tt) -> tt a__U42(z0) -> U42(z0) a__U51(tt, z0) -> a__U52(a__isNatList(z0)) a__U51(z0, z1) -> U51(z0, z1) a__U52(tt) -> tt a__U52(z0) -> U52(z0) a__U61(tt, z0, z1) -> a__U62(a__isNat(z1), z0) a__U61(z0, z1, z2) -> U61(z0, z1, z2) a__U62(tt, z0) -> s(a__length(mark(z0))) a__U62(z0, z1) -> U62(z0, z1) a__isNat(0) -> tt a__isNat(length(z0)) -> a__U11(a__isNatList(z0)) a__isNat(s(z0)) -> a__U21(a__isNat(z0)) a__isNat(z0) -> isNat(z0) a__isNatIList(z0) -> a__U31(a__isNatList(z0)) a__isNatIList(zeros) -> tt a__isNatIList(cons(z0, z1)) -> a__U41(a__isNat(z0), z1) a__isNatIList(z0) -> isNatIList(z0) a__isNatList(nil) -> tt a__isNatList(cons(z0, z1)) -> a__U51(a__isNat(z0), z1) a__isNatList(z0) -> isNatList(z0) a__length(nil) -> 0 a__length(cons(z0, z1)) -> a__U61(a__isNatList(z1), z1, z0) a__length(z0) -> length(z0) mark(zeros) -> a__zeros mark(U11(z0)) -> a__U11(mark(z0)) mark(U21(z0)) -> a__U21(mark(z0)) mark(U31(z0)) -> a__U31(mark(z0)) mark(U41(z0, z1)) -> a__U41(mark(z0), z1) mark(U42(z0)) -> a__U42(mark(z0)) mark(isNatIList(z0)) -> a__isNatIList(z0) mark(U51(z0, z1)) -> a__U51(mark(z0), z1) mark(U52(z0)) -> a__U52(mark(z0)) mark(isNatList(z0)) -> a__isNatList(z0) mark(U61(z0, z1, z2)) -> a__U61(mark(z0), z1, z2) mark(U62(z0, z1)) -> a__U62(mark(z0), z1) mark(isNat(z0)) -> a__isNat(z0) mark(length(z0)) -> a__length(mark(z0)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(0) -> 0 mark(tt) -> tt mark(s(z0)) -> s(mark(z0)) mark(nil) -> nil Tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, U41(z0, z1)) -> c18(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) A__U62(tt, U42(z0)) -> c18(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) A__U62(tt, U51(z0, z1)) -> c18(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) A__U62(tt, U52(z0)) -> c18(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) A__U62(tt, isNatList(z0)) -> c18(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) A__U62(tt, U61(z0, z1, z2)) -> c18(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) A__U62(tt, U62(z0, z1)) -> c18(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) S tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, U41(z0, z1)) -> c18(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) A__U62(tt, U42(z0)) -> c18(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) A__U62(tt, U51(z0, z1)) -> c18(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) A__U62(tt, U52(z0)) -> c18(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) A__U62(tt, isNatList(z0)) -> c18(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) A__U62(tt, U61(z0, z1, z2)) -> c18(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) A__U62(tt, U62(z0, z1)) -> c18(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) K tuples:none Defined Rule Symbols: a__zeros, a__U11_1, a__U21_1, a__U31_1, a__U41_2, a__U42_1, a__U51_2, a__U52_1, a__U61_3, a__U62_2, a__isNat_1, a__isNatIList_1, a__isNatList_1, a__length_1, mark_1 Defined Pair Symbols: MARK_1, A__U41_2, A__U51_2, A__ISNAT_1, A__ISNATILIST_1, A__U61_3, A__U62_2, A__ISNATLIST_1, A__LENGTH_1 Compound Symbols: c40_1, c43_1, c46_1, c48_1, c51_1, c8_1, c12_1, c21_1, c22_1, c24_1, c35_1, c36_1, c37_1, c39_1, c42_1, c16_1, c18_2, c18_1, c26_2, c26_1, c29_2, c29_1, c32_2, c32_1, c38_2, c38_1, c_1, c41_2, c41_1, c1_1, c44_2, c44_1, c45_2, c45_1, c47_2, c47_1, c16_2 ---------------------------------------- (105) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace A__U62(tt, U41(z0, z1)) -> c18(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) by A__U62(tt, U41(x0, z1)) -> c18(A__LENGTH(U41(mark(x0), z1)), MARK(U41(x0, z1))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1)), MARK(U41(0, x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1)), MARK(U41(nil, x1))) ---------------------------------------- (106) Obligation: Complexity Dependency Tuples Problem Rules: a__zeros -> cons(0, zeros) a__zeros -> zeros a__U11(tt) -> tt a__U11(z0) -> U11(z0) a__U21(tt) -> tt a__U21(z0) -> U21(z0) a__U31(tt) -> tt a__U31(z0) -> U31(z0) a__U41(tt, z0) -> a__U42(a__isNatIList(z0)) a__U41(z0, z1) -> U41(z0, z1) a__U42(tt) -> tt a__U42(z0) -> U42(z0) a__U51(tt, z0) -> a__U52(a__isNatList(z0)) a__U51(z0, z1) -> U51(z0, z1) a__U52(tt) -> tt a__U52(z0) -> U52(z0) a__U61(tt, z0, z1) -> a__U62(a__isNat(z1), z0) a__U61(z0, z1, z2) -> U61(z0, z1, z2) a__U62(tt, z0) -> s(a__length(mark(z0))) a__U62(z0, z1) -> U62(z0, z1) a__isNat(0) -> tt a__isNat(length(z0)) -> a__U11(a__isNatList(z0)) a__isNat(s(z0)) -> a__U21(a__isNat(z0)) a__isNat(z0) -> isNat(z0) a__isNatIList(z0) -> a__U31(a__isNatList(z0)) a__isNatIList(zeros) -> tt a__isNatIList(cons(z0, z1)) -> a__U41(a__isNat(z0), z1) a__isNatIList(z0) -> isNatIList(z0) a__isNatList(nil) -> tt a__isNatList(cons(z0, z1)) -> a__U51(a__isNat(z0), z1) a__isNatList(z0) -> isNatList(z0) a__length(nil) -> 0 a__length(cons(z0, z1)) -> a__U61(a__isNatList(z1), z1, z0) a__length(z0) -> length(z0) mark(zeros) -> a__zeros mark(U11(z0)) -> a__U11(mark(z0)) mark(U21(z0)) -> a__U21(mark(z0)) mark(U31(z0)) -> a__U31(mark(z0)) mark(U41(z0, z1)) -> a__U41(mark(z0), z1) mark(U42(z0)) -> a__U42(mark(z0)) mark(isNatIList(z0)) -> a__isNatIList(z0) mark(U51(z0, z1)) -> a__U51(mark(z0), z1) mark(U52(z0)) -> a__U52(mark(z0)) mark(isNatList(z0)) -> a__isNatList(z0) mark(U61(z0, z1, z2)) -> a__U61(mark(z0), z1, z2) mark(U62(z0, z1)) -> a__U62(mark(z0), z1) mark(isNat(z0)) -> a__isNat(z0) mark(length(z0)) -> a__length(mark(z0)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(0) -> 0 mark(tt) -> tt mark(s(z0)) -> s(mark(z0)) mark(nil) -> nil Tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, U42(z0)) -> c18(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) A__U62(tt, U51(z0, z1)) -> c18(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) A__U62(tt, U52(z0)) -> c18(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) A__U62(tt, isNatList(z0)) -> c18(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) A__U62(tt, U61(z0, z1, z2)) -> c18(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) A__U62(tt, U62(z0, z1)) -> c18(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(x0, z1)) -> c18(A__LENGTH(U41(mark(x0), z1)), MARK(U41(x0, z1))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1)), MARK(U41(0, x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1)), MARK(U41(nil, x1))) S tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, U42(z0)) -> c18(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) A__U62(tt, U51(z0, z1)) -> c18(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) A__U62(tt, U52(z0)) -> c18(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) A__U62(tt, isNatList(z0)) -> c18(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) A__U62(tt, U61(z0, z1, z2)) -> c18(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) A__U62(tt, U62(z0, z1)) -> c18(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(x0, z1)) -> c18(A__LENGTH(U41(mark(x0), z1)), MARK(U41(x0, z1))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1)), MARK(U41(0, x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1)), MARK(U41(nil, x1))) K tuples:none Defined Rule Symbols: a__zeros, a__U11_1, a__U21_1, a__U31_1, a__U41_2, a__U42_1, a__U51_2, a__U52_1, a__U61_3, a__U62_2, a__isNat_1, a__isNatIList_1, a__isNatList_1, a__length_1, mark_1 Defined Pair Symbols: MARK_1, A__U41_2, A__U51_2, A__ISNAT_1, A__ISNATILIST_1, A__U61_3, A__U62_2, A__ISNATLIST_1, A__LENGTH_1 Compound Symbols: c40_1, c43_1, c46_1, c48_1, c51_1, c8_1, c12_1, c21_1, c22_1, c24_1, c35_1, c36_1, c37_1, c39_1, c42_1, c16_1, c18_2, c18_1, c26_2, c26_1, c29_2, c29_1, c32_2, c32_1, c38_2, c38_1, c_1, c41_2, c41_1, c1_1, c44_2, c44_1, c45_2, c45_1, c47_2, c47_1, c16_2 ---------------------------------------- (107) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 3 trailing tuple parts ---------------------------------------- (108) Obligation: Complexity Dependency Tuples Problem Rules: a__zeros -> cons(0, zeros) a__zeros -> zeros a__U11(tt) -> tt a__U11(z0) -> U11(z0) a__U21(tt) -> tt a__U21(z0) -> U21(z0) a__U31(tt) -> tt a__U31(z0) -> U31(z0) a__U41(tt, z0) -> a__U42(a__isNatIList(z0)) a__U41(z0, z1) -> U41(z0, z1) a__U42(tt) -> tt a__U42(z0) -> U42(z0) a__U51(tt, z0) -> a__U52(a__isNatList(z0)) a__U51(z0, z1) -> U51(z0, z1) a__U52(tt) -> tt a__U52(z0) -> U52(z0) a__U61(tt, z0, z1) -> a__U62(a__isNat(z1), z0) a__U61(z0, z1, z2) -> U61(z0, z1, z2) a__U62(tt, z0) -> s(a__length(mark(z0))) a__U62(z0, z1) -> U62(z0, z1) a__isNat(0) -> tt a__isNat(length(z0)) -> a__U11(a__isNatList(z0)) a__isNat(s(z0)) -> a__U21(a__isNat(z0)) a__isNat(z0) -> isNat(z0) a__isNatIList(z0) -> a__U31(a__isNatList(z0)) a__isNatIList(zeros) -> tt a__isNatIList(cons(z0, z1)) -> a__U41(a__isNat(z0), z1) a__isNatIList(z0) -> isNatIList(z0) a__isNatList(nil) -> tt a__isNatList(cons(z0, z1)) -> a__U51(a__isNat(z0), z1) a__isNatList(z0) -> isNatList(z0) a__length(nil) -> 0 a__length(cons(z0, z1)) -> a__U61(a__isNatList(z1), z1, z0) a__length(z0) -> length(z0) mark(zeros) -> a__zeros mark(U11(z0)) -> a__U11(mark(z0)) mark(U21(z0)) -> a__U21(mark(z0)) mark(U31(z0)) -> a__U31(mark(z0)) mark(U41(z0, z1)) -> a__U41(mark(z0), z1) mark(U42(z0)) -> a__U42(mark(z0)) mark(isNatIList(z0)) -> a__isNatIList(z0) mark(U51(z0, z1)) -> a__U51(mark(z0), z1) mark(U52(z0)) -> a__U52(mark(z0)) mark(isNatList(z0)) -> a__isNatList(z0) mark(U61(z0, z1, z2)) -> a__U61(mark(z0), z1, z2) mark(U62(z0, z1)) -> a__U62(mark(z0), z1) mark(isNat(z0)) -> a__isNat(z0) mark(length(z0)) -> a__length(mark(z0)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(0) -> 0 mark(tt) -> tt mark(s(z0)) -> s(mark(z0)) mark(nil) -> nil Tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, U42(z0)) -> c18(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) A__U62(tt, U51(z0, z1)) -> c18(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) A__U62(tt, U52(z0)) -> c18(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) A__U62(tt, isNatList(z0)) -> c18(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) A__U62(tt, U61(z0, z1, z2)) -> c18(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) A__U62(tt, U62(z0, z1)) -> c18(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) S tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, U42(z0)) -> c18(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) A__U62(tt, U51(z0, z1)) -> c18(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) A__U62(tt, U52(z0)) -> c18(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) A__U62(tt, isNatList(z0)) -> c18(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) A__U62(tt, U61(z0, z1, z2)) -> c18(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) A__U62(tt, U62(z0, z1)) -> c18(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) K tuples:none Defined Rule Symbols: a__zeros, a__U11_1, a__U21_1, a__U31_1, a__U41_2, a__U42_1, a__U51_2, a__U52_1, a__U61_3, a__U62_2, a__isNat_1, a__isNatIList_1, a__isNatList_1, a__length_1, mark_1 Defined Pair Symbols: MARK_1, A__U41_2, A__U51_2, A__ISNAT_1, A__ISNATILIST_1, A__U61_3, A__U62_2, A__ISNATLIST_1, A__LENGTH_1 Compound Symbols: c40_1, c43_1, c46_1, c48_1, c51_1, c8_1, c12_1, c21_1, c22_1, c24_1, c35_1, c36_1, c37_1, c39_1, c42_1, c16_1, c18_2, c18_1, c26_2, c26_1, c29_2, c29_1, c32_2, c32_1, c38_2, c38_1, c_1, c41_2, c41_1, c1_1, c44_2, c44_1, c45_2, c45_1, c47_2, c47_1, c16_2 ---------------------------------------- (109) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace A__U62(tt, U42(z0)) -> c18(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) by A__U62(tt, U42(x0)) -> c18(A__LENGTH(U42(mark(x0))), MARK(U42(x0))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) ---------------------------------------- (110) Obligation: Complexity Dependency Tuples Problem Rules: a__zeros -> cons(0, zeros) a__zeros -> zeros a__U11(tt) -> tt a__U11(z0) -> U11(z0) a__U21(tt) -> tt a__U21(z0) -> U21(z0) a__U31(tt) -> tt a__U31(z0) -> U31(z0) a__U41(tt, z0) -> a__U42(a__isNatIList(z0)) a__U41(z0, z1) -> U41(z0, z1) a__U42(tt) -> tt a__U42(z0) -> U42(z0) a__U51(tt, z0) -> a__U52(a__isNatList(z0)) a__U51(z0, z1) -> U51(z0, z1) a__U52(tt) -> tt a__U52(z0) -> U52(z0) a__U61(tt, z0, z1) -> a__U62(a__isNat(z1), z0) a__U61(z0, z1, z2) -> U61(z0, z1, z2) a__U62(tt, z0) -> s(a__length(mark(z0))) a__U62(z0, z1) -> U62(z0, z1) a__isNat(0) -> tt a__isNat(length(z0)) -> a__U11(a__isNatList(z0)) a__isNat(s(z0)) -> a__U21(a__isNat(z0)) a__isNat(z0) -> isNat(z0) a__isNatIList(z0) -> a__U31(a__isNatList(z0)) a__isNatIList(zeros) -> tt a__isNatIList(cons(z0, z1)) -> a__U41(a__isNat(z0), z1) a__isNatIList(z0) -> isNatIList(z0) a__isNatList(nil) -> tt a__isNatList(cons(z0, z1)) -> a__U51(a__isNat(z0), z1) a__isNatList(z0) -> isNatList(z0) a__length(nil) -> 0 a__length(cons(z0, z1)) -> a__U61(a__isNatList(z1), z1, z0) a__length(z0) -> length(z0) mark(zeros) -> a__zeros mark(U11(z0)) -> a__U11(mark(z0)) mark(U21(z0)) -> a__U21(mark(z0)) mark(U31(z0)) -> a__U31(mark(z0)) mark(U41(z0, z1)) -> a__U41(mark(z0), z1) mark(U42(z0)) -> a__U42(mark(z0)) mark(isNatIList(z0)) -> a__isNatIList(z0) mark(U51(z0, z1)) -> a__U51(mark(z0), z1) mark(U52(z0)) -> a__U52(mark(z0)) mark(isNatList(z0)) -> a__isNatList(z0) mark(U61(z0, z1, z2)) -> a__U61(mark(z0), z1, z2) mark(U62(z0, z1)) -> a__U62(mark(z0), z1) mark(isNat(z0)) -> a__isNat(z0) mark(length(z0)) -> a__length(mark(z0)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(0) -> 0 mark(tt) -> tt mark(s(z0)) -> s(mark(z0)) mark(nil) -> nil Tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) A__U62(tt, U51(z0, z1)) -> c18(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) A__U62(tt, U52(z0)) -> c18(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) A__U62(tt, isNatList(z0)) -> c18(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) A__U62(tt, U61(z0, z1, z2)) -> c18(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) A__U62(tt, U62(z0, z1)) -> c18(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(x0)) -> c18(A__LENGTH(U42(mark(x0))), MARK(U42(x0))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) S tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) A__U62(tt, U51(z0, z1)) -> c18(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) A__U62(tt, U52(z0)) -> c18(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) A__U62(tt, isNatList(z0)) -> c18(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) A__U62(tt, U61(z0, z1, z2)) -> c18(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) A__U62(tt, U62(z0, z1)) -> c18(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(x0)) -> c18(A__LENGTH(U42(mark(x0))), MARK(U42(x0))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) K tuples:none Defined Rule Symbols: a__zeros, a__U11_1, a__U21_1, a__U31_1, a__U41_2, a__U42_1, a__U51_2, a__U52_1, a__U61_3, a__U62_2, a__isNat_1, a__isNatIList_1, a__isNatList_1, a__length_1, mark_1 Defined Pair Symbols: MARK_1, A__U41_2, A__U51_2, A__ISNAT_1, A__ISNATILIST_1, A__U61_3, A__U62_2, A__ISNATLIST_1, A__LENGTH_1 Compound Symbols: c40_1, c43_1, c46_1, c48_1, c51_1, c8_1, c12_1, c21_1, c22_1, c24_1, c35_1, c36_1, c37_1, c39_1, c42_1, c16_1, c18_2, c18_1, c26_2, c26_1, c29_2, c29_1, c32_2, c32_1, c38_2, c38_1, c_1, c41_2, c41_1, c1_1, c44_2, c44_1, c45_2, c45_1, c47_2, c47_1, c16_2 ---------------------------------------- (111) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 1 trailing tuple parts ---------------------------------------- (112) Obligation: Complexity Dependency Tuples Problem Rules: a__zeros -> cons(0, zeros) a__zeros -> zeros a__U11(tt) -> tt a__U11(z0) -> U11(z0) a__U21(tt) -> tt a__U21(z0) -> U21(z0) a__U31(tt) -> tt a__U31(z0) -> U31(z0) a__U41(tt, z0) -> a__U42(a__isNatIList(z0)) a__U41(z0, z1) -> U41(z0, z1) a__U42(tt) -> tt a__U42(z0) -> U42(z0) a__U51(tt, z0) -> a__U52(a__isNatList(z0)) a__U51(z0, z1) -> U51(z0, z1) a__U52(tt) -> tt a__U52(z0) -> U52(z0) a__U61(tt, z0, z1) -> a__U62(a__isNat(z1), z0) a__U61(z0, z1, z2) -> U61(z0, z1, z2) a__U62(tt, z0) -> s(a__length(mark(z0))) a__U62(z0, z1) -> U62(z0, z1) a__isNat(0) -> tt a__isNat(length(z0)) -> a__U11(a__isNatList(z0)) a__isNat(s(z0)) -> a__U21(a__isNat(z0)) a__isNat(z0) -> isNat(z0) a__isNatIList(z0) -> a__U31(a__isNatList(z0)) a__isNatIList(zeros) -> tt a__isNatIList(cons(z0, z1)) -> a__U41(a__isNat(z0), z1) a__isNatIList(z0) -> isNatIList(z0) a__isNatList(nil) -> tt a__isNatList(cons(z0, z1)) -> a__U51(a__isNat(z0), z1) a__isNatList(z0) -> isNatList(z0) a__length(nil) -> 0 a__length(cons(z0, z1)) -> a__U61(a__isNatList(z1), z1, z0) a__length(z0) -> length(z0) mark(zeros) -> a__zeros mark(U11(z0)) -> a__U11(mark(z0)) mark(U21(z0)) -> a__U21(mark(z0)) mark(U31(z0)) -> a__U31(mark(z0)) mark(U41(z0, z1)) -> a__U41(mark(z0), z1) mark(U42(z0)) -> a__U42(mark(z0)) mark(isNatIList(z0)) -> a__isNatIList(z0) mark(U51(z0, z1)) -> a__U51(mark(z0), z1) mark(U52(z0)) -> a__U52(mark(z0)) mark(isNatList(z0)) -> a__isNatList(z0) mark(U61(z0, z1, z2)) -> a__U61(mark(z0), z1, z2) mark(U62(z0, z1)) -> a__U62(mark(z0), z1) mark(isNat(z0)) -> a__isNat(z0) mark(length(z0)) -> a__length(mark(z0)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(0) -> 0 mark(tt) -> tt mark(s(z0)) -> s(mark(z0)) mark(nil) -> nil Tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) A__U62(tt, U51(z0, z1)) -> c18(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) A__U62(tt, U52(z0)) -> c18(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) A__U62(tt, isNatList(z0)) -> c18(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) A__U62(tt, U61(z0, z1, z2)) -> c18(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) A__U62(tt, U62(z0, z1)) -> c18(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) S tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) A__U62(tt, U51(z0, z1)) -> c18(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) A__U62(tt, U52(z0)) -> c18(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) A__U62(tt, isNatList(z0)) -> c18(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) A__U62(tt, U61(z0, z1, z2)) -> c18(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) A__U62(tt, U62(z0, z1)) -> c18(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) K tuples:none Defined Rule Symbols: a__zeros, a__U11_1, a__U21_1, a__U31_1, a__U41_2, a__U42_1, a__U51_2, a__U52_1, a__U61_3, a__U62_2, a__isNat_1, a__isNatIList_1, a__isNatList_1, a__length_1, mark_1 Defined Pair Symbols: MARK_1, A__U41_2, A__U51_2, A__ISNAT_1, A__ISNATILIST_1, A__U61_3, A__U62_2, A__ISNATLIST_1, A__LENGTH_1 Compound Symbols: c40_1, c43_1, c46_1, c48_1, c51_1, c8_1, c12_1, c21_1, c22_1, c24_1, c35_1, c36_1, c37_1, c39_1, c42_1, c16_1, c18_2, c18_1, c26_2, c26_1, c29_2, c29_1, c32_2, c32_1, c38_2, c38_1, c_1, c41_2, c41_1, c1_1, c44_2, c44_1, c45_2, c45_1, c47_2, c47_1, c16_2 ---------------------------------------- (113) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) by A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(zeros)) -> c18(A__LENGTH(tt), MARK(isNatIList(zeros))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(isNatIList(z0)), MARK(isNatIList(z0))) ---------------------------------------- (114) Obligation: Complexity Dependency Tuples Problem Rules: a__zeros -> cons(0, zeros) a__zeros -> zeros a__U11(tt) -> tt a__U11(z0) -> U11(z0) a__U21(tt) -> tt a__U21(z0) -> U21(z0) a__U31(tt) -> tt a__U31(z0) -> U31(z0) a__U41(tt, z0) -> a__U42(a__isNatIList(z0)) a__U41(z0, z1) -> U41(z0, z1) a__U42(tt) -> tt a__U42(z0) -> U42(z0) a__U51(tt, z0) -> a__U52(a__isNatList(z0)) a__U51(z0, z1) -> U51(z0, z1) a__U52(tt) -> tt a__U52(z0) -> U52(z0) a__U61(tt, z0, z1) -> a__U62(a__isNat(z1), z0) a__U61(z0, z1, z2) -> U61(z0, z1, z2) a__U62(tt, z0) -> s(a__length(mark(z0))) a__U62(z0, z1) -> U62(z0, z1) a__isNat(0) -> tt a__isNat(length(z0)) -> a__U11(a__isNatList(z0)) a__isNat(s(z0)) -> a__U21(a__isNat(z0)) a__isNat(z0) -> isNat(z0) a__isNatIList(z0) -> a__U31(a__isNatList(z0)) a__isNatIList(zeros) -> tt a__isNatIList(cons(z0, z1)) -> a__U41(a__isNat(z0), z1) a__isNatIList(z0) -> isNatIList(z0) a__isNatList(nil) -> tt a__isNatList(cons(z0, z1)) -> a__U51(a__isNat(z0), z1) a__isNatList(z0) -> isNatList(z0) a__length(nil) -> 0 a__length(cons(z0, z1)) -> a__U61(a__isNatList(z1), z1, z0) a__length(z0) -> length(z0) mark(zeros) -> a__zeros mark(U11(z0)) -> a__U11(mark(z0)) mark(U21(z0)) -> a__U21(mark(z0)) mark(U31(z0)) -> a__U31(mark(z0)) mark(U41(z0, z1)) -> a__U41(mark(z0), z1) mark(U42(z0)) -> a__U42(mark(z0)) mark(isNatIList(z0)) -> a__isNatIList(z0) mark(U51(z0, z1)) -> a__U51(mark(z0), z1) mark(U52(z0)) -> a__U52(mark(z0)) mark(isNatList(z0)) -> a__isNatList(z0) mark(U61(z0, z1, z2)) -> a__U61(mark(z0), z1, z2) mark(U62(z0, z1)) -> a__U62(mark(z0), z1) mark(isNat(z0)) -> a__isNat(z0) mark(length(z0)) -> a__length(mark(z0)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(0) -> 0 mark(tt) -> tt mark(s(z0)) -> s(mark(z0)) mark(nil) -> nil Tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, U51(z0, z1)) -> c18(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) A__U62(tt, U52(z0)) -> c18(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) A__U62(tt, isNatList(z0)) -> c18(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) A__U62(tt, U61(z0, z1, z2)) -> c18(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) A__U62(tt, U62(z0, z1)) -> c18(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(zeros)) -> c18(A__LENGTH(tt), MARK(isNatIList(zeros))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(isNatIList(z0)), MARK(isNatIList(z0))) S tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, U51(z0, z1)) -> c18(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) A__U62(tt, U52(z0)) -> c18(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) A__U62(tt, isNatList(z0)) -> c18(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) A__U62(tt, U61(z0, z1, z2)) -> c18(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) A__U62(tt, U62(z0, z1)) -> c18(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(zeros)) -> c18(A__LENGTH(tt), MARK(isNatIList(zeros))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(isNatIList(z0)), MARK(isNatIList(z0))) K tuples:none Defined Rule Symbols: a__zeros, a__U11_1, a__U21_1, a__U31_1, a__U41_2, a__U42_1, a__U51_2, a__U52_1, a__U61_3, a__U62_2, a__isNat_1, a__isNatIList_1, a__isNatList_1, a__length_1, mark_1 Defined Pair Symbols: MARK_1, A__U41_2, A__U51_2, A__ISNAT_1, A__ISNATILIST_1, A__U61_3, A__U62_2, A__ISNATLIST_1, A__LENGTH_1 Compound Symbols: c40_1, c43_1, c46_1, c48_1, c51_1, c8_1, c12_1, c21_1, c22_1, c24_1, c35_1, c36_1, c37_1, c39_1, c42_1, c16_1, c18_2, c18_1, c26_2, c26_1, c29_2, c29_1, c32_2, c32_1, c38_2, c38_1, c_1, c41_2, c41_1, c1_1, c44_2, c44_1, c45_2, c45_1, c47_2, c47_1, c16_2 ---------------------------------------- (115) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 2 trailing tuple parts ---------------------------------------- (116) Obligation: Complexity Dependency Tuples Problem Rules: a__zeros -> cons(0, zeros) a__zeros -> zeros a__U11(tt) -> tt a__U11(z0) -> U11(z0) a__U21(tt) -> tt a__U21(z0) -> U21(z0) a__U31(tt) -> tt a__U31(z0) -> U31(z0) a__U41(tt, z0) -> a__U42(a__isNatIList(z0)) a__U41(z0, z1) -> U41(z0, z1) a__U42(tt) -> tt a__U42(z0) -> U42(z0) a__U51(tt, z0) -> a__U52(a__isNatList(z0)) a__U51(z0, z1) -> U51(z0, z1) a__U52(tt) -> tt a__U52(z0) -> U52(z0) a__U61(tt, z0, z1) -> a__U62(a__isNat(z1), z0) a__U61(z0, z1, z2) -> U61(z0, z1, z2) a__U62(tt, z0) -> s(a__length(mark(z0))) a__U62(z0, z1) -> U62(z0, z1) a__isNat(0) -> tt a__isNat(length(z0)) -> a__U11(a__isNatList(z0)) a__isNat(s(z0)) -> a__U21(a__isNat(z0)) a__isNat(z0) -> isNat(z0) a__isNatIList(z0) -> a__U31(a__isNatList(z0)) a__isNatIList(zeros) -> tt a__isNatIList(cons(z0, z1)) -> a__U41(a__isNat(z0), z1) a__isNatIList(z0) -> isNatIList(z0) a__isNatList(nil) -> tt a__isNatList(cons(z0, z1)) -> a__U51(a__isNat(z0), z1) a__isNatList(z0) -> isNatList(z0) a__length(nil) -> 0 a__length(cons(z0, z1)) -> a__U61(a__isNatList(z1), z1, z0) a__length(z0) -> length(z0) mark(zeros) -> a__zeros mark(U11(z0)) -> a__U11(mark(z0)) mark(U21(z0)) -> a__U21(mark(z0)) mark(U31(z0)) -> a__U31(mark(z0)) mark(U41(z0, z1)) -> a__U41(mark(z0), z1) mark(U42(z0)) -> a__U42(mark(z0)) mark(isNatIList(z0)) -> a__isNatIList(z0) mark(U51(z0, z1)) -> a__U51(mark(z0), z1) mark(U52(z0)) -> a__U52(mark(z0)) mark(isNatList(z0)) -> a__isNatList(z0) mark(U61(z0, z1, z2)) -> a__U61(mark(z0), z1, z2) mark(U62(z0, z1)) -> a__U62(mark(z0), z1) mark(isNat(z0)) -> a__isNat(z0) mark(length(z0)) -> a__length(mark(z0)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(0) -> 0 mark(tt) -> tt mark(s(z0)) -> s(mark(z0)) mark(nil) -> nil Tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, U51(z0, z1)) -> c18(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) A__U62(tt, U52(z0)) -> c18(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) A__U62(tt, isNatList(z0)) -> c18(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) A__U62(tt, U61(z0, z1, z2)) -> c18(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) A__U62(tt, U62(z0, z1)) -> c18(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) S tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, U51(z0, z1)) -> c18(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) A__U62(tt, U52(z0)) -> c18(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) A__U62(tt, isNatList(z0)) -> c18(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) A__U62(tt, U61(z0, z1, z2)) -> c18(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) A__U62(tt, U62(z0, z1)) -> c18(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) K tuples:none Defined Rule Symbols: a__zeros, a__U11_1, a__U21_1, a__U31_1, a__U41_2, a__U42_1, a__U51_2, a__U52_1, a__U61_3, a__U62_2, a__isNat_1, a__isNatIList_1, a__isNatList_1, a__length_1, mark_1 Defined Pair Symbols: MARK_1, A__U41_2, A__U51_2, A__ISNAT_1, A__ISNATILIST_1, A__U61_3, A__U62_2, A__ISNATLIST_1, A__LENGTH_1 Compound Symbols: c40_1, c43_1, c46_1, c48_1, c51_1, c8_1, c12_1, c21_1, c22_1, c24_1, c35_1, c36_1, c37_1, c39_1, c42_1, c16_1, c18_2, c18_1, c26_2, c26_1, c29_2, c29_1, c32_2, c32_1, c38_2, c38_1, c_1, c41_2, c41_1, c1_1, c44_2, c44_1, c45_2, c45_1, c47_2, c47_1, c16_2 ---------------------------------------- (117) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace A__U62(tt, U51(z0, z1)) -> c18(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) by A__U62(tt, U51(x0, z1)) -> c18(A__LENGTH(U51(mark(x0), z1)), MARK(U51(x0, z1))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1)), MARK(U51(0, x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1)), MARK(U51(nil, x1))) ---------------------------------------- (118) Obligation: Complexity Dependency Tuples Problem Rules: a__zeros -> cons(0, zeros) a__zeros -> zeros a__U11(tt) -> tt a__U11(z0) -> U11(z0) a__U21(tt) -> tt a__U21(z0) -> U21(z0) a__U31(tt) -> tt a__U31(z0) -> U31(z0) a__U41(tt, z0) -> a__U42(a__isNatIList(z0)) a__U41(z0, z1) -> U41(z0, z1) a__U42(tt) -> tt a__U42(z0) -> U42(z0) a__U51(tt, z0) -> a__U52(a__isNatList(z0)) a__U51(z0, z1) -> U51(z0, z1) a__U52(tt) -> tt a__U52(z0) -> U52(z0) a__U61(tt, z0, z1) -> a__U62(a__isNat(z1), z0) a__U61(z0, z1, z2) -> U61(z0, z1, z2) a__U62(tt, z0) -> s(a__length(mark(z0))) a__U62(z0, z1) -> U62(z0, z1) a__isNat(0) -> tt a__isNat(length(z0)) -> a__U11(a__isNatList(z0)) a__isNat(s(z0)) -> a__U21(a__isNat(z0)) a__isNat(z0) -> isNat(z0) a__isNatIList(z0) -> a__U31(a__isNatList(z0)) a__isNatIList(zeros) -> tt a__isNatIList(cons(z0, z1)) -> a__U41(a__isNat(z0), z1) a__isNatIList(z0) -> isNatIList(z0) a__isNatList(nil) -> tt a__isNatList(cons(z0, z1)) -> a__U51(a__isNat(z0), z1) a__isNatList(z0) -> isNatList(z0) a__length(nil) -> 0 a__length(cons(z0, z1)) -> a__U61(a__isNatList(z1), z1, z0) a__length(z0) -> length(z0) mark(zeros) -> a__zeros mark(U11(z0)) -> a__U11(mark(z0)) mark(U21(z0)) -> a__U21(mark(z0)) mark(U31(z0)) -> a__U31(mark(z0)) mark(U41(z0, z1)) -> a__U41(mark(z0), z1) mark(U42(z0)) -> a__U42(mark(z0)) mark(isNatIList(z0)) -> a__isNatIList(z0) mark(U51(z0, z1)) -> a__U51(mark(z0), z1) mark(U52(z0)) -> a__U52(mark(z0)) mark(isNatList(z0)) -> a__isNatList(z0) mark(U61(z0, z1, z2)) -> a__U61(mark(z0), z1, z2) mark(U62(z0, z1)) -> a__U62(mark(z0), z1) mark(isNat(z0)) -> a__isNat(z0) mark(length(z0)) -> a__length(mark(z0)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(0) -> 0 mark(tt) -> tt mark(s(z0)) -> s(mark(z0)) mark(nil) -> nil Tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, U52(z0)) -> c18(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) A__U62(tt, isNatList(z0)) -> c18(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) A__U62(tt, U61(z0, z1, z2)) -> c18(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) A__U62(tt, U62(z0, z1)) -> c18(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(x0, z1)) -> c18(A__LENGTH(U51(mark(x0), z1)), MARK(U51(x0, z1))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1)), MARK(U51(0, x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1)), MARK(U51(nil, x1))) S tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, U52(z0)) -> c18(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) A__U62(tt, isNatList(z0)) -> c18(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) A__U62(tt, U61(z0, z1, z2)) -> c18(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) A__U62(tt, U62(z0, z1)) -> c18(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(x0, z1)) -> c18(A__LENGTH(U51(mark(x0), z1)), MARK(U51(x0, z1))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1)), MARK(U51(0, x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1)), MARK(U51(nil, x1))) K tuples:none Defined Rule Symbols: a__zeros, a__U11_1, a__U21_1, a__U31_1, a__U41_2, a__U42_1, a__U51_2, a__U52_1, a__U61_3, a__U62_2, a__isNat_1, a__isNatIList_1, a__isNatList_1, a__length_1, mark_1 Defined Pair Symbols: MARK_1, A__U41_2, A__U51_2, A__ISNAT_1, A__ISNATILIST_1, A__U61_3, A__U62_2, A__ISNATLIST_1, A__LENGTH_1 Compound Symbols: c40_1, c43_1, c46_1, c48_1, c51_1, c8_1, c12_1, c21_1, c22_1, c24_1, c35_1, c36_1, c37_1, c39_1, c42_1, c16_1, c18_2, c18_1, c26_2, c26_1, c29_2, c29_1, c32_2, c32_1, c38_2, c38_1, c_1, c41_2, c41_1, c1_1, c44_2, c44_1, c45_2, c45_1, c47_2, c47_1, c16_2 ---------------------------------------- (119) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 3 trailing tuple parts ---------------------------------------- (120) Obligation: Complexity Dependency Tuples Problem Rules: a__zeros -> cons(0, zeros) a__zeros -> zeros a__U11(tt) -> tt a__U11(z0) -> U11(z0) a__U21(tt) -> tt a__U21(z0) -> U21(z0) a__U31(tt) -> tt a__U31(z0) -> U31(z0) a__U41(tt, z0) -> a__U42(a__isNatIList(z0)) a__U41(z0, z1) -> U41(z0, z1) a__U42(tt) -> tt a__U42(z0) -> U42(z0) a__U51(tt, z0) -> a__U52(a__isNatList(z0)) a__U51(z0, z1) -> U51(z0, z1) a__U52(tt) -> tt a__U52(z0) -> U52(z0) a__U61(tt, z0, z1) -> a__U62(a__isNat(z1), z0) a__U61(z0, z1, z2) -> U61(z0, z1, z2) a__U62(tt, z0) -> s(a__length(mark(z0))) a__U62(z0, z1) -> U62(z0, z1) a__isNat(0) -> tt a__isNat(length(z0)) -> a__U11(a__isNatList(z0)) a__isNat(s(z0)) -> a__U21(a__isNat(z0)) a__isNat(z0) -> isNat(z0) a__isNatIList(z0) -> a__U31(a__isNatList(z0)) a__isNatIList(zeros) -> tt a__isNatIList(cons(z0, z1)) -> a__U41(a__isNat(z0), z1) a__isNatIList(z0) -> isNatIList(z0) a__isNatList(nil) -> tt a__isNatList(cons(z0, z1)) -> a__U51(a__isNat(z0), z1) a__isNatList(z0) -> isNatList(z0) a__length(nil) -> 0 a__length(cons(z0, z1)) -> a__U61(a__isNatList(z1), z1, z0) a__length(z0) -> length(z0) mark(zeros) -> a__zeros mark(U11(z0)) -> a__U11(mark(z0)) mark(U21(z0)) -> a__U21(mark(z0)) mark(U31(z0)) -> a__U31(mark(z0)) mark(U41(z0, z1)) -> a__U41(mark(z0), z1) mark(U42(z0)) -> a__U42(mark(z0)) mark(isNatIList(z0)) -> a__isNatIList(z0) mark(U51(z0, z1)) -> a__U51(mark(z0), z1) mark(U52(z0)) -> a__U52(mark(z0)) mark(isNatList(z0)) -> a__isNatList(z0) mark(U61(z0, z1, z2)) -> a__U61(mark(z0), z1, z2) mark(U62(z0, z1)) -> a__U62(mark(z0), z1) mark(isNat(z0)) -> a__isNat(z0) mark(length(z0)) -> a__length(mark(z0)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(0) -> 0 mark(tt) -> tt mark(s(z0)) -> s(mark(z0)) mark(nil) -> nil Tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, U52(z0)) -> c18(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) A__U62(tt, isNatList(z0)) -> c18(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) A__U62(tt, U61(z0, z1, z2)) -> c18(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) A__U62(tt, U62(z0, z1)) -> c18(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) S tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, U52(z0)) -> c18(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) A__U62(tt, isNatList(z0)) -> c18(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) A__U62(tt, U61(z0, z1, z2)) -> c18(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) A__U62(tt, U62(z0, z1)) -> c18(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) K tuples:none Defined Rule Symbols: a__zeros, a__U11_1, a__U21_1, a__U31_1, a__U41_2, a__U42_1, a__U51_2, a__U52_1, a__U61_3, a__U62_2, a__isNat_1, a__isNatIList_1, a__isNatList_1, a__length_1, mark_1 Defined Pair Symbols: MARK_1, A__U41_2, A__U51_2, A__ISNAT_1, A__ISNATILIST_1, A__U61_3, A__U62_2, A__ISNATLIST_1, A__LENGTH_1 Compound Symbols: c40_1, c43_1, c46_1, c48_1, c51_1, c8_1, c12_1, c21_1, c22_1, c24_1, c35_1, c36_1, c37_1, c39_1, c42_1, c16_1, c18_2, c18_1, c26_2, c26_1, c29_2, c29_1, c32_2, c32_1, c38_2, c38_1, c_1, c41_2, c41_1, c1_1, c44_2, c44_1, c45_2, c45_1, c47_2, c47_1, c16_2 ---------------------------------------- (121) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace A__U62(tt, U52(z0)) -> c18(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) by A__U62(tt, U52(x0)) -> c18(A__LENGTH(U52(mark(x0))), MARK(U52(x0))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) ---------------------------------------- (122) Obligation: Complexity Dependency Tuples Problem Rules: a__zeros -> cons(0, zeros) a__zeros -> zeros a__U11(tt) -> tt a__U11(z0) -> U11(z0) a__U21(tt) -> tt a__U21(z0) -> U21(z0) a__U31(tt) -> tt a__U31(z0) -> U31(z0) a__U41(tt, z0) -> a__U42(a__isNatIList(z0)) a__U41(z0, z1) -> U41(z0, z1) a__U42(tt) -> tt a__U42(z0) -> U42(z0) a__U51(tt, z0) -> a__U52(a__isNatList(z0)) a__U51(z0, z1) -> U51(z0, z1) a__U52(tt) -> tt a__U52(z0) -> U52(z0) a__U61(tt, z0, z1) -> a__U62(a__isNat(z1), z0) a__U61(z0, z1, z2) -> U61(z0, z1, z2) a__U62(tt, z0) -> s(a__length(mark(z0))) a__U62(z0, z1) -> U62(z0, z1) a__isNat(0) -> tt a__isNat(length(z0)) -> a__U11(a__isNatList(z0)) a__isNat(s(z0)) -> a__U21(a__isNat(z0)) a__isNat(z0) -> isNat(z0) a__isNatIList(z0) -> a__U31(a__isNatList(z0)) a__isNatIList(zeros) -> tt a__isNatIList(cons(z0, z1)) -> a__U41(a__isNat(z0), z1) a__isNatIList(z0) -> isNatIList(z0) a__isNatList(nil) -> tt a__isNatList(cons(z0, z1)) -> a__U51(a__isNat(z0), z1) a__isNatList(z0) -> isNatList(z0) a__length(nil) -> 0 a__length(cons(z0, z1)) -> a__U61(a__isNatList(z1), z1, z0) a__length(z0) -> length(z0) mark(zeros) -> a__zeros mark(U11(z0)) -> a__U11(mark(z0)) mark(U21(z0)) -> a__U21(mark(z0)) mark(U31(z0)) -> a__U31(mark(z0)) mark(U41(z0, z1)) -> a__U41(mark(z0), z1) mark(U42(z0)) -> a__U42(mark(z0)) mark(isNatIList(z0)) -> a__isNatIList(z0) mark(U51(z0, z1)) -> a__U51(mark(z0), z1) mark(U52(z0)) -> a__U52(mark(z0)) mark(isNatList(z0)) -> a__isNatList(z0) mark(U61(z0, z1, z2)) -> a__U61(mark(z0), z1, z2) mark(U62(z0, z1)) -> a__U62(mark(z0), z1) mark(isNat(z0)) -> a__isNat(z0) mark(length(z0)) -> a__length(mark(z0)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(0) -> 0 mark(tt) -> tt mark(s(z0)) -> s(mark(z0)) mark(nil) -> nil Tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, isNatList(z0)) -> c18(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) A__U62(tt, U61(z0, z1, z2)) -> c18(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) A__U62(tt, U62(z0, z1)) -> c18(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(x0)) -> c18(A__LENGTH(U52(mark(x0))), MARK(U52(x0))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) S tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, isNatList(z0)) -> c18(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) A__U62(tt, U61(z0, z1, z2)) -> c18(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) A__U62(tt, U62(z0, z1)) -> c18(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(x0)) -> c18(A__LENGTH(U52(mark(x0))), MARK(U52(x0))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) K tuples:none Defined Rule Symbols: a__zeros, a__U11_1, a__U21_1, a__U31_1, a__U41_2, a__U42_1, a__U51_2, a__U52_1, a__U61_3, a__U62_2, a__isNat_1, a__isNatIList_1, a__isNatList_1, a__length_1, mark_1 Defined Pair Symbols: MARK_1, A__U41_2, A__U51_2, A__ISNAT_1, A__ISNATILIST_1, A__U61_3, A__U62_2, A__ISNATLIST_1, A__LENGTH_1 Compound Symbols: c40_1, c43_1, c46_1, c48_1, c51_1, c8_1, c12_1, c21_1, c22_1, c24_1, c35_1, c36_1, c37_1, c39_1, c42_1, c16_1, c18_2, c18_1, c26_2, c26_1, c29_2, c29_1, c32_2, c32_1, c38_2, c38_1, c_1, c41_2, c41_1, c1_1, c44_2, c44_1, c45_2, c45_1, c47_2, c47_1, c16_2 ---------------------------------------- (123) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 1 trailing tuple parts ---------------------------------------- (124) Obligation: Complexity Dependency Tuples Problem Rules: a__zeros -> cons(0, zeros) a__zeros -> zeros a__U11(tt) -> tt a__U11(z0) -> U11(z0) a__U21(tt) -> tt a__U21(z0) -> U21(z0) a__U31(tt) -> tt a__U31(z0) -> U31(z0) a__U41(tt, z0) -> a__U42(a__isNatIList(z0)) a__U41(z0, z1) -> U41(z0, z1) a__U42(tt) -> tt a__U42(z0) -> U42(z0) a__U51(tt, z0) -> a__U52(a__isNatList(z0)) a__U51(z0, z1) -> U51(z0, z1) a__U52(tt) -> tt a__U52(z0) -> U52(z0) a__U61(tt, z0, z1) -> a__U62(a__isNat(z1), z0) a__U61(z0, z1, z2) -> U61(z0, z1, z2) a__U62(tt, z0) -> s(a__length(mark(z0))) a__U62(z0, z1) -> U62(z0, z1) a__isNat(0) -> tt a__isNat(length(z0)) -> a__U11(a__isNatList(z0)) a__isNat(s(z0)) -> a__U21(a__isNat(z0)) a__isNat(z0) -> isNat(z0) a__isNatIList(z0) -> a__U31(a__isNatList(z0)) a__isNatIList(zeros) -> tt a__isNatIList(cons(z0, z1)) -> a__U41(a__isNat(z0), z1) a__isNatIList(z0) -> isNatIList(z0) a__isNatList(nil) -> tt a__isNatList(cons(z0, z1)) -> a__U51(a__isNat(z0), z1) a__isNatList(z0) -> isNatList(z0) a__length(nil) -> 0 a__length(cons(z0, z1)) -> a__U61(a__isNatList(z1), z1, z0) a__length(z0) -> length(z0) mark(zeros) -> a__zeros mark(U11(z0)) -> a__U11(mark(z0)) mark(U21(z0)) -> a__U21(mark(z0)) mark(U31(z0)) -> a__U31(mark(z0)) mark(U41(z0, z1)) -> a__U41(mark(z0), z1) mark(U42(z0)) -> a__U42(mark(z0)) mark(isNatIList(z0)) -> a__isNatIList(z0) mark(U51(z0, z1)) -> a__U51(mark(z0), z1) mark(U52(z0)) -> a__U52(mark(z0)) mark(isNatList(z0)) -> a__isNatList(z0) mark(U61(z0, z1, z2)) -> a__U61(mark(z0), z1, z2) mark(U62(z0, z1)) -> a__U62(mark(z0), z1) mark(isNat(z0)) -> a__isNat(z0) mark(length(z0)) -> a__length(mark(z0)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(0) -> 0 mark(tt) -> tt mark(s(z0)) -> s(mark(z0)) mark(nil) -> nil Tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, isNatList(z0)) -> c18(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) A__U62(tt, U61(z0, z1, z2)) -> c18(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) A__U62(tt, U62(z0, z1)) -> c18(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) S tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, isNatList(z0)) -> c18(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) A__U62(tt, U61(z0, z1, z2)) -> c18(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) A__U62(tt, U62(z0, z1)) -> c18(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) K tuples:none Defined Rule Symbols: a__zeros, a__U11_1, a__U21_1, a__U31_1, a__U41_2, a__U42_1, a__U51_2, a__U52_1, a__U61_3, a__U62_2, a__isNat_1, a__isNatIList_1, a__isNatList_1, a__length_1, mark_1 Defined Pair Symbols: MARK_1, A__U41_2, A__U51_2, A__ISNAT_1, A__ISNATILIST_1, A__U61_3, A__U62_2, A__ISNATLIST_1, A__LENGTH_1 Compound Symbols: c40_1, c43_1, c46_1, c48_1, c51_1, c8_1, c12_1, c21_1, c22_1, c24_1, c35_1, c36_1, c37_1, c39_1, c42_1, c16_1, c18_2, c18_1, c26_2, c26_1, c29_2, c29_1, c32_2, c32_1, c38_2, c38_1, c_1, c41_2, c41_1, c1_1, c44_2, c44_1, c45_2, c45_1, c47_2, c47_1, c16_2 ---------------------------------------- (125) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace A__U62(tt, isNatList(z0)) -> c18(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) by A__U62(tt, isNatList(nil)) -> c18(A__LENGTH(tt), MARK(isNatList(nil))) A__U62(tt, isNatList(cons(z0, z1))) -> c18(A__LENGTH(a__U51(a__isNat(z0), z1)), MARK(isNatList(cons(z0, z1)))) A__U62(tt, isNatList(z0)) -> c18(A__LENGTH(isNatList(z0)), MARK(isNatList(z0))) ---------------------------------------- (126) Obligation: Complexity Dependency Tuples Problem Rules: a__zeros -> cons(0, zeros) a__zeros -> zeros a__U11(tt) -> tt a__U11(z0) -> U11(z0) a__U21(tt) -> tt a__U21(z0) -> U21(z0) a__U31(tt) -> tt a__U31(z0) -> U31(z0) a__U41(tt, z0) -> a__U42(a__isNatIList(z0)) a__U41(z0, z1) -> U41(z0, z1) a__U42(tt) -> tt a__U42(z0) -> U42(z0) a__U51(tt, z0) -> a__U52(a__isNatList(z0)) a__U51(z0, z1) -> U51(z0, z1) a__U52(tt) -> tt a__U52(z0) -> U52(z0) a__U61(tt, z0, z1) -> a__U62(a__isNat(z1), z0) a__U61(z0, z1, z2) -> U61(z0, z1, z2) a__U62(tt, z0) -> s(a__length(mark(z0))) a__U62(z0, z1) -> U62(z0, z1) a__isNat(0) -> tt a__isNat(length(z0)) -> a__U11(a__isNatList(z0)) a__isNat(s(z0)) -> a__U21(a__isNat(z0)) a__isNat(z0) -> isNat(z0) a__isNatIList(z0) -> a__U31(a__isNatList(z0)) a__isNatIList(zeros) -> tt a__isNatIList(cons(z0, z1)) -> a__U41(a__isNat(z0), z1) a__isNatIList(z0) -> isNatIList(z0) a__isNatList(nil) -> tt a__isNatList(cons(z0, z1)) -> a__U51(a__isNat(z0), z1) a__isNatList(z0) -> isNatList(z0) a__length(nil) -> 0 a__length(cons(z0, z1)) -> a__U61(a__isNatList(z1), z1, z0) a__length(z0) -> length(z0) mark(zeros) -> a__zeros mark(U11(z0)) -> a__U11(mark(z0)) mark(U21(z0)) -> a__U21(mark(z0)) mark(U31(z0)) -> a__U31(mark(z0)) mark(U41(z0, z1)) -> a__U41(mark(z0), z1) mark(U42(z0)) -> a__U42(mark(z0)) mark(isNatIList(z0)) -> a__isNatIList(z0) mark(U51(z0, z1)) -> a__U51(mark(z0), z1) mark(U52(z0)) -> a__U52(mark(z0)) mark(isNatList(z0)) -> a__isNatList(z0) mark(U61(z0, z1, z2)) -> a__U61(mark(z0), z1, z2) mark(U62(z0, z1)) -> a__U62(mark(z0), z1) mark(isNat(z0)) -> a__isNat(z0) mark(length(z0)) -> a__length(mark(z0)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(0) -> 0 mark(tt) -> tt mark(s(z0)) -> s(mark(z0)) mark(nil) -> nil Tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, U61(z0, z1, z2)) -> c18(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) A__U62(tt, U62(z0, z1)) -> c18(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) A__U62(tt, isNatList(nil)) -> c18(A__LENGTH(tt), MARK(isNatList(nil))) A__U62(tt, isNatList(cons(z0, z1))) -> c18(A__LENGTH(a__U51(a__isNat(z0), z1)), MARK(isNatList(cons(z0, z1)))) A__U62(tt, isNatList(z0)) -> c18(A__LENGTH(isNatList(z0)), MARK(isNatList(z0))) S tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, U61(z0, z1, z2)) -> c18(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) A__U62(tt, U62(z0, z1)) -> c18(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) A__U62(tt, isNatList(nil)) -> c18(A__LENGTH(tt), MARK(isNatList(nil))) A__U62(tt, isNatList(cons(z0, z1))) -> c18(A__LENGTH(a__U51(a__isNat(z0), z1)), MARK(isNatList(cons(z0, z1)))) A__U62(tt, isNatList(z0)) -> c18(A__LENGTH(isNatList(z0)), MARK(isNatList(z0))) K tuples:none Defined Rule Symbols: a__zeros, a__U11_1, a__U21_1, a__U31_1, a__U41_2, a__U42_1, a__U51_2, a__U52_1, a__U61_3, a__U62_2, a__isNat_1, a__isNatIList_1, a__isNatList_1, a__length_1, mark_1 Defined Pair Symbols: MARK_1, A__U41_2, A__U51_2, A__ISNAT_1, A__ISNATILIST_1, A__U61_3, A__U62_2, A__ISNATLIST_1, A__LENGTH_1 Compound Symbols: c40_1, c43_1, c46_1, c48_1, c51_1, c8_1, c12_1, c21_1, c22_1, c24_1, c35_1, c36_1, c37_1, c39_1, c42_1, c16_1, c18_2, c18_1, c26_2, c26_1, c29_2, c29_1, c32_2, c32_1, c38_2, c38_1, c_1, c41_2, c41_1, c1_1, c44_2, c44_1, c45_2, c45_1, c47_2, c47_1, c16_2 ---------------------------------------- (127) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 2 trailing tuple parts ---------------------------------------- (128) Obligation: Complexity Dependency Tuples Problem Rules: a__zeros -> cons(0, zeros) a__zeros -> zeros a__U11(tt) -> tt a__U11(z0) -> U11(z0) a__U21(tt) -> tt a__U21(z0) -> U21(z0) a__U31(tt) -> tt a__U31(z0) -> U31(z0) a__U41(tt, z0) -> a__U42(a__isNatIList(z0)) a__U41(z0, z1) -> U41(z0, z1) a__U42(tt) -> tt a__U42(z0) -> U42(z0) a__U51(tt, z0) -> a__U52(a__isNatList(z0)) a__U51(z0, z1) -> U51(z0, z1) a__U52(tt) -> tt a__U52(z0) -> U52(z0) a__U61(tt, z0, z1) -> a__U62(a__isNat(z1), z0) a__U61(z0, z1, z2) -> U61(z0, z1, z2) a__U62(tt, z0) -> s(a__length(mark(z0))) a__U62(z0, z1) -> U62(z0, z1) a__isNat(0) -> tt a__isNat(length(z0)) -> a__U11(a__isNatList(z0)) a__isNat(s(z0)) -> a__U21(a__isNat(z0)) a__isNat(z0) -> isNat(z0) a__isNatIList(z0) -> a__U31(a__isNatList(z0)) a__isNatIList(zeros) -> tt a__isNatIList(cons(z0, z1)) -> a__U41(a__isNat(z0), z1) a__isNatIList(z0) -> isNatIList(z0) a__isNatList(nil) -> tt a__isNatList(cons(z0, z1)) -> a__U51(a__isNat(z0), z1) a__isNatList(z0) -> isNatList(z0) a__length(nil) -> 0 a__length(cons(z0, z1)) -> a__U61(a__isNatList(z1), z1, z0) a__length(z0) -> length(z0) mark(zeros) -> a__zeros mark(U11(z0)) -> a__U11(mark(z0)) mark(U21(z0)) -> a__U21(mark(z0)) mark(U31(z0)) -> a__U31(mark(z0)) mark(U41(z0, z1)) -> a__U41(mark(z0), z1) mark(U42(z0)) -> a__U42(mark(z0)) mark(isNatIList(z0)) -> a__isNatIList(z0) mark(U51(z0, z1)) -> a__U51(mark(z0), z1) mark(U52(z0)) -> a__U52(mark(z0)) mark(isNatList(z0)) -> a__isNatList(z0) mark(U61(z0, z1, z2)) -> a__U61(mark(z0), z1, z2) mark(U62(z0, z1)) -> a__U62(mark(z0), z1) mark(isNat(z0)) -> a__isNat(z0) mark(length(z0)) -> a__length(mark(z0)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(0) -> 0 mark(tt) -> tt mark(s(z0)) -> s(mark(z0)) mark(nil) -> nil Tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, U61(z0, z1, z2)) -> c18(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) A__U62(tt, U62(z0, z1)) -> c18(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) A__U62(tt, isNatList(cons(z0, z1))) -> c18(A__LENGTH(a__U51(a__isNat(z0), z1)), MARK(isNatList(cons(z0, z1)))) A__U62(tt, isNatList(nil)) -> c18(MARK(isNatList(nil))) A__U62(tt, isNatList(z0)) -> c18(MARK(isNatList(z0))) S tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, U61(z0, z1, z2)) -> c18(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) A__U62(tt, U62(z0, z1)) -> c18(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) A__U62(tt, isNatList(cons(z0, z1))) -> c18(A__LENGTH(a__U51(a__isNat(z0), z1)), MARK(isNatList(cons(z0, z1)))) A__U62(tt, isNatList(nil)) -> c18(MARK(isNatList(nil))) A__U62(tt, isNatList(z0)) -> c18(MARK(isNatList(z0))) K tuples:none Defined Rule Symbols: a__zeros, a__U11_1, a__U21_1, a__U31_1, a__U41_2, a__U42_1, a__U51_2, a__U52_1, a__U61_3, a__U62_2, a__isNat_1, a__isNatIList_1, a__isNatList_1, a__length_1, mark_1 Defined Pair Symbols: MARK_1, A__U41_2, A__U51_2, A__ISNAT_1, A__ISNATILIST_1, A__U61_3, A__U62_2, A__ISNATLIST_1, A__LENGTH_1 Compound Symbols: c40_1, c43_1, c46_1, c48_1, c51_1, c8_1, c12_1, c21_1, c22_1, c24_1, c35_1, c36_1, c37_1, c39_1, c42_1, c16_1, c18_2, c18_1, c26_2, c26_1, c29_2, c29_1, c32_2, c32_1, c38_2, c38_1, c_1, c41_2, c41_1, c1_1, c44_2, c44_1, c45_2, c45_1, c47_2, c47_1, c16_2 ---------------------------------------- (129) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace A__U62(tt, U61(z0, z1, z2)) -> c18(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) by A__U62(tt, U61(x0, z1, z2)) -> c18(A__LENGTH(U61(mark(x0), z1, z2)), MARK(U61(x0, z1, z2))) A__U62(tt, U61(zeros, x1, x2)) -> c18(A__LENGTH(a__U61(a__zeros, x1, x2)), MARK(U61(zeros, x1, x2))) A__U62(tt, U61(U11(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U11(mark(z0)), x1, x2)), MARK(U61(U11(z0), x1, x2))) A__U62(tt, U61(U21(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U21(mark(z0)), x1, x2)), MARK(U61(U21(z0), x1, x2))) A__U62(tt, U61(U31(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U31(mark(z0)), x1, x2)), MARK(U61(U31(z0), x1, x2))) A__U62(tt, U61(U41(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U41(mark(z0), z1), x1, x2)), MARK(U61(U41(z0, z1), x1, x2))) A__U62(tt, U61(U42(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U42(mark(z0)), x1, x2)), MARK(U61(U42(z0), x1, x2))) A__U62(tt, U61(isNatIList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatIList(z0), x1, x2)), MARK(U61(isNatIList(z0), x1, x2))) A__U62(tt, U61(U51(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U51(mark(z0), z1), x1, x2)), MARK(U61(U51(z0, z1), x1, x2))) A__U62(tt, U61(U52(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U52(mark(z0)), x1, x2)), MARK(U61(U52(z0), x1, x2))) A__U62(tt, U61(isNatList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatList(z0), x1, x2)), MARK(U61(isNatList(z0), x1, x2))) A__U62(tt, U61(U61(z0, z1, z2), x1, x2)) -> c18(A__LENGTH(a__U61(a__U61(mark(z0), z1, z2), x1, x2)), MARK(U61(U61(z0, z1, z2), x1, x2))) A__U62(tt, U61(U62(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U62(mark(z0), z1), x1, x2)), MARK(U61(U62(z0, z1), x1, x2))) A__U62(tt, U61(isNat(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNat(z0), x1, x2)), MARK(U61(isNat(z0), x1, x2))) A__U62(tt, U61(length(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__length(mark(z0)), x1, x2)), MARK(U61(length(z0), x1, x2))) A__U62(tt, U61(cons(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(cons(mark(z0), z1), x1, x2)), MARK(U61(cons(z0, z1), x1, x2))) A__U62(tt, U61(0, x1, x2)) -> c18(A__LENGTH(a__U61(0, x1, x2)), MARK(U61(0, x1, x2))) A__U62(tt, U61(tt, x1, x2)) -> c18(A__LENGTH(a__U61(tt, x1, x2)), MARK(U61(tt, x1, x2))) A__U62(tt, U61(s(z0), x1, x2)) -> c18(A__LENGTH(a__U61(s(mark(z0)), x1, x2)), MARK(U61(s(z0), x1, x2))) A__U62(tt, U61(nil, x1, x2)) -> c18(A__LENGTH(a__U61(nil, x1, x2)), MARK(U61(nil, x1, x2))) ---------------------------------------- (130) Obligation: Complexity Dependency Tuples Problem Rules: a__zeros -> cons(0, zeros) a__zeros -> zeros a__U11(tt) -> tt a__U11(z0) -> U11(z0) a__U21(tt) -> tt a__U21(z0) -> U21(z0) a__U31(tt) -> tt a__U31(z0) -> U31(z0) a__U41(tt, z0) -> a__U42(a__isNatIList(z0)) a__U41(z0, z1) -> U41(z0, z1) a__U42(tt) -> tt a__U42(z0) -> U42(z0) a__U51(tt, z0) -> a__U52(a__isNatList(z0)) a__U51(z0, z1) -> U51(z0, z1) a__U52(tt) -> tt a__U52(z0) -> U52(z0) a__U61(tt, z0, z1) -> a__U62(a__isNat(z1), z0) a__U61(z0, z1, z2) -> U61(z0, z1, z2) a__U62(tt, z0) -> s(a__length(mark(z0))) a__U62(z0, z1) -> U62(z0, z1) a__isNat(0) -> tt a__isNat(length(z0)) -> a__U11(a__isNatList(z0)) a__isNat(s(z0)) -> a__U21(a__isNat(z0)) a__isNat(z0) -> isNat(z0) a__isNatIList(z0) -> a__U31(a__isNatList(z0)) a__isNatIList(zeros) -> tt a__isNatIList(cons(z0, z1)) -> a__U41(a__isNat(z0), z1) a__isNatIList(z0) -> isNatIList(z0) a__isNatList(nil) -> tt a__isNatList(cons(z0, z1)) -> a__U51(a__isNat(z0), z1) a__isNatList(z0) -> isNatList(z0) a__length(nil) -> 0 a__length(cons(z0, z1)) -> a__U61(a__isNatList(z1), z1, z0) a__length(z0) -> length(z0) mark(zeros) -> a__zeros mark(U11(z0)) -> a__U11(mark(z0)) mark(U21(z0)) -> a__U21(mark(z0)) mark(U31(z0)) -> a__U31(mark(z0)) mark(U41(z0, z1)) -> a__U41(mark(z0), z1) mark(U42(z0)) -> a__U42(mark(z0)) mark(isNatIList(z0)) -> a__isNatIList(z0) mark(U51(z0, z1)) -> a__U51(mark(z0), z1) mark(U52(z0)) -> a__U52(mark(z0)) mark(isNatList(z0)) -> a__isNatList(z0) mark(U61(z0, z1, z2)) -> a__U61(mark(z0), z1, z2) mark(U62(z0, z1)) -> a__U62(mark(z0), z1) mark(isNat(z0)) -> a__isNat(z0) mark(length(z0)) -> a__length(mark(z0)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(0) -> 0 mark(tt) -> tt mark(s(z0)) -> s(mark(z0)) mark(nil) -> nil Tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, U62(z0, z1)) -> c18(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) A__U62(tt, isNatList(cons(z0, z1))) -> c18(A__LENGTH(a__U51(a__isNat(z0), z1)), MARK(isNatList(cons(z0, z1)))) A__U62(tt, isNatList(nil)) -> c18(MARK(isNatList(nil))) A__U62(tt, isNatList(z0)) -> c18(MARK(isNatList(z0))) A__U62(tt, U61(x0, z1, z2)) -> c18(A__LENGTH(U61(mark(x0), z1, z2)), MARK(U61(x0, z1, z2))) A__U62(tt, U61(zeros, x1, x2)) -> c18(A__LENGTH(a__U61(a__zeros, x1, x2)), MARK(U61(zeros, x1, x2))) A__U62(tt, U61(U11(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U11(mark(z0)), x1, x2)), MARK(U61(U11(z0), x1, x2))) A__U62(tt, U61(U21(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U21(mark(z0)), x1, x2)), MARK(U61(U21(z0), x1, x2))) A__U62(tt, U61(U31(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U31(mark(z0)), x1, x2)), MARK(U61(U31(z0), x1, x2))) A__U62(tt, U61(U41(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U41(mark(z0), z1), x1, x2)), MARK(U61(U41(z0, z1), x1, x2))) A__U62(tt, U61(U42(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U42(mark(z0)), x1, x2)), MARK(U61(U42(z0), x1, x2))) A__U62(tt, U61(isNatIList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatIList(z0), x1, x2)), MARK(U61(isNatIList(z0), x1, x2))) A__U62(tt, U61(U51(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U51(mark(z0), z1), x1, x2)), MARK(U61(U51(z0, z1), x1, x2))) A__U62(tt, U61(U52(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U52(mark(z0)), x1, x2)), MARK(U61(U52(z0), x1, x2))) A__U62(tt, U61(isNatList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatList(z0), x1, x2)), MARK(U61(isNatList(z0), x1, x2))) A__U62(tt, U61(U61(z0, z1, z2), x1, x2)) -> c18(A__LENGTH(a__U61(a__U61(mark(z0), z1, z2), x1, x2)), MARK(U61(U61(z0, z1, z2), x1, x2))) A__U62(tt, U61(U62(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U62(mark(z0), z1), x1, x2)), MARK(U61(U62(z0, z1), x1, x2))) A__U62(tt, U61(isNat(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNat(z0), x1, x2)), MARK(U61(isNat(z0), x1, x2))) A__U62(tt, U61(length(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__length(mark(z0)), x1, x2)), MARK(U61(length(z0), x1, x2))) A__U62(tt, U61(cons(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(cons(mark(z0), z1), x1, x2)), MARK(U61(cons(z0, z1), x1, x2))) A__U62(tt, U61(0, x1, x2)) -> c18(A__LENGTH(a__U61(0, x1, x2)), MARK(U61(0, x1, x2))) A__U62(tt, U61(tt, x1, x2)) -> c18(A__LENGTH(a__U61(tt, x1, x2)), MARK(U61(tt, x1, x2))) A__U62(tt, U61(s(z0), x1, x2)) -> c18(A__LENGTH(a__U61(s(mark(z0)), x1, x2)), MARK(U61(s(z0), x1, x2))) A__U62(tt, U61(nil, x1, x2)) -> c18(A__LENGTH(a__U61(nil, x1, x2)), MARK(U61(nil, x1, x2))) S tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, U62(z0, z1)) -> c18(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) A__U62(tt, isNatList(cons(z0, z1))) -> c18(A__LENGTH(a__U51(a__isNat(z0), z1)), MARK(isNatList(cons(z0, z1)))) A__U62(tt, isNatList(nil)) -> c18(MARK(isNatList(nil))) A__U62(tt, isNatList(z0)) -> c18(MARK(isNatList(z0))) A__U62(tt, U61(x0, z1, z2)) -> c18(A__LENGTH(U61(mark(x0), z1, z2)), MARK(U61(x0, z1, z2))) A__U62(tt, U61(zeros, x1, x2)) -> c18(A__LENGTH(a__U61(a__zeros, x1, x2)), MARK(U61(zeros, x1, x2))) A__U62(tt, U61(U11(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U11(mark(z0)), x1, x2)), MARK(U61(U11(z0), x1, x2))) A__U62(tt, U61(U21(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U21(mark(z0)), x1, x2)), MARK(U61(U21(z0), x1, x2))) A__U62(tt, U61(U31(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U31(mark(z0)), x1, x2)), MARK(U61(U31(z0), x1, x2))) A__U62(tt, U61(U41(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U41(mark(z0), z1), x1, x2)), MARK(U61(U41(z0, z1), x1, x2))) A__U62(tt, U61(U42(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U42(mark(z0)), x1, x2)), MARK(U61(U42(z0), x1, x2))) A__U62(tt, U61(isNatIList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatIList(z0), x1, x2)), MARK(U61(isNatIList(z0), x1, x2))) A__U62(tt, U61(U51(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U51(mark(z0), z1), x1, x2)), MARK(U61(U51(z0, z1), x1, x2))) A__U62(tt, U61(U52(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U52(mark(z0)), x1, x2)), MARK(U61(U52(z0), x1, x2))) A__U62(tt, U61(isNatList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatList(z0), x1, x2)), MARK(U61(isNatList(z0), x1, x2))) A__U62(tt, U61(U61(z0, z1, z2), x1, x2)) -> c18(A__LENGTH(a__U61(a__U61(mark(z0), z1, z2), x1, x2)), MARK(U61(U61(z0, z1, z2), x1, x2))) A__U62(tt, U61(U62(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U62(mark(z0), z1), x1, x2)), MARK(U61(U62(z0, z1), x1, x2))) A__U62(tt, U61(isNat(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNat(z0), x1, x2)), MARK(U61(isNat(z0), x1, x2))) A__U62(tt, U61(length(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__length(mark(z0)), x1, x2)), MARK(U61(length(z0), x1, x2))) A__U62(tt, U61(cons(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(cons(mark(z0), z1), x1, x2)), MARK(U61(cons(z0, z1), x1, x2))) A__U62(tt, U61(0, x1, x2)) -> c18(A__LENGTH(a__U61(0, x1, x2)), MARK(U61(0, x1, x2))) A__U62(tt, U61(tt, x1, x2)) -> c18(A__LENGTH(a__U61(tt, x1, x2)), MARK(U61(tt, x1, x2))) A__U62(tt, U61(s(z0), x1, x2)) -> c18(A__LENGTH(a__U61(s(mark(z0)), x1, x2)), MARK(U61(s(z0), x1, x2))) A__U62(tt, U61(nil, x1, x2)) -> c18(A__LENGTH(a__U61(nil, x1, x2)), MARK(U61(nil, x1, x2))) K tuples:none Defined Rule Symbols: a__zeros, a__U11_1, a__U21_1, a__U31_1, a__U41_2, a__U42_1, a__U51_2, a__U52_1, a__U61_3, a__U62_2, a__isNat_1, a__isNatIList_1, a__isNatList_1, a__length_1, mark_1 Defined Pair Symbols: MARK_1, A__U41_2, A__U51_2, A__ISNAT_1, A__ISNATILIST_1, A__U61_3, A__U62_2, A__ISNATLIST_1, A__LENGTH_1 Compound Symbols: c40_1, c43_1, c46_1, c48_1, c51_1, c8_1, c12_1, c21_1, c22_1, c24_1, c35_1, c36_1, c37_1, c39_1, c42_1, c16_1, c18_2, c18_1, c26_2, c26_1, c29_2, c29_1, c32_2, c32_1, c38_2, c38_1, c_1, c41_2, c41_1, c1_1, c44_2, c44_1, c45_2, c45_1, c47_2, c47_1, c16_2 ---------------------------------------- (131) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 3 trailing tuple parts ---------------------------------------- (132) Obligation: Complexity Dependency Tuples Problem Rules: a__zeros -> cons(0, zeros) a__zeros -> zeros a__U11(tt) -> tt a__U11(z0) -> U11(z0) a__U21(tt) -> tt a__U21(z0) -> U21(z0) a__U31(tt) -> tt a__U31(z0) -> U31(z0) a__U41(tt, z0) -> a__U42(a__isNatIList(z0)) a__U41(z0, z1) -> U41(z0, z1) a__U42(tt) -> tt a__U42(z0) -> U42(z0) a__U51(tt, z0) -> a__U52(a__isNatList(z0)) a__U51(z0, z1) -> U51(z0, z1) a__U52(tt) -> tt a__U52(z0) -> U52(z0) a__U61(tt, z0, z1) -> a__U62(a__isNat(z1), z0) a__U61(z0, z1, z2) -> U61(z0, z1, z2) a__U62(tt, z0) -> s(a__length(mark(z0))) a__U62(z0, z1) -> U62(z0, z1) a__isNat(0) -> tt a__isNat(length(z0)) -> a__U11(a__isNatList(z0)) a__isNat(s(z0)) -> a__U21(a__isNat(z0)) a__isNat(z0) -> isNat(z0) a__isNatIList(z0) -> a__U31(a__isNatList(z0)) a__isNatIList(zeros) -> tt a__isNatIList(cons(z0, z1)) -> a__U41(a__isNat(z0), z1) a__isNatIList(z0) -> isNatIList(z0) a__isNatList(nil) -> tt a__isNatList(cons(z0, z1)) -> a__U51(a__isNat(z0), z1) a__isNatList(z0) -> isNatList(z0) a__length(nil) -> 0 a__length(cons(z0, z1)) -> a__U61(a__isNatList(z1), z1, z0) a__length(z0) -> length(z0) mark(zeros) -> a__zeros mark(U11(z0)) -> a__U11(mark(z0)) mark(U21(z0)) -> a__U21(mark(z0)) mark(U31(z0)) -> a__U31(mark(z0)) mark(U41(z0, z1)) -> a__U41(mark(z0), z1) mark(U42(z0)) -> a__U42(mark(z0)) mark(isNatIList(z0)) -> a__isNatIList(z0) mark(U51(z0, z1)) -> a__U51(mark(z0), z1) mark(U52(z0)) -> a__U52(mark(z0)) mark(isNatList(z0)) -> a__isNatList(z0) mark(U61(z0, z1, z2)) -> a__U61(mark(z0), z1, z2) mark(U62(z0, z1)) -> a__U62(mark(z0), z1) mark(isNat(z0)) -> a__isNat(z0) mark(length(z0)) -> a__length(mark(z0)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(0) -> 0 mark(tt) -> tt mark(s(z0)) -> s(mark(z0)) mark(nil) -> nil Tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, U62(z0, z1)) -> c18(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) A__U62(tt, isNatList(cons(z0, z1))) -> c18(A__LENGTH(a__U51(a__isNat(z0), z1)), MARK(isNatList(cons(z0, z1)))) A__U62(tt, isNatList(nil)) -> c18(MARK(isNatList(nil))) A__U62(tt, isNatList(z0)) -> c18(MARK(isNatList(z0))) A__U62(tt, U61(zeros, x1, x2)) -> c18(A__LENGTH(a__U61(a__zeros, x1, x2)), MARK(U61(zeros, x1, x2))) A__U62(tt, U61(U11(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U11(mark(z0)), x1, x2)), MARK(U61(U11(z0), x1, x2))) A__U62(tt, U61(U21(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U21(mark(z0)), x1, x2)), MARK(U61(U21(z0), x1, x2))) A__U62(tt, U61(U31(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U31(mark(z0)), x1, x2)), MARK(U61(U31(z0), x1, x2))) A__U62(tt, U61(U41(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U41(mark(z0), z1), x1, x2)), MARK(U61(U41(z0, z1), x1, x2))) A__U62(tt, U61(U42(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U42(mark(z0)), x1, x2)), MARK(U61(U42(z0), x1, x2))) A__U62(tt, U61(isNatIList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatIList(z0), x1, x2)), MARK(U61(isNatIList(z0), x1, x2))) A__U62(tt, U61(U51(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U51(mark(z0), z1), x1, x2)), MARK(U61(U51(z0, z1), x1, x2))) A__U62(tt, U61(U52(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U52(mark(z0)), x1, x2)), MARK(U61(U52(z0), x1, x2))) A__U62(tt, U61(isNatList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatList(z0), x1, x2)), MARK(U61(isNatList(z0), x1, x2))) A__U62(tt, U61(U61(z0, z1, z2), x1, x2)) -> c18(A__LENGTH(a__U61(a__U61(mark(z0), z1, z2), x1, x2)), MARK(U61(U61(z0, z1, z2), x1, x2))) A__U62(tt, U61(U62(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U62(mark(z0), z1), x1, x2)), MARK(U61(U62(z0, z1), x1, x2))) A__U62(tt, U61(isNat(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNat(z0), x1, x2)), MARK(U61(isNat(z0), x1, x2))) A__U62(tt, U61(length(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__length(mark(z0)), x1, x2)), MARK(U61(length(z0), x1, x2))) A__U62(tt, U61(cons(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(cons(mark(z0), z1), x1, x2)), MARK(U61(cons(z0, z1), x1, x2))) A__U62(tt, U61(tt, x1, x2)) -> c18(A__LENGTH(a__U61(tt, x1, x2)), MARK(U61(tt, x1, x2))) A__U62(tt, U61(s(z0), x1, x2)) -> c18(A__LENGTH(a__U61(s(mark(z0)), x1, x2)), MARK(U61(s(z0), x1, x2))) A__U62(tt, U61(x0, z1, z2)) -> c18(MARK(U61(x0, z1, z2))) A__U62(tt, U61(0, x1, x2)) -> c18(A__LENGTH(a__U61(0, x1, x2))) A__U62(tt, U61(nil, x1, x2)) -> c18(A__LENGTH(a__U61(nil, x1, x2))) S tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, U62(z0, z1)) -> c18(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) A__U62(tt, isNatList(cons(z0, z1))) -> c18(A__LENGTH(a__U51(a__isNat(z0), z1)), MARK(isNatList(cons(z0, z1)))) A__U62(tt, isNatList(nil)) -> c18(MARK(isNatList(nil))) A__U62(tt, isNatList(z0)) -> c18(MARK(isNatList(z0))) A__U62(tt, U61(zeros, x1, x2)) -> c18(A__LENGTH(a__U61(a__zeros, x1, x2)), MARK(U61(zeros, x1, x2))) A__U62(tt, U61(U11(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U11(mark(z0)), x1, x2)), MARK(U61(U11(z0), x1, x2))) A__U62(tt, U61(U21(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U21(mark(z0)), x1, x2)), MARK(U61(U21(z0), x1, x2))) A__U62(tt, U61(U31(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U31(mark(z0)), x1, x2)), MARK(U61(U31(z0), x1, x2))) A__U62(tt, U61(U41(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U41(mark(z0), z1), x1, x2)), MARK(U61(U41(z0, z1), x1, x2))) A__U62(tt, U61(U42(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U42(mark(z0)), x1, x2)), MARK(U61(U42(z0), x1, x2))) A__U62(tt, U61(isNatIList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatIList(z0), x1, x2)), MARK(U61(isNatIList(z0), x1, x2))) A__U62(tt, U61(U51(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U51(mark(z0), z1), x1, x2)), MARK(U61(U51(z0, z1), x1, x2))) A__U62(tt, U61(U52(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U52(mark(z0)), x1, x2)), MARK(U61(U52(z0), x1, x2))) A__U62(tt, U61(isNatList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatList(z0), x1, x2)), MARK(U61(isNatList(z0), x1, x2))) A__U62(tt, U61(U61(z0, z1, z2), x1, x2)) -> c18(A__LENGTH(a__U61(a__U61(mark(z0), z1, z2), x1, x2)), MARK(U61(U61(z0, z1, z2), x1, x2))) A__U62(tt, U61(U62(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U62(mark(z0), z1), x1, x2)), MARK(U61(U62(z0, z1), x1, x2))) A__U62(tt, U61(isNat(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNat(z0), x1, x2)), MARK(U61(isNat(z0), x1, x2))) A__U62(tt, U61(length(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__length(mark(z0)), x1, x2)), MARK(U61(length(z0), x1, x2))) A__U62(tt, U61(cons(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(cons(mark(z0), z1), x1, x2)), MARK(U61(cons(z0, z1), x1, x2))) A__U62(tt, U61(tt, x1, x2)) -> c18(A__LENGTH(a__U61(tt, x1, x2)), MARK(U61(tt, x1, x2))) A__U62(tt, U61(s(z0), x1, x2)) -> c18(A__LENGTH(a__U61(s(mark(z0)), x1, x2)), MARK(U61(s(z0), x1, x2))) A__U62(tt, U61(x0, z1, z2)) -> c18(MARK(U61(x0, z1, z2))) A__U62(tt, U61(0, x1, x2)) -> c18(A__LENGTH(a__U61(0, x1, x2))) A__U62(tt, U61(nil, x1, x2)) -> c18(A__LENGTH(a__U61(nil, x1, x2))) K tuples:none Defined Rule Symbols: a__zeros, a__U11_1, a__U21_1, a__U31_1, a__U41_2, a__U42_1, a__U51_2, a__U52_1, a__U61_3, a__U62_2, a__isNat_1, a__isNatIList_1, a__isNatList_1, a__length_1, mark_1 Defined Pair Symbols: MARK_1, A__U41_2, A__U51_2, A__ISNAT_1, A__ISNATILIST_1, A__U61_3, A__U62_2, A__ISNATLIST_1, A__LENGTH_1 Compound Symbols: c40_1, c43_1, c46_1, c48_1, c51_1, c8_1, c12_1, c21_1, c22_1, c24_1, c35_1, c36_1, c37_1, c39_1, c42_1, c16_1, c18_2, c18_1, c26_2, c26_1, c29_2, c29_1, c32_2, c32_1, c38_2, c38_1, c_1, c41_2, c41_1, c1_1, c44_2, c44_1, c45_2, c45_1, c47_2, c47_1, c16_2 ---------------------------------------- (133) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace A__U62(tt, U62(z0, z1)) -> c18(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) by A__U62(tt, U62(x0, z1)) -> c18(A__LENGTH(U62(mark(x0), z1)), MARK(U62(x0, z1))) A__U62(tt, U62(zeros, x1)) -> c18(A__LENGTH(a__U62(a__zeros, x1)), MARK(U62(zeros, x1))) A__U62(tt, U62(U11(z0), x1)) -> c18(A__LENGTH(a__U62(a__U11(mark(z0)), x1)), MARK(U62(U11(z0), x1))) A__U62(tt, U62(U21(z0), x1)) -> c18(A__LENGTH(a__U62(a__U21(mark(z0)), x1)), MARK(U62(U21(z0), x1))) A__U62(tt, U62(U31(z0), x1)) -> c18(A__LENGTH(a__U62(a__U31(mark(z0)), x1)), MARK(U62(U31(z0), x1))) A__U62(tt, U62(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U41(mark(z0), z1), x1)), MARK(U62(U41(z0, z1), x1))) A__U62(tt, U62(U42(z0), x1)) -> c18(A__LENGTH(a__U62(a__U42(mark(z0)), x1)), MARK(U62(U42(z0), x1))) A__U62(tt, U62(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatIList(z0), x1)), MARK(U62(isNatIList(z0), x1))) A__U62(tt, U62(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U51(mark(z0), z1), x1)), MARK(U62(U51(z0, z1), x1))) A__U62(tt, U62(U52(z0), x1)) -> c18(A__LENGTH(a__U62(a__U52(mark(z0)), x1)), MARK(U62(U52(z0), x1))) A__U62(tt, U62(isNatList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatList(z0), x1)), MARK(U62(isNatList(z0), x1))) A__U62(tt, U62(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U62(a__U61(mark(z0), z1, z2), x1)), MARK(U62(U61(z0, z1, z2), x1))) A__U62(tt, U62(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U62(mark(z0), z1), x1)), MARK(U62(U62(z0, z1), x1))) A__U62(tt, U62(isNat(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNat(z0), x1)), MARK(U62(isNat(z0), x1))) A__U62(tt, U62(length(z0), x1)) -> c18(A__LENGTH(a__U62(a__length(mark(z0)), x1)), MARK(U62(length(z0), x1))) A__U62(tt, U62(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U62(cons(mark(z0), z1), x1)), MARK(U62(cons(z0, z1), x1))) A__U62(tt, U62(0, x1)) -> c18(A__LENGTH(a__U62(0, x1)), MARK(U62(0, x1))) A__U62(tt, U62(tt, x1)) -> c18(A__LENGTH(a__U62(tt, x1)), MARK(U62(tt, x1))) A__U62(tt, U62(s(z0), x1)) -> c18(A__LENGTH(a__U62(s(mark(z0)), x1)), MARK(U62(s(z0), x1))) A__U62(tt, U62(nil, x1)) -> c18(A__LENGTH(a__U62(nil, x1)), MARK(U62(nil, x1))) ---------------------------------------- (134) Obligation: Complexity Dependency Tuples Problem Rules: a__zeros -> cons(0, zeros) a__zeros -> zeros a__U11(tt) -> tt a__U11(z0) -> U11(z0) a__U21(tt) -> tt a__U21(z0) -> U21(z0) a__U31(tt) -> tt a__U31(z0) -> U31(z0) a__U41(tt, z0) -> a__U42(a__isNatIList(z0)) a__U41(z0, z1) -> U41(z0, z1) a__U42(tt) -> tt a__U42(z0) -> U42(z0) a__U51(tt, z0) -> a__U52(a__isNatList(z0)) a__U51(z0, z1) -> U51(z0, z1) a__U52(tt) -> tt a__U52(z0) -> U52(z0) a__U61(tt, z0, z1) -> a__U62(a__isNat(z1), z0) a__U61(z0, z1, z2) -> U61(z0, z1, z2) a__U62(tt, z0) -> s(a__length(mark(z0))) a__U62(z0, z1) -> U62(z0, z1) a__isNat(0) -> tt a__isNat(length(z0)) -> a__U11(a__isNatList(z0)) a__isNat(s(z0)) -> a__U21(a__isNat(z0)) a__isNat(z0) -> isNat(z0) a__isNatIList(z0) -> a__U31(a__isNatList(z0)) a__isNatIList(zeros) -> tt a__isNatIList(cons(z0, z1)) -> a__U41(a__isNat(z0), z1) a__isNatIList(z0) -> isNatIList(z0) a__isNatList(nil) -> tt a__isNatList(cons(z0, z1)) -> a__U51(a__isNat(z0), z1) a__isNatList(z0) -> isNatList(z0) a__length(nil) -> 0 a__length(cons(z0, z1)) -> a__U61(a__isNatList(z1), z1, z0) a__length(z0) -> length(z0) mark(zeros) -> a__zeros mark(U11(z0)) -> a__U11(mark(z0)) mark(U21(z0)) -> a__U21(mark(z0)) mark(U31(z0)) -> a__U31(mark(z0)) mark(U41(z0, z1)) -> a__U41(mark(z0), z1) mark(U42(z0)) -> a__U42(mark(z0)) mark(isNatIList(z0)) -> a__isNatIList(z0) mark(U51(z0, z1)) -> a__U51(mark(z0), z1) mark(U52(z0)) -> a__U52(mark(z0)) mark(isNatList(z0)) -> a__isNatList(z0) mark(U61(z0, z1, z2)) -> a__U61(mark(z0), z1, z2) mark(U62(z0, z1)) -> a__U62(mark(z0), z1) mark(isNat(z0)) -> a__isNat(z0) mark(length(z0)) -> a__length(mark(z0)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(0) -> 0 mark(tt) -> tt mark(s(z0)) -> s(mark(z0)) mark(nil) -> nil Tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) A__U62(tt, isNatList(cons(z0, z1))) -> c18(A__LENGTH(a__U51(a__isNat(z0), z1)), MARK(isNatList(cons(z0, z1)))) A__U62(tt, isNatList(nil)) -> c18(MARK(isNatList(nil))) A__U62(tt, isNatList(z0)) -> c18(MARK(isNatList(z0))) A__U62(tt, U61(zeros, x1, x2)) -> c18(A__LENGTH(a__U61(a__zeros, x1, x2)), MARK(U61(zeros, x1, x2))) A__U62(tt, U61(U11(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U11(mark(z0)), x1, x2)), MARK(U61(U11(z0), x1, x2))) A__U62(tt, U61(U21(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U21(mark(z0)), x1, x2)), MARK(U61(U21(z0), x1, x2))) A__U62(tt, U61(U31(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U31(mark(z0)), x1, x2)), MARK(U61(U31(z0), x1, x2))) A__U62(tt, U61(U41(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U41(mark(z0), z1), x1, x2)), MARK(U61(U41(z0, z1), x1, x2))) A__U62(tt, U61(U42(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U42(mark(z0)), x1, x2)), MARK(U61(U42(z0), x1, x2))) A__U62(tt, U61(isNatIList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatIList(z0), x1, x2)), MARK(U61(isNatIList(z0), x1, x2))) A__U62(tt, U61(U51(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U51(mark(z0), z1), x1, x2)), MARK(U61(U51(z0, z1), x1, x2))) A__U62(tt, U61(U52(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U52(mark(z0)), x1, x2)), MARK(U61(U52(z0), x1, x2))) A__U62(tt, U61(isNatList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatList(z0), x1, x2)), MARK(U61(isNatList(z0), x1, x2))) A__U62(tt, U61(U61(z0, z1, z2), x1, x2)) -> c18(A__LENGTH(a__U61(a__U61(mark(z0), z1, z2), x1, x2)), MARK(U61(U61(z0, z1, z2), x1, x2))) A__U62(tt, U61(U62(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U62(mark(z0), z1), x1, x2)), MARK(U61(U62(z0, z1), x1, x2))) A__U62(tt, U61(isNat(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNat(z0), x1, x2)), MARK(U61(isNat(z0), x1, x2))) A__U62(tt, U61(length(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__length(mark(z0)), x1, x2)), MARK(U61(length(z0), x1, x2))) A__U62(tt, U61(cons(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(cons(mark(z0), z1), x1, x2)), MARK(U61(cons(z0, z1), x1, x2))) A__U62(tt, U61(tt, x1, x2)) -> c18(A__LENGTH(a__U61(tt, x1, x2)), MARK(U61(tt, x1, x2))) A__U62(tt, U61(s(z0), x1, x2)) -> c18(A__LENGTH(a__U61(s(mark(z0)), x1, x2)), MARK(U61(s(z0), x1, x2))) A__U62(tt, U61(x0, z1, z2)) -> c18(MARK(U61(x0, z1, z2))) A__U62(tt, U61(0, x1, x2)) -> c18(A__LENGTH(a__U61(0, x1, x2))) A__U62(tt, U61(nil, x1, x2)) -> c18(A__LENGTH(a__U61(nil, x1, x2))) A__U62(tt, U62(x0, z1)) -> c18(A__LENGTH(U62(mark(x0), z1)), MARK(U62(x0, z1))) A__U62(tt, U62(zeros, x1)) -> c18(A__LENGTH(a__U62(a__zeros, x1)), MARK(U62(zeros, x1))) A__U62(tt, U62(U11(z0), x1)) -> c18(A__LENGTH(a__U62(a__U11(mark(z0)), x1)), MARK(U62(U11(z0), x1))) A__U62(tt, U62(U21(z0), x1)) -> c18(A__LENGTH(a__U62(a__U21(mark(z0)), x1)), MARK(U62(U21(z0), x1))) A__U62(tt, U62(U31(z0), x1)) -> c18(A__LENGTH(a__U62(a__U31(mark(z0)), x1)), MARK(U62(U31(z0), x1))) A__U62(tt, U62(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U41(mark(z0), z1), x1)), MARK(U62(U41(z0, z1), x1))) A__U62(tt, U62(U42(z0), x1)) -> c18(A__LENGTH(a__U62(a__U42(mark(z0)), x1)), MARK(U62(U42(z0), x1))) A__U62(tt, U62(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatIList(z0), x1)), MARK(U62(isNatIList(z0), x1))) A__U62(tt, U62(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U51(mark(z0), z1), x1)), MARK(U62(U51(z0, z1), x1))) A__U62(tt, U62(U52(z0), x1)) -> c18(A__LENGTH(a__U62(a__U52(mark(z0)), x1)), MARK(U62(U52(z0), x1))) A__U62(tt, U62(isNatList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatList(z0), x1)), MARK(U62(isNatList(z0), x1))) A__U62(tt, U62(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U62(a__U61(mark(z0), z1, z2), x1)), MARK(U62(U61(z0, z1, z2), x1))) A__U62(tt, U62(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U62(mark(z0), z1), x1)), MARK(U62(U62(z0, z1), x1))) A__U62(tt, U62(isNat(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNat(z0), x1)), MARK(U62(isNat(z0), x1))) A__U62(tt, U62(length(z0), x1)) -> c18(A__LENGTH(a__U62(a__length(mark(z0)), x1)), MARK(U62(length(z0), x1))) A__U62(tt, U62(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U62(cons(mark(z0), z1), x1)), MARK(U62(cons(z0, z1), x1))) A__U62(tt, U62(0, x1)) -> c18(A__LENGTH(a__U62(0, x1)), MARK(U62(0, x1))) A__U62(tt, U62(tt, x1)) -> c18(A__LENGTH(a__U62(tt, x1)), MARK(U62(tt, x1))) A__U62(tt, U62(s(z0), x1)) -> c18(A__LENGTH(a__U62(s(mark(z0)), x1)), MARK(U62(s(z0), x1))) A__U62(tt, U62(nil, x1)) -> c18(A__LENGTH(a__U62(nil, x1)), MARK(U62(nil, x1))) S tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) A__U62(tt, isNatList(cons(z0, z1))) -> c18(A__LENGTH(a__U51(a__isNat(z0), z1)), MARK(isNatList(cons(z0, z1)))) A__U62(tt, isNatList(nil)) -> c18(MARK(isNatList(nil))) A__U62(tt, isNatList(z0)) -> c18(MARK(isNatList(z0))) A__U62(tt, U61(zeros, x1, x2)) -> c18(A__LENGTH(a__U61(a__zeros, x1, x2)), MARK(U61(zeros, x1, x2))) A__U62(tt, U61(U11(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U11(mark(z0)), x1, x2)), MARK(U61(U11(z0), x1, x2))) A__U62(tt, U61(U21(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U21(mark(z0)), x1, x2)), MARK(U61(U21(z0), x1, x2))) A__U62(tt, U61(U31(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U31(mark(z0)), x1, x2)), MARK(U61(U31(z0), x1, x2))) A__U62(tt, U61(U41(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U41(mark(z0), z1), x1, x2)), MARK(U61(U41(z0, z1), x1, x2))) A__U62(tt, U61(U42(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U42(mark(z0)), x1, x2)), MARK(U61(U42(z0), x1, x2))) A__U62(tt, U61(isNatIList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatIList(z0), x1, x2)), MARK(U61(isNatIList(z0), x1, x2))) A__U62(tt, U61(U51(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U51(mark(z0), z1), x1, x2)), MARK(U61(U51(z0, z1), x1, x2))) A__U62(tt, U61(U52(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U52(mark(z0)), x1, x2)), MARK(U61(U52(z0), x1, x2))) A__U62(tt, U61(isNatList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatList(z0), x1, x2)), MARK(U61(isNatList(z0), x1, x2))) A__U62(tt, U61(U61(z0, z1, z2), x1, x2)) -> c18(A__LENGTH(a__U61(a__U61(mark(z0), z1, z2), x1, x2)), MARK(U61(U61(z0, z1, z2), x1, x2))) A__U62(tt, U61(U62(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U62(mark(z0), z1), x1, x2)), MARK(U61(U62(z0, z1), x1, x2))) A__U62(tt, U61(isNat(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNat(z0), x1, x2)), MARK(U61(isNat(z0), x1, x2))) A__U62(tt, U61(length(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__length(mark(z0)), x1, x2)), MARK(U61(length(z0), x1, x2))) A__U62(tt, U61(cons(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(cons(mark(z0), z1), x1, x2)), MARK(U61(cons(z0, z1), x1, x2))) A__U62(tt, U61(tt, x1, x2)) -> c18(A__LENGTH(a__U61(tt, x1, x2)), MARK(U61(tt, x1, x2))) A__U62(tt, U61(s(z0), x1, x2)) -> c18(A__LENGTH(a__U61(s(mark(z0)), x1, x2)), MARK(U61(s(z0), x1, x2))) A__U62(tt, U61(x0, z1, z2)) -> c18(MARK(U61(x0, z1, z2))) A__U62(tt, U61(0, x1, x2)) -> c18(A__LENGTH(a__U61(0, x1, x2))) A__U62(tt, U61(nil, x1, x2)) -> c18(A__LENGTH(a__U61(nil, x1, x2))) A__U62(tt, U62(x0, z1)) -> c18(A__LENGTH(U62(mark(x0), z1)), MARK(U62(x0, z1))) A__U62(tt, U62(zeros, x1)) -> c18(A__LENGTH(a__U62(a__zeros, x1)), MARK(U62(zeros, x1))) A__U62(tt, U62(U11(z0), x1)) -> c18(A__LENGTH(a__U62(a__U11(mark(z0)), x1)), MARK(U62(U11(z0), x1))) A__U62(tt, U62(U21(z0), x1)) -> c18(A__LENGTH(a__U62(a__U21(mark(z0)), x1)), MARK(U62(U21(z0), x1))) A__U62(tt, U62(U31(z0), x1)) -> c18(A__LENGTH(a__U62(a__U31(mark(z0)), x1)), MARK(U62(U31(z0), x1))) A__U62(tt, U62(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U41(mark(z0), z1), x1)), MARK(U62(U41(z0, z1), x1))) A__U62(tt, U62(U42(z0), x1)) -> c18(A__LENGTH(a__U62(a__U42(mark(z0)), x1)), MARK(U62(U42(z0), x1))) A__U62(tt, U62(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatIList(z0), x1)), MARK(U62(isNatIList(z0), x1))) A__U62(tt, U62(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U51(mark(z0), z1), x1)), MARK(U62(U51(z0, z1), x1))) A__U62(tt, U62(U52(z0), x1)) -> c18(A__LENGTH(a__U62(a__U52(mark(z0)), x1)), MARK(U62(U52(z0), x1))) A__U62(tt, U62(isNatList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatList(z0), x1)), MARK(U62(isNatList(z0), x1))) A__U62(tt, U62(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U62(a__U61(mark(z0), z1, z2), x1)), MARK(U62(U61(z0, z1, z2), x1))) A__U62(tt, U62(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U62(mark(z0), z1), x1)), MARK(U62(U62(z0, z1), x1))) A__U62(tt, U62(isNat(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNat(z0), x1)), MARK(U62(isNat(z0), x1))) A__U62(tt, U62(length(z0), x1)) -> c18(A__LENGTH(a__U62(a__length(mark(z0)), x1)), MARK(U62(length(z0), x1))) A__U62(tt, U62(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U62(cons(mark(z0), z1), x1)), MARK(U62(cons(z0, z1), x1))) A__U62(tt, U62(0, x1)) -> c18(A__LENGTH(a__U62(0, x1)), MARK(U62(0, x1))) A__U62(tt, U62(tt, x1)) -> c18(A__LENGTH(a__U62(tt, x1)), MARK(U62(tt, x1))) A__U62(tt, U62(s(z0), x1)) -> c18(A__LENGTH(a__U62(s(mark(z0)), x1)), MARK(U62(s(z0), x1))) A__U62(tt, U62(nil, x1)) -> c18(A__LENGTH(a__U62(nil, x1)), MARK(U62(nil, x1))) K tuples:none Defined Rule Symbols: a__zeros, a__U11_1, a__U21_1, a__U31_1, a__U41_2, a__U42_1, a__U51_2, a__U52_1, a__U61_3, a__U62_2, a__isNat_1, a__isNatIList_1, a__isNatList_1, a__length_1, mark_1 Defined Pair Symbols: MARK_1, A__U41_2, A__U51_2, A__ISNAT_1, A__ISNATILIST_1, A__U61_3, A__U62_2, A__ISNATLIST_1, A__LENGTH_1 Compound Symbols: c40_1, c43_1, c46_1, c48_1, c51_1, c8_1, c12_1, c21_1, c22_1, c24_1, c35_1, c36_1, c37_1, c39_1, c42_1, c16_1, c18_2, c18_1, c26_2, c26_1, c29_2, c29_1, c32_2, c32_1, c38_2, c38_1, c_1, c41_2, c41_1, c1_1, c44_2, c44_1, c45_2, c45_1, c47_2, c47_1, c16_2 ---------------------------------------- (135) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 3 trailing tuple parts ---------------------------------------- (136) Obligation: Complexity Dependency Tuples Problem Rules: a__zeros -> cons(0, zeros) a__zeros -> zeros a__U11(tt) -> tt a__U11(z0) -> U11(z0) a__U21(tt) -> tt a__U21(z0) -> U21(z0) a__U31(tt) -> tt a__U31(z0) -> U31(z0) a__U41(tt, z0) -> a__U42(a__isNatIList(z0)) a__U41(z0, z1) -> U41(z0, z1) a__U42(tt) -> tt a__U42(z0) -> U42(z0) a__U51(tt, z0) -> a__U52(a__isNatList(z0)) a__U51(z0, z1) -> U51(z0, z1) a__U52(tt) -> tt a__U52(z0) -> U52(z0) a__U61(tt, z0, z1) -> a__U62(a__isNat(z1), z0) a__U61(z0, z1, z2) -> U61(z0, z1, z2) a__U62(tt, z0) -> s(a__length(mark(z0))) a__U62(z0, z1) -> U62(z0, z1) a__isNat(0) -> tt a__isNat(length(z0)) -> a__U11(a__isNatList(z0)) a__isNat(s(z0)) -> a__U21(a__isNat(z0)) a__isNat(z0) -> isNat(z0) a__isNatIList(z0) -> a__U31(a__isNatList(z0)) a__isNatIList(zeros) -> tt a__isNatIList(cons(z0, z1)) -> a__U41(a__isNat(z0), z1) a__isNatIList(z0) -> isNatIList(z0) a__isNatList(nil) -> tt a__isNatList(cons(z0, z1)) -> a__U51(a__isNat(z0), z1) a__isNatList(z0) -> isNatList(z0) a__length(nil) -> 0 a__length(cons(z0, z1)) -> a__U61(a__isNatList(z1), z1, z0) a__length(z0) -> length(z0) mark(zeros) -> a__zeros mark(U11(z0)) -> a__U11(mark(z0)) mark(U21(z0)) -> a__U21(mark(z0)) mark(U31(z0)) -> a__U31(mark(z0)) mark(U41(z0, z1)) -> a__U41(mark(z0), z1) mark(U42(z0)) -> a__U42(mark(z0)) mark(isNatIList(z0)) -> a__isNatIList(z0) mark(U51(z0, z1)) -> a__U51(mark(z0), z1) mark(U52(z0)) -> a__U52(mark(z0)) mark(isNatList(z0)) -> a__isNatList(z0) mark(U61(z0, z1, z2)) -> a__U61(mark(z0), z1, z2) mark(U62(z0, z1)) -> a__U62(mark(z0), z1) mark(isNat(z0)) -> a__isNat(z0) mark(length(z0)) -> a__length(mark(z0)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(0) -> 0 mark(tt) -> tt mark(s(z0)) -> s(mark(z0)) mark(nil) -> nil Tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) A__U62(tt, isNatList(cons(z0, z1))) -> c18(A__LENGTH(a__U51(a__isNat(z0), z1)), MARK(isNatList(cons(z0, z1)))) A__U62(tt, isNatList(nil)) -> c18(MARK(isNatList(nil))) A__U62(tt, isNatList(z0)) -> c18(MARK(isNatList(z0))) A__U62(tt, U61(zeros, x1, x2)) -> c18(A__LENGTH(a__U61(a__zeros, x1, x2)), MARK(U61(zeros, x1, x2))) A__U62(tt, U61(U11(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U11(mark(z0)), x1, x2)), MARK(U61(U11(z0), x1, x2))) A__U62(tt, U61(U21(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U21(mark(z0)), x1, x2)), MARK(U61(U21(z0), x1, x2))) A__U62(tt, U61(U31(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U31(mark(z0)), x1, x2)), MARK(U61(U31(z0), x1, x2))) A__U62(tt, U61(U41(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U41(mark(z0), z1), x1, x2)), MARK(U61(U41(z0, z1), x1, x2))) A__U62(tt, U61(U42(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U42(mark(z0)), x1, x2)), MARK(U61(U42(z0), x1, x2))) A__U62(tt, U61(isNatIList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatIList(z0), x1, x2)), MARK(U61(isNatIList(z0), x1, x2))) A__U62(tt, U61(U51(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U51(mark(z0), z1), x1, x2)), MARK(U61(U51(z0, z1), x1, x2))) A__U62(tt, U61(U52(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U52(mark(z0)), x1, x2)), MARK(U61(U52(z0), x1, x2))) A__U62(tt, U61(isNatList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatList(z0), x1, x2)), MARK(U61(isNatList(z0), x1, x2))) A__U62(tt, U61(U61(z0, z1, z2), x1, x2)) -> c18(A__LENGTH(a__U61(a__U61(mark(z0), z1, z2), x1, x2)), MARK(U61(U61(z0, z1, z2), x1, x2))) A__U62(tt, U61(U62(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U62(mark(z0), z1), x1, x2)), MARK(U61(U62(z0, z1), x1, x2))) A__U62(tt, U61(isNat(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNat(z0), x1, x2)), MARK(U61(isNat(z0), x1, x2))) A__U62(tt, U61(length(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__length(mark(z0)), x1, x2)), MARK(U61(length(z0), x1, x2))) A__U62(tt, U61(cons(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(cons(mark(z0), z1), x1, x2)), MARK(U61(cons(z0, z1), x1, x2))) A__U62(tt, U61(tt, x1, x2)) -> c18(A__LENGTH(a__U61(tt, x1, x2)), MARK(U61(tt, x1, x2))) A__U62(tt, U61(s(z0), x1, x2)) -> c18(A__LENGTH(a__U61(s(mark(z0)), x1, x2)), MARK(U61(s(z0), x1, x2))) A__U62(tt, U61(x0, z1, z2)) -> c18(MARK(U61(x0, z1, z2))) A__U62(tt, U61(0, x1, x2)) -> c18(A__LENGTH(a__U61(0, x1, x2))) A__U62(tt, U61(nil, x1, x2)) -> c18(A__LENGTH(a__U61(nil, x1, x2))) A__U62(tt, U62(zeros, x1)) -> c18(A__LENGTH(a__U62(a__zeros, x1)), MARK(U62(zeros, x1))) A__U62(tt, U62(U11(z0), x1)) -> c18(A__LENGTH(a__U62(a__U11(mark(z0)), x1)), MARK(U62(U11(z0), x1))) A__U62(tt, U62(U21(z0), x1)) -> c18(A__LENGTH(a__U62(a__U21(mark(z0)), x1)), MARK(U62(U21(z0), x1))) A__U62(tt, U62(U31(z0), x1)) -> c18(A__LENGTH(a__U62(a__U31(mark(z0)), x1)), MARK(U62(U31(z0), x1))) A__U62(tt, U62(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U41(mark(z0), z1), x1)), MARK(U62(U41(z0, z1), x1))) A__U62(tt, U62(U42(z0), x1)) -> c18(A__LENGTH(a__U62(a__U42(mark(z0)), x1)), MARK(U62(U42(z0), x1))) A__U62(tt, U62(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatIList(z0), x1)), MARK(U62(isNatIList(z0), x1))) A__U62(tt, U62(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U51(mark(z0), z1), x1)), MARK(U62(U51(z0, z1), x1))) A__U62(tt, U62(U52(z0), x1)) -> c18(A__LENGTH(a__U62(a__U52(mark(z0)), x1)), MARK(U62(U52(z0), x1))) A__U62(tt, U62(isNatList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatList(z0), x1)), MARK(U62(isNatList(z0), x1))) A__U62(tt, U62(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U62(a__U61(mark(z0), z1, z2), x1)), MARK(U62(U61(z0, z1, z2), x1))) A__U62(tt, U62(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U62(mark(z0), z1), x1)), MARK(U62(U62(z0, z1), x1))) A__U62(tt, U62(isNat(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNat(z0), x1)), MARK(U62(isNat(z0), x1))) A__U62(tt, U62(length(z0), x1)) -> c18(A__LENGTH(a__U62(a__length(mark(z0)), x1)), MARK(U62(length(z0), x1))) A__U62(tt, U62(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U62(cons(mark(z0), z1), x1)), MARK(U62(cons(z0, z1), x1))) A__U62(tt, U62(tt, x1)) -> c18(A__LENGTH(a__U62(tt, x1)), MARK(U62(tt, x1))) A__U62(tt, U62(s(z0), x1)) -> c18(A__LENGTH(a__U62(s(mark(z0)), x1)), MARK(U62(s(z0), x1))) A__U62(tt, U62(x0, z1)) -> c18(MARK(U62(x0, z1))) A__U62(tt, U62(0, x1)) -> c18(A__LENGTH(a__U62(0, x1))) A__U62(tt, U62(nil, x1)) -> c18(A__LENGTH(a__U62(nil, x1))) S tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) A__U62(tt, isNatList(cons(z0, z1))) -> c18(A__LENGTH(a__U51(a__isNat(z0), z1)), MARK(isNatList(cons(z0, z1)))) A__U62(tt, isNatList(nil)) -> c18(MARK(isNatList(nil))) A__U62(tt, isNatList(z0)) -> c18(MARK(isNatList(z0))) A__U62(tt, U61(zeros, x1, x2)) -> c18(A__LENGTH(a__U61(a__zeros, x1, x2)), MARK(U61(zeros, x1, x2))) A__U62(tt, U61(U11(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U11(mark(z0)), x1, x2)), MARK(U61(U11(z0), x1, x2))) A__U62(tt, U61(U21(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U21(mark(z0)), x1, x2)), MARK(U61(U21(z0), x1, x2))) A__U62(tt, U61(U31(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U31(mark(z0)), x1, x2)), MARK(U61(U31(z0), x1, x2))) A__U62(tt, U61(U41(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U41(mark(z0), z1), x1, x2)), MARK(U61(U41(z0, z1), x1, x2))) A__U62(tt, U61(U42(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U42(mark(z0)), x1, x2)), MARK(U61(U42(z0), x1, x2))) A__U62(tt, U61(isNatIList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatIList(z0), x1, x2)), MARK(U61(isNatIList(z0), x1, x2))) A__U62(tt, U61(U51(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U51(mark(z0), z1), x1, x2)), MARK(U61(U51(z0, z1), x1, x2))) A__U62(tt, U61(U52(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U52(mark(z0)), x1, x2)), MARK(U61(U52(z0), x1, x2))) A__U62(tt, U61(isNatList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatList(z0), x1, x2)), MARK(U61(isNatList(z0), x1, x2))) A__U62(tt, U61(U61(z0, z1, z2), x1, x2)) -> c18(A__LENGTH(a__U61(a__U61(mark(z0), z1, z2), x1, x2)), MARK(U61(U61(z0, z1, z2), x1, x2))) A__U62(tt, U61(U62(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U62(mark(z0), z1), x1, x2)), MARK(U61(U62(z0, z1), x1, x2))) A__U62(tt, U61(isNat(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNat(z0), x1, x2)), MARK(U61(isNat(z0), x1, x2))) A__U62(tt, U61(length(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__length(mark(z0)), x1, x2)), MARK(U61(length(z0), x1, x2))) A__U62(tt, U61(cons(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(cons(mark(z0), z1), x1, x2)), MARK(U61(cons(z0, z1), x1, x2))) A__U62(tt, U61(tt, x1, x2)) -> c18(A__LENGTH(a__U61(tt, x1, x2)), MARK(U61(tt, x1, x2))) A__U62(tt, U61(s(z0), x1, x2)) -> c18(A__LENGTH(a__U61(s(mark(z0)), x1, x2)), MARK(U61(s(z0), x1, x2))) A__U62(tt, U61(x0, z1, z2)) -> c18(MARK(U61(x0, z1, z2))) A__U62(tt, U61(0, x1, x2)) -> c18(A__LENGTH(a__U61(0, x1, x2))) A__U62(tt, U61(nil, x1, x2)) -> c18(A__LENGTH(a__U61(nil, x1, x2))) A__U62(tt, U62(zeros, x1)) -> c18(A__LENGTH(a__U62(a__zeros, x1)), MARK(U62(zeros, x1))) A__U62(tt, U62(U11(z0), x1)) -> c18(A__LENGTH(a__U62(a__U11(mark(z0)), x1)), MARK(U62(U11(z0), x1))) A__U62(tt, U62(U21(z0), x1)) -> c18(A__LENGTH(a__U62(a__U21(mark(z0)), x1)), MARK(U62(U21(z0), x1))) A__U62(tt, U62(U31(z0), x1)) -> c18(A__LENGTH(a__U62(a__U31(mark(z0)), x1)), MARK(U62(U31(z0), x1))) A__U62(tt, U62(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U41(mark(z0), z1), x1)), MARK(U62(U41(z0, z1), x1))) A__U62(tt, U62(U42(z0), x1)) -> c18(A__LENGTH(a__U62(a__U42(mark(z0)), x1)), MARK(U62(U42(z0), x1))) A__U62(tt, U62(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatIList(z0), x1)), MARK(U62(isNatIList(z0), x1))) A__U62(tt, U62(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U51(mark(z0), z1), x1)), MARK(U62(U51(z0, z1), x1))) A__U62(tt, U62(U52(z0), x1)) -> c18(A__LENGTH(a__U62(a__U52(mark(z0)), x1)), MARK(U62(U52(z0), x1))) A__U62(tt, U62(isNatList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatList(z0), x1)), MARK(U62(isNatList(z0), x1))) A__U62(tt, U62(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U62(a__U61(mark(z0), z1, z2), x1)), MARK(U62(U61(z0, z1, z2), x1))) A__U62(tt, U62(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U62(mark(z0), z1), x1)), MARK(U62(U62(z0, z1), x1))) A__U62(tt, U62(isNat(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNat(z0), x1)), MARK(U62(isNat(z0), x1))) A__U62(tt, U62(length(z0), x1)) -> c18(A__LENGTH(a__U62(a__length(mark(z0)), x1)), MARK(U62(length(z0), x1))) A__U62(tt, U62(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U62(cons(mark(z0), z1), x1)), MARK(U62(cons(z0, z1), x1))) A__U62(tt, U62(tt, x1)) -> c18(A__LENGTH(a__U62(tt, x1)), MARK(U62(tt, x1))) A__U62(tt, U62(s(z0), x1)) -> c18(A__LENGTH(a__U62(s(mark(z0)), x1)), MARK(U62(s(z0), x1))) A__U62(tt, U62(x0, z1)) -> c18(MARK(U62(x0, z1))) A__U62(tt, U62(0, x1)) -> c18(A__LENGTH(a__U62(0, x1))) A__U62(tt, U62(nil, x1)) -> c18(A__LENGTH(a__U62(nil, x1))) K tuples:none Defined Rule Symbols: a__zeros, a__U11_1, a__U21_1, a__U31_1, a__U41_2, a__U42_1, a__U51_2, a__U52_1, a__U61_3, a__U62_2, a__isNat_1, a__isNatIList_1, a__isNatList_1, a__length_1, mark_1 Defined Pair Symbols: MARK_1, A__U41_2, A__U51_2, A__ISNAT_1, A__ISNATILIST_1, A__U61_3, A__U62_2, A__ISNATLIST_1, A__LENGTH_1 Compound Symbols: c40_1, c43_1, c46_1, c48_1, c51_1, c8_1, c12_1, c21_1, c22_1, c24_1, c35_1, c36_1, c37_1, c39_1, c42_1, c16_1, c18_2, c18_1, c26_2, c26_1, c29_2, c29_1, c32_2, c32_1, c38_2, c38_1, c_1, c41_2, c41_1, c1_1, c44_2, c44_1, c45_2, c45_1, c47_2, c47_1, c16_2 ---------------------------------------- (137) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace A__U62(tt, isNat(z0)) -> c18(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) by A__U62(tt, isNat(0)) -> c18(A__LENGTH(tt), MARK(isNat(0))) A__U62(tt, isNat(length(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(isNat(length(z0)))) A__U62(tt, isNat(s(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(isNat(s(z0)))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(isNat(z0)), MARK(isNat(z0))) ---------------------------------------- (138) Obligation: Complexity Dependency Tuples Problem Rules: a__zeros -> cons(0, zeros) a__zeros -> zeros a__U11(tt) -> tt a__U11(z0) -> U11(z0) a__U21(tt) -> tt a__U21(z0) -> U21(z0) a__U31(tt) -> tt a__U31(z0) -> U31(z0) a__U41(tt, z0) -> a__U42(a__isNatIList(z0)) a__U41(z0, z1) -> U41(z0, z1) a__U42(tt) -> tt a__U42(z0) -> U42(z0) a__U51(tt, z0) -> a__U52(a__isNatList(z0)) a__U51(z0, z1) -> U51(z0, z1) a__U52(tt) -> tt a__U52(z0) -> U52(z0) a__U61(tt, z0, z1) -> a__U62(a__isNat(z1), z0) a__U61(z0, z1, z2) -> U61(z0, z1, z2) a__U62(tt, z0) -> s(a__length(mark(z0))) a__U62(z0, z1) -> U62(z0, z1) a__isNat(0) -> tt a__isNat(length(z0)) -> a__U11(a__isNatList(z0)) a__isNat(s(z0)) -> a__U21(a__isNat(z0)) a__isNat(z0) -> isNat(z0) a__isNatIList(z0) -> a__U31(a__isNatList(z0)) a__isNatIList(zeros) -> tt a__isNatIList(cons(z0, z1)) -> a__U41(a__isNat(z0), z1) a__isNatIList(z0) -> isNatIList(z0) a__isNatList(nil) -> tt a__isNatList(cons(z0, z1)) -> a__U51(a__isNat(z0), z1) a__isNatList(z0) -> isNatList(z0) a__length(nil) -> 0 a__length(cons(z0, z1)) -> a__U61(a__isNatList(z1), z1, z0) a__length(z0) -> length(z0) mark(zeros) -> a__zeros mark(U11(z0)) -> a__U11(mark(z0)) mark(U21(z0)) -> a__U21(mark(z0)) mark(U31(z0)) -> a__U31(mark(z0)) mark(U41(z0, z1)) -> a__U41(mark(z0), z1) mark(U42(z0)) -> a__U42(mark(z0)) mark(isNatIList(z0)) -> a__isNatIList(z0) mark(U51(z0, z1)) -> a__U51(mark(z0), z1) mark(U52(z0)) -> a__U52(mark(z0)) mark(isNatList(z0)) -> a__isNatList(z0) mark(U61(z0, z1, z2)) -> a__U61(mark(z0), z1, z2) mark(U62(z0, z1)) -> a__U62(mark(z0), z1) mark(isNat(z0)) -> a__isNat(z0) mark(length(z0)) -> a__length(mark(z0)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(0) -> 0 mark(tt) -> tt mark(s(z0)) -> s(mark(z0)) mark(nil) -> nil Tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) A__U62(tt, isNatList(cons(z0, z1))) -> c18(A__LENGTH(a__U51(a__isNat(z0), z1)), MARK(isNatList(cons(z0, z1)))) A__U62(tt, isNatList(nil)) -> c18(MARK(isNatList(nil))) A__U62(tt, isNatList(z0)) -> c18(MARK(isNatList(z0))) A__U62(tt, U61(zeros, x1, x2)) -> c18(A__LENGTH(a__U61(a__zeros, x1, x2)), MARK(U61(zeros, x1, x2))) A__U62(tt, U61(U11(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U11(mark(z0)), x1, x2)), MARK(U61(U11(z0), x1, x2))) A__U62(tt, U61(U21(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U21(mark(z0)), x1, x2)), MARK(U61(U21(z0), x1, x2))) A__U62(tt, U61(U31(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U31(mark(z0)), x1, x2)), MARK(U61(U31(z0), x1, x2))) A__U62(tt, U61(U41(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U41(mark(z0), z1), x1, x2)), MARK(U61(U41(z0, z1), x1, x2))) A__U62(tt, U61(U42(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U42(mark(z0)), x1, x2)), MARK(U61(U42(z0), x1, x2))) A__U62(tt, U61(isNatIList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatIList(z0), x1, x2)), MARK(U61(isNatIList(z0), x1, x2))) A__U62(tt, U61(U51(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U51(mark(z0), z1), x1, x2)), MARK(U61(U51(z0, z1), x1, x2))) A__U62(tt, U61(U52(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U52(mark(z0)), x1, x2)), MARK(U61(U52(z0), x1, x2))) A__U62(tt, U61(isNatList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatList(z0), x1, x2)), MARK(U61(isNatList(z0), x1, x2))) A__U62(tt, U61(U61(z0, z1, z2), x1, x2)) -> c18(A__LENGTH(a__U61(a__U61(mark(z0), z1, z2), x1, x2)), MARK(U61(U61(z0, z1, z2), x1, x2))) A__U62(tt, U61(U62(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U62(mark(z0), z1), x1, x2)), MARK(U61(U62(z0, z1), x1, x2))) A__U62(tt, U61(isNat(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNat(z0), x1, x2)), MARK(U61(isNat(z0), x1, x2))) A__U62(tt, U61(length(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__length(mark(z0)), x1, x2)), MARK(U61(length(z0), x1, x2))) A__U62(tt, U61(cons(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(cons(mark(z0), z1), x1, x2)), MARK(U61(cons(z0, z1), x1, x2))) A__U62(tt, U61(tt, x1, x2)) -> c18(A__LENGTH(a__U61(tt, x1, x2)), MARK(U61(tt, x1, x2))) A__U62(tt, U61(s(z0), x1, x2)) -> c18(A__LENGTH(a__U61(s(mark(z0)), x1, x2)), MARK(U61(s(z0), x1, x2))) A__U62(tt, U61(x0, z1, z2)) -> c18(MARK(U61(x0, z1, z2))) A__U62(tt, U61(0, x1, x2)) -> c18(A__LENGTH(a__U61(0, x1, x2))) A__U62(tt, U61(nil, x1, x2)) -> c18(A__LENGTH(a__U61(nil, x1, x2))) A__U62(tt, U62(zeros, x1)) -> c18(A__LENGTH(a__U62(a__zeros, x1)), MARK(U62(zeros, x1))) A__U62(tt, U62(U11(z0), x1)) -> c18(A__LENGTH(a__U62(a__U11(mark(z0)), x1)), MARK(U62(U11(z0), x1))) A__U62(tt, U62(U21(z0), x1)) -> c18(A__LENGTH(a__U62(a__U21(mark(z0)), x1)), MARK(U62(U21(z0), x1))) A__U62(tt, U62(U31(z0), x1)) -> c18(A__LENGTH(a__U62(a__U31(mark(z0)), x1)), MARK(U62(U31(z0), x1))) A__U62(tt, U62(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U41(mark(z0), z1), x1)), MARK(U62(U41(z0, z1), x1))) A__U62(tt, U62(U42(z0), x1)) -> c18(A__LENGTH(a__U62(a__U42(mark(z0)), x1)), MARK(U62(U42(z0), x1))) A__U62(tt, U62(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatIList(z0), x1)), MARK(U62(isNatIList(z0), x1))) A__U62(tt, U62(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U51(mark(z0), z1), x1)), MARK(U62(U51(z0, z1), x1))) A__U62(tt, U62(U52(z0), x1)) -> c18(A__LENGTH(a__U62(a__U52(mark(z0)), x1)), MARK(U62(U52(z0), x1))) A__U62(tt, U62(isNatList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatList(z0), x1)), MARK(U62(isNatList(z0), x1))) A__U62(tt, U62(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U62(a__U61(mark(z0), z1, z2), x1)), MARK(U62(U61(z0, z1, z2), x1))) A__U62(tt, U62(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U62(mark(z0), z1), x1)), MARK(U62(U62(z0, z1), x1))) A__U62(tt, U62(isNat(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNat(z0), x1)), MARK(U62(isNat(z0), x1))) A__U62(tt, U62(length(z0), x1)) -> c18(A__LENGTH(a__U62(a__length(mark(z0)), x1)), MARK(U62(length(z0), x1))) A__U62(tt, U62(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U62(cons(mark(z0), z1), x1)), MARK(U62(cons(z0, z1), x1))) A__U62(tt, U62(tt, x1)) -> c18(A__LENGTH(a__U62(tt, x1)), MARK(U62(tt, x1))) A__U62(tt, U62(s(z0), x1)) -> c18(A__LENGTH(a__U62(s(mark(z0)), x1)), MARK(U62(s(z0), x1))) A__U62(tt, U62(x0, z1)) -> c18(MARK(U62(x0, z1))) A__U62(tt, U62(0, x1)) -> c18(A__LENGTH(a__U62(0, x1))) A__U62(tt, U62(nil, x1)) -> c18(A__LENGTH(a__U62(nil, x1))) A__U62(tt, isNat(0)) -> c18(A__LENGTH(tt), MARK(isNat(0))) A__U62(tt, isNat(length(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(isNat(length(z0)))) A__U62(tt, isNat(s(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(isNat(s(z0)))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(isNat(z0)), MARK(isNat(z0))) S tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) A__U62(tt, isNatList(cons(z0, z1))) -> c18(A__LENGTH(a__U51(a__isNat(z0), z1)), MARK(isNatList(cons(z0, z1)))) A__U62(tt, isNatList(nil)) -> c18(MARK(isNatList(nil))) A__U62(tt, isNatList(z0)) -> c18(MARK(isNatList(z0))) A__U62(tt, U61(zeros, x1, x2)) -> c18(A__LENGTH(a__U61(a__zeros, x1, x2)), MARK(U61(zeros, x1, x2))) A__U62(tt, U61(U11(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U11(mark(z0)), x1, x2)), MARK(U61(U11(z0), x1, x2))) A__U62(tt, U61(U21(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U21(mark(z0)), x1, x2)), MARK(U61(U21(z0), x1, x2))) A__U62(tt, U61(U31(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U31(mark(z0)), x1, x2)), MARK(U61(U31(z0), x1, x2))) A__U62(tt, U61(U41(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U41(mark(z0), z1), x1, x2)), MARK(U61(U41(z0, z1), x1, x2))) A__U62(tt, U61(U42(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U42(mark(z0)), x1, x2)), MARK(U61(U42(z0), x1, x2))) A__U62(tt, U61(isNatIList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatIList(z0), x1, x2)), MARK(U61(isNatIList(z0), x1, x2))) A__U62(tt, U61(U51(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U51(mark(z0), z1), x1, x2)), MARK(U61(U51(z0, z1), x1, x2))) A__U62(tt, U61(U52(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U52(mark(z0)), x1, x2)), MARK(U61(U52(z0), x1, x2))) A__U62(tt, U61(isNatList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatList(z0), x1, x2)), MARK(U61(isNatList(z0), x1, x2))) A__U62(tt, U61(U61(z0, z1, z2), x1, x2)) -> c18(A__LENGTH(a__U61(a__U61(mark(z0), z1, z2), x1, x2)), MARK(U61(U61(z0, z1, z2), x1, x2))) A__U62(tt, U61(U62(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U62(mark(z0), z1), x1, x2)), MARK(U61(U62(z0, z1), x1, x2))) A__U62(tt, U61(isNat(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNat(z0), x1, x2)), MARK(U61(isNat(z0), x1, x2))) A__U62(tt, U61(length(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__length(mark(z0)), x1, x2)), MARK(U61(length(z0), x1, x2))) A__U62(tt, U61(cons(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(cons(mark(z0), z1), x1, x2)), MARK(U61(cons(z0, z1), x1, x2))) A__U62(tt, U61(tt, x1, x2)) -> c18(A__LENGTH(a__U61(tt, x1, x2)), MARK(U61(tt, x1, x2))) A__U62(tt, U61(s(z0), x1, x2)) -> c18(A__LENGTH(a__U61(s(mark(z0)), x1, x2)), MARK(U61(s(z0), x1, x2))) A__U62(tt, U61(x0, z1, z2)) -> c18(MARK(U61(x0, z1, z2))) A__U62(tt, U61(0, x1, x2)) -> c18(A__LENGTH(a__U61(0, x1, x2))) A__U62(tt, U61(nil, x1, x2)) -> c18(A__LENGTH(a__U61(nil, x1, x2))) A__U62(tt, U62(zeros, x1)) -> c18(A__LENGTH(a__U62(a__zeros, x1)), MARK(U62(zeros, x1))) A__U62(tt, U62(U11(z0), x1)) -> c18(A__LENGTH(a__U62(a__U11(mark(z0)), x1)), MARK(U62(U11(z0), x1))) A__U62(tt, U62(U21(z0), x1)) -> c18(A__LENGTH(a__U62(a__U21(mark(z0)), x1)), MARK(U62(U21(z0), x1))) A__U62(tt, U62(U31(z0), x1)) -> c18(A__LENGTH(a__U62(a__U31(mark(z0)), x1)), MARK(U62(U31(z0), x1))) A__U62(tt, U62(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U41(mark(z0), z1), x1)), MARK(U62(U41(z0, z1), x1))) A__U62(tt, U62(U42(z0), x1)) -> c18(A__LENGTH(a__U62(a__U42(mark(z0)), x1)), MARK(U62(U42(z0), x1))) A__U62(tt, U62(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatIList(z0), x1)), MARK(U62(isNatIList(z0), x1))) A__U62(tt, U62(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U51(mark(z0), z1), x1)), MARK(U62(U51(z0, z1), x1))) A__U62(tt, U62(U52(z0), x1)) -> c18(A__LENGTH(a__U62(a__U52(mark(z0)), x1)), MARK(U62(U52(z0), x1))) A__U62(tt, U62(isNatList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatList(z0), x1)), MARK(U62(isNatList(z0), x1))) A__U62(tt, U62(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U62(a__U61(mark(z0), z1, z2), x1)), MARK(U62(U61(z0, z1, z2), x1))) A__U62(tt, U62(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U62(mark(z0), z1), x1)), MARK(U62(U62(z0, z1), x1))) A__U62(tt, U62(isNat(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNat(z0), x1)), MARK(U62(isNat(z0), x1))) A__U62(tt, U62(length(z0), x1)) -> c18(A__LENGTH(a__U62(a__length(mark(z0)), x1)), MARK(U62(length(z0), x1))) A__U62(tt, U62(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U62(cons(mark(z0), z1), x1)), MARK(U62(cons(z0, z1), x1))) A__U62(tt, U62(tt, x1)) -> c18(A__LENGTH(a__U62(tt, x1)), MARK(U62(tt, x1))) A__U62(tt, U62(s(z0), x1)) -> c18(A__LENGTH(a__U62(s(mark(z0)), x1)), MARK(U62(s(z0), x1))) A__U62(tt, U62(x0, z1)) -> c18(MARK(U62(x0, z1))) A__U62(tt, U62(0, x1)) -> c18(A__LENGTH(a__U62(0, x1))) A__U62(tt, U62(nil, x1)) -> c18(A__LENGTH(a__U62(nil, x1))) A__U62(tt, isNat(0)) -> c18(A__LENGTH(tt), MARK(isNat(0))) A__U62(tt, isNat(length(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(isNat(length(z0)))) A__U62(tt, isNat(s(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(isNat(s(z0)))) A__U62(tt, isNat(z0)) -> c18(A__LENGTH(isNat(z0)), MARK(isNat(z0))) K tuples:none Defined Rule Symbols: a__zeros, a__U11_1, a__U21_1, a__U31_1, a__U41_2, a__U42_1, a__U51_2, a__U52_1, a__U61_3, a__U62_2, a__isNat_1, a__isNatIList_1, a__isNatList_1, a__length_1, mark_1 Defined Pair Symbols: MARK_1, A__U41_2, A__U51_2, A__ISNAT_1, A__ISNATILIST_1, A__U61_3, A__U62_2, A__ISNATLIST_1, A__LENGTH_1 Compound Symbols: c40_1, c43_1, c46_1, c48_1, c51_1, c8_1, c12_1, c21_1, c22_1, c24_1, c35_1, c36_1, c37_1, c39_1, c42_1, c16_1, c18_2, c18_1, c26_2, c26_1, c29_2, c29_1, c32_2, c32_1, c38_2, c38_1, c_1, c41_2, c41_1, c1_1, c44_2, c44_1, c45_2, c45_1, c47_2, c47_1, c16_2 ---------------------------------------- (139) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 2 trailing tuple parts ---------------------------------------- (140) Obligation: Complexity Dependency Tuples Problem Rules: a__zeros -> cons(0, zeros) a__zeros -> zeros a__U11(tt) -> tt a__U11(z0) -> U11(z0) a__U21(tt) -> tt a__U21(z0) -> U21(z0) a__U31(tt) -> tt a__U31(z0) -> U31(z0) a__U41(tt, z0) -> a__U42(a__isNatIList(z0)) a__U41(z0, z1) -> U41(z0, z1) a__U42(tt) -> tt a__U42(z0) -> U42(z0) a__U51(tt, z0) -> a__U52(a__isNatList(z0)) a__U51(z0, z1) -> U51(z0, z1) a__U52(tt) -> tt a__U52(z0) -> U52(z0) a__U61(tt, z0, z1) -> a__U62(a__isNat(z1), z0) a__U61(z0, z1, z2) -> U61(z0, z1, z2) a__U62(tt, z0) -> s(a__length(mark(z0))) a__U62(z0, z1) -> U62(z0, z1) a__isNat(0) -> tt a__isNat(length(z0)) -> a__U11(a__isNatList(z0)) a__isNat(s(z0)) -> a__U21(a__isNat(z0)) a__isNat(z0) -> isNat(z0) a__isNatIList(z0) -> a__U31(a__isNatList(z0)) a__isNatIList(zeros) -> tt a__isNatIList(cons(z0, z1)) -> a__U41(a__isNat(z0), z1) a__isNatIList(z0) -> isNatIList(z0) a__isNatList(nil) -> tt a__isNatList(cons(z0, z1)) -> a__U51(a__isNat(z0), z1) a__isNatList(z0) -> isNatList(z0) a__length(nil) -> 0 a__length(cons(z0, z1)) -> a__U61(a__isNatList(z1), z1, z0) a__length(z0) -> length(z0) mark(zeros) -> a__zeros mark(U11(z0)) -> a__U11(mark(z0)) mark(U21(z0)) -> a__U21(mark(z0)) mark(U31(z0)) -> a__U31(mark(z0)) mark(U41(z0, z1)) -> a__U41(mark(z0), z1) mark(U42(z0)) -> a__U42(mark(z0)) mark(isNatIList(z0)) -> a__isNatIList(z0) mark(U51(z0, z1)) -> a__U51(mark(z0), z1) mark(U52(z0)) -> a__U52(mark(z0)) mark(isNatList(z0)) -> a__isNatList(z0) mark(U61(z0, z1, z2)) -> a__U61(mark(z0), z1, z2) mark(U62(z0, z1)) -> a__U62(mark(z0), z1) mark(isNat(z0)) -> a__isNat(z0) mark(length(z0)) -> a__length(mark(z0)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(0) -> 0 mark(tt) -> tt mark(s(z0)) -> s(mark(z0)) mark(nil) -> nil Tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) A__U62(tt, isNatList(cons(z0, z1))) -> c18(A__LENGTH(a__U51(a__isNat(z0), z1)), MARK(isNatList(cons(z0, z1)))) A__U62(tt, isNatList(nil)) -> c18(MARK(isNatList(nil))) A__U62(tt, isNatList(z0)) -> c18(MARK(isNatList(z0))) A__U62(tt, U61(zeros, x1, x2)) -> c18(A__LENGTH(a__U61(a__zeros, x1, x2)), MARK(U61(zeros, x1, x2))) A__U62(tt, U61(U11(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U11(mark(z0)), x1, x2)), MARK(U61(U11(z0), x1, x2))) A__U62(tt, U61(U21(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U21(mark(z0)), x1, x2)), MARK(U61(U21(z0), x1, x2))) A__U62(tt, U61(U31(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U31(mark(z0)), x1, x2)), MARK(U61(U31(z0), x1, x2))) A__U62(tt, U61(U41(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U41(mark(z0), z1), x1, x2)), MARK(U61(U41(z0, z1), x1, x2))) A__U62(tt, U61(U42(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U42(mark(z0)), x1, x2)), MARK(U61(U42(z0), x1, x2))) A__U62(tt, U61(isNatIList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatIList(z0), x1, x2)), MARK(U61(isNatIList(z0), x1, x2))) A__U62(tt, U61(U51(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U51(mark(z0), z1), x1, x2)), MARK(U61(U51(z0, z1), x1, x2))) A__U62(tt, U61(U52(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U52(mark(z0)), x1, x2)), MARK(U61(U52(z0), x1, x2))) A__U62(tt, U61(isNatList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatList(z0), x1, x2)), MARK(U61(isNatList(z0), x1, x2))) A__U62(tt, U61(U61(z0, z1, z2), x1, x2)) -> c18(A__LENGTH(a__U61(a__U61(mark(z0), z1, z2), x1, x2)), MARK(U61(U61(z0, z1, z2), x1, x2))) A__U62(tt, U61(U62(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U62(mark(z0), z1), x1, x2)), MARK(U61(U62(z0, z1), x1, x2))) A__U62(tt, U61(isNat(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNat(z0), x1, x2)), MARK(U61(isNat(z0), x1, x2))) A__U62(tt, U61(length(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__length(mark(z0)), x1, x2)), MARK(U61(length(z0), x1, x2))) A__U62(tt, U61(cons(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(cons(mark(z0), z1), x1, x2)), MARK(U61(cons(z0, z1), x1, x2))) A__U62(tt, U61(tt, x1, x2)) -> c18(A__LENGTH(a__U61(tt, x1, x2)), MARK(U61(tt, x1, x2))) A__U62(tt, U61(s(z0), x1, x2)) -> c18(A__LENGTH(a__U61(s(mark(z0)), x1, x2)), MARK(U61(s(z0), x1, x2))) A__U62(tt, U61(x0, z1, z2)) -> c18(MARK(U61(x0, z1, z2))) A__U62(tt, U61(0, x1, x2)) -> c18(A__LENGTH(a__U61(0, x1, x2))) A__U62(tt, U61(nil, x1, x2)) -> c18(A__LENGTH(a__U61(nil, x1, x2))) A__U62(tt, U62(zeros, x1)) -> c18(A__LENGTH(a__U62(a__zeros, x1)), MARK(U62(zeros, x1))) A__U62(tt, U62(U11(z0), x1)) -> c18(A__LENGTH(a__U62(a__U11(mark(z0)), x1)), MARK(U62(U11(z0), x1))) A__U62(tt, U62(U21(z0), x1)) -> c18(A__LENGTH(a__U62(a__U21(mark(z0)), x1)), MARK(U62(U21(z0), x1))) A__U62(tt, U62(U31(z0), x1)) -> c18(A__LENGTH(a__U62(a__U31(mark(z0)), x1)), MARK(U62(U31(z0), x1))) A__U62(tt, U62(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U41(mark(z0), z1), x1)), MARK(U62(U41(z0, z1), x1))) A__U62(tt, U62(U42(z0), x1)) -> c18(A__LENGTH(a__U62(a__U42(mark(z0)), x1)), MARK(U62(U42(z0), x1))) A__U62(tt, U62(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatIList(z0), x1)), MARK(U62(isNatIList(z0), x1))) A__U62(tt, U62(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U51(mark(z0), z1), x1)), MARK(U62(U51(z0, z1), x1))) A__U62(tt, U62(U52(z0), x1)) -> c18(A__LENGTH(a__U62(a__U52(mark(z0)), x1)), MARK(U62(U52(z0), x1))) A__U62(tt, U62(isNatList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatList(z0), x1)), MARK(U62(isNatList(z0), x1))) A__U62(tt, U62(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U62(a__U61(mark(z0), z1, z2), x1)), MARK(U62(U61(z0, z1, z2), x1))) A__U62(tt, U62(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U62(mark(z0), z1), x1)), MARK(U62(U62(z0, z1), x1))) A__U62(tt, U62(isNat(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNat(z0), x1)), MARK(U62(isNat(z0), x1))) A__U62(tt, U62(length(z0), x1)) -> c18(A__LENGTH(a__U62(a__length(mark(z0)), x1)), MARK(U62(length(z0), x1))) A__U62(tt, U62(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U62(cons(mark(z0), z1), x1)), MARK(U62(cons(z0, z1), x1))) A__U62(tt, U62(tt, x1)) -> c18(A__LENGTH(a__U62(tt, x1)), MARK(U62(tt, x1))) A__U62(tt, U62(s(z0), x1)) -> c18(A__LENGTH(a__U62(s(mark(z0)), x1)), MARK(U62(s(z0), x1))) A__U62(tt, U62(x0, z1)) -> c18(MARK(U62(x0, z1))) A__U62(tt, U62(0, x1)) -> c18(A__LENGTH(a__U62(0, x1))) A__U62(tt, U62(nil, x1)) -> c18(A__LENGTH(a__U62(nil, x1))) A__U62(tt, isNat(length(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(isNat(length(z0)))) A__U62(tt, isNat(s(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(isNat(s(z0)))) A__U62(tt, isNat(0)) -> c18(MARK(isNat(0))) A__U62(tt, isNat(z0)) -> c18(MARK(isNat(z0))) S tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) A__U62(tt, isNatList(cons(z0, z1))) -> c18(A__LENGTH(a__U51(a__isNat(z0), z1)), MARK(isNatList(cons(z0, z1)))) A__U62(tt, isNatList(nil)) -> c18(MARK(isNatList(nil))) A__U62(tt, isNatList(z0)) -> c18(MARK(isNatList(z0))) A__U62(tt, U61(zeros, x1, x2)) -> c18(A__LENGTH(a__U61(a__zeros, x1, x2)), MARK(U61(zeros, x1, x2))) A__U62(tt, U61(U11(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U11(mark(z0)), x1, x2)), MARK(U61(U11(z0), x1, x2))) A__U62(tt, U61(U21(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U21(mark(z0)), x1, x2)), MARK(U61(U21(z0), x1, x2))) A__U62(tt, U61(U31(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U31(mark(z0)), x1, x2)), MARK(U61(U31(z0), x1, x2))) A__U62(tt, U61(U41(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U41(mark(z0), z1), x1, x2)), MARK(U61(U41(z0, z1), x1, x2))) A__U62(tt, U61(U42(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U42(mark(z0)), x1, x2)), MARK(U61(U42(z0), x1, x2))) A__U62(tt, U61(isNatIList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatIList(z0), x1, x2)), MARK(U61(isNatIList(z0), x1, x2))) A__U62(tt, U61(U51(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U51(mark(z0), z1), x1, x2)), MARK(U61(U51(z0, z1), x1, x2))) A__U62(tt, U61(U52(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U52(mark(z0)), x1, x2)), MARK(U61(U52(z0), x1, x2))) A__U62(tt, U61(isNatList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatList(z0), x1, x2)), MARK(U61(isNatList(z0), x1, x2))) A__U62(tt, U61(U61(z0, z1, z2), x1, x2)) -> c18(A__LENGTH(a__U61(a__U61(mark(z0), z1, z2), x1, x2)), MARK(U61(U61(z0, z1, z2), x1, x2))) A__U62(tt, U61(U62(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U62(mark(z0), z1), x1, x2)), MARK(U61(U62(z0, z1), x1, x2))) A__U62(tt, U61(isNat(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNat(z0), x1, x2)), MARK(U61(isNat(z0), x1, x2))) A__U62(tt, U61(length(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__length(mark(z0)), x1, x2)), MARK(U61(length(z0), x1, x2))) A__U62(tt, U61(cons(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(cons(mark(z0), z1), x1, x2)), MARK(U61(cons(z0, z1), x1, x2))) A__U62(tt, U61(tt, x1, x2)) -> c18(A__LENGTH(a__U61(tt, x1, x2)), MARK(U61(tt, x1, x2))) A__U62(tt, U61(s(z0), x1, x2)) -> c18(A__LENGTH(a__U61(s(mark(z0)), x1, x2)), MARK(U61(s(z0), x1, x2))) A__U62(tt, U61(x0, z1, z2)) -> c18(MARK(U61(x0, z1, z2))) A__U62(tt, U61(0, x1, x2)) -> c18(A__LENGTH(a__U61(0, x1, x2))) A__U62(tt, U61(nil, x1, x2)) -> c18(A__LENGTH(a__U61(nil, x1, x2))) A__U62(tt, U62(zeros, x1)) -> c18(A__LENGTH(a__U62(a__zeros, x1)), MARK(U62(zeros, x1))) A__U62(tt, U62(U11(z0), x1)) -> c18(A__LENGTH(a__U62(a__U11(mark(z0)), x1)), MARK(U62(U11(z0), x1))) A__U62(tt, U62(U21(z0), x1)) -> c18(A__LENGTH(a__U62(a__U21(mark(z0)), x1)), MARK(U62(U21(z0), x1))) A__U62(tt, U62(U31(z0), x1)) -> c18(A__LENGTH(a__U62(a__U31(mark(z0)), x1)), MARK(U62(U31(z0), x1))) A__U62(tt, U62(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U41(mark(z0), z1), x1)), MARK(U62(U41(z0, z1), x1))) A__U62(tt, U62(U42(z0), x1)) -> c18(A__LENGTH(a__U62(a__U42(mark(z0)), x1)), MARK(U62(U42(z0), x1))) A__U62(tt, U62(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatIList(z0), x1)), MARK(U62(isNatIList(z0), x1))) A__U62(tt, U62(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U51(mark(z0), z1), x1)), MARK(U62(U51(z0, z1), x1))) A__U62(tt, U62(U52(z0), x1)) -> c18(A__LENGTH(a__U62(a__U52(mark(z0)), x1)), MARK(U62(U52(z0), x1))) A__U62(tt, U62(isNatList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatList(z0), x1)), MARK(U62(isNatList(z0), x1))) A__U62(tt, U62(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U62(a__U61(mark(z0), z1, z2), x1)), MARK(U62(U61(z0, z1, z2), x1))) A__U62(tt, U62(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U62(mark(z0), z1), x1)), MARK(U62(U62(z0, z1), x1))) A__U62(tt, U62(isNat(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNat(z0), x1)), MARK(U62(isNat(z0), x1))) A__U62(tt, U62(length(z0), x1)) -> c18(A__LENGTH(a__U62(a__length(mark(z0)), x1)), MARK(U62(length(z0), x1))) A__U62(tt, U62(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U62(cons(mark(z0), z1), x1)), MARK(U62(cons(z0, z1), x1))) A__U62(tt, U62(tt, x1)) -> c18(A__LENGTH(a__U62(tt, x1)), MARK(U62(tt, x1))) A__U62(tt, U62(s(z0), x1)) -> c18(A__LENGTH(a__U62(s(mark(z0)), x1)), MARK(U62(s(z0), x1))) A__U62(tt, U62(x0, z1)) -> c18(MARK(U62(x0, z1))) A__U62(tt, U62(0, x1)) -> c18(A__LENGTH(a__U62(0, x1))) A__U62(tt, U62(nil, x1)) -> c18(A__LENGTH(a__U62(nil, x1))) A__U62(tt, isNat(length(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(isNat(length(z0)))) A__U62(tt, isNat(s(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(isNat(s(z0)))) A__U62(tt, isNat(0)) -> c18(MARK(isNat(0))) A__U62(tt, isNat(z0)) -> c18(MARK(isNat(z0))) K tuples:none Defined Rule Symbols: a__zeros, a__U11_1, a__U21_1, a__U31_1, a__U41_2, a__U42_1, a__U51_2, a__U52_1, a__U61_3, a__U62_2, a__isNat_1, a__isNatIList_1, a__isNatList_1, a__length_1, mark_1 Defined Pair Symbols: MARK_1, A__U41_2, A__U51_2, A__ISNAT_1, A__ISNATILIST_1, A__U61_3, A__U62_2, A__ISNATLIST_1, A__LENGTH_1 Compound Symbols: c40_1, c43_1, c46_1, c48_1, c51_1, c8_1, c12_1, c21_1, c22_1, c24_1, c35_1, c36_1, c37_1, c39_1, c42_1, c16_1, c18_2, c18_1, c26_2, c26_1, c29_2, c29_1, c32_2, c32_1, c38_2, c38_1, c_1, c41_2, c41_1, c1_1, c44_2, c44_1, c45_2, c45_1, c47_2, c47_1, c16_2 ---------------------------------------- (141) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace A__U62(tt, length(z0)) -> c18(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) by A__U62(tt, length(x0)) -> c18(A__LENGTH(length(mark(x0))), MARK(length(x0))) A__U62(tt, length(zeros)) -> c18(A__LENGTH(a__length(a__zeros)), MARK(length(zeros))) A__U62(tt, length(U11(z0))) -> c18(A__LENGTH(a__length(a__U11(mark(z0)))), MARK(length(U11(z0)))) A__U62(tt, length(U21(z0))) -> c18(A__LENGTH(a__length(a__U21(mark(z0)))), MARK(length(U21(z0)))) A__U62(tt, length(U31(z0))) -> c18(A__LENGTH(a__length(a__U31(mark(z0)))), MARK(length(U31(z0)))) A__U62(tt, length(U41(z0, z1))) -> c18(A__LENGTH(a__length(a__U41(mark(z0), z1))), MARK(length(U41(z0, z1)))) A__U62(tt, length(U42(z0))) -> c18(A__LENGTH(a__length(a__U42(mark(z0)))), MARK(length(U42(z0)))) A__U62(tt, length(isNatIList(z0))) -> c18(A__LENGTH(a__length(a__isNatIList(z0))), MARK(length(isNatIList(z0)))) A__U62(tt, length(U51(z0, z1))) -> c18(A__LENGTH(a__length(a__U51(mark(z0), z1))), MARK(length(U51(z0, z1)))) A__U62(tt, length(U52(z0))) -> c18(A__LENGTH(a__length(a__U52(mark(z0)))), MARK(length(U52(z0)))) A__U62(tt, length(isNatList(z0))) -> c18(A__LENGTH(a__length(a__isNatList(z0))), MARK(length(isNatList(z0)))) A__U62(tt, length(U61(z0, z1, z2))) -> c18(A__LENGTH(a__length(a__U61(mark(z0), z1, z2))), MARK(length(U61(z0, z1, z2)))) A__U62(tt, length(U62(z0, z1))) -> c18(A__LENGTH(a__length(a__U62(mark(z0), z1))), MARK(length(U62(z0, z1)))) A__U62(tt, length(isNat(z0))) -> c18(A__LENGTH(a__length(a__isNat(z0))), MARK(length(isNat(z0)))) A__U62(tt, length(length(z0))) -> c18(A__LENGTH(a__length(a__length(mark(z0)))), MARK(length(length(z0)))) A__U62(tt, length(cons(z0, z1))) -> c18(A__LENGTH(a__length(cons(mark(z0), z1))), MARK(length(cons(z0, z1)))) A__U62(tt, length(0)) -> c18(A__LENGTH(a__length(0)), MARK(length(0))) A__U62(tt, length(tt)) -> c18(A__LENGTH(a__length(tt)), MARK(length(tt))) A__U62(tt, length(s(z0))) -> c18(A__LENGTH(a__length(s(mark(z0)))), MARK(length(s(z0)))) A__U62(tt, length(nil)) -> c18(A__LENGTH(a__length(nil)), MARK(length(nil))) ---------------------------------------- (142) Obligation: Complexity Dependency Tuples Problem Rules: a__zeros -> cons(0, zeros) a__zeros -> zeros a__U11(tt) -> tt a__U11(z0) -> U11(z0) a__U21(tt) -> tt a__U21(z0) -> U21(z0) a__U31(tt) -> tt a__U31(z0) -> U31(z0) a__U41(tt, z0) -> a__U42(a__isNatIList(z0)) a__U41(z0, z1) -> U41(z0, z1) a__U42(tt) -> tt a__U42(z0) -> U42(z0) a__U51(tt, z0) -> a__U52(a__isNatList(z0)) a__U51(z0, z1) -> U51(z0, z1) a__U52(tt) -> tt a__U52(z0) -> U52(z0) a__U61(tt, z0, z1) -> a__U62(a__isNat(z1), z0) a__U61(z0, z1, z2) -> U61(z0, z1, z2) a__U62(tt, z0) -> s(a__length(mark(z0))) a__U62(z0, z1) -> U62(z0, z1) a__isNat(0) -> tt a__isNat(length(z0)) -> a__U11(a__isNatList(z0)) a__isNat(s(z0)) -> a__U21(a__isNat(z0)) a__isNat(z0) -> isNat(z0) a__isNatIList(z0) -> a__U31(a__isNatList(z0)) a__isNatIList(zeros) -> tt a__isNatIList(cons(z0, z1)) -> a__U41(a__isNat(z0), z1) a__isNatIList(z0) -> isNatIList(z0) a__isNatList(nil) -> tt a__isNatList(cons(z0, z1)) -> a__U51(a__isNat(z0), z1) a__isNatList(z0) -> isNatList(z0) a__length(nil) -> 0 a__length(cons(z0, z1)) -> a__U61(a__isNatList(z1), z1, z0) a__length(z0) -> length(z0) mark(zeros) -> a__zeros mark(U11(z0)) -> a__U11(mark(z0)) mark(U21(z0)) -> a__U21(mark(z0)) mark(U31(z0)) -> a__U31(mark(z0)) mark(U41(z0, z1)) -> a__U41(mark(z0), z1) mark(U42(z0)) -> a__U42(mark(z0)) mark(isNatIList(z0)) -> a__isNatIList(z0) mark(U51(z0, z1)) -> a__U51(mark(z0), z1) mark(U52(z0)) -> a__U52(mark(z0)) mark(isNatList(z0)) -> a__isNatList(z0) mark(U61(z0, z1, z2)) -> a__U61(mark(z0), z1, z2) mark(U62(z0, z1)) -> a__U62(mark(z0), z1) mark(isNat(z0)) -> a__isNat(z0) mark(length(z0)) -> a__length(mark(z0)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(0) -> 0 mark(tt) -> tt mark(s(z0)) -> s(mark(z0)) mark(nil) -> nil Tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) A__U62(tt, isNatList(cons(z0, z1))) -> c18(A__LENGTH(a__U51(a__isNat(z0), z1)), MARK(isNatList(cons(z0, z1)))) A__U62(tt, isNatList(nil)) -> c18(MARK(isNatList(nil))) A__U62(tt, isNatList(z0)) -> c18(MARK(isNatList(z0))) A__U62(tt, U61(zeros, x1, x2)) -> c18(A__LENGTH(a__U61(a__zeros, x1, x2)), MARK(U61(zeros, x1, x2))) A__U62(tt, U61(U11(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U11(mark(z0)), x1, x2)), MARK(U61(U11(z0), x1, x2))) A__U62(tt, U61(U21(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U21(mark(z0)), x1, x2)), MARK(U61(U21(z0), x1, x2))) A__U62(tt, U61(U31(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U31(mark(z0)), x1, x2)), MARK(U61(U31(z0), x1, x2))) A__U62(tt, U61(U41(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U41(mark(z0), z1), x1, x2)), MARK(U61(U41(z0, z1), x1, x2))) A__U62(tt, U61(U42(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U42(mark(z0)), x1, x2)), MARK(U61(U42(z0), x1, x2))) A__U62(tt, U61(isNatIList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatIList(z0), x1, x2)), MARK(U61(isNatIList(z0), x1, x2))) A__U62(tt, U61(U51(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U51(mark(z0), z1), x1, x2)), MARK(U61(U51(z0, z1), x1, x2))) A__U62(tt, U61(U52(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U52(mark(z0)), x1, x2)), MARK(U61(U52(z0), x1, x2))) A__U62(tt, U61(isNatList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatList(z0), x1, x2)), MARK(U61(isNatList(z0), x1, x2))) A__U62(tt, U61(U61(z0, z1, z2), x1, x2)) -> c18(A__LENGTH(a__U61(a__U61(mark(z0), z1, z2), x1, x2)), MARK(U61(U61(z0, z1, z2), x1, x2))) A__U62(tt, U61(U62(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U62(mark(z0), z1), x1, x2)), MARK(U61(U62(z0, z1), x1, x2))) A__U62(tt, U61(isNat(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNat(z0), x1, x2)), MARK(U61(isNat(z0), x1, x2))) A__U62(tt, U61(length(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__length(mark(z0)), x1, x2)), MARK(U61(length(z0), x1, x2))) A__U62(tt, U61(cons(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(cons(mark(z0), z1), x1, x2)), MARK(U61(cons(z0, z1), x1, x2))) A__U62(tt, U61(tt, x1, x2)) -> c18(A__LENGTH(a__U61(tt, x1, x2)), MARK(U61(tt, x1, x2))) A__U62(tt, U61(s(z0), x1, x2)) -> c18(A__LENGTH(a__U61(s(mark(z0)), x1, x2)), MARK(U61(s(z0), x1, x2))) A__U62(tt, U61(x0, z1, z2)) -> c18(MARK(U61(x0, z1, z2))) A__U62(tt, U61(0, x1, x2)) -> c18(A__LENGTH(a__U61(0, x1, x2))) A__U62(tt, U61(nil, x1, x2)) -> c18(A__LENGTH(a__U61(nil, x1, x2))) A__U62(tt, U62(zeros, x1)) -> c18(A__LENGTH(a__U62(a__zeros, x1)), MARK(U62(zeros, x1))) A__U62(tt, U62(U11(z0), x1)) -> c18(A__LENGTH(a__U62(a__U11(mark(z0)), x1)), MARK(U62(U11(z0), x1))) A__U62(tt, U62(U21(z0), x1)) -> c18(A__LENGTH(a__U62(a__U21(mark(z0)), x1)), MARK(U62(U21(z0), x1))) A__U62(tt, U62(U31(z0), x1)) -> c18(A__LENGTH(a__U62(a__U31(mark(z0)), x1)), MARK(U62(U31(z0), x1))) A__U62(tt, U62(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U41(mark(z0), z1), x1)), MARK(U62(U41(z0, z1), x1))) A__U62(tt, U62(U42(z0), x1)) -> c18(A__LENGTH(a__U62(a__U42(mark(z0)), x1)), MARK(U62(U42(z0), x1))) A__U62(tt, U62(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatIList(z0), x1)), MARK(U62(isNatIList(z0), x1))) A__U62(tt, U62(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U51(mark(z0), z1), x1)), MARK(U62(U51(z0, z1), x1))) A__U62(tt, U62(U52(z0), x1)) -> c18(A__LENGTH(a__U62(a__U52(mark(z0)), x1)), MARK(U62(U52(z0), x1))) A__U62(tt, U62(isNatList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatList(z0), x1)), MARK(U62(isNatList(z0), x1))) A__U62(tt, U62(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U62(a__U61(mark(z0), z1, z2), x1)), MARK(U62(U61(z0, z1, z2), x1))) A__U62(tt, U62(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U62(mark(z0), z1), x1)), MARK(U62(U62(z0, z1), x1))) A__U62(tt, U62(isNat(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNat(z0), x1)), MARK(U62(isNat(z0), x1))) A__U62(tt, U62(length(z0), x1)) -> c18(A__LENGTH(a__U62(a__length(mark(z0)), x1)), MARK(U62(length(z0), x1))) A__U62(tt, U62(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U62(cons(mark(z0), z1), x1)), MARK(U62(cons(z0, z1), x1))) A__U62(tt, U62(tt, x1)) -> c18(A__LENGTH(a__U62(tt, x1)), MARK(U62(tt, x1))) A__U62(tt, U62(s(z0), x1)) -> c18(A__LENGTH(a__U62(s(mark(z0)), x1)), MARK(U62(s(z0), x1))) A__U62(tt, U62(x0, z1)) -> c18(MARK(U62(x0, z1))) A__U62(tt, U62(0, x1)) -> c18(A__LENGTH(a__U62(0, x1))) A__U62(tt, U62(nil, x1)) -> c18(A__LENGTH(a__U62(nil, x1))) A__U62(tt, isNat(length(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(isNat(length(z0)))) A__U62(tt, isNat(s(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(isNat(s(z0)))) A__U62(tt, isNat(0)) -> c18(MARK(isNat(0))) A__U62(tt, isNat(z0)) -> c18(MARK(isNat(z0))) A__U62(tt, length(x0)) -> c18(A__LENGTH(length(mark(x0))), MARK(length(x0))) A__U62(tt, length(zeros)) -> c18(A__LENGTH(a__length(a__zeros)), MARK(length(zeros))) A__U62(tt, length(U11(z0))) -> c18(A__LENGTH(a__length(a__U11(mark(z0)))), MARK(length(U11(z0)))) A__U62(tt, length(U21(z0))) -> c18(A__LENGTH(a__length(a__U21(mark(z0)))), MARK(length(U21(z0)))) A__U62(tt, length(U31(z0))) -> c18(A__LENGTH(a__length(a__U31(mark(z0)))), MARK(length(U31(z0)))) A__U62(tt, length(U41(z0, z1))) -> c18(A__LENGTH(a__length(a__U41(mark(z0), z1))), MARK(length(U41(z0, z1)))) A__U62(tt, length(U42(z0))) -> c18(A__LENGTH(a__length(a__U42(mark(z0)))), MARK(length(U42(z0)))) A__U62(tt, length(isNatIList(z0))) -> c18(A__LENGTH(a__length(a__isNatIList(z0))), MARK(length(isNatIList(z0)))) A__U62(tt, length(U51(z0, z1))) -> c18(A__LENGTH(a__length(a__U51(mark(z0), z1))), MARK(length(U51(z0, z1)))) A__U62(tt, length(U52(z0))) -> c18(A__LENGTH(a__length(a__U52(mark(z0)))), MARK(length(U52(z0)))) A__U62(tt, length(isNatList(z0))) -> c18(A__LENGTH(a__length(a__isNatList(z0))), MARK(length(isNatList(z0)))) A__U62(tt, length(U61(z0, z1, z2))) -> c18(A__LENGTH(a__length(a__U61(mark(z0), z1, z2))), MARK(length(U61(z0, z1, z2)))) A__U62(tt, length(U62(z0, z1))) -> c18(A__LENGTH(a__length(a__U62(mark(z0), z1))), MARK(length(U62(z0, z1)))) A__U62(tt, length(isNat(z0))) -> c18(A__LENGTH(a__length(a__isNat(z0))), MARK(length(isNat(z0)))) A__U62(tt, length(length(z0))) -> c18(A__LENGTH(a__length(a__length(mark(z0)))), MARK(length(length(z0)))) A__U62(tt, length(cons(z0, z1))) -> c18(A__LENGTH(a__length(cons(mark(z0), z1))), MARK(length(cons(z0, z1)))) A__U62(tt, length(0)) -> c18(A__LENGTH(a__length(0)), MARK(length(0))) A__U62(tt, length(tt)) -> c18(A__LENGTH(a__length(tt)), MARK(length(tt))) A__U62(tt, length(s(z0))) -> c18(A__LENGTH(a__length(s(mark(z0)))), MARK(length(s(z0)))) A__U62(tt, length(nil)) -> c18(A__LENGTH(a__length(nil)), MARK(length(nil))) S tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) A__U62(tt, isNatList(cons(z0, z1))) -> c18(A__LENGTH(a__U51(a__isNat(z0), z1)), MARK(isNatList(cons(z0, z1)))) A__U62(tt, isNatList(nil)) -> c18(MARK(isNatList(nil))) A__U62(tt, isNatList(z0)) -> c18(MARK(isNatList(z0))) A__U62(tt, U61(zeros, x1, x2)) -> c18(A__LENGTH(a__U61(a__zeros, x1, x2)), MARK(U61(zeros, x1, x2))) A__U62(tt, U61(U11(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U11(mark(z0)), x1, x2)), MARK(U61(U11(z0), x1, x2))) A__U62(tt, U61(U21(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U21(mark(z0)), x1, x2)), MARK(U61(U21(z0), x1, x2))) A__U62(tt, U61(U31(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U31(mark(z0)), x1, x2)), MARK(U61(U31(z0), x1, x2))) A__U62(tt, U61(U41(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U41(mark(z0), z1), x1, x2)), MARK(U61(U41(z0, z1), x1, x2))) A__U62(tt, U61(U42(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U42(mark(z0)), x1, x2)), MARK(U61(U42(z0), x1, x2))) A__U62(tt, U61(isNatIList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatIList(z0), x1, x2)), MARK(U61(isNatIList(z0), x1, x2))) A__U62(tt, U61(U51(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U51(mark(z0), z1), x1, x2)), MARK(U61(U51(z0, z1), x1, x2))) A__U62(tt, U61(U52(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U52(mark(z0)), x1, x2)), MARK(U61(U52(z0), x1, x2))) A__U62(tt, U61(isNatList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatList(z0), x1, x2)), MARK(U61(isNatList(z0), x1, x2))) A__U62(tt, U61(U61(z0, z1, z2), x1, x2)) -> c18(A__LENGTH(a__U61(a__U61(mark(z0), z1, z2), x1, x2)), MARK(U61(U61(z0, z1, z2), x1, x2))) A__U62(tt, U61(U62(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U62(mark(z0), z1), x1, x2)), MARK(U61(U62(z0, z1), x1, x2))) A__U62(tt, U61(isNat(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNat(z0), x1, x2)), MARK(U61(isNat(z0), x1, x2))) A__U62(tt, U61(length(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__length(mark(z0)), x1, x2)), MARK(U61(length(z0), x1, x2))) A__U62(tt, U61(cons(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(cons(mark(z0), z1), x1, x2)), MARK(U61(cons(z0, z1), x1, x2))) A__U62(tt, U61(tt, x1, x2)) -> c18(A__LENGTH(a__U61(tt, x1, x2)), MARK(U61(tt, x1, x2))) A__U62(tt, U61(s(z0), x1, x2)) -> c18(A__LENGTH(a__U61(s(mark(z0)), x1, x2)), MARK(U61(s(z0), x1, x2))) A__U62(tt, U61(x0, z1, z2)) -> c18(MARK(U61(x0, z1, z2))) A__U62(tt, U61(0, x1, x2)) -> c18(A__LENGTH(a__U61(0, x1, x2))) A__U62(tt, U61(nil, x1, x2)) -> c18(A__LENGTH(a__U61(nil, x1, x2))) A__U62(tt, U62(zeros, x1)) -> c18(A__LENGTH(a__U62(a__zeros, x1)), MARK(U62(zeros, x1))) A__U62(tt, U62(U11(z0), x1)) -> c18(A__LENGTH(a__U62(a__U11(mark(z0)), x1)), MARK(U62(U11(z0), x1))) A__U62(tt, U62(U21(z0), x1)) -> c18(A__LENGTH(a__U62(a__U21(mark(z0)), x1)), MARK(U62(U21(z0), x1))) A__U62(tt, U62(U31(z0), x1)) -> c18(A__LENGTH(a__U62(a__U31(mark(z0)), x1)), MARK(U62(U31(z0), x1))) A__U62(tt, U62(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U41(mark(z0), z1), x1)), MARK(U62(U41(z0, z1), x1))) A__U62(tt, U62(U42(z0), x1)) -> c18(A__LENGTH(a__U62(a__U42(mark(z0)), x1)), MARK(U62(U42(z0), x1))) A__U62(tt, U62(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatIList(z0), x1)), MARK(U62(isNatIList(z0), x1))) A__U62(tt, U62(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U51(mark(z0), z1), x1)), MARK(U62(U51(z0, z1), x1))) A__U62(tt, U62(U52(z0), x1)) -> c18(A__LENGTH(a__U62(a__U52(mark(z0)), x1)), MARK(U62(U52(z0), x1))) A__U62(tt, U62(isNatList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatList(z0), x1)), MARK(U62(isNatList(z0), x1))) A__U62(tt, U62(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U62(a__U61(mark(z0), z1, z2), x1)), MARK(U62(U61(z0, z1, z2), x1))) A__U62(tt, U62(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U62(mark(z0), z1), x1)), MARK(U62(U62(z0, z1), x1))) A__U62(tt, U62(isNat(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNat(z0), x1)), MARK(U62(isNat(z0), x1))) A__U62(tt, U62(length(z0), x1)) -> c18(A__LENGTH(a__U62(a__length(mark(z0)), x1)), MARK(U62(length(z0), x1))) A__U62(tt, U62(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U62(cons(mark(z0), z1), x1)), MARK(U62(cons(z0, z1), x1))) A__U62(tt, U62(tt, x1)) -> c18(A__LENGTH(a__U62(tt, x1)), MARK(U62(tt, x1))) A__U62(tt, U62(s(z0), x1)) -> c18(A__LENGTH(a__U62(s(mark(z0)), x1)), MARK(U62(s(z0), x1))) A__U62(tt, U62(x0, z1)) -> c18(MARK(U62(x0, z1))) A__U62(tt, U62(0, x1)) -> c18(A__LENGTH(a__U62(0, x1))) A__U62(tt, U62(nil, x1)) -> c18(A__LENGTH(a__U62(nil, x1))) A__U62(tt, isNat(length(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(isNat(length(z0)))) A__U62(tt, isNat(s(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(isNat(s(z0)))) A__U62(tt, isNat(0)) -> c18(MARK(isNat(0))) A__U62(tt, isNat(z0)) -> c18(MARK(isNat(z0))) A__U62(tt, length(x0)) -> c18(A__LENGTH(length(mark(x0))), MARK(length(x0))) A__U62(tt, length(zeros)) -> c18(A__LENGTH(a__length(a__zeros)), MARK(length(zeros))) A__U62(tt, length(U11(z0))) -> c18(A__LENGTH(a__length(a__U11(mark(z0)))), MARK(length(U11(z0)))) A__U62(tt, length(U21(z0))) -> c18(A__LENGTH(a__length(a__U21(mark(z0)))), MARK(length(U21(z0)))) A__U62(tt, length(U31(z0))) -> c18(A__LENGTH(a__length(a__U31(mark(z0)))), MARK(length(U31(z0)))) A__U62(tt, length(U41(z0, z1))) -> c18(A__LENGTH(a__length(a__U41(mark(z0), z1))), MARK(length(U41(z0, z1)))) A__U62(tt, length(U42(z0))) -> c18(A__LENGTH(a__length(a__U42(mark(z0)))), MARK(length(U42(z0)))) A__U62(tt, length(isNatIList(z0))) -> c18(A__LENGTH(a__length(a__isNatIList(z0))), MARK(length(isNatIList(z0)))) A__U62(tt, length(U51(z0, z1))) -> c18(A__LENGTH(a__length(a__U51(mark(z0), z1))), MARK(length(U51(z0, z1)))) A__U62(tt, length(U52(z0))) -> c18(A__LENGTH(a__length(a__U52(mark(z0)))), MARK(length(U52(z0)))) A__U62(tt, length(isNatList(z0))) -> c18(A__LENGTH(a__length(a__isNatList(z0))), MARK(length(isNatList(z0)))) A__U62(tt, length(U61(z0, z1, z2))) -> c18(A__LENGTH(a__length(a__U61(mark(z0), z1, z2))), MARK(length(U61(z0, z1, z2)))) A__U62(tt, length(U62(z0, z1))) -> c18(A__LENGTH(a__length(a__U62(mark(z0), z1))), MARK(length(U62(z0, z1)))) A__U62(tt, length(isNat(z0))) -> c18(A__LENGTH(a__length(a__isNat(z0))), MARK(length(isNat(z0)))) A__U62(tt, length(length(z0))) -> c18(A__LENGTH(a__length(a__length(mark(z0)))), MARK(length(length(z0)))) A__U62(tt, length(cons(z0, z1))) -> c18(A__LENGTH(a__length(cons(mark(z0), z1))), MARK(length(cons(z0, z1)))) A__U62(tt, length(0)) -> c18(A__LENGTH(a__length(0)), MARK(length(0))) A__U62(tt, length(tt)) -> c18(A__LENGTH(a__length(tt)), MARK(length(tt))) A__U62(tt, length(s(z0))) -> c18(A__LENGTH(a__length(s(mark(z0)))), MARK(length(s(z0)))) A__U62(tt, length(nil)) -> c18(A__LENGTH(a__length(nil)), MARK(length(nil))) K tuples:none Defined Rule Symbols: a__zeros, a__U11_1, a__U21_1, a__U31_1, a__U41_2, a__U42_1, a__U51_2, a__U52_1, a__U61_3, a__U62_2, a__isNat_1, a__isNatIList_1, a__isNatList_1, a__length_1, mark_1 Defined Pair Symbols: MARK_1, A__U41_2, A__U51_2, A__ISNAT_1, A__ISNATILIST_1, A__U61_3, A__U62_2, A__ISNATLIST_1, A__LENGTH_1 Compound Symbols: c40_1, c43_1, c46_1, c48_1, c51_1, c8_1, c12_1, c21_1, c22_1, c24_1, c35_1, c36_1, c37_1, c39_1, c42_1, c16_1, c18_2, c18_1, c26_2, c26_1, c29_2, c29_1, c32_2, c32_1, c38_2, c38_1, c_1, c41_2, c41_1, c1_1, c44_2, c44_1, c45_2, c45_1, c47_2, c47_1, c16_2 ---------------------------------------- (143) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 4 trailing tuple parts ---------------------------------------- (144) Obligation: Complexity Dependency Tuples Problem Rules: a__zeros -> cons(0, zeros) a__zeros -> zeros a__U11(tt) -> tt a__U11(z0) -> U11(z0) a__U21(tt) -> tt a__U21(z0) -> U21(z0) a__U31(tt) -> tt a__U31(z0) -> U31(z0) a__U41(tt, z0) -> a__U42(a__isNatIList(z0)) a__U41(z0, z1) -> U41(z0, z1) a__U42(tt) -> tt a__U42(z0) -> U42(z0) a__U51(tt, z0) -> a__U52(a__isNatList(z0)) a__U51(z0, z1) -> U51(z0, z1) a__U52(tt) -> tt a__U52(z0) -> U52(z0) a__U61(tt, z0, z1) -> a__U62(a__isNat(z1), z0) a__U61(z0, z1, z2) -> U61(z0, z1, z2) a__U62(tt, z0) -> s(a__length(mark(z0))) a__U62(z0, z1) -> U62(z0, z1) a__isNat(0) -> tt a__isNat(length(z0)) -> a__U11(a__isNatList(z0)) a__isNat(s(z0)) -> a__U21(a__isNat(z0)) a__isNat(z0) -> isNat(z0) a__isNatIList(z0) -> a__U31(a__isNatList(z0)) a__isNatIList(zeros) -> tt a__isNatIList(cons(z0, z1)) -> a__U41(a__isNat(z0), z1) a__isNatIList(z0) -> isNatIList(z0) a__isNatList(nil) -> tt a__isNatList(cons(z0, z1)) -> a__U51(a__isNat(z0), z1) a__isNatList(z0) -> isNatList(z0) a__length(nil) -> 0 a__length(cons(z0, z1)) -> a__U61(a__isNatList(z1), z1, z0) a__length(z0) -> length(z0) mark(zeros) -> a__zeros mark(U11(z0)) -> a__U11(mark(z0)) mark(U21(z0)) -> a__U21(mark(z0)) mark(U31(z0)) -> a__U31(mark(z0)) mark(U41(z0, z1)) -> a__U41(mark(z0), z1) mark(U42(z0)) -> a__U42(mark(z0)) mark(isNatIList(z0)) -> a__isNatIList(z0) mark(U51(z0, z1)) -> a__U51(mark(z0), z1) mark(U52(z0)) -> a__U52(mark(z0)) mark(isNatList(z0)) -> a__isNatList(z0) mark(U61(z0, z1, z2)) -> a__U61(mark(z0), z1, z2) mark(U62(z0, z1)) -> a__U62(mark(z0), z1) mark(isNat(z0)) -> a__isNat(z0) mark(length(z0)) -> a__length(mark(z0)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(0) -> 0 mark(tt) -> tt mark(s(z0)) -> s(mark(z0)) mark(nil) -> nil Tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) A__U62(tt, isNatList(cons(z0, z1))) -> c18(A__LENGTH(a__U51(a__isNat(z0), z1)), MARK(isNatList(cons(z0, z1)))) A__U62(tt, isNatList(nil)) -> c18(MARK(isNatList(nil))) A__U62(tt, isNatList(z0)) -> c18(MARK(isNatList(z0))) A__U62(tt, U61(zeros, x1, x2)) -> c18(A__LENGTH(a__U61(a__zeros, x1, x2)), MARK(U61(zeros, x1, x2))) A__U62(tt, U61(U11(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U11(mark(z0)), x1, x2)), MARK(U61(U11(z0), x1, x2))) A__U62(tt, U61(U21(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U21(mark(z0)), x1, x2)), MARK(U61(U21(z0), x1, x2))) A__U62(tt, U61(U31(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U31(mark(z0)), x1, x2)), MARK(U61(U31(z0), x1, x2))) A__U62(tt, U61(U41(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U41(mark(z0), z1), x1, x2)), MARK(U61(U41(z0, z1), x1, x2))) A__U62(tt, U61(U42(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U42(mark(z0)), x1, x2)), MARK(U61(U42(z0), x1, x2))) A__U62(tt, U61(isNatIList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatIList(z0), x1, x2)), MARK(U61(isNatIList(z0), x1, x2))) A__U62(tt, U61(U51(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U51(mark(z0), z1), x1, x2)), MARK(U61(U51(z0, z1), x1, x2))) A__U62(tt, U61(U52(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U52(mark(z0)), x1, x2)), MARK(U61(U52(z0), x1, x2))) A__U62(tt, U61(isNatList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatList(z0), x1, x2)), MARK(U61(isNatList(z0), x1, x2))) A__U62(tt, U61(U61(z0, z1, z2), x1, x2)) -> c18(A__LENGTH(a__U61(a__U61(mark(z0), z1, z2), x1, x2)), MARK(U61(U61(z0, z1, z2), x1, x2))) A__U62(tt, U61(U62(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U62(mark(z0), z1), x1, x2)), MARK(U61(U62(z0, z1), x1, x2))) A__U62(tt, U61(isNat(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNat(z0), x1, x2)), MARK(U61(isNat(z0), x1, x2))) A__U62(tt, U61(length(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__length(mark(z0)), x1, x2)), MARK(U61(length(z0), x1, x2))) A__U62(tt, U61(cons(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(cons(mark(z0), z1), x1, x2)), MARK(U61(cons(z0, z1), x1, x2))) A__U62(tt, U61(tt, x1, x2)) -> c18(A__LENGTH(a__U61(tt, x1, x2)), MARK(U61(tt, x1, x2))) A__U62(tt, U61(s(z0), x1, x2)) -> c18(A__LENGTH(a__U61(s(mark(z0)), x1, x2)), MARK(U61(s(z0), x1, x2))) A__U62(tt, U61(x0, z1, z2)) -> c18(MARK(U61(x0, z1, z2))) A__U62(tt, U61(0, x1, x2)) -> c18(A__LENGTH(a__U61(0, x1, x2))) A__U62(tt, U61(nil, x1, x2)) -> c18(A__LENGTH(a__U61(nil, x1, x2))) A__U62(tt, U62(zeros, x1)) -> c18(A__LENGTH(a__U62(a__zeros, x1)), MARK(U62(zeros, x1))) A__U62(tt, U62(U11(z0), x1)) -> c18(A__LENGTH(a__U62(a__U11(mark(z0)), x1)), MARK(U62(U11(z0), x1))) A__U62(tt, U62(U21(z0), x1)) -> c18(A__LENGTH(a__U62(a__U21(mark(z0)), x1)), MARK(U62(U21(z0), x1))) A__U62(tt, U62(U31(z0), x1)) -> c18(A__LENGTH(a__U62(a__U31(mark(z0)), x1)), MARK(U62(U31(z0), x1))) A__U62(tt, U62(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U41(mark(z0), z1), x1)), MARK(U62(U41(z0, z1), x1))) A__U62(tt, U62(U42(z0), x1)) -> c18(A__LENGTH(a__U62(a__U42(mark(z0)), x1)), MARK(U62(U42(z0), x1))) A__U62(tt, U62(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatIList(z0), x1)), MARK(U62(isNatIList(z0), x1))) A__U62(tt, U62(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U51(mark(z0), z1), x1)), MARK(U62(U51(z0, z1), x1))) A__U62(tt, U62(U52(z0), x1)) -> c18(A__LENGTH(a__U62(a__U52(mark(z0)), x1)), MARK(U62(U52(z0), x1))) A__U62(tt, U62(isNatList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatList(z0), x1)), MARK(U62(isNatList(z0), x1))) A__U62(tt, U62(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U62(a__U61(mark(z0), z1, z2), x1)), MARK(U62(U61(z0, z1, z2), x1))) A__U62(tt, U62(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U62(mark(z0), z1), x1)), MARK(U62(U62(z0, z1), x1))) A__U62(tt, U62(isNat(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNat(z0), x1)), MARK(U62(isNat(z0), x1))) A__U62(tt, U62(length(z0), x1)) -> c18(A__LENGTH(a__U62(a__length(mark(z0)), x1)), MARK(U62(length(z0), x1))) A__U62(tt, U62(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U62(cons(mark(z0), z1), x1)), MARK(U62(cons(z0, z1), x1))) A__U62(tt, U62(tt, x1)) -> c18(A__LENGTH(a__U62(tt, x1)), MARK(U62(tt, x1))) A__U62(tt, U62(s(z0), x1)) -> c18(A__LENGTH(a__U62(s(mark(z0)), x1)), MARK(U62(s(z0), x1))) A__U62(tt, U62(x0, z1)) -> c18(MARK(U62(x0, z1))) A__U62(tt, U62(0, x1)) -> c18(A__LENGTH(a__U62(0, x1))) A__U62(tt, U62(nil, x1)) -> c18(A__LENGTH(a__U62(nil, x1))) A__U62(tt, isNat(length(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(isNat(length(z0)))) A__U62(tt, isNat(s(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(isNat(s(z0)))) A__U62(tt, isNat(0)) -> c18(MARK(isNat(0))) A__U62(tt, isNat(z0)) -> c18(MARK(isNat(z0))) A__U62(tt, length(zeros)) -> c18(A__LENGTH(a__length(a__zeros)), MARK(length(zeros))) A__U62(tt, length(U11(z0))) -> c18(A__LENGTH(a__length(a__U11(mark(z0)))), MARK(length(U11(z0)))) A__U62(tt, length(U21(z0))) -> c18(A__LENGTH(a__length(a__U21(mark(z0)))), MARK(length(U21(z0)))) A__U62(tt, length(U31(z0))) -> c18(A__LENGTH(a__length(a__U31(mark(z0)))), MARK(length(U31(z0)))) A__U62(tt, length(U41(z0, z1))) -> c18(A__LENGTH(a__length(a__U41(mark(z0), z1))), MARK(length(U41(z0, z1)))) A__U62(tt, length(U42(z0))) -> c18(A__LENGTH(a__length(a__U42(mark(z0)))), MARK(length(U42(z0)))) A__U62(tt, length(isNatIList(z0))) -> c18(A__LENGTH(a__length(a__isNatIList(z0))), MARK(length(isNatIList(z0)))) A__U62(tt, length(U51(z0, z1))) -> c18(A__LENGTH(a__length(a__U51(mark(z0), z1))), MARK(length(U51(z0, z1)))) A__U62(tt, length(U52(z0))) -> c18(A__LENGTH(a__length(a__U52(mark(z0)))), MARK(length(U52(z0)))) A__U62(tt, length(isNatList(z0))) -> c18(A__LENGTH(a__length(a__isNatList(z0))), MARK(length(isNatList(z0)))) A__U62(tt, length(U61(z0, z1, z2))) -> c18(A__LENGTH(a__length(a__U61(mark(z0), z1, z2))), MARK(length(U61(z0, z1, z2)))) A__U62(tt, length(U62(z0, z1))) -> c18(A__LENGTH(a__length(a__U62(mark(z0), z1))), MARK(length(U62(z0, z1)))) A__U62(tt, length(isNat(z0))) -> c18(A__LENGTH(a__length(a__isNat(z0))), MARK(length(isNat(z0)))) A__U62(tt, length(length(z0))) -> c18(A__LENGTH(a__length(a__length(mark(z0)))), MARK(length(length(z0)))) A__U62(tt, length(cons(z0, z1))) -> c18(A__LENGTH(a__length(cons(mark(z0), z1))), MARK(length(cons(z0, z1)))) A__U62(tt, length(s(z0))) -> c18(A__LENGTH(a__length(s(mark(z0)))), MARK(length(s(z0)))) A__U62(tt, length(x0)) -> c18(MARK(length(x0))) A__U62(tt, length(0)) -> c18(A__LENGTH(a__length(0))) A__U62(tt, length(tt)) -> c18(A__LENGTH(a__length(tt))) A__U62(tt, length(nil)) -> c18(A__LENGTH(a__length(nil))) S tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) A__U62(tt, isNatList(cons(z0, z1))) -> c18(A__LENGTH(a__U51(a__isNat(z0), z1)), MARK(isNatList(cons(z0, z1)))) A__U62(tt, isNatList(nil)) -> c18(MARK(isNatList(nil))) A__U62(tt, isNatList(z0)) -> c18(MARK(isNatList(z0))) A__U62(tt, U61(zeros, x1, x2)) -> c18(A__LENGTH(a__U61(a__zeros, x1, x2)), MARK(U61(zeros, x1, x2))) A__U62(tt, U61(U11(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U11(mark(z0)), x1, x2)), MARK(U61(U11(z0), x1, x2))) A__U62(tt, U61(U21(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U21(mark(z0)), x1, x2)), MARK(U61(U21(z0), x1, x2))) A__U62(tt, U61(U31(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U31(mark(z0)), x1, x2)), MARK(U61(U31(z0), x1, x2))) A__U62(tt, U61(U41(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U41(mark(z0), z1), x1, x2)), MARK(U61(U41(z0, z1), x1, x2))) A__U62(tt, U61(U42(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U42(mark(z0)), x1, x2)), MARK(U61(U42(z0), x1, x2))) A__U62(tt, U61(isNatIList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatIList(z0), x1, x2)), MARK(U61(isNatIList(z0), x1, x2))) A__U62(tt, U61(U51(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U51(mark(z0), z1), x1, x2)), MARK(U61(U51(z0, z1), x1, x2))) A__U62(tt, U61(U52(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U52(mark(z0)), x1, x2)), MARK(U61(U52(z0), x1, x2))) A__U62(tt, U61(isNatList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatList(z0), x1, x2)), MARK(U61(isNatList(z0), x1, x2))) A__U62(tt, U61(U61(z0, z1, z2), x1, x2)) -> c18(A__LENGTH(a__U61(a__U61(mark(z0), z1, z2), x1, x2)), MARK(U61(U61(z0, z1, z2), x1, x2))) A__U62(tt, U61(U62(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U62(mark(z0), z1), x1, x2)), MARK(U61(U62(z0, z1), x1, x2))) A__U62(tt, U61(isNat(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNat(z0), x1, x2)), MARK(U61(isNat(z0), x1, x2))) A__U62(tt, U61(length(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__length(mark(z0)), x1, x2)), MARK(U61(length(z0), x1, x2))) A__U62(tt, U61(cons(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(cons(mark(z0), z1), x1, x2)), MARK(U61(cons(z0, z1), x1, x2))) A__U62(tt, U61(tt, x1, x2)) -> c18(A__LENGTH(a__U61(tt, x1, x2)), MARK(U61(tt, x1, x2))) A__U62(tt, U61(s(z0), x1, x2)) -> c18(A__LENGTH(a__U61(s(mark(z0)), x1, x2)), MARK(U61(s(z0), x1, x2))) A__U62(tt, U61(x0, z1, z2)) -> c18(MARK(U61(x0, z1, z2))) A__U62(tt, U61(0, x1, x2)) -> c18(A__LENGTH(a__U61(0, x1, x2))) A__U62(tt, U61(nil, x1, x2)) -> c18(A__LENGTH(a__U61(nil, x1, x2))) A__U62(tt, U62(zeros, x1)) -> c18(A__LENGTH(a__U62(a__zeros, x1)), MARK(U62(zeros, x1))) A__U62(tt, U62(U11(z0), x1)) -> c18(A__LENGTH(a__U62(a__U11(mark(z0)), x1)), MARK(U62(U11(z0), x1))) A__U62(tt, U62(U21(z0), x1)) -> c18(A__LENGTH(a__U62(a__U21(mark(z0)), x1)), MARK(U62(U21(z0), x1))) A__U62(tt, U62(U31(z0), x1)) -> c18(A__LENGTH(a__U62(a__U31(mark(z0)), x1)), MARK(U62(U31(z0), x1))) A__U62(tt, U62(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U41(mark(z0), z1), x1)), MARK(U62(U41(z0, z1), x1))) A__U62(tt, U62(U42(z0), x1)) -> c18(A__LENGTH(a__U62(a__U42(mark(z0)), x1)), MARK(U62(U42(z0), x1))) A__U62(tt, U62(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatIList(z0), x1)), MARK(U62(isNatIList(z0), x1))) A__U62(tt, U62(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U51(mark(z0), z1), x1)), MARK(U62(U51(z0, z1), x1))) A__U62(tt, U62(U52(z0), x1)) -> c18(A__LENGTH(a__U62(a__U52(mark(z0)), x1)), MARK(U62(U52(z0), x1))) A__U62(tt, U62(isNatList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatList(z0), x1)), MARK(U62(isNatList(z0), x1))) A__U62(tt, U62(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U62(a__U61(mark(z0), z1, z2), x1)), MARK(U62(U61(z0, z1, z2), x1))) A__U62(tt, U62(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U62(mark(z0), z1), x1)), MARK(U62(U62(z0, z1), x1))) A__U62(tt, U62(isNat(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNat(z0), x1)), MARK(U62(isNat(z0), x1))) A__U62(tt, U62(length(z0), x1)) -> c18(A__LENGTH(a__U62(a__length(mark(z0)), x1)), MARK(U62(length(z0), x1))) A__U62(tt, U62(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U62(cons(mark(z0), z1), x1)), MARK(U62(cons(z0, z1), x1))) A__U62(tt, U62(tt, x1)) -> c18(A__LENGTH(a__U62(tt, x1)), MARK(U62(tt, x1))) A__U62(tt, U62(s(z0), x1)) -> c18(A__LENGTH(a__U62(s(mark(z0)), x1)), MARK(U62(s(z0), x1))) A__U62(tt, U62(x0, z1)) -> c18(MARK(U62(x0, z1))) A__U62(tt, U62(0, x1)) -> c18(A__LENGTH(a__U62(0, x1))) A__U62(tt, U62(nil, x1)) -> c18(A__LENGTH(a__U62(nil, x1))) A__U62(tt, isNat(length(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(isNat(length(z0)))) A__U62(tt, isNat(s(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(isNat(s(z0)))) A__U62(tt, isNat(0)) -> c18(MARK(isNat(0))) A__U62(tt, isNat(z0)) -> c18(MARK(isNat(z0))) A__U62(tt, length(zeros)) -> c18(A__LENGTH(a__length(a__zeros)), MARK(length(zeros))) A__U62(tt, length(U11(z0))) -> c18(A__LENGTH(a__length(a__U11(mark(z0)))), MARK(length(U11(z0)))) A__U62(tt, length(U21(z0))) -> c18(A__LENGTH(a__length(a__U21(mark(z0)))), MARK(length(U21(z0)))) A__U62(tt, length(U31(z0))) -> c18(A__LENGTH(a__length(a__U31(mark(z0)))), MARK(length(U31(z0)))) A__U62(tt, length(U41(z0, z1))) -> c18(A__LENGTH(a__length(a__U41(mark(z0), z1))), MARK(length(U41(z0, z1)))) A__U62(tt, length(U42(z0))) -> c18(A__LENGTH(a__length(a__U42(mark(z0)))), MARK(length(U42(z0)))) A__U62(tt, length(isNatIList(z0))) -> c18(A__LENGTH(a__length(a__isNatIList(z0))), MARK(length(isNatIList(z0)))) A__U62(tt, length(U51(z0, z1))) -> c18(A__LENGTH(a__length(a__U51(mark(z0), z1))), MARK(length(U51(z0, z1)))) A__U62(tt, length(U52(z0))) -> c18(A__LENGTH(a__length(a__U52(mark(z0)))), MARK(length(U52(z0)))) A__U62(tt, length(isNatList(z0))) -> c18(A__LENGTH(a__length(a__isNatList(z0))), MARK(length(isNatList(z0)))) A__U62(tt, length(U61(z0, z1, z2))) -> c18(A__LENGTH(a__length(a__U61(mark(z0), z1, z2))), MARK(length(U61(z0, z1, z2)))) A__U62(tt, length(U62(z0, z1))) -> c18(A__LENGTH(a__length(a__U62(mark(z0), z1))), MARK(length(U62(z0, z1)))) A__U62(tt, length(isNat(z0))) -> c18(A__LENGTH(a__length(a__isNat(z0))), MARK(length(isNat(z0)))) A__U62(tt, length(length(z0))) -> c18(A__LENGTH(a__length(a__length(mark(z0)))), MARK(length(length(z0)))) A__U62(tt, length(cons(z0, z1))) -> c18(A__LENGTH(a__length(cons(mark(z0), z1))), MARK(length(cons(z0, z1)))) A__U62(tt, length(s(z0))) -> c18(A__LENGTH(a__length(s(mark(z0)))), MARK(length(s(z0)))) A__U62(tt, length(x0)) -> c18(MARK(length(x0))) A__U62(tt, length(0)) -> c18(A__LENGTH(a__length(0))) A__U62(tt, length(tt)) -> c18(A__LENGTH(a__length(tt))) A__U62(tt, length(nil)) -> c18(A__LENGTH(a__length(nil))) K tuples:none Defined Rule Symbols: a__zeros, a__U11_1, a__U21_1, a__U31_1, a__U41_2, a__U42_1, a__U51_2, a__U52_1, a__U61_3, a__U62_2, a__isNat_1, a__isNatIList_1, a__isNatList_1, a__length_1, mark_1 Defined Pair Symbols: MARK_1, A__U41_2, A__U51_2, A__ISNAT_1, A__ISNATILIST_1, A__U61_3, A__U62_2, A__ISNATLIST_1, A__LENGTH_1 Compound Symbols: c40_1, c43_1, c46_1, c48_1, c51_1, c8_1, c12_1, c21_1, c22_1, c24_1, c35_1, c36_1, c37_1, c39_1, c42_1, c16_1, c18_2, c18_1, c26_2, c26_1, c29_2, c29_1, c32_2, c32_1, c38_2, c38_1, c_1, c41_2, c41_1, c1_1, c44_2, c44_1, c45_2, c45_1, c47_2, c47_1, c16_2 ---------------------------------------- (145) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace A__U62(tt, zeros) -> c18(A__LENGTH(a__zeros)) by A__U62(tt, zeros) -> c18(A__LENGTH(cons(0, zeros))) A__U62(tt, zeros) -> c18(A__LENGTH(zeros)) ---------------------------------------- (146) Obligation: Complexity Dependency Tuples Problem Rules: a__zeros -> cons(0, zeros) a__zeros -> zeros a__U11(tt) -> tt a__U11(z0) -> U11(z0) a__U21(tt) -> tt a__U21(z0) -> U21(z0) a__U31(tt) -> tt a__U31(z0) -> U31(z0) a__U41(tt, z0) -> a__U42(a__isNatIList(z0)) a__U41(z0, z1) -> U41(z0, z1) a__U42(tt) -> tt a__U42(z0) -> U42(z0) a__U51(tt, z0) -> a__U52(a__isNatList(z0)) a__U51(z0, z1) -> U51(z0, z1) a__U52(tt) -> tt a__U52(z0) -> U52(z0) a__U61(tt, z0, z1) -> a__U62(a__isNat(z1), z0) a__U61(z0, z1, z2) -> U61(z0, z1, z2) a__U62(tt, z0) -> s(a__length(mark(z0))) a__U62(z0, z1) -> U62(z0, z1) a__isNat(0) -> tt a__isNat(length(z0)) -> a__U11(a__isNatList(z0)) a__isNat(s(z0)) -> a__U21(a__isNat(z0)) a__isNat(z0) -> isNat(z0) a__isNatIList(z0) -> a__U31(a__isNatList(z0)) a__isNatIList(zeros) -> tt a__isNatIList(cons(z0, z1)) -> a__U41(a__isNat(z0), z1) a__isNatIList(z0) -> isNatIList(z0) a__isNatList(nil) -> tt a__isNatList(cons(z0, z1)) -> a__U51(a__isNat(z0), z1) a__isNatList(z0) -> isNatList(z0) a__length(nil) -> 0 a__length(cons(z0, z1)) -> a__U61(a__isNatList(z1), z1, z0) a__length(z0) -> length(z0) mark(zeros) -> a__zeros mark(U11(z0)) -> a__U11(mark(z0)) mark(U21(z0)) -> a__U21(mark(z0)) mark(U31(z0)) -> a__U31(mark(z0)) mark(U41(z0, z1)) -> a__U41(mark(z0), z1) mark(U42(z0)) -> a__U42(mark(z0)) mark(isNatIList(z0)) -> a__isNatIList(z0) mark(U51(z0, z1)) -> a__U51(mark(z0), z1) mark(U52(z0)) -> a__U52(mark(z0)) mark(isNatList(z0)) -> a__isNatList(z0) mark(U61(z0, z1, z2)) -> a__U61(mark(z0), z1, z2) mark(U62(z0, z1)) -> a__U62(mark(z0), z1) mark(isNat(z0)) -> a__isNat(z0) mark(length(z0)) -> a__length(mark(z0)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(0) -> 0 mark(tt) -> tt mark(s(z0)) -> s(mark(z0)) mark(nil) -> nil Tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) A__U62(tt, isNatList(cons(z0, z1))) -> c18(A__LENGTH(a__U51(a__isNat(z0), z1)), MARK(isNatList(cons(z0, z1)))) A__U62(tt, isNatList(nil)) -> c18(MARK(isNatList(nil))) A__U62(tt, isNatList(z0)) -> c18(MARK(isNatList(z0))) A__U62(tt, U61(zeros, x1, x2)) -> c18(A__LENGTH(a__U61(a__zeros, x1, x2)), MARK(U61(zeros, x1, x2))) A__U62(tt, U61(U11(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U11(mark(z0)), x1, x2)), MARK(U61(U11(z0), x1, x2))) A__U62(tt, U61(U21(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U21(mark(z0)), x1, x2)), MARK(U61(U21(z0), x1, x2))) A__U62(tt, U61(U31(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U31(mark(z0)), x1, x2)), MARK(U61(U31(z0), x1, x2))) A__U62(tt, U61(U41(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U41(mark(z0), z1), x1, x2)), MARK(U61(U41(z0, z1), x1, x2))) A__U62(tt, U61(U42(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U42(mark(z0)), x1, x2)), MARK(U61(U42(z0), x1, x2))) A__U62(tt, U61(isNatIList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatIList(z0), x1, x2)), MARK(U61(isNatIList(z0), x1, x2))) A__U62(tt, U61(U51(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U51(mark(z0), z1), x1, x2)), MARK(U61(U51(z0, z1), x1, x2))) A__U62(tt, U61(U52(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U52(mark(z0)), x1, x2)), MARK(U61(U52(z0), x1, x2))) A__U62(tt, U61(isNatList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatList(z0), x1, x2)), MARK(U61(isNatList(z0), x1, x2))) A__U62(tt, U61(U61(z0, z1, z2), x1, x2)) -> c18(A__LENGTH(a__U61(a__U61(mark(z0), z1, z2), x1, x2)), MARK(U61(U61(z0, z1, z2), x1, x2))) A__U62(tt, U61(U62(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U62(mark(z0), z1), x1, x2)), MARK(U61(U62(z0, z1), x1, x2))) A__U62(tt, U61(isNat(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNat(z0), x1, x2)), MARK(U61(isNat(z0), x1, x2))) A__U62(tt, U61(length(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__length(mark(z0)), x1, x2)), MARK(U61(length(z0), x1, x2))) A__U62(tt, U61(cons(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(cons(mark(z0), z1), x1, x2)), MARK(U61(cons(z0, z1), x1, x2))) A__U62(tt, U61(tt, x1, x2)) -> c18(A__LENGTH(a__U61(tt, x1, x2)), MARK(U61(tt, x1, x2))) A__U62(tt, U61(s(z0), x1, x2)) -> c18(A__LENGTH(a__U61(s(mark(z0)), x1, x2)), MARK(U61(s(z0), x1, x2))) A__U62(tt, U61(x0, z1, z2)) -> c18(MARK(U61(x0, z1, z2))) A__U62(tt, U61(0, x1, x2)) -> c18(A__LENGTH(a__U61(0, x1, x2))) A__U62(tt, U61(nil, x1, x2)) -> c18(A__LENGTH(a__U61(nil, x1, x2))) A__U62(tt, U62(zeros, x1)) -> c18(A__LENGTH(a__U62(a__zeros, x1)), MARK(U62(zeros, x1))) A__U62(tt, U62(U11(z0), x1)) -> c18(A__LENGTH(a__U62(a__U11(mark(z0)), x1)), MARK(U62(U11(z0), x1))) A__U62(tt, U62(U21(z0), x1)) -> c18(A__LENGTH(a__U62(a__U21(mark(z0)), x1)), MARK(U62(U21(z0), x1))) A__U62(tt, U62(U31(z0), x1)) -> c18(A__LENGTH(a__U62(a__U31(mark(z0)), x1)), MARK(U62(U31(z0), x1))) A__U62(tt, U62(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U41(mark(z0), z1), x1)), MARK(U62(U41(z0, z1), x1))) A__U62(tt, U62(U42(z0), x1)) -> c18(A__LENGTH(a__U62(a__U42(mark(z0)), x1)), MARK(U62(U42(z0), x1))) A__U62(tt, U62(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatIList(z0), x1)), MARK(U62(isNatIList(z0), x1))) A__U62(tt, U62(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U51(mark(z0), z1), x1)), MARK(U62(U51(z0, z1), x1))) A__U62(tt, U62(U52(z0), x1)) -> c18(A__LENGTH(a__U62(a__U52(mark(z0)), x1)), MARK(U62(U52(z0), x1))) A__U62(tt, U62(isNatList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatList(z0), x1)), MARK(U62(isNatList(z0), x1))) A__U62(tt, U62(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U62(a__U61(mark(z0), z1, z2), x1)), MARK(U62(U61(z0, z1, z2), x1))) A__U62(tt, U62(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U62(mark(z0), z1), x1)), MARK(U62(U62(z0, z1), x1))) A__U62(tt, U62(isNat(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNat(z0), x1)), MARK(U62(isNat(z0), x1))) A__U62(tt, U62(length(z0), x1)) -> c18(A__LENGTH(a__U62(a__length(mark(z0)), x1)), MARK(U62(length(z0), x1))) A__U62(tt, U62(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U62(cons(mark(z0), z1), x1)), MARK(U62(cons(z0, z1), x1))) A__U62(tt, U62(tt, x1)) -> c18(A__LENGTH(a__U62(tt, x1)), MARK(U62(tt, x1))) A__U62(tt, U62(s(z0), x1)) -> c18(A__LENGTH(a__U62(s(mark(z0)), x1)), MARK(U62(s(z0), x1))) A__U62(tt, U62(x0, z1)) -> c18(MARK(U62(x0, z1))) A__U62(tt, U62(0, x1)) -> c18(A__LENGTH(a__U62(0, x1))) A__U62(tt, U62(nil, x1)) -> c18(A__LENGTH(a__U62(nil, x1))) A__U62(tt, isNat(length(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(isNat(length(z0)))) A__U62(tt, isNat(s(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(isNat(s(z0)))) A__U62(tt, isNat(0)) -> c18(MARK(isNat(0))) A__U62(tt, isNat(z0)) -> c18(MARK(isNat(z0))) A__U62(tt, length(zeros)) -> c18(A__LENGTH(a__length(a__zeros)), MARK(length(zeros))) A__U62(tt, length(U11(z0))) -> c18(A__LENGTH(a__length(a__U11(mark(z0)))), MARK(length(U11(z0)))) A__U62(tt, length(U21(z0))) -> c18(A__LENGTH(a__length(a__U21(mark(z0)))), MARK(length(U21(z0)))) A__U62(tt, length(U31(z0))) -> c18(A__LENGTH(a__length(a__U31(mark(z0)))), MARK(length(U31(z0)))) A__U62(tt, length(U41(z0, z1))) -> c18(A__LENGTH(a__length(a__U41(mark(z0), z1))), MARK(length(U41(z0, z1)))) A__U62(tt, length(U42(z0))) -> c18(A__LENGTH(a__length(a__U42(mark(z0)))), MARK(length(U42(z0)))) A__U62(tt, length(isNatIList(z0))) -> c18(A__LENGTH(a__length(a__isNatIList(z0))), MARK(length(isNatIList(z0)))) A__U62(tt, length(U51(z0, z1))) -> c18(A__LENGTH(a__length(a__U51(mark(z0), z1))), MARK(length(U51(z0, z1)))) A__U62(tt, length(U52(z0))) -> c18(A__LENGTH(a__length(a__U52(mark(z0)))), MARK(length(U52(z0)))) A__U62(tt, length(isNatList(z0))) -> c18(A__LENGTH(a__length(a__isNatList(z0))), MARK(length(isNatList(z0)))) A__U62(tt, length(U61(z0, z1, z2))) -> c18(A__LENGTH(a__length(a__U61(mark(z0), z1, z2))), MARK(length(U61(z0, z1, z2)))) A__U62(tt, length(U62(z0, z1))) -> c18(A__LENGTH(a__length(a__U62(mark(z0), z1))), MARK(length(U62(z0, z1)))) A__U62(tt, length(isNat(z0))) -> c18(A__LENGTH(a__length(a__isNat(z0))), MARK(length(isNat(z0)))) A__U62(tt, length(length(z0))) -> c18(A__LENGTH(a__length(a__length(mark(z0)))), MARK(length(length(z0)))) A__U62(tt, length(cons(z0, z1))) -> c18(A__LENGTH(a__length(cons(mark(z0), z1))), MARK(length(cons(z0, z1)))) A__U62(tt, length(s(z0))) -> c18(A__LENGTH(a__length(s(mark(z0)))), MARK(length(s(z0)))) A__U62(tt, length(x0)) -> c18(MARK(length(x0))) A__U62(tt, length(0)) -> c18(A__LENGTH(a__length(0))) A__U62(tt, length(tt)) -> c18(A__LENGTH(a__length(tt))) A__U62(tt, length(nil)) -> c18(A__LENGTH(a__length(nil))) A__U62(tt, zeros) -> c18(A__LENGTH(cons(0, zeros))) A__U62(tt, zeros) -> c18(A__LENGTH(zeros)) S tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) A__U62(tt, isNatList(cons(z0, z1))) -> c18(A__LENGTH(a__U51(a__isNat(z0), z1)), MARK(isNatList(cons(z0, z1)))) A__U62(tt, isNatList(nil)) -> c18(MARK(isNatList(nil))) A__U62(tt, isNatList(z0)) -> c18(MARK(isNatList(z0))) A__U62(tt, U61(zeros, x1, x2)) -> c18(A__LENGTH(a__U61(a__zeros, x1, x2)), MARK(U61(zeros, x1, x2))) A__U62(tt, U61(U11(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U11(mark(z0)), x1, x2)), MARK(U61(U11(z0), x1, x2))) A__U62(tt, U61(U21(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U21(mark(z0)), x1, x2)), MARK(U61(U21(z0), x1, x2))) A__U62(tt, U61(U31(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U31(mark(z0)), x1, x2)), MARK(U61(U31(z0), x1, x2))) A__U62(tt, U61(U41(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U41(mark(z0), z1), x1, x2)), MARK(U61(U41(z0, z1), x1, x2))) A__U62(tt, U61(U42(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U42(mark(z0)), x1, x2)), MARK(U61(U42(z0), x1, x2))) A__U62(tt, U61(isNatIList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatIList(z0), x1, x2)), MARK(U61(isNatIList(z0), x1, x2))) A__U62(tt, U61(U51(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U51(mark(z0), z1), x1, x2)), MARK(U61(U51(z0, z1), x1, x2))) A__U62(tt, U61(U52(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U52(mark(z0)), x1, x2)), MARK(U61(U52(z0), x1, x2))) A__U62(tt, U61(isNatList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatList(z0), x1, x2)), MARK(U61(isNatList(z0), x1, x2))) A__U62(tt, U61(U61(z0, z1, z2), x1, x2)) -> c18(A__LENGTH(a__U61(a__U61(mark(z0), z1, z2), x1, x2)), MARK(U61(U61(z0, z1, z2), x1, x2))) A__U62(tt, U61(U62(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U62(mark(z0), z1), x1, x2)), MARK(U61(U62(z0, z1), x1, x2))) A__U62(tt, U61(isNat(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNat(z0), x1, x2)), MARK(U61(isNat(z0), x1, x2))) A__U62(tt, U61(length(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__length(mark(z0)), x1, x2)), MARK(U61(length(z0), x1, x2))) A__U62(tt, U61(cons(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(cons(mark(z0), z1), x1, x2)), MARK(U61(cons(z0, z1), x1, x2))) A__U62(tt, U61(tt, x1, x2)) -> c18(A__LENGTH(a__U61(tt, x1, x2)), MARK(U61(tt, x1, x2))) A__U62(tt, U61(s(z0), x1, x2)) -> c18(A__LENGTH(a__U61(s(mark(z0)), x1, x2)), MARK(U61(s(z0), x1, x2))) A__U62(tt, U61(x0, z1, z2)) -> c18(MARK(U61(x0, z1, z2))) A__U62(tt, U61(0, x1, x2)) -> c18(A__LENGTH(a__U61(0, x1, x2))) A__U62(tt, U61(nil, x1, x2)) -> c18(A__LENGTH(a__U61(nil, x1, x2))) A__U62(tt, U62(zeros, x1)) -> c18(A__LENGTH(a__U62(a__zeros, x1)), MARK(U62(zeros, x1))) A__U62(tt, U62(U11(z0), x1)) -> c18(A__LENGTH(a__U62(a__U11(mark(z0)), x1)), MARK(U62(U11(z0), x1))) A__U62(tt, U62(U21(z0), x1)) -> c18(A__LENGTH(a__U62(a__U21(mark(z0)), x1)), MARK(U62(U21(z0), x1))) A__U62(tt, U62(U31(z0), x1)) -> c18(A__LENGTH(a__U62(a__U31(mark(z0)), x1)), MARK(U62(U31(z0), x1))) A__U62(tt, U62(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U41(mark(z0), z1), x1)), MARK(U62(U41(z0, z1), x1))) A__U62(tt, U62(U42(z0), x1)) -> c18(A__LENGTH(a__U62(a__U42(mark(z0)), x1)), MARK(U62(U42(z0), x1))) A__U62(tt, U62(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatIList(z0), x1)), MARK(U62(isNatIList(z0), x1))) A__U62(tt, U62(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U51(mark(z0), z1), x1)), MARK(U62(U51(z0, z1), x1))) A__U62(tt, U62(U52(z0), x1)) -> c18(A__LENGTH(a__U62(a__U52(mark(z0)), x1)), MARK(U62(U52(z0), x1))) A__U62(tt, U62(isNatList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatList(z0), x1)), MARK(U62(isNatList(z0), x1))) A__U62(tt, U62(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U62(a__U61(mark(z0), z1, z2), x1)), MARK(U62(U61(z0, z1, z2), x1))) A__U62(tt, U62(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U62(mark(z0), z1), x1)), MARK(U62(U62(z0, z1), x1))) A__U62(tt, U62(isNat(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNat(z0), x1)), MARK(U62(isNat(z0), x1))) A__U62(tt, U62(length(z0), x1)) -> c18(A__LENGTH(a__U62(a__length(mark(z0)), x1)), MARK(U62(length(z0), x1))) A__U62(tt, U62(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U62(cons(mark(z0), z1), x1)), MARK(U62(cons(z0, z1), x1))) A__U62(tt, U62(tt, x1)) -> c18(A__LENGTH(a__U62(tt, x1)), MARK(U62(tt, x1))) A__U62(tt, U62(s(z0), x1)) -> c18(A__LENGTH(a__U62(s(mark(z0)), x1)), MARK(U62(s(z0), x1))) A__U62(tt, U62(x0, z1)) -> c18(MARK(U62(x0, z1))) A__U62(tt, U62(0, x1)) -> c18(A__LENGTH(a__U62(0, x1))) A__U62(tt, U62(nil, x1)) -> c18(A__LENGTH(a__U62(nil, x1))) A__U62(tt, isNat(length(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(isNat(length(z0)))) A__U62(tt, isNat(s(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(isNat(s(z0)))) A__U62(tt, isNat(0)) -> c18(MARK(isNat(0))) A__U62(tt, isNat(z0)) -> c18(MARK(isNat(z0))) A__U62(tt, length(zeros)) -> c18(A__LENGTH(a__length(a__zeros)), MARK(length(zeros))) A__U62(tt, length(U11(z0))) -> c18(A__LENGTH(a__length(a__U11(mark(z0)))), MARK(length(U11(z0)))) A__U62(tt, length(U21(z0))) -> c18(A__LENGTH(a__length(a__U21(mark(z0)))), MARK(length(U21(z0)))) A__U62(tt, length(U31(z0))) -> c18(A__LENGTH(a__length(a__U31(mark(z0)))), MARK(length(U31(z0)))) A__U62(tt, length(U41(z0, z1))) -> c18(A__LENGTH(a__length(a__U41(mark(z0), z1))), MARK(length(U41(z0, z1)))) A__U62(tt, length(U42(z0))) -> c18(A__LENGTH(a__length(a__U42(mark(z0)))), MARK(length(U42(z0)))) A__U62(tt, length(isNatIList(z0))) -> c18(A__LENGTH(a__length(a__isNatIList(z0))), MARK(length(isNatIList(z0)))) A__U62(tt, length(U51(z0, z1))) -> c18(A__LENGTH(a__length(a__U51(mark(z0), z1))), MARK(length(U51(z0, z1)))) A__U62(tt, length(U52(z0))) -> c18(A__LENGTH(a__length(a__U52(mark(z0)))), MARK(length(U52(z0)))) A__U62(tt, length(isNatList(z0))) -> c18(A__LENGTH(a__length(a__isNatList(z0))), MARK(length(isNatList(z0)))) A__U62(tt, length(U61(z0, z1, z2))) -> c18(A__LENGTH(a__length(a__U61(mark(z0), z1, z2))), MARK(length(U61(z0, z1, z2)))) A__U62(tt, length(U62(z0, z1))) -> c18(A__LENGTH(a__length(a__U62(mark(z0), z1))), MARK(length(U62(z0, z1)))) A__U62(tt, length(isNat(z0))) -> c18(A__LENGTH(a__length(a__isNat(z0))), MARK(length(isNat(z0)))) A__U62(tt, length(length(z0))) -> c18(A__LENGTH(a__length(a__length(mark(z0)))), MARK(length(length(z0)))) A__U62(tt, length(cons(z0, z1))) -> c18(A__LENGTH(a__length(cons(mark(z0), z1))), MARK(length(cons(z0, z1)))) A__U62(tt, length(s(z0))) -> c18(A__LENGTH(a__length(s(mark(z0)))), MARK(length(s(z0)))) A__U62(tt, length(x0)) -> c18(MARK(length(x0))) A__U62(tt, length(0)) -> c18(A__LENGTH(a__length(0))) A__U62(tt, length(tt)) -> c18(A__LENGTH(a__length(tt))) A__U62(tt, length(nil)) -> c18(A__LENGTH(a__length(nil))) A__U62(tt, zeros) -> c18(A__LENGTH(cons(0, zeros))) A__U62(tt, zeros) -> c18(A__LENGTH(zeros)) K tuples:none Defined Rule Symbols: a__zeros, a__U11_1, a__U21_1, a__U31_1, a__U41_2, a__U42_1, a__U51_2, a__U52_1, a__U61_3, a__U62_2, a__isNat_1, a__isNatIList_1, a__isNatList_1, a__length_1, mark_1 Defined Pair Symbols: MARK_1, A__U41_2, A__U51_2, A__ISNAT_1, A__ISNATILIST_1, A__U61_3, A__U62_2, A__ISNATLIST_1, A__LENGTH_1 Compound Symbols: c40_1, c43_1, c46_1, c48_1, c51_1, c8_1, c12_1, c21_1, c22_1, c24_1, c35_1, c36_1, c37_1, c39_1, c42_1, c16_1, c18_2, c18_1, c26_2, c26_1, c29_2, c29_1, c32_2, c32_1, c38_2, c38_1, c_1, c41_2, c41_1, c1_1, c44_2, c44_1, c45_2, c45_1, c47_2, c47_1, c16_2 ---------------------------------------- (147) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 1 trailing nodes: A__U62(tt, zeros) -> c18(A__LENGTH(zeros)) ---------------------------------------- (148) Obligation: Complexity Dependency Tuples Problem Rules: a__zeros -> cons(0, zeros) a__zeros -> zeros a__U11(tt) -> tt a__U11(z0) -> U11(z0) a__U21(tt) -> tt a__U21(z0) -> U21(z0) a__U31(tt) -> tt a__U31(z0) -> U31(z0) a__U41(tt, z0) -> a__U42(a__isNatIList(z0)) a__U41(z0, z1) -> U41(z0, z1) a__U42(tt) -> tt a__U42(z0) -> U42(z0) a__U51(tt, z0) -> a__U52(a__isNatList(z0)) a__U51(z0, z1) -> U51(z0, z1) a__U52(tt) -> tt a__U52(z0) -> U52(z0) a__U61(tt, z0, z1) -> a__U62(a__isNat(z1), z0) a__U61(z0, z1, z2) -> U61(z0, z1, z2) a__U62(tt, z0) -> s(a__length(mark(z0))) a__U62(z0, z1) -> U62(z0, z1) a__isNat(0) -> tt a__isNat(length(z0)) -> a__U11(a__isNatList(z0)) a__isNat(s(z0)) -> a__U21(a__isNat(z0)) a__isNat(z0) -> isNat(z0) a__isNatIList(z0) -> a__U31(a__isNatList(z0)) a__isNatIList(zeros) -> tt a__isNatIList(cons(z0, z1)) -> a__U41(a__isNat(z0), z1) a__isNatIList(z0) -> isNatIList(z0) a__isNatList(nil) -> tt a__isNatList(cons(z0, z1)) -> a__U51(a__isNat(z0), z1) a__isNatList(z0) -> isNatList(z0) a__length(nil) -> 0 a__length(cons(z0, z1)) -> a__U61(a__isNatList(z1), z1, z0) a__length(z0) -> length(z0) mark(zeros) -> a__zeros mark(U11(z0)) -> a__U11(mark(z0)) mark(U21(z0)) -> a__U21(mark(z0)) mark(U31(z0)) -> a__U31(mark(z0)) mark(U41(z0, z1)) -> a__U41(mark(z0), z1) mark(U42(z0)) -> a__U42(mark(z0)) mark(isNatIList(z0)) -> a__isNatIList(z0) mark(U51(z0, z1)) -> a__U51(mark(z0), z1) mark(U52(z0)) -> a__U52(mark(z0)) mark(isNatList(z0)) -> a__isNatList(z0) mark(U61(z0, z1, z2)) -> a__U61(mark(z0), z1, z2) mark(U62(z0, z1)) -> a__U62(mark(z0), z1) mark(isNat(z0)) -> a__isNat(z0) mark(length(z0)) -> a__length(mark(z0)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(0) -> 0 mark(tt) -> tt mark(s(z0)) -> s(mark(z0)) mark(nil) -> nil Tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) A__U62(tt, isNatList(cons(z0, z1))) -> c18(A__LENGTH(a__U51(a__isNat(z0), z1)), MARK(isNatList(cons(z0, z1)))) A__U62(tt, isNatList(nil)) -> c18(MARK(isNatList(nil))) A__U62(tt, isNatList(z0)) -> c18(MARK(isNatList(z0))) A__U62(tt, U61(zeros, x1, x2)) -> c18(A__LENGTH(a__U61(a__zeros, x1, x2)), MARK(U61(zeros, x1, x2))) A__U62(tt, U61(U11(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U11(mark(z0)), x1, x2)), MARK(U61(U11(z0), x1, x2))) A__U62(tt, U61(U21(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U21(mark(z0)), x1, x2)), MARK(U61(U21(z0), x1, x2))) A__U62(tt, U61(U31(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U31(mark(z0)), x1, x2)), MARK(U61(U31(z0), x1, x2))) A__U62(tt, U61(U41(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U41(mark(z0), z1), x1, x2)), MARK(U61(U41(z0, z1), x1, x2))) A__U62(tt, U61(U42(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U42(mark(z0)), x1, x2)), MARK(U61(U42(z0), x1, x2))) A__U62(tt, U61(isNatIList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatIList(z0), x1, x2)), MARK(U61(isNatIList(z0), x1, x2))) A__U62(tt, U61(U51(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U51(mark(z0), z1), x1, x2)), MARK(U61(U51(z0, z1), x1, x2))) A__U62(tt, U61(U52(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U52(mark(z0)), x1, x2)), MARK(U61(U52(z0), x1, x2))) A__U62(tt, U61(isNatList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatList(z0), x1, x2)), MARK(U61(isNatList(z0), x1, x2))) A__U62(tt, U61(U61(z0, z1, z2), x1, x2)) -> c18(A__LENGTH(a__U61(a__U61(mark(z0), z1, z2), x1, x2)), MARK(U61(U61(z0, z1, z2), x1, x2))) A__U62(tt, U61(U62(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U62(mark(z0), z1), x1, x2)), MARK(U61(U62(z0, z1), x1, x2))) A__U62(tt, U61(isNat(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNat(z0), x1, x2)), MARK(U61(isNat(z0), x1, x2))) A__U62(tt, U61(length(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__length(mark(z0)), x1, x2)), MARK(U61(length(z0), x1, x2))) A__U62(tt, U61(cons(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(cons(mark(z0), z1), x1, x2)), MARK(U61(cons(z0, z1), x1, x2))) A__U62(tt, U61(tt, x1, x2)) -> c18(A__LENGTH(a__U61(tt, x1, x2)), MARK(U61(tt, x1, x2))) A__U62(tt, U61(s(z0), x1, x2)) -> c18(A__LENGTH(a__U61(s(mark(z0)), x1, x2)), MARK(U61(s(z0), x1, x2))) A__U62(tt, U61(x0, z1, z2)) -> c18(MARK(U61(x0, z1, z2))) A__U62(tt, U61(0, x1, x2)) -> c18(A__LENGTH(a__U61(0, x1, x2))) A__U62(tt, U61(nil, x1, x2)) -> c18(A__LENGTH(a__U61(nil, x1, x2))) A__U62(tt, U62(zeros, x1)) -> c18(A__LENGTH(a__U62(a__zeros, x1)), MARK(U62(zeros, x1))) A__U62(tt, U62(U11(z0), x1)) -> c18(A__LENGTH(a__U62(a__U11(mark(z0)), x1)), MARK(U62(U11(z0), x1))) A__U62(tt, U62(U21(z0), x1)) -> c18(A__LENGTH(a__U62(a__U21(mark(z0)), x1)), MARK(U62(U21(z0), x1))) A__U62(tt, U62(U31(z0), x1)) -> c18(A__LENGTH(a__U62(a__U31(mark(z0)), x1)), MARK(U62(U31(z0), x1))) A__U62(tt, U62(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U41(mark(z0), z1), x1)), MARK(U62(U41(z0, z1), x1))) A__U62(tt, U62(U42(z0), x1)) -> c18(A__LENGTH(a__U62(a__U42(mark(z0)), x1)), MARK(U62(U42(z0), x1))) A__U62(tt, U62(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatIList(z0), x1)), MARK(U62(isNatIList(z0), x1))) A__U62(tt, U62(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U51(mark(z0), z1), x1)), MARK(U62(U51(z0, z1), x1))) A__U62(tt, U62(U52(z0), x1)) -> c18(A__LENGTH(a__U62(a__U52(mark(z0)), x1)), MARK(U62(U52(z0), x1))) A__U62(tt, U62(isNatList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatList(z0), x1)), MARK(U62(isNatList(z0), x1))) A__U62(tt, U62(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U62(a__U61(mark(z0), z1, z2), x1)), MARK(U62(U61(z0, z1, z2), x1))) A__U62(tt, U62(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U62(mark(z0), z1), x1)), MARK(U62(U62(z0, z1), x1))) A__U62(tt, U62(isNat(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNat(z0), x1)), MARK(U62(isNat(z0), x1))) A__U62(tt, U62(length(z0), x1)) -> c18(A__LENGTH(a__U62(a__length(mark(z0)), x1)), MARK(U62(length(z0), x1))) A__U62(tt, U62(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U62(cons(mark(z0), z1), x1)), MARK(U62(cons(z0, z1), x1))) A__U62(tt, U62(tt, x1)) -> c18(A__LENGTH(a__U62(tt, x1)), MARK(U62(tt, x1))) A__U62(tt, U62(s(z0), x1)) -> c18(A__LENGTH(a__U62(s(mark(z0)), x1)), MARK(U62(s(z0), x1))) A__U62(tt, U62(x0, z1)) -> c18(MARK(U62(x0, z1))) A__U62(tt, U62(0, x1)) -> c18(A__LENGTH(a__U62(0, x1))) A__U62(tt, U62(nil, x1)) -> c18(A__LENGTH(a__U62(nil, x1))) A__U62(tt, isNat(length(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(isNat(length(z0)))) A__U62(tt, isNat(s(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(isNat(s(z0)))) A__U62(tt, isNat(0)) -> c18(MARK(isNat(0))) A__U62(tt, isNat(z0)) -> c18(MARK(isNat(z0))) A__U62(tt, length(zeros)) -> c18(A__LENGTH(a__length(a__zeros)), MARK(length(zeros))) A__U62(tt, length(U11(z0))) -> c18(A__LENGTH(a__length(a__U11(mark(z0)))), MARK(length(U11(z0)))) A__U62(tt, length(U21(z0))) -> c18(A__LENGTH(a__length(a__U21(mark(z0)))), MARK(length(U21(z0)))) A__U62(tt, length(U31(z0))) -> c18(A__LENGTH(a__length(a__U31(mark(z0)))), MARK(length(U31(z0)))) A__U62(tt, length(U41(z0, z1))) -> c18(A__LENGTH(a__length(a__U41(mark(z0), z1))), MARK(length(U41(z0, z1)))) A__U62(tt, length(U42(z0))) -> c18(A__LENGTH(a__length(a__U42(mark(z0)))), MARK(length(U42(z0)))) A__U62(tt, length(isNatIList(z0))) -> c18(A__LENGTH(a__length(a__isNatIList(z0))), MARK(length(isNatIList(z0)))) A__U62(tt, length(U51(z0, z1))) -> c18(A__LENGTH(a__length(a__U51(mark(z0), z1))), MARK(length(U51(z0, z1)))) A__U62(tt, length(U52(z0))) -> c18(A__LENGTH(a__length(a__U52(mark(z0)))), MARK(length(U52(z0)))) A__U62(tt, length(isNatList(z0))) -> c18(A__LENGTH(a__length(a__isNatList(z0))), MARK(length(isNatList(z0)))) A__U62(tt, length(U61(z0, z1, z2))) -> c18(A__LENGTH(a__length(a__U61(mark(z0), z1, z2))), MARK(length(U61(z0, z1, z2)))) A__U62(tt, length(U62(z0, z1))) -> c18(A__LENGTH(a__length(a__U62(mark(z0), z1))), MARK(length(U62(z0, z1)))) A__U62(tt, length(isNat(z0))) -> c18(A__LENGTH(a__length(a__isNat(z0))), MARK(length(isNat(z0)))) A__U62(tt, length(length(z0))) -> c18(A__LENGTH(a__length(a__length(mark(z0)))), MARK(length(length(z0)))) A__U62(tt, length(cons(z0, z1))) -> c18(A__LENGTH(a__length(cons(mark(z0), z1))), MARK(length(cons(z0, z1)))) A__U62(tt, length(s(z0))) -> c18(A__LENGTH(a__length(s(mark(z0)))), MARK(length(s(z0)))) A__U62(tt, length(x0)) -> c18(MARK(length(x0))) A__U62(tt, length(0)) -> c18(A__LENGTH(a__length(0))) A__U62(tt, length(tt)) -> c18(A__LENGTH(a__length(tt))) A__U62(tt, length(nil)) -> c18(A__LENGTH(a__length(nil))) A__U62(tt, zeros) -> c18(A__LENGTH(cons(0, zeros))) S tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) A__U62(tt, isNatList(cons(z0, z1))) -> c18(A__LENGTH(a__U51(a__isNat(z0), z1)), MARK(isNatList(cons(z0, z1)))) A__U62(tt, isNatList(nil)) -> c18(MARK(isNatList(nil))) A__U62(tt, isNatList(z0)) -> c18(MARK(isNatList(z0))) A__U62(tt, U61(zeros, x1, x2)) -> c18(A__LENGTH(a__U61(a__zeros, x1, x2)), MARK(U61(zeros, x1, x2))) A__U62(tt, U61(U11(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U11(mark(z0)), x1, x2)), MARK(U61(U11(z0), x1, x2))) A__U62(tt, U61(U21(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U21(mark(z0)), x1, x2)), MARK(U61(U21(z0), x1, x2))) A__U62(tt, U61(U31(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U31(mark(z0)), x1, x2)), MARK(U61(U31(z0), x1, x2))) A__U62(tt, U61(U41(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U41(mark(z0), z1), x1, x2)), MARK(U61(U41(z0, z1), x1, x2))) A__U62(tt, U61(U42(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U42(mark(z0)), x1, x2)), MARK(U61(U42(z0), x1, x2))) A__U62(tt, U61(isNatIList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatIList(z0), x1, x2)), MARK(U61(isNatIList(z0), x1, x2))) A__U62(tt, U61(U51(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U51(mark(z0), z1), x1, x2)), MARK(U61(U51(z0, z1), x1, x2))) A__U62(tt, U61(U52(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U52(mark(z0)), x1, x2)), MARK(U61(U52(z0), x1, x2))) A__U62(tt, U61(isNatList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatList(z0), x1, x2)), MARK(U61(isNatList(z0), x1, x2))) A__U62(tt, U61(U61(z0, z1, z2), x1, x2)) -> c18(A__LENGTH(a__U61(a__U61(mark(z0), z1, z2), x1, x2)), MARK(U61(U61(z0, z1, z2), x1, x2))) A__U62(tt, U61(U62(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U62(mark(z0), z1), x1, x2)), MARK(U61(U62(z0, z1), x1, x2))) A__U62(tt, U61(isNat(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNat(z0), x1, x2)), MARK(U61(isNat(z0), x1, x2))) A__U62(tt, U61(length(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__length(mark(z0)), x1, x2)), MARK(U61(length(z0), x1, x2))) A__U62(tt, U61(cons(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(cons(mark(z0), z1), x1, x2)), MARK(U61(cons(z0, z1), x1, x2))) A__U62(tt, U61(tt, x1, x2)) -> c18(A__LENGTH(a__U61(tt, x1, x2)), MARK(U61(tt, x1, x2))) A__U62(tt, U61(s(z0), x1, x2)) -> c18(A__LENGTH(a__U61(s(mark(z0)), x1, x2)), MARK(U61(s(z0), x1, x2))) A__U62(tt, U61(x0, z1, z2)) -> c18(MARK(U61(x0, z1, z2))) A__U62(tt, U61(0, x1, x2)) -> c18(A__LENGTH(a__U61(0, x1, x2))) A__U62(tt, U61(nil, x1, x2)) -> c18(A__LENGTH(a__U61(nil, x1, x2))) A__U62(tt, U62(zeros, x1)) -> c18(A__LENGTH(a__U62(a__zeros, x1)), MARK(U62(zeros, x1))) A__U62(tt, U62(U11(z0), x1)) -> c18(A__LENGTH(a__U62(a__U11(mark(z0)), x1)), MARK(U62(U11(z0), x1))) A__U62(tt, U62(U21(z0), x1)) -> c18(A__LENGTH(a__U62(a__U21(mark(z0)), x1)), MARK(U62(U21(z0), x1))) A__U62(tt, U62(U31(z0), x1)) -> c18(A__LENGTH(a__U62(a__U31(mark(z0)), x1)), MARK(U62(U31(z0), x1))) A__U62(tt, U62(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U41(mark(z0), z1), x1)), MARK(U62(U41(z0, z1), x1))) A__U62(tt, U62(U42(z0), x1)) -> c18(A__LENGTH(a__U62(a__U42(mark(z0)), x1)), MARK(U62(U42(z0), x1))) A__U62(tt, U62(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatIList(z0), x1)), MARK(U62(isNatIList(z0), x1))) A__U62(tt, U62(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U51(mark(z0), z1), x1)), MARK(U62(U51(z0, z1), x1))) A__U62(tt, U62(U52(z0), x1)) -> c18(A__LENGTH(a__U62(a__U52(mark(z0)), x1)), MARK(U62(U52(z0), x1))) A__U62(tt, U62(isNatList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatList(z0), x1)), MARK(U62(isNatList(z0), x1))) A__U62(tt, U62(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U62(a__U61(mark(z0), z1, z2), x1)), MARK(U62(U61(z0, z1, z2), x1))) A__U62(tt, U62(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U62(mark(z0), z1), x1)), MARK(U62(U62(z0, z1), x1))) A__U62(tt, U62(isNat(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNat(z0), x1)), MARK(U62(isNat(z0), x1))) A__U62(tt, U62(length(z0), x1)) -> c18(A__LENGTH(a__U62(a__length(mark(z0)), x1)), MARK(U62(length(z0), x1))) A__U62(tt, U62(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U62(cons(mark(z0), z1), x1)), MARK(U62(cons(z0, z1), x1))) A__U62(tt, U62(tt, x1)) -> c18(A__LENGTH(a__U62(tt, x1)), MARK(U62(tt, x1))) A__U62(tt, U62(s(z0), x1)) -> c18(A__LENGTH(a__U62(s(mark(z0)), x1)), MARK(U62(s(z0), x1))) A__U62(tt, U62(x0, z1)) -> c18(MARK(U62(x0, z1))) A__U62(tt, U62(0, x1)) -> c18(A__LENGTH(a__U62(0, x1))) A__U62(tt, U62(nil, x1)) -> c18(A__LENGTH(a__U62(nil, x1))) A__U62(tt, isNat(length(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(isNat(length(z0)))) A__U62(tt, isNat(s(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(isNat(s(z0)))) A__U62(tt, isNat(0)) -> c18(MARK(isNat(0))) A__U62(tt, isNat(z0)) -> c18(MARK(isNat(z0))) A__U62(tt, length(zeros)) -> c18(A__LENGTH(a__length(a__zeros)), MARK(length(zeros))) A__U62(tt, length(U11(z0))) -> c18(A__LENGTH(a__length(a__U11(mark(z0)))), MARK(length(U11(z0)))) A__U62(tt, length(U21(z0))) -> c18(A__LENGTH(a__length(a__U21(mark(z0)))), MARK(length(U21(z0)))) A__U62(tt, length(U31(z0))) -> c18(A__LENGTH(a__length(a__U31(mark(z0)))), MARK(length(U31(z0)))) A__U62(tt, length(U41(z0, z1))) -> c18(A__LENGTH(a__length(a__U41(mark(z0), z1))), MARK(length(U41(z0, z1)))) A__U62(tt, length(U42(z0))) -> c18(A__LENGTH(a__length(a__U42(mark(z0)))), MARK(length(U42(z0)))) A__U62(tt, length(isNatIList(z0))) -> c18(A__LENGTH(a__length(a__isNatIList(z0))), MARK(length(isNatIList(z0)))) A__U62(tt, length(U51(z0, z1))) -> c18(A__LENGTH(a__length(a__U51(mark(z0), z1))), MARK(length(U51(z0, z1)))) A__U62(tt, length(U52(z0))) -> c18(A__LENGTH(a__length(a__U52(mark(z0)))), MARK(length(U52(z0)))) A__U62(tt, length(isNatList(z0))) -> c18(A__LENGTH(a__length(a__isNatList(z0))), MARK(length(isNatList(z0)))) A__U62(tt, length(U61(z0, z1, z2))) -> c18(A__LENGTH(a__length(a__U61(mark(z0), z1, z2))), MARK(length(U61(z0, z1, z2)))) A__U62(tt, length(U62(z0, z1))) -> c18(A__LENGTH(a__length(a__U62(mark(z0), z1))), MARK(length(U62(z0, z1)))) A__U62(tt, length(isNat(z0))) -> c18(A__LENGTH(a__length(a__isNat(z0))), MARK(length(isNat(z0)))) A__U62(tt, length(length(z0))) -> c18(A__LENGTH(a__length(a__length(mark(z0)))), MARK(length(length(z0)))) A__U62(tt, length(cons(z0, z1))) -> c18(A__LENGTH(a__length(cons(mark(z0), z1))), MARK(length(cons(z0, z1)))) A__U62(tt, length(s(z0))) -> c18(A__LENGTH(a__length(s(mark(z0)))), MARK(length(s(z0)))) A__U62(tt, length(x0)) -> c18(MARK(length(x0))) A__U62(tt, length(0)) -> c18(A__LENGTH(a__length(0))) A__U62(tt, length(tt)) -> c18(A__LENGTH(a__length(tt))) A__U62(tt, length(nil)) -> c18(A__LENGTH(a__length(nil))) A__U62(tt, zeros) -> c18(A__LENGTH(cons(0, zeros))) K tuples:none Defined Rule Symbols: a__zeros, a__U11_1, a__U21_1, a__U31_1, a__U41_2, a__U42_1, a__U51_2, a__U52_1, a__U61_3, a__U62_2, a__isNat_1, a__isNatIList_1, a__isNatList_1, a__length_1, mark_1 Defined Pair Symbols: MARK_1, A__U41_2, A__U51_2, A__ISNAT_1, A__ISNATILIST_1, A__U61_3, A__U62_2, A__ISNATLIST_1, A__LENGTH_1 Compound Symbols: c40_1, c43_1, c46_1, c48_1, c51_1, c8_1, c12_1, c21_1, c22_1, c24_1, c35_1, c36_1, c37_1, c39_1, c42_1, c16_1, c18_2, c18_1, c26_2, c26_1, c29_2, c29_1, c32_2, c32_1, c38_2, c38_1, c_1, c41_2, c41_1, c1_1, c44_2, c44_1, c45_2, c45_1, c47_2, c47_1, c16_2 ---------------------------------------- (149) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) by A__ISNATILIST(cons(length(x0), x1)) -> c26(A__U41(U11(a__isNatList(x0)), x1), A__ISNAT(length(x0))) A__ISNATILIST(cons(length(nil), x1)) -> c26(A__U41(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATILIST(cons(length(cons(z0, z1)), x1)) -> c26(A__U41(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) ---------------------------------------- (150) Obligation: Complexity Dependency Tuples Problem Rules: a__zeros -> cons(0, zeros) a__zeros -> zeros a__U11(tt) -> tt a__U11(z0) -> U11(z0) a__U21(tt) -> tt a__U21(z0) -> U21(z0) a__U31(tt) -> tt a__U31(z0) -> U31(z0) a__U41(tt, z0) -> a__U42(a__isNatIList(z0)) a__U41(z0, z1) -> U41(z0, z1) a__U42(tt) -> tt a__U42(z0) -> U42(z0) a__U51(tt, z0) -> a__U52(a__isNatList(z0)) a__U51(z0, z1) -> U51(z0, z1) a__U52(tt) -> tt a__U52(z0) -> U52(z0) a__U61(tt, z0, z1) -> a__U62(a__isNat(z1), z0) a__U61(z0, z1, z2) -> U61(z0, z1, z2) a__U62(tt, z0) -> s(a__length(mark(z0))) a__U62(z0, z1) -> U62(z0, z1) a__isNat(0) -> tt a__isNat(length(z0)) -> a__U11(a__isNatList(z0)) a__isNat(s(z0)) -> a__U21(a__isNat(z0)) a__isNat(z0) -> isNat(z0) a__isNatIList(z0) -> a__U31(a__isNatList(z0)) a__isNatIList(zeros) -> tt a__isNatIList(cons(z0, z1)) -> a__U41(a__isNat(z0), z1) a__isNatIList(z0) -> isNatIList(z0) a__isNatList(nil) -> tt a__isNatList(cons(z0, z1)) -> a__U51(a__isNat(z0), z1) a__isNatList(z0) -> isNatList(z0) a__length(nil) -> 0 a__length(cons(z0, z1)) -> a__U61(a__isNatList(z1), z1, z0) a__length(z0) -> length(z0) mark(zeros) -> a__zeros mark(U11(z0)) -> a__U11(mark(z0)) mark(U21(z0)) -> a__U21(mark(z0)) mark(U31(z0)) -> a__U31(mark(z0)) mark(U41(z0, z1)) -> a__U41(mark(z0), z1) mark(U42(z0)) -> a__U42(mark(z0)) mark(isNatIList(z0)) -> a__isNatIList(z0) mark(U51(z0, z1)) -> a__U51(mark(z0), z1) mark(U52(z0)) -> a__U52(mark(z0)) mark(isNatList(z0)) -> a__isNatList(z0) mark(U61(z0, z1, z2)) -> a__U61(mark(z0), z1, z2) mark(U62(z0, z1)) -> a__U62(mark(z0), z1) mark(isNat(z0)) -> a__isNat(z0) mark(length(z0)) -> a__length(mark(z0)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(0) -> 0 mark(tt) -> tt mark(s(z0)) -> s(mark(z0)) mark(nil) -> nil Tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) A__U62(tt, isNatList(cons(z0, z1))) -> c18(A__LENGTH(a__U51(a__isNat(z0), z1)), MARK(isNatList(cons(z0, z1)))) A__U62(tt, isNatList(nil)) -> c18(MARK(isNatList(nil))) A__U62(tt, isNatList(z0)) -> c18(MARK(isNatList(z0))) A__U62(tt, U61(zeros, x1, x2)) -> c18(A__LENGTH(a__U61(a__zeros, x1, x2)), MARK(U61(zeros, x1, x2))) A__U62(tt, U61(U11(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U11(mark(z0)), x1, x2)), MARK(U61(U11(z0), x1, x2))) A__U62(tt, U61(U21(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U21(mark(z0)), x1, x2)), MARK(U61(U21(z0), x1, x2))) A__U62(tt, U61(U31(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U31(mark(z0)), x1, x2)), MARK(U61(U31(z0), x1, x2))) A__U62(tt, U61(U41(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U41(mark(z0), z1), x1, x2)), MARK(U61(U41(z0, z1), x1, x2))) A__U62(tt, U61(U42(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U42(mark(z0)), x1, x2)), MARK(U61(U42(z0), x1, x2))) A__U62(tt, U61(isNatIList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatIList(z0), x1, x2)), MARK(U61(isNatIList(z0), x1, x2))) A__U62(tt, U61(U51(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U51(mark(z0), z1), x1, x2)), MARK(U61(U51(z0, z1), x1, x2))) A__U62(tt, U61(U52(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U52(mark(z0)), x1, x2)), MARK(U61(U52(z0), x1, x2))) A__U62(tt, U61(isNatList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatList(z0), x1, x2)), MARK(U61(isNatList(z0), x1, x2))) A__U62(tt, U61(U61(z0, z1, z2), x1, x2)) -> c18(A__LENGTH(a__U61(a__U61(mark(z0), z1, z2), x1, x2)), MARK(U61(U61(z0, z1, z2), x1, x2))) A__U62(tt, U61(U62(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U62(mark(z0), z1), x1, x2)), MARK(U61(U62(z0, z1), x1, x2))) A__U62(tt, U61(isNat(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNat(z0), x1, x2)), MARK(U61(isNat(z0), x1, x2))) A__U62(tt, U61(length(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__length(mark(z0)), x1, x2)), MARK(U61(length(z0), x1, x2))) A__U62(tt, U61(cons(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(cons(mark(z0), z1), x1, x2)), MARK(U61(cons(z0, z1), x1, x2))) A__U62(tt, U61(tt, x1, x2)) -> c18(A__LENGTH(a__U61(tt, x1, x2)), MARK(U61(tt, x1, x2))) A__U62(tt, U61(s(z0), x1, x2)) -> c18(A__LENGTH(a__U61(s(mark(z0)), x1, x2)), MARK(U61(s(z0), x1, x2))) A__U62(tt, U61(x0, z1, z2)) -> c18(MARK(U61(x0, z1, z2))) A__U62(tt, U61(0, x1, x2)) -> c18(A__LENGTH(a__U61(0, x1, x2))) A__U62(tt, U61(nil, x1, x2)) -> c18(A__LENGTH(a__U61(nil, x1, x2))) A__U62(tt, U62(zeros, x1)) -> c18(A__LENGTH(a__U62(a__zeros, x1)), MARK(U62(zeros, x1))) A__U62(tt, U62(U11(z0), x1)) -> c18(A__LENGTH(a__U62(a__U11(mark(z0)), x1)), MARK(U62(U11(z0), x1))) A__U62(tt, U62(U21(z0), x1)) -> c18(A__LENGTH(a__U62(a__U21(mark(z0)), x1)), MARK(U62(U21(z0), x1))) A__U62(tt, U62(U31(z0), x1)) -> c18(A__LENGTH(a__U62(a__U31(mark(z0)), x1)), MARK(U62(U31(z0), x1))) A__U62(tt, U62(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U41(mark(z0), z1), x1)), MARK(U62(U41(z0, z1), x1))) A__U62(tt, U62(U42(z0), x1)) -> c18(A__LENGTH(a__U62(a__U42(mark(z0)), x1)), MARK(U62(U42(z0), x1))) A__U62(tt, U62(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatIList(z0), x1)), MARK(U62(isNatIList(z0), x1))) A__U62(tt, U62(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U51(mark(z0), z1), x1)), MARK(U62(U51(z0, z1), x1))) A__U62(tt, U62(U52(z0), x1)) -> c18(A__LENGTH(a__U62(a__U52(mark(z0)), x1)), MARK(U62(U52(z0), x1))) A__U62(tt, U62(isNatList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatList(z0), x1)), MARK(U62(isNatList(z0), x1))) A__U62(tt, U62(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U62(a__U61(mark(z0), z1, z2), x1)), MARK(U62(U61(z0, z1, z2), x1))) A__U62(tt, U62(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U62(mark(z0), z1), x1)), MARK(U62(U62(z0, z1), x1))) A__U62(tt, U62(isNat(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNat(z0), x1)), MARK(U62(isNat(z0), x1))) A__U62(tt, U62(length(z0), x1)) -> c18(A__LENGTH(a__U62(a__length(mark(z0)), x1)), MARK(U62(length(z0), x1))) A__U62(tt, U62(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U62(cons(mark(z0), z1), x1)), MARK(U62(cons(z0, z1), x1))) A__U62(tt, U62(tt, x1)) -> c18(A__LENGTH(a__U62(tt, x1)), MARK(U62(tt, x1))) A__U62(tt, U62(s(z0), x1)) -> c18(A__LENGTH(a__U62(s(mark(z0)), x1)), MARK(U62(s(z0), x1))) A__U62(tt, U62(x0, z1)) -> c18(MARK(U62(x0, z1))) A__U62(tt, U62(0, x1)) -> c18(A__LENGTH(a__U62(0, x1))) A__U62(tt, U62(nil, x1)) -> c18(A__LENGTH(a__U62(nil, x1))) A__U62(tt, isNat(length(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(isNat(length(z0)))) A__U62(tt, isNat(s(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(isNat(s(z0)))) A__U62(tt, isNat(0)) -> c18(MARK(isNat(0))) A__U62(tt, isNat(z0)) -> c18(MARK(isNat(z0))) A__U62(tt, length(zeros)) -> c18(A__LENGTH(a__length(a__zeros)), MARK(length(zeros))) A__U62(tt, length(U11(z0))) -> c18(A__LENGTH(a__length(a__U11(mark(z0)))), MARK(length(U11(z0)))) A__U62(tt, length(U21(z0))) -> c18(A__LENGTH(a__length(a__U21(mark(z0)))), MARK(length(U21(z0)))) A__U62(tt, length(U31(z0))) -> c18(A__LENGTH(a__length(a__U31(mark(z0)))), MARK(length(U31(z0)))) A__U62(tt, length(U41(z0, z1))) -> c18(A__LENGTH(a__length(a__U41(mark(z0), z1))), MARK(length(U41(z0, z1)))) A__U62(tt, length(U42(z0))) -> c18(A__LENGTH(a__length(a__U42(mark(z0)))), MARK(length(U42(z0)))) A__U62(tt, length(isNatIList(z0))) -> c18(A__LENGTH(a__length(a__isNatIList(z0))), MARK(length(isNatIList(z0)))) A__U62(tt, length(U51(z0, z1))) -> c18(A__LENGTH(a__length(a__U51(mark(z0), z1))), MARK(length(U51(z0, z1)))) A__U62(tt, length(U52(z0))) -> c18(A__LENGTH(a__length(a__U52(mark(z0)))), MARK(length(U52(z0)))) A__U62(tt, length(isNatList(z0))) -> c18(A__LENGTH(a__length(a__isNatList(z0))), MARK(length(isNatList(z0)))) A__U62(tt, length(U61(z0, z1, z2))) -> c18(A__LENGTH(a__length(a__U61(mark(z0), z1, z2))), MARK(length(U61(z0, z1, z2)))) A__U62(tt, length(U62(z0, z1))) -> c18(A__LENGTH(a__length(a__U62(mark(z0), z1))), MARK(length(U62(z0, z1)))) A__U62(tt, length(isNat(z0))) -> c18(A__LENGTH(a__length(a__isNat(z0))), MARK(length(isNat(z0)))) A__U62(tt, length(length(z0))) -> c18(A__LENGTH(a__length(a__length(mark(z0)))), MARK(length(length(z0)))) A__U62(tt, length(cons(z0, z1))) -> c18(A__LENGTH(a__length(cons(mark(z0), z1))), MARK(length(cons(z0, z1)))) A__U62(tt, length(s(z0))) -> c18(A__LENGTH(a__length(s(mark(z0)))), MARK(length(s(z0)))) A__U62(tt, length(x0)) -> c18(MARK(length(x0))) A__U62(tt, length(0)) -> c18(A__LENGTH(a__length(0))) A__U62(tt, length(tt)) -> c18(A__LENGTH(a__length(tt))) A__U62(tt, length(nil)) -> c18(A__LENGTH(a__length(nil))) A__U62(tt, zeros) -> c18(A__LENGTH(cons(0, zeros))) A__ISNATILIST(cons(length(x0), x1)) -> c26(A__U41(U11(a__isNatList(x0)), x1), A__ISNAT(length(x0))) A__ISNATILIST(cons(length(nil), x1)) -> c26(A__U41(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATILIST(cons(length(cons(z0, z1)), x1)) -> c26(A__U41(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) S tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) A__U62(tt, isNatList(cons(z0, z1))) -> c18(A__LENGTH(a__U51(a__isNat(z0), z1)), MARK(isNatList(cons(z0, z1)))) A__U62(tt, isNatList(nil)) -> c18(MARK(isNatList(nil))) A__U62(tt, isNatList(z0)) -> c18(MARK(isNatList(z0))) A__U62(tt, U61(zeros, x1, x2)) -> c18(A__LENGTH(a__U61(a__zeros, x1, x2)), MARK(U61(zeros, x1, x2))) A__U62(tt, U61(U11(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U11(mark(z0)), x1, x2)), MARK(U61(U11(z0), x1, x2))) A__U62(tt, U61(U21(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U21(mark(z0)), x1, x2)), MARK(U61(U21(z0), x1, x2))) A__U62(tt, U61(U31(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U31(mark(z0)), x1, x2)), MARK(U61(U31(z0), x1, x2))) A__U62(tt, U61(U41(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U41(mark(z0), z1), x1, x2)), MARK(U61(U41(z0, z1), x1, x2))) A__U62(tt, U61(U42(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U42(mark(z0)), x1, x2)), MARK(U61(U42(z0), x1, x2))) A__U62(tt, U61(isNatIList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatIList(z0), x1, x2)), MARK(U61(isNatIList(z0), x1, x2))) A__U62(tt, U61(U51(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U51(mark(z0), z1), x1, x2)), MARK(U61(U51(z0, z1), x1, x2))) A__U62(tt, U61(U52(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U52(mark(z0)), x1, x2)), MARK(U61(U52(z0), x1, x2))) A__U62(tt, U61(isNatList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatList(z0), x1, x2)), MARK(U61(isNatList(z0), x1, x2))) A__U62(tt, U61(U61(z0, z1, z2), x1, x2)) -> c18(A__LENGTH(a__U61(a__U61(mark(z0), z1, z2), x1, x2)), MARK(U61(U61(z0, z1, z2), x1, x2))) A__U62(tt, U61(U62(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U62(mark(z0), z1), x1, x2)), MARK(U61(U62(z0, z1), x1, x2))) A__U62(tt, U61(isNat(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNat(z0), x1, x2)), MARK(U61(isNat(z0), x1, x2))) A__U62(tt, U61(length(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__length(mark(z0)), x1, x2)), MARK(U61(length(z0), x1, x2))) A__U62(tt, U61(cons(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(cons(mark(z0), z1), x1, x2)), MARK(U61(cons(z0, z1), x1, x2))) A__U62(tt, U61(tt, x1, x2)) -> c18(A__LENGTH(a__U61(tt, x1, x2)), MARK(U61(tt, x1, x2))) A__U62(tt, U61(s(z0), x1, x2)) -> c18(A__LENGTH(a__U61(s(mark(z0)), x1, x2)), MARK(U61(s(z0), x1, x2))) A__U62(tt, U61(x0, z1, z2)) -> c18(MARK(U61(x0, z1, z2))) A__U62(tt, U61(0, x1, x2)) -> c18(A__LENGTH(a__U61(0, x1, x2))) A__U62(tt, U61(nil, x1, x2)) -> c18(A__LENGTH(a__U61(nil, x1, x2))) A__U62(tt, U62(zeros, x1)) -> c18(A__LENGTH(a__U62(a__zeros, x1)), MARK(U62(zeros, x1))) A__U62(tt, U62(U11(z0), x1)) -> c18(A__LENGTH(a__U62(a__U11(mark(z0)), x1)), MARK(U62(U11(z0), x1))) A__U62(tt, U62(U21(z0), x1)) -> c18(A__LENGTH(a__U62(a__U21(mark(z0)), x1)), MARK(U62(U21(z0), x1))) A__U62(tt, U62(U31(z0), x1)) -> c18(A__LENGTH(a__U62(a__U31(mark(z0)), x1)), MARK(U62(U31(z0), x1))) A__U62(tt, U62(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U41(mark(z0), z1), x1)), MARK(U62(U41(z0, z1), x1))) A__U62(tt, U62(U42(z0), x1)) -> c18(A__LENGTH(a__U62(a__U42(mark(z0)), x1)), MARK(U62(U42(z0), x1))) A__U62(tt, U62(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatIList(z0), x1)), MARK(U62(isNatIList(z0), x1))) A__U62(tt, U62(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U51(mark(z0), z1), x1)), MARK(U62(U51(z0, z1), x1))) A__U62(tt, U62(U52(z0), x1)) -> c18(A__LENGTH(a__U62(a__U52(mark(z0)), x1)), MARK(U62(U52(z0), x1))) A__U62(tt, U62(isNatList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatList(z0), x1)), MARK(U62(isNatList(z0), x1))) A__U62(tt, U62(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U62(a__U61(mark(z0), z1, z2), x1)), MARK(U62(U61(z0, z1, z2), x1))) A__U62(tt, U62(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U62(mark(z0), z1), x1)), MARK(U62(U62(z0, z1), x1))) A__U62(tt, U62(isNat(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNat(z0), x1)), MARK(U62(isNat(z0), x1))) A__U62(tt, U62(length(z0), x1)) -> c18(A__LENGTH(a__U62(a__length(mark(z0)), x1)), MARK(U62(length(z0), x1))) A__U62(tt, U62(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U62(cons(mark(z0), z1), x1)), MARK(U62(cons(z0, z1), x1))) A__U62(tt, U62(tt, x1)) -> c18(A__LENGTH(a__U62(tt, x1)), MARK(U62(tt, x1))) A__U62(tt, U62(s(z0), x1)) -> c18(A__LENGTH(a__U62(s(mark(z0)), x1)), MARK(U62(s(z0), x1))) A__U62(tt, U62(x0, z1)) -> c18(MARK(U62(x0, z1))) A__U62(tt, U62(0, x1)) -> c18(A__LENGTH(a__U62(0, x1))) A__U62(tt, U62(nil, x1)) -> c18(A__LENGTH(a__U62(nil, x1))) A__U62(tt, isNat(length(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(isNat(length(z0)))) A__U62(tt, isNat(s(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(isNat(s(z0)))) A__U62(tt, isNat(0)) -> c18(MARK(isNat(0))) A__U62(tt, isNat(z0)) -> c18(MARK(isNat(z0))) A__U62(tt, length(zeros)) -> c18(A__LENGTH(a__length(a__zeros)), MARK(length(zeros))) A__U62(tt, length(U11(z0))) -> c18(A__LENGTH(a__length(a__U11(mark(z0)))), MARK(length(U11(z0)))) A__U62(tt, length(U21(z0))) -> c18(A__LENGTH(a__length(a__U21(mark(z0)))), MARK(length(U21(z0)))) A__U62(tt, length(U31(z0))) -> c18(A__LENGTH(a__length(a__U31(mark(z0)))), MARK(length(U31(z0)))) A__U62(tt, length(U41(z0, z1))) -> c18(A__LENGTH(a__length(a__U41(mark(z0), z1))), MARK(length(U41(z0, z1)))) A__U62(tt, length(U42(z0))) -> c18(A__LENGTH(a__length(a__U42(mark(z0)))), MARK(length(U42(z0)))) A__U62(tt, length(isNatIList(z0))) -> c18(A__LENGTH(a__length(a__isNatIList(z0))), MARK(length(isNatIList(z0)))) A__U62(tt, length(U51(z0, z1))) -> c18(A__LENGTH(a__length(a__U51(mark(z0), z1))), MARK(length(U51(z0, z1)))) A__U62(tt, length(U52(z0))) -> c18(A__LENGTH(a__length(a__U52(mark(z0)))), MARK(length(U52(z0)))) A__U62(tt, length(isNatList(z0))) -> c18(A__LENGTH(a__length(a__isNatList(z0))), MARK(length(isNatList(z0)))) A__U62(tt, length(U61(z0, z1, z2))) -> c18(A__LENGTH(a__length(a__U61(mark(z0), z1, z2))), MARK(length(U61(z0, z1, z2)))) A__U62(tt, length(U62(z0, z1))) -> c18(A__LENGTH(a__length(a__U62(mark(z0), z1))), MARK(length(U62(z0, z1)))) A__U62(tt, length(isNat(z0))) -> c18(A__LENGTH(a__length(a__isNat(z0))), MARK(length(isNat(z0)))) A__U62(tt, length(length(z0))) -> c18(A__LENGTH(a__length(a__length(mark(z0)))), MARK(length(length(z0)))) A__U62(tt, length(cons(z0, z1))) -> c18(A__LENGTH(a__length(cons(mark(z0), z1))), MARK(length(cons(z0, z1)))) A__U62(tt, length(s(z0))) -> c18(A__LENGTH(a__length(s(mark(z0)))), MARK(length(s(z0)))) A__U62(tt, length(x0)) -> c18(MARK(length(x0))) A__U62(tt, length(0)) -> c18(A__LENGTH(a__length(0))) A__U62(tt, length(tt)) -> c18(A__LENGTH(a__length(tt))) A__U62(tt, length(nil)) -> c18(A__LENGTH(a__length(nil))) A__U62(tt, zeros) -> c18(A__LENGTH(cons(0, zeros))) A__ISNATILIST(cons(length(x0), x1)) -> c26(A__U41(U11(a__isNatList(x0)), x1), A__ISNAT(length(x0))) A__ISNATILIST(cons(length(nil), x1)) -> c26(A__U41(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATILIST(cons(length(cons(z0, z1)), x1)) -> c26(A__U41(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) K tuples:none Defined Rule Symbols: a__zeros, a__U11_1, a__U21_1, a__U31_1, a__U41_2, a__U42_1, a__U51_2, a__U52_1, a__U61_3, a__U62_2, a__isNat_1, a__isNatIList_1, a__isNatList_1, a__length_1, mark_1 Defined Pair Symbols: MARK_1, A__U41_2, A__U51_2, A__ISNAT_1, A__ISNATILIST_1, A__U61_3, A__U62_2, A__ISNATLIST_1, A__LENGTH_1 Compound Symbols: c40_1, c43_1, c46_1, c48_1, c51_1, c8_1, c12_1, c21_1, c22_1, c24_1, c35_1, c36_1, c37_1, c39_1, c42_1, c16_1, c18_2, c18_1, c26_2, c26_1, c29_2, c29_1, c32_2, c32_1, c38_2, c38_1, c_1, c41_2, c41_1, c1_1, c44_2, c44_1, c45_2, c45_1, c47_2, c47_1, c16_2 ---------------------------------------- (151) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 1 trailing tuple parts ---------------------------------------- (152) Obligation: Complexity Dependency Tuples Problem Rules: a__zeros -> cons(0, zeros) a__zeros -> zeros a__U11(tt) -> tt a__U11(z0) -> U11(z0) a__U21(tt) -> tt a__U21(z0) -> U21(z0) a__U31(tt) -> tt a__U31(z0) -> U31(z0) a__U41(tt, z0) -> a__U42(a__isNatIList(z0)) a__U41(z0, z1) -> U41(z0, z1) a__U42(tt) -> tt a__U42(z0) -> U42(z0) a__U51(tt, z0) -> a__U52(a__isNatList(z0)) a__U51(z0, z1) -> U51(z0, z1) a__U52(tt) -> tt a__U52(z0) -> U52(z0) a__U61(tt, z0, z1) -> a__U62(a__isNat(z1), z0) a__U61(z0, z1, z2) -> U61(z0, z1, z2) a__U62(tt, z0) -> s(a__length(mark(z0))) a__U62(z0, z1) -> U62(z0, z1) a__isNat(0) -> tt a__isNat(length(z0)) -> a__U11(a__isNatList(z0)) a__isNat(s(z0)) -> a__U21(a__isNat(z0)) a__isNat(z0) -> isNat(z0) a__isNatIList(z0) -> a__U31(a__isNatList(z0)) a__isNatIList(zeros) -> tt a__isNatIList(cons(z0, z1)) -> a__U41(a__isNat(z0), z1) a__isNatIList(z0) -> isNatIList(z0) a__isNatList(nil) -> tt a__isNatList(cons(z0, z1)) -> a__U51(a__isNat(z0), z1) a__isNatList(z0) -> isNatList(z0) a__length(nil) -> 0 a__length(cons(z0, z1)) -> a__U61(a__isNatList(z1), z1, z0) a__length(z0) -> length(z0) mark(zeros) -> a__zeros mark(U11(z0)) -> a__U11(mark(z0)) mark(U21(z0)) -> a__U21(mark(z0)) mark(U31(z0)) -> a__U31(mark(z0)) mark(U41(z0, z1)) -> a__U41(mark(z0), z1) mark(U42(z0)) -> a__U42(mark(z0)) mark(isNatIList(z0)) -> a__isNatIList(z0) mark(U51(z0, z1)) -> a__U51(mark(z0), z1) mark(U52(z0)) -> a__U52(mark(z0)) mark(isNatList(z0)) -> a__isNatList(z0) mark(U61(z0, z1, z2)) -> a__U61(mark(z0), z1, z2) mark(U62(z0, z1)) -> a__U62(mark(z0), z1) mark(isNat(z0)) -> a__isNat(z0) mark(length(z0)) -> a__length(mark(z0)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(0) -> 0 mark(tt) -> tt mark(s(z0)) -> s(mark(z0)) mark(nil) -> nil Tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) A__U62(tt, isNatList(cons(z0, z1))) -> c18(A__LENGTH(a__U51(a__isNat(z0), z1)), MARK(isNatList(cons(z0, z1)))) A__U62(tt, isNatList(nil)) -> c18(MARK(isNatList(nil))) A__U62(tt, isNatList(z0)) -> c18(MARK(isNatList(z0))) A__U62(tt, U61(zeros, x1, x2)) -> c18(A__LENGTH(a__U61(a__zeros, x1, x2)), MARK(U61(zeros, x1, x2))) A__U62(tt, U61(U11(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U11(mark(z0)), x1, x2)), MARK(U61(U11(z0), x1, x2))) A__U62(tt, U61(U21(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U21(mark(z0)), x1, x2)), MARK(U61(U21(z0), x1, x2))) A__U62(tt, U61(U31(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U31(mark(z0)), x1, x2)), MARK(U61(U31(z0), x1, x2))) A__U62(tt, U61(U41(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U41(mark(z0), z1), x1, x2)), MARK(U61(U41(z0, z1), x1, x2))) A__U62(tt, U61(U42(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U42(mark(z0)), x1, x2)), MARK(U61(U42(z0), x1, x2))) A__U62(tt, U61(isNatIList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatIList(z0), x1, x2)), MARK(U61(isNatIList(z0), x1, x2))) A__U62(tt, U61(U51(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U51(mark(z0), z1), x1, x2)), MARK(U61(U51(z0, z1), x1, x2))) A__U62(tt, U61(U52(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U52(mark(z0)), x1, x2)), MARK(U61(U52(z0), x1, x2))) A__U62(tt, U61(isNatList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatList(z0), x1, x2)), MARK(U61(isNatList(z0), x1, x2))) A__U62(tt, U61(U61(z0, z1, z2), x1, x2)) -> c18(A__LENGTH(a__U61(a__U61(mark(z0), z1, z2), x1, x2)), MARK(U61(U61(z0, z1, z2), x1, x2))) A__U62(tt, U61(U62(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U62(mark(z0), z1), x1, x2)), MARK(U61(U62(z0, z1), x1, x2))) A__U62(tt, U61(isNat(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNat(z0), x1, x2)), MARK(U61(isNat(z0), x1, x2))) A__U62(tt, U61(length(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__length(mark(z0)), x1, x2)), MARK(U61(length(z0), x1, x2))) A__U62(tt, U61(cons(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(cons(mark(z0), z1), x1, x2)), MARK(U61(cons(z0, z1), x1, x2))) A__U62(tt, U61(tt, x1, x2)) -> c18(A__LENGTH(a__U61(tt, x1, x2)), MARK(U61(tt, x1, x2))) A__U62(tt, U61(s(z0), x1, x2)) -> c18(A__LENGTH(a__U61(s(mark(z0)), x1, x2)), MARK(U61(s(z0), x1, x2))) A__U62(tt, U61(x0, z1, z2)) -> c18(MARK(U61(x0, z1, z2))) A__U62(tt, U61(0, x1, x2)) -> c18(A__LENGTH(a__U61(0, x1, x2))) A__U62(tt, U61(nil, x1, x2)) -> c18(A__LENGTH(a__U61(nil, x1, x2))) A__U62(tt, U62(zeros, x1)) -> c18(A__LENGTH(a__U62(a__zeros, x1)), MARK(U62(zeros, x1))) A__U62(tt, U62(U11(z0), x1)) -> c18(A__LENGTH(a__U62(a__U11(mark(z0)), x1)), MARK(U62(U11(z0), x1))) A__U62(tt, U62(U21(z0), x1)) -> c18(A__LENGTH(a__U62(a__U21(mark(z0)), x1)), MARK(U62(U21(z0), x1))) A__U62(tt, U62(U31(z0), x1)) -> c18(A__LENGTH(a__U62(a__U31(mark(z0)), x1)), MARK(U62(U31(z0), x1))) A__U62(tt, U62(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U41(mark(z0), z1), x1)), MARK(U62(U41(z0, z1), x1))) A__U62(tt, U62(U42(z0), x1)) -> c18(A__LENGTH(a__U62(a__U42(mark(z0)), x1)), MARK(U62(U42(z0), x1))) A__U62(tt, U62(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatIList(z0), x1)), MARK(U62(isNatIList(z0), x1))) A__U62(tt, U62(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U51(mark(z0), z1), x1)), MARK(U62(U51(z0, z1), x1))) A__U62(tt, U62(U52(z0), x1)) -> c18(A__LENGTH(a__U62(a__U52(mark(z0)), x1)), MARK(U62(U52(z0), x1))) A__U62(tt, U62(isNatList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatList(z0), x1)), MARK(U62(isNatList(z0), x1))) A__U62(tt, U62(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U62(a__U61(mark(z0), z1, z2), x1)), MARK(U62(U61(z0, z1, z2), x1))) A__U62(tt, U62(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U62(mark(z0), z1), x1)), MARK(U62(U62(z0, z1), x1))) A__U62(tt, U62(isNat(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNat(z0), x1)), MARK(U62(isNat(z0), x1))) A__U62(tt, U62(length(z0), x1)) -> c18(A__LENGTH(a__U62(a__length(mark(z0)), x1)), MARK(U62(length(z0), x1))) A__U62(tt, U62(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U62(cons(mark(z0), z1), x1)), MARK(U62(cons(z0, z1), x1))) A__U62(tt, U62(tt, x1)) -> c18(A__LENGTH(a__U62(tt, x1)), MARK(U62(tt, x1))) A__U62(tt, U62(s(z0), x1)) -> c18(A__LENGTH(a__U62(s(mark(z0)), x1)), MARK(U62(s(z0), x1))) A__U62(tt, U62(x0, z1)) -> c18(MARK(U62(x0, z1))) A__U62(tt, U62(0, x1)) -> c18(A__LENGTH(a__U62(0, x1))) A__U62(tt, U62(nil, x1)) -> c18(A__LENGTH(a__U62(nil, x1))) A__U62(tt, isNat(length(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(isNat(length(z0)))) A__U62(tt, isNat(s(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(isNat(s(z0)))) A__U62(tt, isNat(0)) -> c18(MARK(isNat(0))) A__U62(tt, isNat(z0)) -> c18(MARK(isNat(z0))) A__U62(tt, length(zeros)) -> c18(A__LENGTH(a__length(a__zeros)), MARK(length(zeros))) A__U62(tt, length(U11(z0))) -> c18(A__LENGTH(a__length(a__U11(mark(z0)))), MARK(length(U11(z0)))) A__U62(tt, length(U21(z0))) -> c18(A__LENGTH(a__length(a__U21(mark(z0)))), MARK(length(U21(z0)))) A__U62(tt, length(U31(z0))) -> c18(A__LENGTH(a__length(a__U31(mark(z0)))), MARK(length(U31(z0)))) A__U62(tt, length(U41(z0, z1))) -> c18(A__LENGTH(a__length(a__U41(mark(z0), z1))), MARK(length(U41(z0, z1)))) A__U62(tt, length(U42(z0))) -> c18(A__LENGTH(a__length(a__U42(mark(z0)))), MARK(length(U42(z0)))) A__U62(tt, length(isNatIList(z0))) -> c18(A__LENGTH(a__length(a__isNatIList(z0))), MARK(length(isNatIList(z0)))) A__U62(tt, length(U51(z0, z1))) -> c18(A__LENGTH(a__length(a__U51(mark(z0), z1))), MARK(length(U51(z0, z1)))) A__U62(tt, length(U52(z0))) -> c18(A__LENGTH(a__length(a__U52(mark(z0)))), MARK(length(U52(z0)))) A__U62(tt, length(isNatList(z0))) -> c18(A__LENGTH(a__length(a__isNatList(z0))), MARK(length(isNatList(z0)))) A__U62(tt, length(U61(z0, z1, z2))) -> c18(A__LENGTH(a__length(a__U61(mark(z0), z1, z2))), MARK(length(U61(z0, z1, z2)))) A__U62(tt, length(U62(z0, z1))) -> c18(A__LENGTH(a__length(a__U62(mark(z0), z1))), MARK(length(U62(z0, z1)))) A__U62(tt, length(isNat(z0))) -> c18(A__LENGTH(a__length(a__isNat(z0))), MARK(length(isNat(z0)))) A__U62(tt, length(length(z0))) -> c18(A__LENGTH(a__length(a__length(mark(z0)))), MARK(length(length(z0)))) A__U62(tt, length(cons(z0, z1))) -> c18(A__LENGTH(a__length(cons(mark(z0), z1))), MARK(length(cons(z0, z1)))) A__U62(tt, length(s(z0))) -> c18(A__LENGTH(a__length(s(mark(z0)))), MARK(length(s(z0)))) A__U62(tt, length(x0)) -> c18(MARK(length(x0))) A__U62(tt, length(0)) -> c18(A__LENGTH(a__length(0))) A__U62(tt, length(tt)) -> c18(A__LENGTH(a__length(tt))) A__U62(tt, length(nil)) -> c18(A__LENGTH(a__length(nil))) A__U62(tt, zeros) -> c18(A__LENGTH(cons(0, zeros))) A__ISNATILIST(cons(length(nil), x1)) -> c26(A__U41(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATILIST(cons(length(cons(z0, z1)), x1)) -> c26(A__U41(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(length(x0), x1)) -> c26(A__ISNAT(length(x0))) S tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) A__U62(tt, isNatList(cons(z0, z1))) -> c18(A__LENGTH(a__U51(a__isNat(z0), z1)), MARK(isNatList(cons(z0, z1)))) A__U62(tt, isNatList(nil)) -> c18(MARK(isNatList(nil))) A__U62(tt, isNatList(z0)) -> c18(MARK(isNatList(z0))) A__U62(tt, U61(zeros, x1, x2)) -> c18(A__LENGTH(a__U61(a__zeros, x1, x2)), MARK(U61(zeros, x1, x2))) A__U62(tt, U61(U11(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U11(mark(z0)), x1, x2)), MARK(U61(U11(z0), x1, x2))) A__U62(tt, U61(U21(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U21(mark(z0)), x1, x2)), MARK(U61(U21(z0), x1, x2))) A__U62(tt, U61(U31(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U31(mark(z0)), x1, x2)), MARK(U61(U31(z0), x1, x2))) A__U62(tt, U61(U41(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U41(mark(z0), z1), x1, x2)), MARK(U61(U41(z0, z1), x1, x2))) A__U62(tt, U61(U42(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U42(mark(z0)), x1, x2)), MARK(U61(U42(z0), x1, x2))) A__U62(tt, U61(isNatIList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatIList(z0), x1, x2)), MARK(U61(isNatIList(z0), x1, x2))) A__U62(tt, U61(U51(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U51(mark(z0), z1), x1, x2)), MARK(U61(U51(z0, z1), x1, x2))) A__U62(tt, U61(U52(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U52(mark(z0)), x1, x2)), MARK(U61(U52(z0), x1, x2))) A__U62(tt, U61(isNatList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatList(z0), x1, x2)), MARK(U61(isNatList(z0), x1, x2))) A__U62(tt, U61(U61(z0, z1, z2), x1, x2)) -> c18(A__LENGTH(a__U61(a__U61(mark(z0), z1, z2), x1, x2)), MARK(U61(U61(z0, z1, z2), x1, x2))) A__U62(tt, U61(U62(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U62(mark(z0), z1), x1, x2)), MARK(U61(U62(z0, z1), x1, x2))) A__U62(tt, U61(isNat(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNat(z0), x1, x2)), MARK(U61(isNat(z0), x1, x2))) A__U62(tt, U61(length(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__length(mark(z0)), x1, x2)), MARK(U61(length(z0), x1, x2))) A__U62(tt, U61(cons(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(cons(mark(z0), z1), x1, x2)), MARK(U61(cons(z0, z1), x1, x2))) A__U62(tt, U61(tt, x1, x2)) -> c18(A__LENGTH(a__U61(tt, x1, x2)), MARK(U61(tt, x1, x2))) A__U62(tt, U61(s(z0), x1, x2)) -> c18(A__LENGTH(a__U61(s(mark(z0)), x1, x2)), MARK(U61(s(z0), x1, x2))) A__U62(tt, U61(x0, z1, z2)) -> c18(MARK(U61(x0, z1, z2))) A__U62(tt, U61(0, x1, x2)) -> c18(A__LENGTH(a__U61(0, x1, x2))) A__U62(tt, U61(nil, x1, x2)) -> c18(A__LENGTH(a__U61(nil, x1, x2))) A__U62(tt, U62(zeros, x1)) -> c18(A__LENGTH(a__U62(a__zeros, x1)), MARK(U62(zeros, x1))) A__U62(tt, U62(U11(z0), x1)) -> c18(A__LENGTH(a__U62(a__U11(mark(z0)), x1)), MARK(U62(U11(z0), x1))) A__U62(tt, U62(U21(z0), x1)) -> c18(A__LENGTH(a__U62(a__U21(mark(z0)), x1)), MARK(U62(U21(z0), x1))) A__U62(tt, U62(U31(z0), x1)) -> c18(A__LENGTH(a__U62(a__U31(mark(z0)), x1)), MARK(U62(U31(z0), x1))) A__U62(tt, U62(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U41(mark(z0), z1), x1)), MARK(U62(U41(z0, z1), x1))) A__U62(tt, U62(U42(z0), x1)) -> c18(A__LENGTH(a__U62(a__U42(mark(z0)), x1)), MARK(U62(U42(z0), x1))) A__U62(tt, U62(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatIList(z0), x1)), MARK(U62(isNatIList(z0), x1))) A__U62(tt, U62(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U51(mark(z0), z1), x1)), MARK(U62(U51(z0, z1), x1))) A__U62(tt, U62(U52(z0), x1)) -> c18(A__LENGTH(a__U62(a__U52(mark(z0)), x1)), MARK(U62(U52(z0), x1))) A__U62(tt, U62(isNatList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatList(z0), x1)), MARK(U62(isNatList(z0), x1))) A__U62(tt, U62(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U62(a__U61(mark(z0), z1, z2), x1)), MARK(U62(U61(z0, z1, z2), x1))) A__U62(tt, U62(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U62(mark(z0), z1), x1)), MARK(U62(U62(z0, z1), x1))) A__U62(tt, U62(isNat(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNat(z0), x1)), MARK(U62(isNat(z0), x1))) A__U62(tt, U62(length(z0), x1)) -> c18(A__LENGTH(a__U62(a__length(mark(z0)), x1)), MARK(U62(length(z0), x1))) A__U62(tt, U62(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U62(cons(mark(z0), z1), x1)), MARK(U62(cons(z0, z1), x1))) A__U62(tt, U62(tt, x1)) -> c18(A__LENGTH(a__U62(tt, x1)), MARK(U62(tt, x1))) A__U62(tt, U62(s(z0), x1)) -> c18(A__LENGTH(a__U62(s(mark(z0)), x1)), MARK(U62(s(z0), x1))) A__U62(tt, U62(x0, z1)) -> c18(MARK(U62(x0, z1))) A__U62(tt, U62(0, x1)) -> c18(A__LENGTH(a__U62(0, x1))) A__U62(tt, U62(nil, x1)) -> c18(A__LENGTH(a__U62(nil, x1))) A__U62(tt, isNat(length(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(isNat(length(z0)))) A__U62(tt, isNat(s(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(isNat(s(z0)))) A__U62(tt, isNat(0)) -> c18(MARK(isNat(0))) A__U62(tt, isNat(z0)) -> c18(MARK(isNat(z0))) A__U62(tt, length(zeros)) -> c18(A__LENGTH(a__length(a__zeros)), MARK(length(zeros))) A__U62(tt, length(U11(z0))) -> c18(A__LENGTH(a__length(a__U11(mark(z0)))), MARK(length(U11(z0)))) A__U62(tt, length(U21(z0))) -> c18(A__LENGTH(a__length(a__U21(mark(z0)))), MARK(length(U21(z0)))) A__U62(tt, length(U31(z0))) -> c18(A__LENGTH(a__length(a__U31(mark(z0)))), MARK(length(U31(z0)))) A__U62(tt, length(U41(z0, z1))) -> c18(A__LENGTH(a__length(a__U41(mark(z0), z1))), MARK(length(U41(z0, z1)))) A__U62(tt, length(U42(z0))) -> c18(A__LENGTH(a__length(a__U42(mark(z0)))), MARK(length(U42(z0)))) A__U62(tt, length(isNatIList(z0))) -> c18(A__LENGTH(a__length(a__isNatIList(z0))), MARK(length(isNatIList(z0)))) A__U62(tt, length(U51(z0, z1))) -> c18(A__LENGTH(a__length(a__U51(mark(z0), z1))), MARK(length(U51(z0, z1)))) A__U62(tt, length(U52(z0))) -> c18(A__LENGTH(a__length(a__U52(mark(z0)))), MARK(length(U52(z0)))) A__U62(tt, length(isNatList(z0))) -> c18(A__LENGTH(a__length(a__isNatList(z0))), MARK(length(isNatList(z0)))) A__U62(tt, length(U61(z0, z1, z2))) -> c18(A__LENGTH(a__length(a__U61(mark(z0), z1, z2))), MARK(length(U61(z0, z1, z2)))) A__U62(tt, length(U62(z0, z1))) -> c18(A__LENGTH(a__length(a__U62(mark(z0), z1))), MARK(length(U62(z0, z1)))) A__U62(tt, length(isNat(z0))) -> c18(A__LENGTH(a__length(a__isNat(z0))), MARK(length(isNat(z0)))) A__U62(tt, length(length(z0))) -> c18(A__LENGTH(a__length(a__length(mark(z0)))), MARK(length(length(z0)))) A__U62(tt, length(cons(z0, z1))) -> c18(A__LENGTH(a__length(cons(mark(z0), z1))), MARK(length(cons(z0, z1)))) A__U62(tt, length(s(z0))) -> c18(A__LENGTH(a__length(s(mark(z0)))), MARK(length(s(z0)))) A__U62(tt, length(x0)) -> c18(MARK(length(x0))) A__U62(tt, length(0)) -> c18(A__LENGTH(a__length(0))) A__U62(tt, length(tt)) -> c18(A__LENGTH(a__length(tt))) A__U62(tt, length(nil)) -> c18(A__LENGTH(a__length(nil))) A__U62(tt, zeros) -> c18(A__LENGTH(cons(0, zeros))) A__ISNATILIST(cons(length(nil), x1)) -> c26(A__U41(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATILIST(cons(length(cons(z0, z1)), x1)) -> c26(A__U41(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(length(x0), x1)) -> c26(A__ISNAT(length(x0))) K tuples:none Defined Rule Symbols: a__zeros, a__U11_1, a__U21_1, a__U31_1, a__U41_2, a__U42_1, a__U51_2, a__U52_1, a__U61_3, a__U62_2, a__isNat_1, a__isNatIList_1, a__isNatList_1, a__length_1, mark_1 Defined Pair Symbols: MARK_1, A__U41_2, A__U51_2, A__ISNAT_1, A__ISNATILIST_1, A__U61_3, A__U62_2, A__ISNATLIST_1, A__LENGTH_1 Compound Symbols: c40_1, c43_1, c46_1, c48_1, c51_1, c8_1, c12_1, c21_1, c22_1, c24_1, c35_1, c36_1, c37_1, c39_1, c42_1, c16_1, c18_2, c18_1, c26_2, c26_1, c29_2, c29_1, c32_2, c32_1, c38_2, c38_1, c_1, c41_2, c41_1, c1_1, c44_2, c44_1, c45_2, c45_1, c47_2, c47_1, c16_2 ---------------------------------------- (153) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) by A__ISNATILIST(cons(s(x0), x1)) -> c26(A__U41(U21(a__isNat(x0)), x1), A__ISNAT(s(x0))) A__ISNATILIST(cons(s(0), x1)) -> c26(A__U41(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATILIST(cons(s(length(z0)), x1)) -> c26(A__U41(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATILIST(cons(s(s(z0)), x1)) -> c26(A__U41(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) ---------------------------------------- (154) Obligation: Complexity Dependency Tuples Problem Rules: a__zeros -> cons(0, zeros) a__zeros -> zeros a__U11(tt) -> tt a__U11(z0) -> U11(z0) a__U21(tt) -> tt a__U21(z0) -> U21(z0) a__U31(tt) -> tt a__U31(z0) -> U31(z0) a__U41(tt, z0) -> a__U42(a__isNatIList(z0)) a__U41(z0, z1) -> U41(z0, z1) a__U42(tt) -> tt a__U42(z0) -> U42(z0) a__U51(tt, z0) -> a__U52(a__isNatList(z0)) a__U51(z0, z1) -> U51(z0, z1) a__U52(tt) -> tt a__U52(z0) -> U52(z0) a__U61(tt, z0, z1) -> a__U62(a__isNat(z1), z0) a__U61(z0, z1, z2) -> U61(z0, z1, z2) a__U62(tt, z0) -> s(a__length(mark(z0))) a__U62(z0, z1) -> U62(z0, z1) a__isNat(0) -> tt a__isNat(length(z0)) -> a__U11(a__isNatList(z0)) a__isNat(s(z0)) -> a__U21(a__isNat(z0)) a__isNat(z0) -> isNat(z0) a__isNatIList(z0) -> a__U31(a__isNatList(z0)) a__isNatIList(zeros) -> tt a__isNatIList(cons(z0, z1)) -> a__U41(a__isNat(z0), z1) a__isNatIList(z0) -> isNatIList(z0) a__isNatList(nil) -> tt a__isNatList(cons(z0, z1)) -> a__U51(a__isNat(z0), z1) a__isNatList(z0) -> isNatList(z0) a__length(nil) -> 0 a__length(cons(z0, z1)) -> a__U61(a__isNatList(z1), z1, z0) a__length(z0) -> length(z0) mark(zeros) -> a__zeros mark(U11(z0)) -> a__U11(mark(z0)) mark(U21(z0)) -> a__U21(mark(z0)) mark(U31(z0)) -> a__U31(mark(z0)) mark(U41(z0, z1)) -> a__U41(mark(z0), z1) mark(U42(z0)) -> a__U42(mark(z0)) mark(isNatIList(z0)) -> a__isNatIList(z0) mark(U51(z0, z1)) -> a__U51(mark(z0), z1) mark(U52(z0)) -> a__U52(mark(z0)) mark(isNatList(z0)) -> a__isNatList(z0) mark(U61(z0, z1, z2)) -> a__U61(mark(z0), z1, z2) mark(U62(z0, z1)) -> a__U62(mark(z0), z1) mark(isNat(z0)) -> a__isNat(z0) mark(length(z0)) -> a__length(mark(z0)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(0) -> 0 mark(tt) -> tt mark(s(z0)) -> s(mark(z0)) mark(nil) -> nil Tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) A__U62(tt, isNatList(cons(z0, z1))) -> c18(A__LENGTH(a__U51(a__isNat(z0), z1)), MARK(isNatList(cons(z0, z1)))) A__U62(tt, isNatList(nil)) -> c18(MARK(isNatList(nil))) A__U62(tt, isNatList(z0)) -> c18(MARK(isNatList(z0))) A__U62(tt, U61(zeros, x1, x2)) -> c18(A__LENGTH(a__U61(a__zeros, x1, x2)), MARK(U61(zeros, x1, x2))) A__U62(tt, U61(U11(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U11(mark(z0)), x1, x2)), MARK(U61(U11(z0), x1, x2))) A__U62(tt, U61(U21(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U21(mark(z0)), x1, x2)), MARK(U61(U21(z0), x1, x2))) A__U62(tt, U61(U31(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U31(mark(z0)), x1, x2)), MARK(U61(U31(z0), x1, x2))) A__U62(tt, U61(U41(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U41(mark(z0), z1), x1, x2)), MARK(U61(U41(z0, z1), x1, x2))) A__U62(tt, U61(U42(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U42(mark(z0)), x1, x2)), MARK(U61(U42(z0), x1, x2))) A__U62(tt, U61(isNatIList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatIList(z0), x1, x2)), MARK(U61(isNatIList(z0), x1, x2))) A__U62(tt, U61(U51(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U51(mark(z0), z1), x1, x2)), MARK(U61(U51(z0, z1), x1, x2))) A__U62(tt, U61(U52(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U52(mark(z0)), x1, x2)), MARK(U61(U52(z0), x1, x2))) A__U62(tt, U61(isNatList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatList(z0), x1, x2)), MARK(U61(isNatList(z0), x1, x2))) A__U62(tt, U61(U61(z0, z1, z2), x1, x2)) -> c18(A__LENGTH(a__U61(a__U61(mark(z0), z1, z2), x1, x2)), MARK(U61(U61(z0, z1, z2), x1, x2))) A__U62(tt, U61(U62(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U62(mark(z0), z1), x1, x2)), MARK(U61(U62(z0, z1), x1, x2))) A__U62(tt, U61(isNat(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNat(z0), x1, x2)), MARK(U61(isNat(z0), x1, x2))) A__U62(tt, U61(length(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__length(mark(z0)), x1, x2)), MARK(U61(length(z0), x1, x2))) A__U62(tt, U61(cons(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(cons(mark(z0), z1), x1, x2)), MARK(U61(cons(z0, z1), x1, x2))) A__U62(tt, U61(tt, x1, x2)) -> c18(A__LENGTH(a__U61(tt, x1, x2)), MARK(U61(tt, x1, x2))) A__U62(tt, U61(s(z0), x1, x2)) -> c18(A__LENGTH(a__U61(s(mark(z0)), x1, x2)), MARK(U61(s(z0), x1, x2))) A__U62(tt, U61(x0, z1, z2)) -> c18(MARK(U61(x0, z1, z2))) A__U62(tt, U61(0, x1, x2)) -> c18(A__LENGTH(a__U61(0, x1, x2))) A__U62(tt, U61(nil, x1, x2)) -> c18(A__LENGTH(a__U61(nil, x1, x2))) A__U62(tt, U62(zeros, x1)) -> c18(A__LENGTH(a__U62(a__zeros, x1)), MARK(U62(zeros, x1))) A__U62(tt, U62(U11(z0), x1)) -> c18(A__LENGTH(a__U62(a__U11(mark(z0)), x1)), MARK(U62(U11(z0), x1))) A__U62(tt, U62(U21(z0), x1)) -> c18(A__LENGTH(a__U62(a__U21(mark(z0)), x1)), MARK(U62(U21(z0), x1))) A__U62(tt, U62(U31(z0), x1)) -> c18(A__LENGTH(a__U62(a__U31(mark(z0)), x1)), MARK(U62(U31(z0), x1))) A__U62(tt, U62(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U41(mark(z0), z1), x1)), MARK(U62(U41(z0, z1), x1))) A__U62(tt, U62(U42(z0), x1)) -> c18(A__LENGTH(a__U62(a__U42(mark(z0)), x1)), MARK(U62(U42(z0), x1))) A__U62(tt, U62(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatIList(z0), x1)), MARK(U62(isNatIList(z0), x1))) A__U62(tt, U62(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U51(mark(z0), z1), x1)), MARK(U62(U51(z0, z1), x1))) A__U62(tt, U62(U52(z0), x1)) -> c18(A__LENGTH(a__U62(a__U52(mark(z0)), x1)), MARK(U62(U52(z0), x1))) A__U62(tt, U62(isNatList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatList(z0), x1)), MARK(U62(isNatList(z0), x1))) A__U62(tt, U62(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U62(a__U61(mark(z0), z1, z2), x1)), MARK(U62(U61(z0, z1, z2), x1))) A__U62(tt, U62(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U62(mark(z0), z1), x1)), MARK(U62(U62(z0, z1), x1))) A__U62(tt, U62(isNat(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNat(z0), x1)), MARK(U62(isNat(z0), x1))) A__U62(tt, U62(length(z0), x1)) -> c18(A__LENGTH(a__U62(a__length(mark(z0)), x1)), MARK(U62(length(z0), x1))) A__U62(tt, U62(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U62(cons(mark(z0), z1), x1)), MARK(U62(cons(z0, z1), x1))) A__U62(tt, U62(tt, x1)) -> c18(A__LENGTH(a__U62(tt, x1)), MARK(U62(tt, x1))) A__U62(tt, U62(s(z0), x1)) -> c18(A__LENGTH(a__U62(s(mark(z0)), x1)), MARK(U62(s(z0), x1))) A__U62(tt, U62(x0, z1)) -> c18(MARK(U62(x0, z1))) A__U62(tt, U62(0, x1)) -> c18(A__LENGTH(a__U62(0, x1))) A__U62(tt, U62(nil, x1)) -> c18(A__LENGTH(a__U62(nil, x1))) A__U62(tt, isNat(length(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(isNat(length(z0)))) A__U62(tt, isNat(s(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(isNat(s(z0)))) A__U62(tt, isNat(0)) -> c18(MARK(isNat(0))) A__U62(tt, isNat(z0)) -> c18(MARK(isNat(z0))) A__U62(tt, length(zeros)) -> c18(A__LENGTH(a__length(a__zeros)), MARK(length(zeros))) A__U62(tt, length(U11(z0))) -> c18(A__LENGTH(a__length(a__U11(mark(z0)))), MARK(length(U11(z0)))) A__U62(tt, length(U21(z0))) -> c18(A__LENGTH(a__length(a__U21(mark(z0)))), MARK(length(U21(z0)))) A__U62(tt, length(U31(z0))) -> c18(A__LENGTH(a__length(a__U31(mark(z0)))), MARK(length(U31(z0)))) A__U62(tt, length(U41(z0, z1))) -> c18(A__LENGTH(a__length(a__U41(mark(z0), z1))), MARK(length(U41(z0, z1)))) A__U62(tt, length(U42(z0))) -> c18(A__LENGTH(a__length(a__U42(mark(z0)))), MARK(length(U42(z0)))) A__U62(tt, length(isNatIList(z0))) -> c18(A__LENGTH(a__length(a__isNatIList(z0))), MARK(length(isNatIList(z0)))) A__U62(tt, length(U51(z0, z1))) -> c18(A__LENGTH(a__length(a__U51(mark(z0), z1))), MARK(length(U51(z0, z1)))) A__U62(tt, length(U52(z0))) -> c18(A__LENGTH(a__length(a__U52(mark(z0)))), MARK(length(U52(z0)))) A__U62(tt, length(isNatList(z0))) -> c18(A__LENGTH(a__length(a__isNatList(z0))), MARK(length(isNatList(z0)))) A__U62(tt, length(U61(z0, z1, z2))) -> c18(A__LENGTH(a__length(a__U61(mark(z0), z1, z2))), MARK(length(U61(z0, z1, z2)))) A__U62(tt, length(U62(z0, z1))) -> c18(A__LENGTH(a__length(a__U62(mark(z0), z1))), MARK(length(U62(z0, z1)))) A__U62(tt, length(isNat(z0))) -> c18(A__LENGTH(a__length(a__isNat(z0))), MARK(length(isNat(z0)))) A__U62(tt, length(length(z0))) -> c18(A__LENGTH(a__length(a__length(mark(z0)))), MARK(length(length(z0)))) A__U62(tt, length(cons(z0, z1))) -> c18(A__LENGTH(a__length(cons(mark(z0), z1))), MARK(length(cons(z0, z1)))) A__U62(tt, length(s(z0))) -> c18(A__LENGTH(a__length(s(mark(z0)))), MARK(length(s(z0)))) A__U62(tt, length(x0)) -> c18(MARK(length(x0))) A__U62(tt, length(0)) -> c18(A__LENGTH(a__length(0))) A__U62(tt, length(tt)) -> c18(A__LENGTH(a__length(tt))) A__U62(tt, length(nil)) -> c18(A__LENGTH(a__length(nil))) A__U62(tt, zeros) -> c18(A__LENGTH(cons(0, zeros))) A__ISNATILIST(cons(length(nil), x1)) -> c26(A__U41(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATILIST(cons(length(cons(z0, z1)), x1)) -> c26(A__U41(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(length(x0), x1)) -> c26(A__ISNAT(length(x0))) A__ISNATILIST(cons(s(x0), x1)) -> c26(A__U41(U21(a__isNat(x0)), x1), A__ISNAT(s(x0))) A__ISNATILIST(cons(s(0), x1)) -> c26(A__U41(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATILIST(cons(s(length(z0)), x1)) -> c26(A__U41(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATILIST(cons(s(s(z0)), x1)) -> c26(A__U41(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) S tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) A__U62(tt, isNatList(cons(z0, z1))) -> c18(A__LENGTH(a__U51(a__isNat(z0), z1)), MARK(isNatList(cons(z0, z1)))) A__U62(tt, isNatList(nil)) -> c18(MARK(isNatList(nil))) A__U62(tt, isNatList(z0)) -> c18(MARK(isNatList(z0))) A__U62(tt, U61(zeros, x1, x2)) -> c18(A__LENGTH(a__U61(a__zeros, x1, x2)), MARK(U61(zeros, x1, x2))) A__U62(tt, U61(U11(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U11(mark(z0)), x1, x2)), MARK(U61(U11(z0), x1, x2))) A__U62(tt, U61(U21(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U21(mark(z0)), x1, x2)), MARK(U61(U21(z0), x1, x2))) A__U62(tt, U61(U31(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U31(mark(z0)), x1, x2)), MARK(U61(U31(z0), x1, x2))) A__U62(tt, U61(U41(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U41(mark(z0), z1), x1, x2)), MARK(U61(U41(z0, z1), x1, x2))) A__U62(tt, U61(U42(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U42(mark(z0)), x1, x2)), MARK(U61(U42(z0), x1, x2))) A__U62(tt, U61(isNatIList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatIList(z0), x1, x2)), MARK(U61(isNatIList(z0), x1, x2))) A__U62(tt, U61(U51(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U51(mark(z0), z1), x1, x2)), MARK(U61(U51(z0, z1), x1, x2))) A__U62(tt, U61(U52(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U52(mark(z0)), x1, x2)), MARK(U61(U52(z0), x1, x2))) A__U62(tt, U61(isNatList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatList(z0), x1, x2)), MARK(U61(isNatList(z0), x1, x2))) A__U62(tt, U61(U61(z0, z1, z2), x1, x2)) -> c18(A__LENGTH(a__U61(a__U61(mark(z0), z1, z2), x1, x2)), MARK(U61(U61(z0, z1, z2), x1, x2))) A__U62(tt, U61(U62(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U62(mark(z0), z1), x1, x2)), MARK(U61(U62(z0, z1), x1, x2))) A__U62(tt, U61(isNat(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNat(z0), x1, x2)), MARK(U61(isNat(z0), x1, x2))) A__U62(tt, U61(length(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__length(mark(z0)), x1, x2)), MARK(U61(length(z0), x1, x2))) A__U62(tt, U61(cons(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(cons(mark(z0), z1), x1, x2)), MARK(U61(cons(z0, z1), x1, x2))) A__U62(tt, U61(tt, x1, x2)) -> c18(A__LENGTH(a__U61(tt, x1, x2)), MARK(U61(tt, x1, x2))) A__U62(tt, U61(s(z0), x1, x2)) -> c18(A__LENGTH(a__U61(s(mark(z0)), x1, x2)), MARK(U61(s(z0), x1, x2))) A__U62(tt, U61(x0, z1, z2)) -> c18(MARK(U61(x0, z1, z2))) A__U62(tt, U61(0, x1, x2)) -> c18(A__LENGTH(a__U61(0, x1, x2))) A__U62(tt, U61(nil, x1, x2)) -> c18(A__LENGTH(a__U61(nil, x1, x2))) A__U62(tt, U62(zeros, x1)) -> c18(A__LENGTH(a__U62(a__zeros, x1)), MARK(U62(zeros, x1))) A__U62(tt, U62(U11(z0), x1)) -> c18(A__LENGTH(a__U62(a__U11(mark(z0)), x1)), MARK(U62(U11(z0), x1))) A__U62(tt, U62(U21(z0), x1)) -> c18(A__LENGTH(a__U62(a__U21(mark(z0)), x1)), MARK(U62(U21(z0), x1))) A__U62(tt, U62(U31(z0), x1)) -> c18(A__LENGTH(a__U62(a__U31(mark(z0)), x1)), MARK(U62(U31(z0), x1))) A__U62(tt, U62(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U41(mark(z0), z1), x1)), MARK(U62(U41(z0, z1), x1))) A__U62(tt, U62(U42(z0), x1)) -> c18(A__LENGTH(a__U62(a__U42(mark(z0)), x1)), MARK(U62(U42(z0), x1))) A__U62(tt, U62(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatIList(z0), x1)), MARK(U62(isNatIList(z0), x1))) A__U62(tt, U62(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U51(mark(z0), z1), x1)), MARK(U62(U51(z0, z1), x1))) A__U62(tt, U62(U52(z0), x1)) -> c18(A__LENGTH(a__U62(a__U52(mark(z0)), x1)), MARK(U62(U52(z0), x1))) A__U62(tt, U62(isNatList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatList(z0), x1)), MARK(U62(isNatList(z0), x1))) A__U62(tt, U62(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U62(a__U61(mark(z0), z1, z2), x1)), MARK(U62(U61(z0, z1, z2), x1))) A__U62(tt, U62(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U62(mark(z0), z1), x1)), MARK(U62(U62(z0, z1), x1))) A__U62(tt, U62(isNat(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNat(z0), x1)), MARK(U62(isNat(z0), x1))) A__U62(tt, U62(length(z0), x1)) -> c18(A__LENGTH(a__U62(a__length(mark(z0)), x1)), MARK(U62(length(z0), x1))) A__U62(tt, U62(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U62(cons(mark(z0), z1), x1)), MARK(U62(cons(z0, z1), x1))) A__U62(tt, U62(tt, x1)) -> c18(A__LENGTH(a__U62(tt, x1)), MARK(U62(tt, x1))) A__U62(tt, U62(s(z0), x1)) -> c18(A__LENGTH(a__U62(s(mark(z0)), x1)), MARK(U62(s(z0), x1))) A__U62(tt, U62(x0, z1)) -> c18(MARK(U62(x0, z1))) A__U62(tt, U62(0, x1)) -> c18(A__LENGTH(a__U62(0, x1))) A__U62(tt, U62(nil, x1)) -> c18(A__LENGTH(a__U62(nil, x1))) A__U62(tt, isNat(length(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(isNat(length(z0)))) A__U62(tt, isNat(s(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(isNat(s(z0)))) A__U62(tt, isNat(0)) -> c18(MARK(isNat(0))) A__U62(tt, isNat(z0)) -> c18(MARK(isNat(z0))) A__U62(tt, length(zeros)) -> c18(A__LENGTH(a__length(a__zeros)), MARK(length(zeros))) A__U62(tt, length(U11(z0))) -> c18(A__LENGTH(a__length(a__U11(mark(z0)))), MARK(length(U11(z0)))) A__U62(tt, length(U21(z0))) -> c18(A__LENGTH(a__length(a__U21(mark(z0)))), MARK(length(U21(z0)))) A__U62(tt, length(U31(z0))) -> c18(A__LENGTH(a__length(a__U31(mark(z0)))), MARK(length(U31(z0)))) A__U62(tt, length(U41(z0, z1))) -> c18(A__LENGTH(a__length(a__U41(mark(z0), z1))), MARK(length(U41(z0, z1)))) A__U62(tt, length(U42(z0))) -> c18(A__LENGTH(a__length(a__U42(mark(z0)))), MARK(length(U42(z0)))) A__U62(tt, length(isNatIList(z0))) -> c18(A__LENGTH(a__length(a__isNatIList(z0))), MARK(length(isNatIList(z0)))) A__U62(tt, length(U51(z0, z1))) -> c18(A__LENGTH(a__length(a__U51(mark(z0), z1))), MARK(length(U51(z0, z1)))) A__U62(tt, length(U52(z0))) -> c18(A__LENGTH(a__length(a__U52(mark(z0)))), MARK(length(U52(z0)))) A__U62(tt, length(isNatList(z0))) -> c18(A__LENGTH(a__length(a__isNatList(z0))), MARK(length(isNatList(z0)))) A__U62(tt, length(U61(z0, z1, z2))) -> c18(A__LENGTH(a__length(a__U61(mark(z0), z1, z2))), MARK(length(U61(z0, z1, z2)))) A__U62(tt, length(U62(z0, z1))) -> c18(A__LENGTH(a__length(a__U62(mark(z0), z1))), MARK(length(U62(z0, z1)))) A__U62(tt, length(isNat(z0))) -> c18(A__LENGTH(a__length(a__isNat(z0))), MARK(length(isNat(z0)))) A__U62(tt, length(length(z0))) -> c18(A__LENGTH(a__length(a__length(mark(z0)))), MARK(length(length(z0)))) A__U62(tt, length(cons(z0, z1))) -> c18(A__LENGTH(a__length(cons(mark(z0), z1))), MARK(length(cons(z0, z1)))) A__U62(tt, length(s(z0))) -> c18(A__LENGTH(a__length(s(mark(z0)))), MARK(length(s(z0)))) A__U62(tt, length(x0)) -> c18(MARK(length(x0))) A__U62(tt, length(0)) -> c18(A__LENGTH(a__length(0))) A__U62(tt, length(tt)) -> c18(A__LENGTH(a__length(tt))) A__U62(tt, length(nil)) -> c18(A__LENGTH(a__length(nil))) A__U62(tt, zeros) -> c18(A__LENGTH(cons(0, zeros))) A__ISNATILIST(cons(length(nil), x1)) -> c26(A__U41(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATILIST(cons(length(cons(z0, z1)), x1)) -> c26(A__U41(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(length(x0), x1)) -> c26(A__ISNAT(length(x0))) A__ISNATILIST(cons(s(x0), x1)) -> c26(A__U41(U21(a__isNat(x0)), x1), A__ISNAT(s(x0))) A__ISNATILIST(cons(s(0), x1)) -> c26(A__U41(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATILIST(cons(s(length(z0)), x1)) -> c26(A__U41(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATILIST(cons(s(s(z0)), x1)) -> c26(A__U41(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) K tuples:none Defined Rule Symbols: a__zeros, a__U11_1, a__U21_1, a__U31_1, a__U41_2, a__U42_1, a__U51_2, a__U52_1, a__U61_3, a__U62_2, a__isNat_1, a__isNatIList_1, a__isNatList_1, a__length_1, mark_1 Defined Pair Symbols: MARK_1, A__U41_2, A__U51_2, A__ISNAT_1, A__ISNATILIST_1, A__U61_3, A__U62_2, A__ISNATLIST_1, A__LENGTH_1 Compound Symbols: c40_1, c43_1, c46_1, c48_1, c51_1, c8_1, c12_1, c21_1, c22_1, c24_1, c35_1, c36_1, c37_1, c39_1, c42_1, c16_1, c18_2, c18_1, c26_1, c29_2, c29_1, c32_2, c32_1, c38_2, c38_1, c_1, c41_2, c41_1, c1_1, c44_2, c44_1, c45_2, c45_1, c47_2, c47_1, c16_2, c26_2 ---------------------------------------- (155) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 1 trailing tuple parts ---------------------------------------- (156) Obligation: Complexity Dependency Tuples Problem Rules: a__zeros -> cons(0, zeros) a__zeros -> zeros a__U11(tt) -> tt a__U11(z0) -> U11(z0) a__U21(tt) -> tt a__U21(z0) -> U21(z0) a__U31(tt) -> tt a__U31(z0) -> U31(z0) a__U41(tt, z0) -> a__U42(a__isNatIList(z0)) a__U41(z0, z1) -> U41(z0, z1) a__U42(tt) -> tt a__U42(z0) -> U42(z0) a__U51(tt, z0) -> a__U52(a__isNatList(z0)) a__U51(z0, z1) -> U51(z0, z1) a__U52(tt) -> tt a__U52(z0) -> U52(z0) a__U61(tt, z0, z1) -> a__U62(a__isNat(z1), z0) a__U61(z0, z1, z2) -> U61(z0, z1, z2) a__U62(tt, z0) -> s(a__length(mark(z0))) a__U62(z0, z1) -> U62(z0, z1) a__isNat(0) -> tt a__isNat(length(z0)) -> a__U11(a__isNatList(z0)) a__isNat(s(z0)) -> a__U21(a__isNat(z0)) a__isNat(z0) -> isNat(z0) a__isNatIList(z0) -> a__U31(a__isNatList(z0)) a__isNatIList(zeros) -> tt a__isNatIList(cons(z0, z1)) -> a__U41(a__isNat(z0), z1) a__isNatIList(z0) -> isNatIList(z0) a__isNatList(nil) -> tt a__isNatList(cons(z0, z1)) -> a__U51(a__isNat(z0), z1) a__isNatList(z0) -> isNatList(z0) a__length(nil) -> 0 a__length(cons(z0, z1)) -> a__U61(a__isNatList(z1), z1, z0) a__length(z0) -> length(z0) mark(zeros) -> a__zeros mark(U11(z0)) -> a__U11(mark(z0)) mark(U21(z0)) -> a__U21(mark(z0)) mark(U31(z0)) -> a__U31(mark(z0)) mark(U41(z0, z1)) -> a__U41(mark(z0), z1) mark(U42(z0)) -> a__U42(mark(z0)) mark(isNatIList(z0)) -> a__isNatIList(z0) mark(U51(z0, z1)) -> a__U51(mark(z0), z1) mark(U52(z0)) -> a__U52(mark(z0)) mark(isNatList(z0)) -> a__isNatList(z0) mark(U61(z0, z1, z2)) -> a__U61(mark(z0), z1, z2) mark(U62(z0, z1)) -> a__U62(mark(z0), z1) mark(isNat(z0)) -> a__isNat(z0) mark(length(z0)) -> a__length(mark(z0)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(0) -> 0 mark(tt) -> tt mark(s(z0)) -> s(mark(z0)) mark(nil) -> nil Tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) A__U62(tt, isNatList(cons(z0, z1))) -> c18(A__LENGTH(a__U51(a__isNat(z0), z1)), MARK(isNatList(cons(z0, z1)))) A__U62(tt, isNatList(nil)) -> c18(MARK(isNatList(nil))) A__U62(tt, isNatList(z0)) -> c18(MARK(isNatList(z0))) A__U62(tt, U61(zeros, x1, x2)) -> c18(A__LENGTH(a__U61(a__zeros, x1, x2)), MARK(U61(zeros, x1, x2))) A__U62(tt, U61(U11(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U11(mark(z0)), x1, x2)), MARK(U61(U11(z0), x1, x2))) A__U62(tt, U61(U21(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U21(mark(z0)), x1, x2)), MARK(U61(U21(z0), x1, x2))) A__U62(tt, U61(U31(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U31(mark(z0)), x1, x2)), MARK(U61(U31(z0), x1, x2))) A__U62(tt, U61(U41(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U41(mark(z0), z1), x1, x2)), MARK(U61(U41(z0, z1), x1, x2))) A__U62(tt, U61(U42(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U42(mark(z0)), x1, x2)), MARK(U61(U42(z0), x1, x2))) A__U62(tt, U61(isNatIList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatIList(z0), x1, x2)), MARK(U61(isNatIList(z0), x1, x2))) A__U62(tt, U61(U51(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U51(mark(z0), z1), x1, x2)), MARK(U61(U51(z0, z1), x1, x2))) A__U62(tt, U61(U52(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U52(mark(z0)), x1, x2)), MARK(U61(U52(z0), x1, x2))) A__U62(tt, U61(isNatList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatList(z0), x1, x2)), MARK(U61(isNatList(z0), x1, x2))) A__U62(tt, U61(U61(z0, z1, z2), x1, x2)) -> c18(A__LENGTH(a__U61(a__U61(mark(z0), z1, z2), x1, x2)), MARK(U61(U61(z0, z1, z2), x1, x2))) A__U62(tt, U61(U62(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U62(mark(z0), z1), x1, x2)), MARK(U61(U62(z0, z1), x1, x2))) A__U62(tt, U61(isNat(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNat(z0), x1, x2)), MARK(U61(isNat(z0), x1, x2))) A__U62(tt, U61(length(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__length(mark(z0)), x1, x2)), MARK(U61(length(z0), x1, x2))) A__U62(tt, U61(cons(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(cons(mark(z0), z1), x1, x2)), MARK(U61(cons(z0, z1), x1, x2))) A__U62(tt, U61(tt, x1, x2)) -> c18(A__LENGTH(a__U61(tt, x1, x2)), MARK(U61(tt, x1, x2))) A__U62(tt, U61(s(z0), x1, x2)) -> c18(A__LENGTH(a__U61(s(mark(z0)), x1, x2)), MARK(U61(s(z0), x1, x2))) A__U62(tt, U61(x0, z1, z2)) -> c18(MARK(U61(x0, z1, z2))) A__U62(tt, U61(0, x1, x2)) -> c18(A__LENGTH(a__U61(0, x1, x2))) A__U62(tt, U61(nil, x1, x2)) -> c18(A__LENGTH(a__U61(nil, x1, x2))) A__U62(tt, U62(zeros, x1)) -> c18(A__LENGTH(a__U62(a__zeros, x1)), MARK(U62(zeros, x1))) A__U62(tt, U62(U11(z0), x1)) -> c18(A__LENGTH(a__U62(a__U11(mark(z0)), x1)), MARK(U62(U11(z0), x1))) A__U62(tt, U62(U21(z0), x1)) -> c18(A__LENGTH(a__U62(a__U21(mark(z0)), x1)), MARK(U62(U21(z0), x1))) A__U62(tt, U62(U31(z0), x1)) -> c18(A__LENGTH(a__U62(a__U31(mark(z0)), x1)), MARK(U62(U31(z0), x1))) A__U62(tt, U62(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U41(mark(z0), z1), x1)), MARK(U62(U41(z0, z1), x1))) A__U62(tt, U62(U42(z0), x1)) -> c18(A__LENGTH(a__U62(a__U42(mark(z0)), x1)), MARK(U62(U42(z0), x1))) A__U62(tt, U62(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatIList(z0), x1)), MARK(U62(isNatIList(z0), x1))) A__U62(tt, U62(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U51(mark(z0), z1), x1)), MARK(U62(U51(z0, z1), x1))) A__U62(tt, U62(U52(z0), x1)) -> c18(A__LENGTH(a__U62(a__U52(mark(z0)), x1)), MARK(U62(U52(z0), x1))) A__U62(tt, U62(isNatList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatList(z0), x1)), MARK(U62(isNatList(z0), x1))) A__U62(tt, U62(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U62(a__U61(mark(z0), z1, z2), x1)), MARK(U62(U61(z0, z1, z2), x1))) A__U62(tt, U62(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U62(mark(z0), z1), x1)), MARK(U62(U62(z0, z1), x1))) A__U62(tt, U62(isNat(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNat(z0), x1)), MARK(U62(isNat(z0), x1))) A__U62(tt, U62(length(z0), x1)) -> c18(A__LENGTH(a__U62(a__length(mark(z0)), x1)), MARK(U62(length(z0), x1))) A__U62(tt, U62(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U62(cons(mark(z0), z1), x1)), MARK(U62(cons(z0, z1), x1))) A__U62(tt, U62(tt, x1)) -> c18(A__LENGTH(a__U62(tt, x1)), MARK(U62(tt, x1))) A__U62(tt, U62(s(z0), x1)) -> c18(A__LENGTH(a__U62(s(mark(z0)), x1)), MARK(U62(s(z0), x1))) A__U62(tt, U62(x0, z1)) -> c18(MARK(U62(x0, z1))) A__U62(tt, U62(0, x1)) -> c18(A__LENGTH(a__U62(0, x1))) A__U62(tt, U62(nil, x1)) -> c18(A__LENGTH(a__U62(nil, x1))) A__U62(tt, isNat(length(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(isNat(length(z0)))) A__U62(tt, isNat(s(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(isNat(s(z0)))) A__U62(tt, isNat(0)) -> c18(MARK(isNat(0))) A__U62(tt, isNat(z0)) -> c18(MARK(isNat(z0))) A__U62(tt, length(zeros)) -> c18(A__LENGTH(a__length(a__zeros)), MARK(length(zeros))) A__U62(tt, length(U11(z0))) -> c18(A__LENGTH(a__length(a__U11(mark(z0)))), MARK(length(U11(z0)))) A__U62(tt, length(U21(z0))) -> c18(A__LENGTH(a__length(a__U21(mark(z0)))), MARK(length(U21(z0)))) A__U62(tt, length(U31(z0))) -> c18(A__LENGTH(a__length(a__U31(mark(z0)))), MARK(length(U31(z0)))) A__U62(tt, length(U41(z0, z1))) -> c18(A__LENGTH(a__length(a__U41(mark(z0), z1))), MARK(length(U41(z0, z1)))) A__U62(tt, length(U42(z0))) -> c18(A__LENGTH(a__length(a__U42(mark(z0)))), MARK(length(U42(z0)))) A__U62(tt, length(isNatIList(z0))) -> c18(A__LENGTH(a__length(a__isNatIList(z0))), MARK(length(isNatIList(z0)))) A__U62(tt, length(U51(z0, z1))) -> c18(A__LENGTH(a__length(a__U51(mark(z0), z1))), MARK(length(U51(z0, z1)))) A__U62(tt, length(U52(z0))) -> c18(A__LENGTH(a__length(a__U52(mark(z0)))), MARK(length(U52(z0)))) A__U62(tt, length(isNatList(z0))) -> c18(A__LENGTH(a__length(a__isNatList(z0))), MARK(length(isNatList(z0)))) A__U62(tt, length(U61(z0, z1, z2))) -> c18(A__LENGTH(a__length(a__U61(mark(z0), z1, z2))), MARK(length(U61(z0, z1, z2)))) A__U62(tt, length(U62(z0, z1))) -> c18(A__LENGTH(a__length(a__U62(mark(z0), z1))), MARK(length(U62(z0, z1)))) A__U62(tt, length(isNat(z0))) -> c18(A__LENGTH(a__length(a__isNat(z0))), MARK(length(isNat(z0)))) A__U62(tt, length(length(z0))) -> c18(A__LENGTH(a__length(a__length(mark(z0)))), MARK(length(length(z0)))) A__U62(tt, length(cons(z0, z1))) -> c18(A__LENGTH(a__length(cons(mark(z0), z1))), MARK(length(cons(z0, z1)))) A__U62(tt, length(s(z0))) -> c18(A__LENGTH(a__length(s(mark(z0)))), MARK(length(s(z0)))) A__U62(tt, length(x0)) -> c18(MARK(length(x0))) A__U62(tt, length(0)) -> c18(A__LENGTH(a__length(0))) A__U62(tt, length(tt)) -> c18(A__LENGTH(a__length(tt))) A__U62(tt, length(nil)) -> c18(A__LENGTH(a__length(nil))) A__U62(tt, zeros) -> c18(A__LENGTH(cons(0, zeros))) A__ISNATILIST(cons(length(nil), x1)) -> c26(A__U41(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATILIST(cons(length(cons(z0, z1)), x1)) -> c26(A__U41(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(length(x0), x1)) -> c26(A__ISNAT(length(x0))) A__ISNATILIST(cons(s(0), x1)) -> c26(A__U41(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATILIST(cons(s(length(z0)), x1)) -> c26(A__U41(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATILIST(cons(s(s(z0)), x1)) -> c26(A__U41(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(s(x0), x1)) -> c26(A__ISNAT(s(x0))) S tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) A__U62(tt, isNatList(cons(z0, z1))) -> c18(A__LENGTH(a__U51(a__isNat(z0), z1)), MARK(isNatList(cons(z0, z1)))) A__U62(tt, isNatList(nil)) -> c18(MARK(isNatList(nil))) A__U62(tt, isNatList(z0)) -> c18(MARK(isNatList(z0))) A__U62(tt, U61(zeros, x1, x2)) -> c18(A__LENGTH(a__U61(a__zeros, x1, x2)), MARK(U61(zeros, x1, x2))) A__U62(tt, U61(U11(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U11(mark(z0)), x1, x2)), MARK(U61(U11(z0), x1, x2))) A__U62(tt, U61(U21(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U21(mark(z0)), x1, x2)), MARK(U61(U21(z0), x1, x2))) A__U62(tt, U61(U31(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U31(mark(z0)), x1, x2)), MARK(U61(U31(z0), x1, x2))) A__U62(tt, U61(U41(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U41(mark(z0), z1), x1, x2)), MARK(U61(U41(z0, z1), x1, x2))) A__U62(tt, U61(U42(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U42(mark(z0)), x1, x2)), MARK(U61(U42(z0), x1, x2))) A__U62(tt, U61(isNatIList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatIList(z0), x1, x2)), MARK(U61(isNatIList(z0), x1, x2))) A__U62(tt, U61(U51(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U51(mark(z0), z1), x1, x2)), MARK(U61(U51(z0, z1), x1, x2))) A__U62(tt, U61(U52(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U52(mark(z0)), x1, x2)), MARK(U61(U52(z0), x1, x2))) A__U62(tt, U61(isNatList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatList(z0), x1, x2)), MARK(U61(isNatList(z0), x1, x2))) A__U62(tt, U61(U61(z0, z1, z2), x1, x2)) -> c18(A__LENGTH(a__U61(a__U61(mark(z0), z1, z2), x1, x2)), MARK(U61(U61(z0, z1, z2), x1, x2))) A__U62(tt, U61(U62(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U62(mark(z0), z1), x1, x2)), MARK(U61(U62(z0, z1), x1, x2))) A__U62(tt, U61(isNat(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNat(z0), x1, x2)), MARK(U61(isNat(z0), x1, x2))) A__U62(tt, U61(length(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__length(mark(z0)), x1, x2)), MARK(U61(length(z0), x1, x2))) A__U62(tt, U61(cons(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(cons(mark(z0), z1), x1, x2)), MARK(U61(cons(z0, z1), x1, x2))) A__U62(tt, U61(tt, x1, x2)) -> c18(A__LENGTH(a__U61(tt, x1, x2)), MARK(U61(tt, x1, x2))) A__U62(tt, U61(s(z0), x1, x2)) -> c18(A__LENGTH(a__U61(s(mark(z0)), x1, x2)), MARK(U61(s(z0), x1, x2))) A__U62(tt, U61(x0, z1, z2)) -> c18(MARK(U61(x0, z1, z2))) A__U62(tt, U61(0, x1, x2)) -> c18(A__LENGTH(a__U61(0, x1, x2))) A__U62(tt, U61(nil, x1, x2)) -> c18(A__LENGTH(a__U61(nil, x1, x2))) A__U62(tt, U62(zeros, x1)) -> c18(A__LENGTH(a__U62(a__zeros, x1)), MARK(U62(zeros, x1))) A__U62(tt, U62(U11(z0), x1)) -> c18(A__LENGTH(a__U62(a__U11(mark(z0)), x1)), MARK(U62(U11(z0), x1))) A__U62(tt, U62(U21(z0), x1)) -> c18(A__LENGTH(a__U62(a__U21(mark(z0)), x1)), MARK(U62(U21(z0), x1))) A__U62(tt, U62(U31(z0), x1)) -> c18(A__LENGTH(a__U62(a__U31(mark(z0)), x1)), MARK(U62(U31(z0), x1))) A__U62(tt, U62(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U41(mark(z0), z1), x1)), MARK(U62(U41(z0, z1), x1))) A__U62(tt, U62(U42(z0), x1)) -> c18(A__LENGTH(a__U62(a__U42(mark(z0)), x1)), MARK(U62(U42(z0), x1))) A__U62(tt, U62(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatIList(z0), x1)), MARK(U62(isNatIList(z0), x1))) A__U62(tt, U62(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U51(mark(z0), z1), x1)), MARK(U62(U51(z0, z1), x1))) A__U62(tt, U62(U52(z0), x1)) -> c18(A__LENGTH(a__U62(a__U52(mark(z0)), x1)), MARK(U62(U52(z0), x1))) A__U62(tt, U62(isNatList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatList(z0), x1)), MARK(U62(isNatList(z0), x1))) A__U62(tt, U62(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U62(a__U61(mark(z0), z1, z2), x1)), MARK(U62(U61(z0, z1, z2), x1))) A__U62(tt, U62(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U62(mark(z0), z1), x1)), MARK(U62(U62(z0, z1), x1))) A__U62(tt, U62(isNat(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNat(z0), x1)), MARK(U62(isNat(z0), x1))) A__U62(tt, U62(length(z0), x1)) -> c18(A__LENGTH(a__U62(a__length(mark(z0)), x1)), MARK(U62(length(z0), x1))) A__U62(tt, U62(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U62(cons(mark(z0), z1), x1)), MARK(U62(cons(z0, z1), x1))) A__U62(tt, U62(tt, x1)) -> c18(A__LENGTH(a__U62(tt, x1)), MARK(U62(tt, x1))) A__U62(tt, U62(s(z0), x1)) -> c18(A__LENGTH(a__U62(s(mark(z0)), x1)), MARK(U62(s(z0), x1))) A__U62(tt, U62(x0, z1)) -> c18(MARK(U62(x0, z1))) A__U62(tt, U62(0, x1)) -> c18(A__LENGTH(a__U62(0, x1))) A__U62(tt, U62(nil, x1)) -> c18(A__LENGTH(a__U62(nil, x1))) A__U62(tt, isNat(length(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(isNat(length(z0)))) A__U62(tt, isNat(s(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(isNat(s(z0)))) A__U62(tt, isNat(0)) -> c18(MARK(isNat(0))) A__U62(tt, isNat(z0)) -> c18(MARK(isNat(z0))) A__U62(tt, length(zeros)) -> c18(A__LENGTH(a__length(a__zeros)), MARK(length(zeros))) A__U62(tt, length(U11(z0))) -> c18(A__LENGTH(a__length(a__U11(mark(z0)))), MARK(length(U11(z0)))) A__U62(tt, length(U21(z0))) -> c18(A__LENGTH(a__length(a__U21(mark(z0)))), MARK(length(U21(z0)))) A__U62(tt, length(U31(z0))) -> c18(A__LENGTH(a__length(a__U31(mark(z0)))), MARK(length(U31(z0)))) A__U62(tt, length(U41(z0, z1))) -> c18(A__LENGTH(a__length(a__U41(mark(z0), z1))), MARK(length(U41(z0, z1)))) A__U62(tt, length(U42(z0))) -> c18(A__LENGTH(a__length(a__U42(mark(z0)))), MARK(length(U42(z0)))) A__U62(tt, length(isNatIList(z0))) -> c18(A__LENGTH(a__length(a__isNatIList(z0))), MARK(length(isNatIList(z0)))) A__U62(tt, length(U51(z0, z1))) -> c18(A__LENGTH(a__length(a__U51(mark(z0), z1))), MARK(length(U51(z0, z1)))) A__U62(tt, length(U52(z0))) -> c18(A__LENGTH(a__length(a__U52(mark(z0)))), MARK(length(U52(z0)))) A__U62(tt, length(isNatList(z0))) -> c18(A__LENGTH(a__length(a__isNatList(z0))), MARK(length(isNatList(z0)))) A__U62(tt, length(U61(z0, z1, z2))) -> c18(A__LENGTH(a__length(a__U61(mark(z0), z1, z2))), MARK(length(U61(z0, z1, z2)))) A__U62(tt, length(U62(z0, z1))) -> c18(A__LENGTH(a__length(a__U62(mark(z0), z1))), MARK(length(U62(z0, z1)))) A__U62(tt, length(isNat(z0))) -> c18(A__LENGTH(a__length(a__isNat(z0))), MARK(length(isNat(z0)))) A__U62(tt, length(length(z0))) -> c18(A__LENGTH(a__length(a__length(mark(z0)))), MARK(length(length(z0)))) A__U62(tt, length(cons(z0, z1))) -> c18(A__LENGTH(a__length(cons(mark(z0), z1))), MARK(length(cons(z0, z1)))) A__U62(tt, length(s(z0))) -> c18(A__LENGTH(a__length(s(mark(z0)))), MARK(length(s(z0)))) A__U62(tt, length(x0)) -> c18(MARK(length(x0))) A__U62(tt, length(0)) -> c18(A__LENGTH(a__length(0))) A__U62(tt, length(tt)) -> c18(A__LENGTH(a__length(tt))) A__U62(tt, length(nil)) -> c18(A__LENGTH(a__length(nil))) A__U62(tt, zeros) -> c18(A__LENGTH(cons(0, zeros))) A__ISNATILIST(cons(length(nil), x1)) -> c26(A__U41(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATILIST(cons(length(cons(z0, z1)), x1)) -> c26(A__U41(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(length(x0), x1)) -> c26(A__ISNAT(length(x0))) A__ISNATILIST(cons(s(0), x1)) -> c26(A__U41(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATILIST(cons(s(length(z0)), x1)) -> c26(A__U41(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATILIST(cons(s(s(z0)), x1)) -> c26(A__U41(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(s(x0), x1)) -> c26(A__ISNAT(s(x0))) K tuples:none Defined Rule Symbols: a__zeros, a__U11_1, a__U21_1, a__U31_1, a__U41_2, a__U42_1, a__U51_2, a__U52_1, a__U61_3, a__U62_2, a__isNat_1, a__isNatIList_1, a__isNatList_1, a__length_1, mark_1 Defined Pair Symbols: MARK_1, A__U41_2, A__U51_2, A__ISNAT_1, A__ISNATILIST_1, A__U61_3, A__U62_2, A__ISNATLIST_1, A__LENGTH_1 Compound Symbols: c40_1, c43_1, c46_1, c48_1, c51_1, c8_1, c12_1, c21_1, c22_1, c24_1, c35_1, c36_1, c37_1, c39_1, c42_1, c16_1, c18_2, c18_1, c26_1, c29_2, c29_1, c32_2, c32_1, c38_2, c38_1, c_1, c41_2, c41_1, c1_1, c44_2, c44_1, c45_2, c45_1, c47_2, c47_1, c16_2, c26_2 ---------------------------------------- (157) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(a__isNatList(z0)), x1), A__ISNAT(length(z0))) by A__ISNATLIST(cons(length(x0), x1)) -> c29(A__U51(U11(a__isNatList(x0)), x1), A__ISNAT(length(x0))) A__ISNATLIST(cons(length(nil), x1)) -> c29(A__U51(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATLIST(cons(length(cons(z0, z1)), x1)) -> c29(A__U51(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) ---------------------------------------- (158) Obligation: Complexity Dependency Tuples Problem Rules: a__zeros -> cons(0, zeros) a__zeros -> zeros a__U11(tt) -> tt a__U11(z0) -> U11(z0) a__U21(tt) -> tt a__U21(z0) -> U21(z0) a__U31(tt) -> tt a__U31(z0) -> U31(z0) a__U41(tt, z0) -> a__U42(a__isNatIList(z0)) a__U41(z0, z1) -> U41(z0, z1) a__U42(tt) -> tt a__U42(z0) -> U42(z0) a__U51(tt, z0) -> a__U52(a__isNatList(z0)) a__U51(z0, z1) -> U51(z0, z1) a__U52(tt) -> tt a__U52(z0) -> U52(z0) a__U61(tt, z0, z1) -> a__U62(a__isNat(z1), z0) a__U61(z0, z1, z2) -> U61(z0, z1, z2) a__U62(tt, z0) -> s(a__length(mark(z0))) a__U62(z0, z1) -> U62(z0, z1) a__isNat(0) -> tt a__isNat(length(z0)) -> a__U11(a__isNatList(z0)) a__isNat(s(z0)) -> a__U21(a__isNat(z0)) a__isNat(z0) -> isNat(z0) a__isNatIList(z0) -> a__U31(a__isNatList(z0)) a__isNatIList(zeros) -> tt a__isNatIList(cons(z0, z1)) -> a__U41(a__isNat(z0), z1) a__isNatIList(z0) -> isNatIList(z0) a__isNatList(nil) -> tt a__isNatList(cons(z0, z1)) -> a__U51(a__isNat(z0), z1) a__isNatList(z0) -> isNatList(z0) a__length(nil) -> 0 a__length(cons(z0, z1)) -> a__U61(a__isNatList(z1), z1, z0) a__length(z0) -> length(z0) mark(zeros) -> a__zeros mark(U11(z0)) -> a__U11(mark(z0)) mark(U21(z0)) -> a__U21(mark(z0)) mark(U31(z0)) -> a__U31(mark(z0)) mark(U41(z0, z1)) -> a__U41(mark(z0), z1) mark(U42(z0)) -> a__U42(mark(z0)) mark(isNatIList(z0)) -> a__isNatIList(z0) mark(U51(z0, z1)) -> a__U51(mark(z0), z1) mark(U52(z0)) -> a__U52(mark(z0)) mark(isNatList(z0)) -> a__isNatList(z0) mark(U61(z0, z1, z2)) -> a__U61(mark(z0), z1, z2) mark(U62(z0, z1)) -> a__U62(mark(z0), z1) mark(isNat(z0)) -> a__isNat(z0) mark(length(z0)) -> a__length(mark(z0)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(0) -> 0 mark(tt) -> tt mark(s(z0)) -> s(mark(z0)) mark(nil) -> nil Tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) A__U62(tt, isNatList(cons(z0, z1))) -> c18(A__LENGTH(a__U51(a__isNat(z0), z1)), MARK(isNatList(cons(z0, z1)))) A__U62(tt, isNatList(nil)) -> c18(MARK(isNatList(nil))) A__U62(tt, isNatList(z0)) -> c18(MARK(isNatList(z0))) A__U62(tt, U61(zeros, x1, x2)) -> c18(A__LENGTH(a__U61(a__zeros, x1, x2)), MARK(U61(zeros, x1, x2))) A__U62(tt, U61(U11(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U11(mark(z0)), x1, x2)), MARK(U61(U11(z0), x1, x2))) A__U62(tt, U61(U21(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U21(mark(z0)), x1, x2)), MARK(U61(U21(z0), x1, x2))) A__U62(tt, U61(U31(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U31(mark(z0)), x1, x2)), MARK(U61(U31(z0), x1, x2))) A__U62(tt, U61(U41(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U41(mark(z0), z1), x1, x2)), MARK(U61(U41(z0, z1), x1, x2))) A__U62(tt, U61(U42(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U42(mark(z0)), x1, x2)), MARK(U61(U42(z0), x1, x2))) A__U62(tt, U61(isNatIList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatIList(z0), x1, x2)), MARK(U61(isNatIList(z0), x1, x2))) A__U62(tt, U61(U51(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U51(mark(z0), z1), x1, x2)), MARK(U61(U51(z0, z1), x1, x2))) A__U62(tt, U61(U52(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U52(mark(z0)), x1, x2)), MARK(U61(U52(z0), x1, x2))) A__U62(tt, U61(isNatList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatList(z0), x1, x2)), MARK(U61(isNatList(z0), x1, x2))) A__U62(tt, U61(U61(z0, z1, z2), x1, x2)) -> c18(A__LENGTH(a__U61(a__U61(mark(z0), z1, z2), x1, x2)), MARK(U61(U61(z0, z1, z2), x1, x2))) A__U62(tt, U61(U62(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U62(mark(z0), z1), x1, x2)), MARK(U61(U62(z0, z1), x1, x2))) A__U62(tt, U61(isNat(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNat(z0), x1, x2)), MARK(U61(isNat(z0), x1, x2))) A__U62(tt, U61(length(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__length(mark(z0)), x1, x2)), MARK(U61(length(z0), x1, x2))) A__U62(tt, U61(cons(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(cons(mark(z0), z1), x1, x2)), MARK(U61(cons(z0, z1), x1, x2))) A__U62(tt, U61(tt, x1, x2)) -> c18(A__LENGTH(a__U61(tt, x1, x2)), MARK(U61(tt, x1, x2))) A__U62(tt, U61(s(z0), x1, x2)) -> c18(A__LENGTH(a__U61(s(mark(z0)), x1, x2)), MARK(U61(s(z0), x1, x2))) A__U62(tt, U61(x0, z1, z2)) -> c18(MARK(U61(x0, z1, z2))) A__U62(tt, U61(0, x1, x2)) -> c18(A__LENGTH(a__U61(0, x1, x2))) A__U62(tt, U61(nil, x1, x2)) -> c18(A__LENGTH(a__U61(nil, x1, x2))) A__U62(tt, U62(zeros, x1)) -> c18(A__LENGTH(a__U62(a__zeros, x1)), MARK(U62(zeros, x1))) A__U62(tt, U62(U11(z0), x1)) -> c18(A__LENGTH(a__U62(a__U11(mark(z0)), x1)), MARK(U62(U11(z0), x1))) A__U62(tt, U62(U21(z0), x1)) -> c18(A__LENGTH(a__U62(a__U21(mark(z0)), x1)), MARK(U62(U21(z0), x1))) A__U62(tt, U62(U31(z0), x1)) -> c18(A__LENGTH(a__U62(a__U31(mark(z0)), x1)), MARK(U62(U31(z0), x1))) A__U62(tt, U62(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U41(mark(z0), z1), x1)), MARK(U62(U41(z0, z1), x1))) A__U62(tt, U62(U42(z0), x1)) -> c18(A__LENGTH(a__U62(a__U42(mark(z0)), x1)), MARK(U62(U42(z0), x1))) A__U62(tt, U62(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatIList(z0), x1)), MARK(U62(isNatIList(z0), x1))) A__U62(tt, U62(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U51(mark(z0), z1), x1)), MARK(U62(U51(z0, z1), x1))) A__U62(tt, U62(U52(z0), x1)) -> c18(A__LENGTH(a__U62(a__U52(mark(z0)), x1)), MARK(U62(U52(z0), x1))) A__U62(tt, U62(isNatList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatList(z0), x1)), MARK(U62(isNatList(z0), x1))) A__U62(tt, U62(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U62(a__U61(mark(z0), z1, z2), x1)), MARK(U62(U61(z0, z1, z2), x1))) A__U62(tt, U62(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U62(mark(z0), z1), x1)), MARK(U62(U62(z0, z1), x1))) A__U62(tt, U62(isNat(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNat(z0), x1)), MARK(U62(isNat(z0), x1))) A__U62(tt, U62(length(z0), x1)) -> c18(A__LENGTH(a__U62(a__length(mark(z0)), x1)), MARK(U62(length(z0), x1))) A__U62(tt, U62(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U62(cons(mark(z0), z1), x1)), MARK(U62(cons(z0, z1), x1))) A__U62(tt, U62(tt, x1)) -> c18(A__LENGTH(a__U62(tt, x1)), MARK(U62(tt, x1))) A__U62(tt, U62(s(z0), x1)) -> c18(A__LENGTH(a__U62(s(mark(z0)), x1)), MARK(U62(s(z0), x1))) A__U62(tt, U62(x0, z1)) -> c18(MARK(U62(x0, z1))) A__U62(tt, U62(0, x1)) -> c18(A__LENGTH(a__U62(0, x1))) A__U62(tt, U62(nil, x1)) -> c18(A__LENGTH(a__U62(nil, x1))) A__U62(tt, isNat(length(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(isNat(length(z0)))) A__U62(tt, isNat(s(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(isNat(s(z0)))) A__U62(tt, isNat(0)) -> c18(MARK(isNat(0))) A__U62(tt, isNat(z0)) -> c18(MARK(isNat(z0))) A__U62(tt, length(zeros)) -> c18(A__LENGTH(a__length(a__zeros)), MARK(length(zeros))) A__U62(tt, length(U11(z0))) -> c18(A__LENGTH(a__length(a__U11(mark(z0)))), MARK(length(U11(z0)))) A__U62(tt, length(U21(z0))) -> c18(A__LENGTH(a__length(a__U21(mark(z0)))), MARK(length(U21(z0)))) A__U62(tt, length(U31(z0))) -> c18(A__LENGTH(a__length(a__U31(mark(z0)))), MARK(length(U31(z0)))) A__U62(tt, length(U41(z0, z1))) -> c18(A__LENGTH(a__length(a__U41(mark(z0), z1))), MARK(length(U41(z0, z1)))) A__U62(tt, length(U42(z0))) -> c18(A__LENGTH(a__length(a__U42(mark(z0)))), MARK(length(U42(z0)))) A__U62(tt, length(isNatIList(z0))) -> c18(A__LENGTH(a__length(a__isNatIList(z0))), MARK(length(isNatIList(z0)))) A__U62(tt, length(U51(z0, z1))) -> c18(A__LENGTH(a__length(a__U51(mark(z0), z1))), MARK(length(U51(z0, z1)))) A__U62(tt, length(U52(z0))) -> c18(A__LENGTH(a__length(a__U52(mark(z0)))), MARK(length(U52(z0)))) A__U62(tt, length(isNatList(z0))) -> c18(A__LENGTH(a__length(a__isNatList(z0))), MARK(length(isNatList(z0)))) A__U62(tt, length(U61(z0, z1, z2))) -> c18(A__LENGTH(a__length(a__U61(mark(z0), z1, z2))), MARK(length(U61(z0, z1, z2)))) A__U62(tt, length(U62(z0, z1))) -> c18(A__LENGTH(a__length(a__U62(mark(z0), z1))), MARK(length(U62(z0, z1)))) A__U62(tt, length(isNat(z0))) -> c18(A__LENGTH(a__length(a__isNat(z0))), MARK(length(isNat(z0)))) A__U62(tt, length(length(z0))) -> c18(A__LENGTH(a__length(a__length(mark(z0)))), MARK(length(length(z0)))) A__U62(tt, length(cons(z0, z1))) -> c18(A__LENGTH(a__length(cons(mark(z0), z1))), MARK(length(cons(z0, z1)))) A__U62(tt, length(s(z0))) -> c18(A__LENGTH(a__length(s(mark(z0)))), MARK(length(s(z0)))) A__U62(tt, length(x0)) -> c18(MARK(length(x0))) A__U62(tt, length(0)) -> c18(A__LENGTH(a__length(0))) A__U62(tt, length(tt)) -> c18(A__LENGTH(a__length(tt))) A__U62(tt, length(nil)) -> c18(A__LENGTH(a__length(nil))) A__U62(tt, zeros) -> c18(A__LENGTH(cons(0, zeros))) A__ISNATILIST(cons(length(nil), x1)) -> c26(A__U41(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATILIST(cons(length(cons(z0, z1)), x1)) -> c26(A__U41(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(length(x0), x1)) -> c26(A__ISNAT(length(x0))) A__ISNATILIST(cons(s(0), x1)) -> c26(A__U41(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATILIST(cons(s(length(z0)), x1)) -> c26(A__U41(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATILIST(cons(s(s(z0)), x1)) -> c26(A__U41(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(s(x0), x1)) -> c26(A__ISNAT(s(x0))) A__ISNATLIST(cons(length(x0), x1)) -> c29(A__U51(U11(a__isNatList(x0)), x1), A__ISNAT(length(x0))) A__ISNATLIST(cons(length(nil), x1)) -> c29(A__U51(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATLIST(cons(length(cons(z0, z1)), x1)) -> c29(A__U51(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) S tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) A__U62(tt, isNatList(cons(z0, z1))) -> c18(A__LENGTH(a__U51(a__isNat(z0), z1)), MARK(isNatList(cons(z0, z1)))) A__U62(tt, isNatList(nil)) -> c18(MARK(isNatList(nil))) A__U62(tt, isNatList(z0)) -> c18(MARK(isNatList(z0))) A__U62(tt, U61(zeros, x1, x2)) -> c18(A__LENGTH(a__U61(a__zeros, x1, x2)), MARK(U61(zeros, x1, x2))) A__U62(tt, U61(U11(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U11(mark(z0)), x1, x2)), MARK(U61(U11(z0), x1, x2))) A__U62(tt, U61(U21(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U21(mark(z0)), x1, x2)), MARK(U61(U21(z0), x1, x2))) A__U62(tt, U61(U31(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U31(mark(z0)), x1, x2)), MARK(U61(U31(z0), x1, x2))) A__U62(tt, U61(U41(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U41(mark(z0), z1), x1, x2)), MARK(U61(U41(z0, z1), x1, x2))) A__U62(tt, U61(U42(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U42(mark(z0)), x1, x2)), MARK(U61(U42(z0), x1, x2))) A__U62(tt, U61(isNatIList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatIList(z0), x1, x2)), MARK(U61(isNatIList(z0), x1, x2))) A__U62(tt, U61(U51(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U51(mark(z0), z1), x1, x2)), MARK(U61(U51(z0, z1), x1, x2))) A__U62(tt, U61(U52(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U52(mark(z0)), x1, x2)), MARK(U61(U52(z0), x1, x2))) A__U62(tt, U61(isNatList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatList(z0), x1, x2)), MARK(U61(isNatList(z0), x1, x2))) A__U62(tt, U61(U61(z0, z1, z2), x1, x2)) -> c18(A__LENGTH(a__U61(a__U61(mark(z0), z1, z2), x1, x2)), MARK(U61(U61(z0, z1, z2), x1, x2))) A__U62(tt, U61(U62(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U62(mark(z0), z1), x1, x2)), MARK(U61(U62(z0, z1), x1, x2))) A__U62(tt, U61(isNat(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNat(z0), x1, x2)), MARK(U61(isNat(z0), x1, x2))) A__U62(tt, U61(length(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__length(mark(z0)), x1, x2)), MARK(U61(length(z0), x1, x2))) A__U62(tt, U61(cons(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(cons(mark(z0), z1), x1, x2)), MARK(U61(cons(z0, z1), x1, x2))) A__U62(tt, U61(tt, x1, x2)) -> c18(A__LENGTH(a__U61(tt, x1, x2)), MARK(U61(tt, x1, x2))) A__U62(tt, U61(s(z0), x1, x2)) -> c18(A__LENGTH(a__U61(s(mark(z0)), x1, x2)), MARK(U61(s(z0), x1, x2))) A__U62(tt, U61(x0, z1, z2)) -> c18(MARK(U61(x0, z1, z2))) A__U62(tt, U61(0, x1, x2)) -> c18(A__LENGTH(a__U61(0, x1, x2))) A__U62(tt, U61(nil, x1, x2)) -> c18(A__LENGTH(a__U61(nil, x1, x2))) A__U62(tt, U62(zeros, x1)) -> c18(A__LENGTH(a__U62(a__zeros, x1)), MARK(U62(zeros, x1))) A__U62(tt, U62(U11(z0), x1)) -> c18(A__LENGTH(a__U62(a__U11(mark(z0)), x1)), MARK(U62(U11(z0), x1))) A__U62(tt, U62(U21(z0), x1)) -> c18(A__LENGTH(a__U62(a__U21(mark(z0)), x1)), MARK(U62(U21(z0), x1))) A__U62(tt, U62(U31(z0), x1)) -> c18(A__LENGTH(a__U62(a__U31(mark(z0)), x1)), MARK(U62(U31(z0), x1))) A__U62(tt, U62(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U41(mark(z0), z1), x1)), MARK(U62(U41(z0, z1), x1))) A__U62(tt, U62(U42(z0), x1)) -> c18(A__LENGTH(a__U62(a__U42(mark(z0)), x1)), MARK(U62(U42(z0), x1))) A__U62(tt, U62(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatIList(z0), x1)), MARK(U62(isNatIList(z0), x1))) A__U62(tt, U62(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U51(mark(z0), z1), x1)), MARK(U62(U51(z0, z1), x1))) A__U62(tt, U62(U52(z0), x1)) -> c18(A__LENGTH(a__U62(a__U52(mark(z0)), x1)), MARK(U62(U52(z0), x1))) A__U62(tt, U62(isNatList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatList(z0), x1)), MARK(U62(isNatList(z0), x1))) A__U62(tt, U62(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U62(a__U61(mark(z0), z1, z2), x1)), MARK(U62(U61(z0, z1, z2), x1))) A__U62(tt, U62(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U62(mark(z0), z1), x1)), MARK(U62(U62(z0, z1), x1))) A__U62(tt, U62(isNat(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNat(z0), x1)), MARK(U62(isNat(z0), x1))) A__U62(tt, U62(length(z0), x1)) -> c18(A__LENGTH(a__U62(a__length(mark(z0)), x1)), MARK(U62(length(z0), x1))) A__U62(tt, U62(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U62(cons(mark(z0), z1), x1)), MARK(U62(cons(z0, z1), x1))) A__U62(tt, U62(tt, x1)) -> c18(A__LENGTH(a__U62(tt, x1)), MARK(U62(tt, x1))) A__U62(tt, U62(s(z0), x1)) -> c18(A__LENGTH(a__U62(s(mark(z0)), x1)), MARK(U62(s(z0), x1))) A__U62(tt, U62(x0, z1)) -> c18(MARK(U62(x0, z1))) A__U62(tt, U62(0, x1)) -> c18(A__LENGTH(a__U62(0, x1))) A__U62(tt, U62(nil, x1)) -> c18(A__LENGTH(a__U62(nil, x1))) A__U62(tt, isNat(length(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(isNat(length(z0)))) A__U62(tt, isNat(s(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(isNat(s(z0)))) A__U62(tt, isNat(0)) -> c18(MARK(isNat(0))) A__U62(tt, isNat(z0)) -> c18(MARK(isNat(z0))) A__U62(tt, length(zeros)) -> c18(A__LENGTH(a__length(a__zeros)), MARK(length(zeros))) A__U62(tt, length(U11(z0))) -> c18(A__LENGTH(a__length(a__U11(mark(z0)))), MARK(length(U11(z0)))) A__U62(tt, length(U21(z0))) -> c18(A__LENGTH(a__length(a__U21(mark(z0)))), MARK(length(U21(z0)))) A__U62(tt, length(U31(z0))) -> c18(A__LENGTH(a__length(a__U31(mark(z0)))), MARK(length(U31(z0)))) A__U62(tt, length(U41(z0, z1))) -> c18(A__LENGTH(a__length(a__U41(mark(z0), z1))), MARK(length(U41(z0, z1)))) A__U62(tt, length(U42(z0))) -> c18(A__LENGTH(a__length(a__U42(mark(z0)))), MARK(length(U42(z0)))) A__U62(tt, length(isNatIList(z0))) -> c18(A__LENGTH(a__length(a__isNatIList(z0))), MARK(length(isNatIList(z0)))) A__U62(tt, length(U51(z0, z1))) -> c18(A__LENGTH(a__length(a__U51(mark(z0), z1))), MARK(length(U51(z0, z1)))) A__U62(tt, length(U52(z0))) -> c18(A__LENGTH(a__length(a__U52(mark(z0)))), MARK(length(U52(z0)))) A__U62(tt, length(isNatList(z0))) -> c18(A__LENGTH(a__length(a__isNatList(z0))), MARK(length(isNatList(z0)))) A__U62(tt, length(U61(z0, z1, z2))) -> c18(A__LENGTH(a__length(a__U61(mark(z0), z1, z2))), MARK(length(U61(z0, z1, z2)))) A__U62(tt, length(U62(z0, z1))) -> c18(A__LENGTH(a__length(a__U62(mark(z0), z1))), MARK(length(U62(z0, z1)))) A__U62(tt, length(isNat(z0))) -> c18(A__LENGTH(a__length(a__isNat(z0))), MARK(length(isNat(z0)))) A__U62(tt, length(length(z0))) -> c18(A__LENGTH(a__length(a__length(mark(z0)))), MARK(length(length(z0)))) A__U62(tt, length(cons(z0, z1))) -> c18(A__LENGTH(a__length(cons(mark(z0), z1))), MARK(length(cons(z0, z1)))) A__U62(tt, length(s(z0))) -> c18(A__LENGTH(a__length(s(mark(z0)))), MARK(length(s(z0)))) A__U62(tt, length(x0)) -> c18(MARK(length(x0))) A__U62(tt, length(0)) -> c18(A__LENGTH(a__length(0))) A__U62(tt, length(tt)) -> c18(A__LENGTH(a__length(tt))) A__U62(tt, length(nil)) -> c18(A__LENGTH(a__length(nil))) A__U62(tt, zeros) -> c18(A__LENGTH(cons(0, zeros))) A__ISNATILIST(cons(length(nil), x1)) -> c26(A__U41(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATILIST(cons(length(cons(z0, z1)), x1)) -> c26(A__U41(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(length(x0), x1)) -> c26(A__ISNAT(length(x0))) A__ISNATILIST(cons(s(0), x1)) -> c26(A__U41(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATILIST(cons(s(length(z0)), x1)) -> c26(A__U41(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATILIST(cons(s(s(z0)), x1)) -> c26(A__U41(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(s(x0), x1)) -> c26(A__ISNAT(s(x0))) A__ISNATLIST(cons(length(x0), x1)) -> c29(A__U51(U11(a__isNatList(x0)), x1), A__ISNAT(length(x0))) A__ISNATLIST(cons(length(nil), x1)) -> c29(A__U51(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATLIST(cons(length(cons(z0, z1)), x1)) -> c29(A__U51(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) K tuples:none Defined Rule Symbols: a__zeros, a__U11_1, a__U21_1, a__U31_1, a__U41_2, a__U42_1, a__U51_2, a__U52_1, a__U61_3, a__U62_2, a__isNat_1, a__isNatIList_1, a__isNatList_1, a__length_1, mark_1 Defined Pair Symbols: MARK_1, A__U41_2, A__U51_2, A__ISNAT_1, A__ISNATILIST_1, A__U61_3, A__U62_2, A__ISNATLIST_1, A__LENGTH_1 Compound Symbols: c40_1, c43_1, c46_1, c48_1, c51_1, c8_1, c12_1, c21_1, c22_1, c24_1, c35_1, c36_1, c37_1, c39_1, c42_1, c16_1, c18_2, c18_1, c26_1, c29_2, c29_1, c32_2, c32_1, c38_2, c38_1, c_1, c41_2, c41_1, c1_1, c44_2, c44_1, c45_2, c45_1, c47_2, c47_1, c16_2, c26_2 ---------------------------------------- (159) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 1 trailing tuple parts ---------------------------------------- (160) Obligation: Complexity Dependency Tuples Problem Rules: a__zeros -> cons(0, zeros) a__zeros -> zeros a__U11(tt) -> tt a__U11(z0) -> U11(z0) a__U21(tt) -> tt a__U21(z0) -> U21(z0) a__U31(tt) -> tt a__U31(z0) -> U31(z0) a__U41(tt, z0) -> a__U42(a__isNatIList(z0)) a__U41(z0, z1) -> U41(z0, z1) a__U42(tt) -> tt a__U42(z0) -> U42(z0) a__U51(tt, z0) -> a__U52(a__isNatList(z0)) a__U51(z0, z1) -> U51(z0, z1) a__U52(tt) -> tt a__U52(z0) -> U52(z0) a__U61(tt, z0, z1) -> a__U62(a__isNat(z1), z0) a__U61(z0, z1, z2) -> U61(z0, z1, z2) a__U62(tt, z0) -> s(a__length(mark(z0))) a__U62(z0, z1) -> U62(z0, z1) a__isNat(0) -> tt a__isNat(length(z0)) -> a__U11(a__isNatList(z0)) a__isNat(s(z0)) -> a__U21(a__isNat(z0)) a__isNat(z0) -> isNat(z0) a__isNatIList(z0) -> a__U31(a__isNatList(z0)) a__isNatIList(zeros) -> tt a__isNatIList(cons(z0, z1)) -> a__U41(a__isNat(z0), z1) a__isNatIList(z0) -> isNatIList(z0) a__isNatList(nil) -> tt a__isNatList(cons(z0, z1)) -> a__U51(a__isNat(z0), z1) a__isNatList(z0) -> isNatList(z0) a__length(nil) -> 0 a__length(cons(z0, z1)) -> a__U61(a__isNatList(z1), z1, z0) a__length(z0) -> length(z0) mark(zeros) -> a__zeros mark(U11(z0)) -> a__U11(mark(z0)) mark(U21(z0)) -> a__U21(mark(z0)) mark(U31(z0)) -> a__U31(mark(z0)) mark(U41(z0, z1)) -> a__U41(mark(z0), z1) mark(U42(z0)) -> a__U42(mark(z0)) mark(isNatIList(z0)) -> a__isNatIList(z0) mark(U51(z0, z1)) -> a__U51(mark(z0), z1) mark(U52(z0)) -> a__U52(mark(z0)) mark(isNatList(z0)) -> a__isNatList(z0) mark(U61(z0, z1, z2)) -> a__U61(mark(z0), z1, z2) mark(U62(z0, z1)) -> a__U62(mark(z0), z1) mark(isNat(z0)) -> a__isNat(z0) mark(length(z0)) -> a__length(mark(z0)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(0) -> 0 mark(tt) -> tt mark(s(z0)) -> s(mark(z0)) mark(nil) -> nil Tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) A__U62(tt, isNatList(cons(z0, z1))) -> c18(A__LENGTH(a__U51(a__isNat(z0), z1)), MARK(isNatList(cons(z0, z1)))) A__U62(tt, isNatList(nil)) -> c18(MARK(isNatList(nil))) A__U62(tt, isNatList(z0)) -> c18(MARK(isNatList(z0))) A__U62(tt, U61(zeros, x1, x2)) -> c18(A__LENGTH(a__U61(a__zeros, x1, x2)), MARK(U61(zeros, x1, x2))) A__U62(tt, U61(U11(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U11(mark(z0)), x1, x2)), MARK(U61(U11(z0), x1, x2))) A__U62(tt, U61(U21(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U21(mark(z0)), x1, x2)), MARK(U61(U21(z0), x1, x2))) A__U62(tt, U61(U31(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U31(mark(z0)), x1, x2)), MARK(U61(U31(z0), x1, x2))) A__U62(tt, U61(U41(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U41(mark(z0), z1), x1, x2)), MARK(U61(U41(z0, z1), x1, x2))) A__U62(tt, U61(U42(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U42(mark(z0)), x1, x2)), MARK(U61(U42(z0), x1, x2))) A__U62(tt, U61(isNatIList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatIList(z0), x1, x2)), MARK(U61(isNatIList(z0), x1, x2))) A__U62(tt, U61(U51(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U51(mark(z0), z1), x1, x2)), MARK(U61(U51(z0, z1), x1, x2))) A__U62(tt, U61(U52(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U52(mark(z0)), x1, x2)), MARK(U61(U52(z0), x1, x2))) A__U62(tt, U61(isNatList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatList(z0), x1, x2)), MARK(U61(isNatList(z0), x1, x2))) A__U62(tt, U61(U61(z0, z1, z2), x1, x2)) -> c18(A__LENGTH(a__U61(a__U61(mark(z0), z1, z2), x1, x2)), MARK(U61(U61(z0, z1, z2), x1, x2))) A__U62(tt, U61(U62(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U62(mark(z0), z1), x1, x2)), MARK(U61(U62(z0, z1), x1, x2))) A__U62(tt, U61(isNat(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNat(z0), x1, x2)), MARK(U61(isNat(z0), x1, x2))) A__U62(tt, U61(length(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__length(mark(z0)), x1, x2)), MARK(U61(length(z0), x1, x2))) A__U62(tt, U61(cons(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(cons(mark(z0), z1), x1, x2)), MARK(U61(cons(z0, z1), x1, x2))) A__U62(tt, U61(tt, x1, x2)) -> c18(A__LENGTH(a__U61(tt, x1, x2)), MARK(U61(tt, x1, x2))) A__U62(tt, U61(s(z0), x1, x2)) -> c18(A__LENGTH(a__U61(s(mark(z0)), x1, x2)), MARK(U61(s(z0), x1, x2))) A__U62(tt, U61(x0, z1, z2)) -> c18(MARK(U61(x0, z1, z2))) A__U62(tt, U61(0, x1, x2)) -> c18(A__LENGTH(a__U61(0, x1, x2))) A__U62(tt, U61(nil, x1, x2)) -> c18(A__LENGTH(a__U61(nil, x1, x2))) A__U62(tt, U62(zeros, x1)) -> c18(A__LENGTH(a__U62(a__zeros, x1)), MARK(U62(zeros, x1))) A__U62(tt, U62(U11(z0), x1)) -> c18(A__LENGTH(a__U62(a__U11(mark(z0)), x1)), MARK(U62(U11(z0), x1))) A__U62(tt, U62(U21(z0), x1)) -> c18(A__LENGTH(a__U62(a__U21(mark(z0)), x1)), MARK(U62(U21(z0), x1))) A__U62(tt, U62(U31(z0), x1)) -> c18(A__LENGTH(a__U62(a__U31(mark(z0)), x1)), MARK(U62(U31(z0), x1))) A__U62(tt, U62(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U41(mark(z0), z1), x1)), MARK(U62(U41(z0, z1), x1))) A__U62(tt, U62(U42(z0), x1)) -> c18(A__LENGTH(a__U62(a__U42(mark(z0)), x1)), MARK(U62(U42(z0), x1))) A__U62(tt, U62(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatIList(z0), x1)), MARK(U62(isNatIList(z0), x1))) A__U62(tt, U62(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U51(mark(z0), z1), x1)), MARK(U62(U51(z0, z1), x1))) A__U62(tt, U62(U52(z0), x1)) -> c18(A__LENGTH(a__U62(a__U52(mark(z0)), x1)), MARK(U62(U52(z0), x1))) A__U62(tt, U62(isNatList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatList(z0), x1)), MARK(U62(isNatList(z0), x1))) A__U62(tt, U62(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U62(a__U61(mark(z0), z1, z2), x1)), MARK(U62(U61(z0, z1, z2), x1))) A__U62(tt, U62(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U62(mark(z0), z1), x1)), MARK(U62(U62(z0, z1), x1))) A__U62(tt, U62(isNat(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNat(z0), x1)), MARK(U62(isNat(z0), x1))) A__U62(tt, U62(length(z0), x1)) -> c18(A__LENGTH(a__U62(a__length(mark(z0)), x1)), MARK(U62(length(z0), x1))) A__U62(tt, U62(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U62(cons(mark(z0), z1), x1)), MARK(U62(cons(z0, z1), x1))) A__U62(tt, U62(tt, x1)) -> c18(A__LENGTH(a__U62(tt, x1)), MARK(U62(tt, x1))) A__U62(tt, U62(s(z0), x1)) -> c18(A__LENGTH(a__U62(s(mark(z0)), x1)), MARK(U62(s(z0), x1))) A__U62(tt, U62(x0, z1)) -> c18(MARK(U62(x0, z1))) A__U62(tt, U62(0, x1)) -> c18(A__LENGTH(a__U62(0, x1))) A__U62(tt, U62(nil, x1)) -> c18(A__LENGTH(a__U62(nil, x1))) A__U62(tt, isNat(length(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(isNat(length(z0)))) A__U62(tt, isNat(s(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(isNat(s(z0)))) A__U62(tt, isNat(0)) -> c18(MARK(isNat(0))) A__U62(tt, isNat(z0)) -> c18(MARK(isNat(z0))) A__U62(tt, length(zeros)) -> c18(A__LENGTH(a__length(a__zeros)), MARK(length(zeros))) A__U62(tt, length(U11(z0))) -> c18(A__LENGTH(a__length(a__U11(mark(z0)))), MARK(length(U11(z0)))) A__U62(tt, length(U21(z0))) -> c18(A__LENGTH(a__length(a__U21(mark(z0)))), MARK(length(U21(z0)))) A__U62(tt, length(U31(z0))) -> c18(A__LENGTH(a__length(a__U31(mark(z0)))), MARK(length(U31(z0)))) A__U62(tt, length(U41(z0, z1))) -> c18(A__LENGTH(a__length(a__U41(mark(z0), z1))), MARK(length(U41(z0, z1)))) A__U62(tt, length(U42(z0))) -> c18(A__LENGTH(a__length(a__U42(mark(z0)))), MARK(length(U42(z0)))) A__U62(tt, length(isNatIList(z0))) -> c18(A__LENGTH(a__length(a__isNatIList(z0))), MARK(length(isNatIList(z0)))) A__U62(tt, length(U51(z0, z1))) -> c18(A__LENGTH(a__length(a__U51(mark(z0), z1))), MARK(length(U51(z0, z1)))) A__U62(tt, length(U52(z0))) -> c18(A__LENGTH(a__length(a__U52(mark(z0)))), MARK(length(U52(z0)))) A__U62(tt, length(isNatList(z0))) -> c18(A__LENGTH(a__length(a__isNatList(z0))), MARK(length(isNatList(z0)))) A__U62(tt, length(U61(z0, z1, z2))) -> c18(A__LENGTH(a__length(a__U61(mark(z0), z1, z2))), MARK(length(U61(z0, z1, z2)))) A__U62(tt, length(U62(z0, z1))) -> c18(A__LENGTH(a__length(a__U62(mark(z0), z1))), MARK(length(U62(z0, z1)))) A__U62(tt, length(isNat(z0))) -> c18(A__LENGTH(a__length(a__isNat(z0))), MARK(length(isNat(z0)))) A__U62(tt, length(length(z0))) -> c18(A__LENGTH(a__length(a__length(mark(z0)))), MARK(length(length(z0)))) A__U62(tt, length(cons(z0, z1))) -> c18(A__LENGTH(a__length(cons(mark(z0), z1))), MARK(length(cons(z0, z1)))) A__U62(tt, length(s(z0))) -> c18(A__LENGTH(a__length(s(mark(z0)))), MARK(length(s(z0)))) A__U62(tt, length(x0)) -> c18(MARK(length(x0))) A__U62(tt, length(0)) -> c18(A__LENGTH(a__length(0))) A__U62(tt, length(tt)) -> c18(A__LENGTH(a__length(tt))) A__U62(tt, length(nil)) -> c18(A__LENGTH(a__length(nil))) A__U62(tt, zeros) -> c18(A__LENGTH(cons(0, zeros))) A__ISNATILIST(cons(length(nil), x1)) -> c26(A__U41(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATILIST(cons(length(cons(z0, z1)), x1)) -> c26(A__U41(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(length(x0), x1)) -> c26(A__ISNAT(length(x0))) A__ISNATILIST(cons(s(0), x1)) -> c26(A__U41(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATILIST(cons(s(length(z0)), x1)) -> c26(A__U41(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATILIST(cons(s(s(z0)), x1)) -> c26(A__U41(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(s(x0), x1)) -> c26(A__ISNAT(s(x0))) A__ISNATLIST(cons(length(nil), x1)) -> c29(A__U51(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATLIST(cons(length(cons(z0, z1)), x1)) -> c29(A__U51(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(length(x0), x1)) -> c29(A__ISNAT(length(x0))) S tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) A__U62(tt, isNatList(cons(z0, z1))) -> c18(A__LENGTH(a__U51(a__isNat(z0), z1)), MARK(isNatList(cons(z0, z1)))) A__U62(tt, isNatList(nil)) -> c18(MARK(isNatList(nil))) A__U62(tt, isNatList(z0)) -> c18(MARK(isNatList(z0))) A__U62(tt, U61(zeros, x1, x2)) -> c18(A__LENGTH(a__U61(a__zeros, x1, x2)), MARK(U61(zeros, x1, x2))) A__U62(tt, U61(U11(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U11(mark(z0)), x1, x2)), MARK(U61(U11(z0), x1, x2))) A__U62(tt, U61(U21(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U21(mark(z0)), x1, x2)), MARK(U61(U21(z0), x1, x2))) A__U62(tt, U61(U31(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U31(mark(z0)), x1, x2)), MARK(U61(U31(z0), x1, x2))) A__U62(tt, U61(U41(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U41(mark(z0), z1), x1, x2)), MARK(U61(U41(z0, z1), x1, x2))) A__U62(tt, U61(U42(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U42(mark(z0)), x1, x2)), MARK(U61(U42(z0), x1, x2))) A__U62(tt, U61(isNatIList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatIList(z0), x1, x2)), MARK(U61(isNatIList(z0), x1, x2))) A__U62(tt, U61(U51(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U51(mark(z0), z1), x1, x2)), MARK(U61(U51(z0, z1), x1, x2))) A__U62(tt, U61(U52(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U52(mark(z0)), x1, x2)), MARK(U61(U52(z0), x1, x2))) A__U62(tt, U61(isNatList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatList(z0), x1, x2)), MARK(U61(isNatList(z0), x1, x2))) A__U62(tt, U61(U61(z0, z1, z2), x1, x2)) -> c18(A__LENGTH(a__U61(a__U61(mark(z0), z1, z2), x1, x2)), MARK(U61(U61(z0, z1, z2), x1, x2))) A__U62(tt, U61(U62(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U62(mark(z0), z1), x1, x2)), MARK(U61(U62(z0, z1), x1, x2))) A__U62(tt, U61(isNat(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNat(z0), x1, x2)), MARK(U61(isNat(z0), x1, x2))) A__U62(tt, U61(length(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__length(mark(z0)), x1, x2)), MARK(U61(length(z0), x1, x2))) A__U62(tt, U61(cons(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(cons(mark(z0), z1), x1, x2)), MARK(U61(cons(z0, z1), x1, x2))) A__U62(tt, U61(tt, x1, x2)) -> c18(A__LENGTH(a__U61(tt, x1, x2)), MARK(U61(tt, x1, x2))) A__U62(tt, U61(s(z0), x1, x2)) -> c18(A__LENGTH(a__U61(s(mark(z0)), x1, x2)), MARK(U61(s(z0), x1, x2))) A__U62(tt, U61(x0, z1, z2)) -> c18(MARK(U61(x0, z1, z2))) A__U62(tt, U61(0, x1, x2)) -> c18(A__LENGTH(a__U61(0, x1, x2))) A__U62(tt, U61(nil, x1, x2)) -> c18(A__LENGTH(a__U61(nil, x1, x2))) A__U62(tt, U62(zeros, x1)) -> c18(A__LENGTH(a__U62(a__zeros, x1)), MARK(U62(zeros, x1))) A__U62(tt, U62(U11(z0), x1)) -> c18(A__LENGTH(a__U62(a__U11(mark(z0)), x1)), MARK(U62(U11(z0), x1))) A__U62(tt, U62(U21(z0), x1)) -> c18(A__LENGTH(a__U62(a__U21(mark(z0)), x1)), MARK(U62(U21(z0), x1))) A__U62(tt, U62(U31(z0), x1)) -> c18(A__LENGTH(a__U62(a__U31(mark(z0)), x1)), MARK(U62(U31(z0), x1))) A__U62(tt, U62(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U41(mark(z0), z1), x1)), MARK(U62(U41(z0, z1), x1))) A__U62(tt, U62(U42(z0), x1)) -> c18(A__LENGTH(a__U62(a__U42(mark(z0)), x1)), MARK(U62(U42(z0), x1))) A__U62(tt, U62(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatIList(z0), x1)), MARK(U62(isNatIList(z0), x1))) A__U62(tt, U62(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U51(mark(z0), z1), x1)), MARK(U62(U51(z0, z1), x1))) A__U62(tt, U62(U52(z0), x1)) -> c18(A__LENGTH(a__U62(a__U52(mark(z0)), x1)), MARK(U62(U52(z0), x1))) A__U62(tt, U62(isNatList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatList(z0), x1)), MARK(U62(isNatList(z0), x1))) A__U62(tt, U62(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U62(a__U61(mark(z0), z1, z2), x1)), MARK(U62(U61(z0, z1, z2), x1))) A__U62(tt, U62(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U62(mark(z0), z1), x1)), MARK(U62(U62(z0, z1), x1))) A__U62(tt, U62(isNat(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNat(z0), x1)), MARK(U62(isNat(z0), x1))) A__U62(tt, U62(length(z0), x1)) -> c18(A__LENGTH(a__U62(a__length(mark(z0)), x1)), MARK(U62(length(z0), x1))) A__U62(tt, U62(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U62(cons(mark(z0), z1), x1)), MARK(U62(cons(z0, z1), x1))) A__U62(tt, U62(tt, x1)) -> c18(A__LENGTH(a__U62(tt, x1)), MARK(U62(tt, x1))) A__U62(tt, U62(s(z0), x1)) -> c18(A__LENGTH(a__U62(s(mark(z0)), x1)), MARK(U62(s(z0), x1))) A__U62(tt, U62(x0, z1)) -> c18(MARK(U62(x0, z1))) A__U62(tt, U62(0, x1)) -> c18(A__LENGTH(a__U62(0, x1))) A__U62(tt, U62(nil, x1)) -> c18(A__LENGTH(a__U62(nil, x1))) A__U62(tt, isNat(length(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(isNat(length(z0)))) A__U62(tt, isNat(s(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(isNat(s(z0)))) A__U62(tt, isNat(0)) -> c18(MARK(isNat(0))) A__U62(tt, isNat(z0)) -> c18(MARK(isNat(z0))) A__U62(tt, length(zeros)) -> c18(A__LENGTH(a__length(a__zeros)), MARK(length(zeros))) A__U62(tt, length(U11(z0))) -> c18(A__LENGTH(a__length(a__U11(mark(z0)))), MARK(length(U11(z0)))) A__U62(tt, length(U21(z0))) -> c18(A__LENGTH(a__length(a__U21(mark(z0)))), MARK(length(U21(z0)))) A__U62(tt, length(U31(z0))) -> c18(A__LENGTH(a__length(a__U31(mark(z0)))), MARK(length(U31(z0)))) A__U62(tt, length(U41(z0, z1))) -> c18(A__LENGTH(a__length(a__U41(mark(z0), z1))), MARK(length(U41(z0, z1)))) A__U62(tt, length(U42(z0))) -> c18(A__LENGTH(a__length(a__U42(mark(z0)))), MARK(length(U42(z0)))) A__U62(tt, length(isNatIList(z0))) -> c18(A__LENGTH(a__length(a__isNatIList(z0))), MARK(length(isNatIList(z0)))) A__U62(tt, length(U51(z0, z1))) -> c18(A__LENGTH(a__length(a__U51(mark(z0), z1))), MARK(length(U51(z0, z1)))) A__U62(tt, length(U52(z0))) -> c18(A__LENGTH(a__length(a__U52(mark(z0)))), MARK(length(U52(z0)))) A__U62(tt, length(isNatList(z0))) -> c18(A__LENGTH(a__length(a__isNatList(z0))), MARK(length(isNatList(z0)))) A__U62(tt, length(U61(z0, z1, z2))) -> c18(A__LENGTH(a__length(a__U61(mark(z0), z1, z2))), MARK(length(U61(z0, z1, z2)))) A__U62(tt, length(U62(z0, z1))) -> c18(A__LENGTH(a__length(a__U62(mark(z0), z1))), MARK(length(U62(z0, z1)))) A__U62(tt, length(isNat(z0))) -> c18(A__LENGTH(a__length(a__isNat(z0))), MARK(length(isNat(z0)))) A__U62(tt, length(length(z0))) -> c18(A__LENGTH(a__length(a__length(mark(z0)))), MARK(length(length(z0)))) A__U62(tt, length(cons(z0, z1))) -> c18(A__LENGTH(a__length(cons(mark(z0), z1))), MARK(length(cons(z0, z1)))) A__U62(tt, length(s(z0))) -> c18(A__LENGTH(a__length(s(mark(z0)))), MARK(length(s(z0)))) A__U62(tt, length(x0)) -> c18(MARK(length(x0))) A__U62(tt, length(0)) -> c18(A__LENGTH(a__length(0))) A__U62(tt, length(tt)) -> c18(A__LENGTH(a__length(tt))) A__U62(tt, length(nil)) -> c18(A__LENGTH(a__length(nil))) A__U62(tt, zeros) -> c18(A__LENGTH(cons(0, zeros))) A__ISNATILIST(cons(length(nil), x1)) -> c26(A__U41(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATILIST(cons(length(cons(z0, z1)), x1)) -> c26(A__U41(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(length(x0), x1)) -> c26(A__ISNAT(length(x0))) A__ISNATILIST(cons(s(0), x1)) -> c26(A__U41(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATILIST(cons(s(length(z0)), x1)) -> c26(A__U41(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATILIST(cons(s(s(z0)), x1)) -> c26(A__U41(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(s(x0), x1)) -> c26(A__ISNAT(s(x0))) A__ISNATLIST(cons(length(nil), x1)) -> c29(A__U51(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATLIST(cons(length(cons(z0, z1)), x1)) -> c29(A__U51(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(length(x0), x1)) -> c29(A__ISNAT(length(x0))) K tuples:none Defined Rule Symbols: a__zeros, a__U11_1, a__U21_1, a__U31_1, a__U41_2, a__U42_1, a__U51_2, a__U52_1, a__U61_3, a__U62_2, a__isNat_1, a__isNatIList_1, a__isNatList_1, a__length_1, mark_1 Defined Pair Symbols: MARK_1, A__U41_2, A__U51_2, A__ISNAT_1, A__ISNATILIST_1, A__U61_3, A__U62_2, A__ISNATLIST_1, A__LENGTH_1 Compound Symbols: c40_1, c43_1, c46_1, c48_1, c51_1, c8_1, c12_1, c21_1, c22_1, c24_1, c35_1, c36_1, c37_1, c39_1, c42_1, c16_1, c18_2, c18_1, c26_1, c29_2, c29_1, c32_2, c32_1, c38_2, c38_1, c_1, c41_2, c41_1, c1_1, c44_2, c44_1, c45_2, c45_1, c47_2, c47_1, c16_2, c26_2 ---------------------------------------- (161) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(a__isNat(z0)), x1), A__ISNAT(s(z0))) by A__ISNATLIST(cons(s(x0), x1)) -> c29(A__U51(U21(a__isNat(x0)), x1), A__ISNAT(s(x0))) A__ISNATLIST(cons(s(0), x1)) -> c29(A__U51(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATLIST(cons(s(length(z0)), x1)) -> c29(A__U51(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATLIST(cons(s(s(z0)), x1)) -> c29(A__U51(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) ---------------------------------------- (162) Obligation: Complexity Dependency Tuples Problem Rules: a__zeros -> cons(0, zeros) a__zeros -> zeros a__U11(tt) -> tt a__U11(z0) -> U11(z0) a__U21(tt) -> tt a__U21(z0) -> U21(z0) a__U31(tt) -> tt a__U31(z0) -> U31(z0) a__U41(tt, z0) -> a__U42(a__isNatIList(z0)) a__U41(z0, z1) -> U41(z0, z1) a__U42(tt) -> tt a__U42(z0) -> U42(z0) a__U51(tt, z0) -> a__U52(a__isNatList(z0)) a__U51(z0, z1) -> U51(z0, z1) a__U52(tt) -> tt a__U52(z0) -> U52(z0) a__U61(tt, z0, z1) -> a__U62(a__isNat(z1), z0) a__U61(z0, z1, z2) -> U61(z0, z1, z2) a__U62(tt, z0) -> s(a__length(mark(z0))) a__U62(z0, z1) -> U62(z0, z1) a__isNat(0) -> tt a__isNat(length(z0)) -> a__U11(a__isNatList(z0)) a__isNat(s(z0)) -> a__U21(a__isNat(z0)) a__isNat(z0) -> isNat(z0) a__isNatIList(z0) -> a__U31(a__isNatList(z0)) a__isNatIList(zeros) -> tt a__isNatIList(cons(z0, z1)) -> a__U41(a__isNat(z0), z1) a__isNatIList(z0) -> isNatIList(z0) a__isNatList(nil) -> tt a__isNatList(cons(z0, z1)) -> a__U51(a__isNat(z0), z1) a__isNatList(z0) -> isNatList(z0) a__length(nil) -> 0 a__length(cons(z0, z1)) -> a__U61(a__isNatList(z1), z1, z0) a__length(z0) -> length(z0) mark(zeros) -> a__zeros mark(U11(z0)) -> a__U11(mark(z0)) mark(U21(z0)) -> a__U21(mark(z0)) mark(U31(z0)) -> a__U31(mark(z0)) mark(U41(z0, z1)) -> a__U41(mark(z0), z1) mark(U42(z0)) -> a__U42(mark(z0)) mark(isNatIList(z0)) -> a__isNatIList(z0) mark(U51(z0, z1)) -> a__U51(mark(z0), z1) mark(U52(z0)) -> a__U52(mark(z0)) mark(isNatList(z0)) -> a__isNatList(z0) mark(U61(z0, z1, z2)) -> a__U61(mark(z0), z1, z2) mark(U62(z0, z1)) -> a__U62(mark(z0), z1) mark(isNat(z0)) -> a__isNat(z0) mark(length(z0)) -> a__length(mark(z0)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(0) -> 0 mark(tt) -> tt mark(s(z0)) -> s(mark(z0)) mark(nil) -> nil Tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) A__U62(tt, isNatList(cons(z0, z1))) -> c18(A__LENGTH(a__U51(a__isNat(z0), z1)), MARK(isNatList(cons(z0, z1)))) A__U62(tt, isNatList(nil)) -> c18(MARK(isNatList(nil))) A__U62(tt, isNatList(z0)) -> c18(MARK(isNatList(z0))) A__U62(tt, U61(zeros, x1, x2)) -> c18(A__LENGTH(a__U61(a__zeros, x1, x2)), MARK(U61(zeros, x1, x2))) A__U62(tt, U61(U11(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U11(mark(z0)), x1, x2)), MARK(U61(U11(z0), x1, x2))) A__U62(tt, U61(U21(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U21(mark(z0)), x1, x2)), MARK(U61(U21(z0), x1, x2))) A__U62(tt, U61(U31(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U31(mark(z0)), x1, x2)), MARK(U61(U31(z0), x1, x2))) A__U62(tt, U61(U41(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U41(mark(z0), z1), x1, x2)), MARK(U61(U41(z0, z1), x1, x2))) A__U62(tt, U61(U42(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U42(mark(z0)), x1, x2)), MARK(U61(U42(z0), x1, x2))) A__U62(tt, U61(isNatIList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatIList(z0), x1, x2)), MARK(U61(isNatIList(z0), x1, x2))) A__U62(tt, U61(U51(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U51(mark(z0), z1), x1, x2)), MARK(U61(U51(z0, z1), x1, x2))) A__U62(tt, U61(U52(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U52(mark(z0)), x1, x2)), MARK(U61(U52(z0), x1, x2))) A__U62(tt, U61(isNatList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatList(z0), x1, x2)), MARK(U61(isNatList(z0), x1, x2))) A__U62(tt, U61(U61(z0, z1, z2), x1, x2)) -> c18(A__LENGTH(a__U61(a__U61(mark(z0), z1, z2), x1, x2)), MARK(U61(U61(z0, z1, z2), x1, x2))) A__U62(tt, U61(U62(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U62(mark(z0), z1), x1, x2)), MARK(U61(U62(z0, z1), x1, x2))) A__U62(tt, U61(isNat(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNat(z0), x1, x2)), MARK(U61(isNat(z0), x1, x2))) A__U62(tt, U61(length(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__length(mark(z0)), x1, x2)), MARK(U61(length(z0), x1, x2))) A__U62(tt, U61(cons(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(cons(mark(z0), z1), x1, x2)), MARK(U61(cons(z0, z1), x1, x2))) A__U62(tt, U61(tt, x1, x2)) -> c18(A__LENGTH(a__U61(tt, x1, x2)), MARK(U61(tt, x1, x2))) A__U62(tt, U61(s(z0), x1, x2)) -> c18(A__LENGTH(a__U61(s(mark(z0)), x1, x2)), MARK(U61(s(z0), x1, x2))) A__U62(tt, U61(x0, z1, z2)) -> c18(MARK(U61(x0, z1, z2))) A__U62(tt, U61(0, x1, x2)) -> c18(A__LENGTH(a__U61(0, x1, x2))) A__U62(tt, U61(nil, x1, x2)) -> c18(A__LENGTH(a__U61(nil, x1, x2))) A__U62(tt, U62(zeros, x1)) -> c18(A__LENGTH(a__U62(a__zeros, x1)), MARK(U62(zeros, x1))) A__U62(tt, U62(U11(z0), x1)) -> c18(A__LENGTH(a__U62(a__U11(mark(z0)), x1)), MARK(U62(U11(z0), x1))) A__U62(tt, U62(U21(z0), x1)) -> c18(A__LENGTH(a__U62(a__U21(mark(z0)), x1)), MARK(U62(U21(z0), x1))) A__U62(tt, U62(U31(z0), x1)) -> c18(A__LENGTH(a__U62(a__U31(mark(z0)), x1)), MARK(U62(U31(z0), x1))) A__U62(tt, U62(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U41(mark(z0), z1), x1)), MARK(U62(U41(z0, z1), x1))) A__U62(tt, U62(U42(z0), x1)) -> c18(A__LENGTH(a__U62(a__U42(mark(z0)), x1)), MARK(U62(U42(z0), x1))) A__U62(tt, U62(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatIList(z0), x1)), MARK(U62(isNatIList(z0), x1))) A__U62(tt, U62(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U51(mark(z0), z1), x1)), MARK(U62(U51(z0, z1), x1))) A__U62(tt, U62(U52(z0), x1)) -> c18(A__LENGTH(a__U62(a__U52(mark(z0)), x1)), MARK(U62(U52(z0), x1))) A__U62(tt, U62(isNatList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatList(z0), x1)), MARK(U62(isNatList(z0), x1))) A__U62(tt, U62(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U62(a__U61(mark(z0), z1, z2), x1)), MARK(U62(U61(z0, z1, z2), x1))) A__U62(tt, U62(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U62(mark(z0), z1), x1)), MARK(U62(U62(z0, z1), x1))) A__U62(tt, U62(isNat(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNat(z0), x1)), MARK(U62(isNat(z0), x1))) A__U62(tt, U62(length(z0), x1)) -> c18(A__LENGTH(a__U62(a__length(mark(z0)), x1)), MARK(U62(length(z0), x1))) A__U62(tt, U62(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U62(cons(mark(z0), z1), x1)), MARK(U62(cons(z0, z1), x1))) A__U62(tt, U62(tt, x1)) -> c18(A__LENGTH(a__U62(tt, x1)), MARK(U62(tt, x1))) A__U62(tt, U62(s(z0), x1)) -> c18(A__LENGTH(a__U62(s(mark(z0)), x1)), MARK(U62(s(z0), x1))) A__U62(tt, U62(x0, z1)) -> c18(MARK(U62(x0, z1))) A__U62(tt, U62(0, x1)) -> c18(A__LENGTH(a__U62(0, x1))) A__U62(tt, U62(nil, x1)) -> c18(A__LENGTH(a__U62(nil, x1))) A__U62(tt, isNat(length(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(isNat(length(z0)))) A__U62(tt, isNat(s(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(isNat(s(z0)))) A__U62(tt, isNat(0)) -> c18(MARK(isNat(0))) A__U62(tt, isNat(z0)) -> c18(MARK(isNat(z0))) A__U62(tt, length(zeros)) -> c18(A__LENGTH(a__length(a__zeros)), MARK(length(zeros))) A__U62(tt, length(U11(z0))) -> c18(A__LENGTH(a__length(a__U11(mark(z0)))), MARK(length(U11(z0)))) A__U62(tt, length(U21(z0))) -> c18(A__LENGTH(a__length(a__U21(mark(z0)))), MARK(length(U21(z0)))) A__U62(tt, length(U31(z0))) -> c18(A__LENGTH(a__length(a__U31(mark(z0)))), MARK(length(U31(z0)))) A__U62(tt, length(U41(z0, z1))) -> c18(A__LENGTH(a__length(a__U41(mark(z0), z1))), MARK(length(U41(z0, z1)))) A__U62(tt, length(U42(z0))) -> c18(A__LENGTH(a__length(a__U42(mark(z0)))), MARK(length(U42(z0)))) A__U62(tt, length(isNatIList(z0))) -> c18(A__LENGTH(a__length(a__isNatIList(z0))), MARK(length(isNatIList(z0)))) A__U62(tt, length(U51(z0, z1))) -> c18(A__LENGTH(a__length(a__U51(mark(z0), z1))), MARK(length(U51(z0, z1)))) A__U62(tt, length(U52(z0))) -> c18(A__LENGTH(a__length(a__U52(mark(z0)))), MARK(length(U52(z0)))) A__U62(tt, length(isNatList(z0))) -> c18(A__LENGTH(a__length(a__isNatList(z0))), MARK(length(isNatList(z0)))) A__U62(tt, length(U61(z0, z1, z2))) -> c18(A__LENGTH(a__length(a__U61(mark(z0), z1, z2))), MARK(length(U61(z0, z1, z2)))) A__U62(tt, length(U62(z0, z1))) -> c18(A__LENGTH(a__length(a__U62(mark(z0), z1))), MARK(length(U62(z0, z1)))) A__U62(tt, length(isNat(z0))) -> c18(A__LENGTH(a__length(a__isNat(z0))), MARK(length(isNat(z0)))) A__U62(tt, length(length(z0))) -> c18(A__LENGTH(a__length(a__length(mark(z0)))), MARK(length(length(z0)))) A__U62(tt, length(cons(z0, z1))) -> c18(A__LENGTH(a__length(cons(mark(z0), z1))), MARK(length(cons(z0, z1)))) A__U62(tt, length(s(z0))) -> c18(A__LENGTH(a__length(s(mark(z0)))), MARK(length(s(z0)))) A__U62(tt, length(x0)) -> c18(MARK(length(x0))) A__U62(tt, length(0)) -> c18(A__LENGTH(a__length(0))) A__U62(tt, length(tt)) -> c18(A__LENGTH(a__length(tt))) A__U62(tt, length(nil)) -> c18(A__LENGTH(a__length(nil))) A__U62(tt, zeros) -> c18(A__LENGTH(cons(0, zeros))) A__ISNATILIST(cons(length(nil), x1)) -> c26(A__U41(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATILIST(cons(length(cons(z0, z1)), x1)) -> c26(A__U41(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(length(x0), x1)) -> c26(A__ISNAT(length(x0))) A__ISNATILIST(cons(s(0), x1)) -> c26(A__U41(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATILIST(cons(s(length(z0)), x1)) -> c26(A__U41(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATILIST(cons(s(s(z0)), x1)) -> c26(A__U41(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(s(x0), x1)) -> c26(A__ISNAT(s(x0))) A__ISNATLIST(cons(length(nil), x1)) -> c29(A__U51(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATLIST(cons(length(cons(z0, z1)), x1)) -> c29(A__U51(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(length(x0), x1)) -> c29(A__ISNAT(length(x0))) A__ISNATLIST(cons(s(x0), x1)) -> c29(A__U51(U21(a__isNat(x0)), x1), A__ISNAT(s(x0))) A__ISNATLIST(cons(s(0), x1)) -> c29(A__U51(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATLIST(cons(s(length(z0)), x1)) -> c29(A__U51(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATLIST(cons(s(s(z0)), x1)) -> c29(A__U51(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) S tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) A__U62(tt, isNatList(cons(z0, z1))) -> c18(A__LENGTH(a__U51(a__isNat(z0), z1)), MARK(isNatList(cons(z0, z1)))) A__U62(tt, isNatList(nil)) -> c18(MARK(isNatList(nil))) A__U62(tt, isNatList(z0)) -> c18(MARK(isNatList(z0))) A__U62(tt, U61(zeros, x1, x2)) -> c18(A__LENGTH(a__U61(a__zeros, x1, x2)), MARK(U61(zeros, x1, x2))) A__U62(tt, U61(U11(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U11(mark(z0)), x1, x2)), MARK(U61(U11(z0), x1, x2))) A__U62(tt, U61(U21(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U21(mark(z0)), x1, x2)), MARK(U61(U21(z0), x1, x2))) A__U62(tt, U61(U31(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U31(mark(z0)), x1, x2)), MARK(U61(U31(z0), x1, x2))) A__U62(tt, U61(U41(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U41(mark(z0), z1), x1, x2)), MARK(U61(U41(z0, z1), x1, x2))) A__U62(tt, U61(U42(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U42(mark(z0)), x1, x2)), MARK(U61(U42(z0), x1, x2))) A__U62(tt, U61(isNatIList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatIList(z0), x1, x2)), MARK(U61(isNatIList(z0), x1, x2))) A__U62(tt, U61(U51(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U51(mark(z0), z1), x1, x2)), MARK(U61(U51(z0, z1), x1, x2))) A__U62(tt, U61(U52(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U52(mark(z0)), x1, x2)), MARK(U61(U52(z0), x1, x2))) A__U62(tt, U61(isNatList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatList(z0), x1, x2)), MARK(U61(isNatList(z0), x1, x2))) A__U62(tt, U61(U61(z0, z1, z2), x1, x2)) -> c18(A__LENGTH(a__U61(a__U61(mark(z0), z1, z2), x1, x2)), MARK(U61(U61(z0, z1, z2), x1, x2))) A__U62(tt, U61(U62(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U62(mark(z0), z1), x1, x2)), MARK(U61(U62(z0, z1), x1, x2))) A__U62(tt, U61(isNat(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNat(z0), x1, x2)), MARK(U61(isNat(z0), x1, x2))) A__U62(tt, U61(length(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__length(mark(z0)), x1, x2)), MARK(U61(length(z0), x1, x2))) A__U62(tt, U61(cons(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(cons(mark(z0), z1), x1, x2)), MARK(U61(cons(z0, z1), x1, x2))) A__U62(tt, U61(tt, x1, x2)) -> c18(A__LENGTH(a__U61(tt, x1, x2)), MARK(U61(tt, x1, x2))) A__U62(tt, U61(s(z0), x1, x2)) -> c18(A__LENGTH(a__U61(s(mark(z0)), x1, x2)), MARK(U61(s(z0), x1, x2))) A__U62(tt, U61(x0, z1, z2)) -> c18(MARK(U61(x0, z1, z2))) A__U62(tt, U61(0, x1, x2)) -> c18(A__LENGTH(a__U61(0, x1, x2))) A__U62(tt, U61(nil, x1, x2)) -> c18(A__LENGTH(a__U61(nil, x1, x2))) A__U62(tt, U62(zeros, x1)) -> c18(A__LENGTH(a__U62(a__zeros, x1)), MARK(U62(zeros, x1))) A__U62(tt, U62(U11(z0), x1)) -> c18(A__LENGTH(a__U62(a__U11(mark(z0)), x1)), MARK(U62(U11(z0), x1))) A__U62(tt, U62(U21(z0), x1)) -> c18(A__LENGTH(a__U62(a__U21(mark(z0)), x1)), MARK(U62(U21(z0), x1))) A__U62(tt, U62(U31(z0), x1)) -> c18(A__LENGTH(a__U62(a__U31(mark(z0)), x1)), MARK(U62(U31(z0), x1))) A__U62(tt, U62(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U41(mark(z0), z1), x1)), MARK(U62(U41(z0, z1), x1))) A__U62(tt, U62(U42(z0), x1)) -> c18(A__LENGTH(a__U62(a__U42(mark(z0)), x1)), MARK(U62(U42(z0), x1))) A__U62(tt, U62(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatIList(z0), x1)), MARK(U62(isNatIList(z0), x1))) A__U62(tt, U62(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U51(mark(z0), z1), x1)), MARK(U62(U51(z0, z1), x1))) A__U62(tt, U62(U52(z0), x1)) -> c18(A__LENGTH(a__U62(a__U52(mark(z0)), x1)), MARK(U62(U52(z0), x1))) A__U62(tt, U62(isNatList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatList(z0), x1)), MARK(U62(isNatList(z0), x1))) A__U62(tt, U62(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U62(a__U61(mark(z0), z1, z2), x1)), MARK(U62(U61(z0, z1, z2), x1))) A__U62(tt, U62(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U62(mark(z0), z1), x1)), MARK(U62(U62(z0, z1), x1))) A__U62(tt, U62(isNat(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNat(z0), x1)), MARK(U62(isNat(z0), x1))) A__U62(tt, U62(length(z0), x1)) -> c18(A__LENGTH(a__U62(a__length(mark(z0)), x1)), MARK(U62(length(z0), x1))) A__U62(tt, U62(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U62(cons(mark(z0), z1), x1)), MARK(U62(cons(z0, z1), x1))) A__U62(tt, U62(tt, x1)) -> c18(A__LENGTH(a__U62(tt, x1)), MARK(U62(tt, x1))) A__U62(tt, U62(s(z0), x1)) -> c18(A__LENGTH(a__U62(s(mark(z0)), x1)), MARK(U62(s(z0), x1))) A__U62(tt, U62(x0, z1)) -> c18(MARK(U62(x0, z1))) A__U62(tt, U62(0, x1)) -> c18(A__LENGTH(a__U62(0, x1))) A__U62(tt, U62(nil, x1)) -> c18(A__LENGTH(a__U62(nil, x1))) A__U62(tt, isNat(length(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(isNat(length(z0)))) A__U62(tt, isNat(s(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(isNat(s(z0)))) A__U62(tt, isNat(0)) -> c18(MARK(isNat(0))) A__U62(tt, isNat(z0)) -> c18(MARK(isNat(z0))) A__U62(tt, length(zeros)) -> c18(A__LENGTH(a__length(a__zeros)), MARK(length(zeros))) A__U62(tt, length(U11(z0))) -> c18(A__LENGTH(a__length(a__U11(mark(z0)))), MARK(length(U11(z0)))) A__U62(tt, length(U21(z0))) -> c18(A__LENGTH(a__length(a__U21(mark(z0)))), MARK(length(U21(z0)))) A__U62(tt, length(U31(z0))) -> c18(A__LENGTH(a__length(a__U31(mark(z0)))), MARK(length(U31(z0)))) A__U62(tt, length(U41(z0, z1))) -> c18(A__LENGTH(a__length(a__U41(mark(z0), z1))), MARK(length(U41(z0, z1)))) A__U62(tt, length(U42(z0))) -> c18(A__LENGTH(a__length(a__U42(mark(z0)))), MARK(length(U42(z0)))) A__U62(tt, length(isNatIList(z0))) -> c18(A__LENGTH(a__length(a__isNatIList(z0))), MARK(length(isNatIList(z0)))) A__U62(tt, length(U51(z0, z1))) -> c18(A__LENGTH(a__length(a__U51(mark(z0), z1))), MARK(length(U51(z0, z1)))) A__U62(tt, length(U52(z0))) -> c18(A__LENGTH(a__length(a__U52(mark(z0)))), MARK(length(U52(z0)))) A__U62(tt, length(isNatList(z0))) -> c18(A__LENGTH(a__length(a__isNatList(z0))), MARK(length(isNatList(z0)))) A__U62(tt, length(U61(z0, z1, z2))) -> c18(A__LENGTH(a__length(a__U61(mark(z0), z1, z2))), MARK(length(U61(z0, z1, z2)))) A__U62(tt, length(U62(z0, z1))) -> c18(A__LENGTH(a__length(a__U62(mark(z0), z1))), MARK(length(U62(z0, z1)))) A__U62(tt, length(isNat(z0))) -> c18(A__LENGTH(a__length(a__isNat(z0))), MARK(length(isNat(z0)))) A__U62(tt, length(length(z0))) -> c18(A__LENGTH(a__length(a__length(mark(z0)))), MARK(length(length(z0)))) A__U62(tt, length(cons(z0, z1))) -> c18(A__LENGTH(a__length(cons(mark(z0), z1))), MARK(length(cons(z0, z1)))) A__U62(tt, length(s(z0))) -> c18(A__LENGTH(a__length(s(mark(z0)))), MARK(length(s(z0)))) A__U62(tt, length(x0)) -> c18(MARK(length(x0))) A__U62(tt, length(0)) -> c18(A__LENGTH(a__length(0))) A__U62(tt, length(tt)) -> c18(A__LENGTH(a__length(tt))) A__U62(tt, length(nil)) -> c18(A__LENGTH(a__length(nil))) A__U62(tt, zeros) -> c18(A__LENGTH(cons(0, zeros))) A__ISNATILIST(cons(length(nil), x1)) -> c26(A__U41(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATILIST(cons(length(cons(z0, z1)), x1)) -> c26(A__U41(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(length(x0), x1)) -> c26(A__ISNAT(length(x0))) A__ISNATILIST(cons(s(0), x1)) -> c26(A__U41(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATILIST(cons(s(length(z0)), x1)) -> c26(A__U41(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATILIST(cons(s(s(z0)), x1)) -> c26(A__U41(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(s(x0), x1)) -> c26(A__ISNAT(s(x0))) A__ISNATLIST(cons(length(nil), x1)) -> c29(A__U51(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATLIST(cons(length(cons(z0, z1)), x1)) -> c29(A__U51(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(length(x0), x1)) -> c29(A__ISNAT(length(x0))) A__ISNATLIST(cons(s(x0), x1)) -> c29(A__U51(U21(a__isNat(x0)), x1), A__ISNAT(s(x0))) A__ISNATLIST(cons(s(0), x1)) -> c29(A__U51(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATLIST(cons(s(length(z0)), x1)) -> c29(A__U51(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATLIST(cons(s(s(z0)), x1)) -> c29(A__U51(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) K tuples:none Defined Rule Symbols: a__zeros, a__U11_1, a__U21_1, a__U31_1, a__U41_2, a__U42_1, a__U51_2, a__U52_1, a__U61_3, a__U62_2, a__isNat_1, a__isNatIList_1, a__isNatList_1, a__length_1, mark_1 Defined Pair Symbols: MARK_1, A__U41_2, A__U51_2, A__ISNAT_1, A__ISNATILIST_1, A__U61_3, A__U62_2, A__ISNATLIST_1, A__LENGTH_1 Compound Symbols: c40_1, c43_1, c46_1, c48_1, c51_1, c8_1, c12_1, c21_1, c22_1, c24_1, c35_1, c36_1, c37_1, c39_1, c42_1, c16_1, c18_2, c18_1, c26_1, c29_1, c32_2, c32_1, c38_2, c38_1, c_1, c41_2, c41_1, c1_1, c44_2, c44_1, c45_2, c45_1, c47_2, c47_1, c16_2, c26_2, c29_2 ---------------------------------------- (163) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 1 trailing tuple parts ---------------------------------------- (164) Obligation: Complexity Dependency Tuples Problem Rules: a__zeros -> cons(0, zeros) a__zeros -> zeros a__U11(tt) -> tt a__U11(z0) -> U11(z0) a__U21(tt) -> tt a__U21(z0) -> U21(z0) a__U31(tt) -> tt a__U31(z0) -> U31(z0) a__U41(tt, z0) -> a__U42(a__isNatIList(z0)) a__U41(z0, z1) -> U41(z0, z1) a__U42(tt) -> tt a__U42(z0) -> U42(z0) a__U51(tt, z0) -> a__U52(a__isNatList(z0)) a__U51(z0, z1) -> U51(z0, z1) a__U52(tt) -> tt a__U52(z0) -> U52(z0) a__U61(tt, z0, z1) -> a__U62(a__isNat(z1), z0) a__U61(z0, z1, z2) -> U61(z0, z1, z2) a__U62(tt, z0) -> s(a__length(mark(z0))) a__U62(z0, z1) -> U62(z0, z1) a__isNat(0) -> tt a__isNat(length(z0)) -> a__U11(a__isNatList(z0)) a__isNat(s(z0)) -> a__U21(a__isNat(z0)) a__isNat(z0) -> isNat(z0) a__isNatIList(z0) -> a__U31(a__isNatList(z0)) a__isNatIList(zeros) -> tt a__isNatIList(cons(z0, z1)) -> a__U41(a__isNat(z0), z1) a__isNatIList(z0) -> isNatIList(z0) a__isNatList(nil) -> tt a__isNatList(cons(z0, z1)) -> a__U51(a__isNat(z0), z1) a__isNatList(z0) -> isNatList(z0) a__length(nil) -> 0 a__length(cons(z0, z1)) -> a__U61(a__isNatList(z1), z1, z0) a__length(z0) -> length(z0) mark(zeros) -> a__zeros mark(U11(z0)) -> a__U11(mark(z0)) mark(U21(z0)) -> a__U21(mark(z0)) mark(U31(z0)) -> a__U31(mark(z0)) mark(U41(z0, z1)) -> a__U41(mark(z0), z1) mark(U42(z0)) -> a__U42(mark(z0)) mark(isNatIList(z0)) -> a__isNatIList(z0) mark(U51(z0, z1)) -> a__U51(mark(z0), z1) mark(U52(z0)) -> a__U52(mark(z0)) mark(isNatList(z0)) -> a__isNatList(z0) mark(U61(z0, z1, z2)) -> a__U61(mark(z0), z1, z2) mark(U62(z0, z1)) -> a__U62(mark(z0), z1) mark(isNat(z0)) -> a__isNat(z0) mark(length(z0)) -> a__length(mark(z0)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(0) -> 0 mark(tt) -> tt mark(s(z0)) -> s(mark(z0)) mark(nil) -> nil Tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) A__U62(tt, isNatList(cons(z0, z1))) -> c18(A__LENGTH(a__U51(a__isNat(z0), z1)), MARK(isNatList(cons(z0, z1)))) A__U62(tt, isNatList(nil)) -> c18(MARK(isNatList(nil))) A__U62(tt, isNatList(z0)) -> c18(MARK(isNatList(z0))) A__U62(tt, U61(zeros, x1, x2)) -> c18(A__LENGTH(a__U61(a__zeros, x1, x2)), MARK(U61(zeros, x1, x2))) A__U62(tt, U61(U11(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U11(mark(z0)), x1, x2)), MARK(U61(U11(z0), x1, x2))) A__U62(tt, U61(U21(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U21(mark(z0)), x1, x2)), MARK(U61(U21(z0), x1, x2))) A__U62(tt, U61(U31(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U31(mark(z0)), x1, x2)), MARK(U61(U31(z0), x1, x2))) A__U62(tt, U61(U41(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U41(mark(z0), z1), x1, x2)), MARK(U61(U41(z0, z1), x1, x2))) A__U62(tt, U61(U42(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U42(mark(z0)), x1, x2)), MARK(U61(U42(z0), x1, x2))) A__U62(tt, U61(isNatIList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatIList(z0), x1, x2)), MARK(U61(isNatIList(z0), x1, x2))) A__U62(tt, U61(U51(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U51(mark(z0), z1), x1, x2)), MARK(U61(U51(z0, z1), x1, x2))) A__U62(tt, U61(U52(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U52(mark(z0)), x1, x2)), MARK(U61(U52(z0), x1, x2))) A__U62(tt, U61(isNatList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatList(z0), x1, x2)), MARK(U61(isNatList(z0), x1, x2))) A__U62(tt, U61(U61(z0, z1, z2), x1, x2)) -> c18(A__LENGTH(a__U61(a__U61(mark(z0), z1, z2), x1, x2)), MARK(U61(U61(z0, z1, z2), x1, x2))) A__U62(tt, U61(U62(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U62(mark(z0), z1), x1, x2)), MARK(U61(U62(z0, z1), x1, x2))) A__U62(tt, U61(isNat(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNat(z0), x1, x2)), MARK(U61(isNat(z0), x1, x2))) A__U62(tt, U61(length(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__length(mark(z0)), x1, x2)), MARK(U61(length(z0), x1, x2))) A__U62(tt, U61(cons(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(cons(mark(z0), z1), x1, x2)), MARK(U61(cons(z0, z1), x1, x2))) A__U62(tt, U61(tt, x1, x2)) -> c18(A__LENGTH(a__U61(tt, x1, x2)), MARK(U61(tt, x1, x2))) A__U62(tt, U61(s(z0), x1, x2)) -> c18(A__LENGTH(a__U61(s(mark(z0)), x1, x2)), MARK(U61(s(z0), x1, x2))) A__U62(tt, U61(x0, z1, z2)) -> c18(MARK(U61(x0, z1, z2))) A__U62(tt, U61(0, x1, x2)) -> c18(A__LENGTH(a__U61(0, x1, x2))) A__U62(tt, U61(nil, x1, x2)) -> c18(A__LENGTH(a__U61(nil, x1, x2))) A__U62(tt, U62(zeros, x1)) -> c18(A__LENGTH(a__U62(a__zeros, x1)), MARK(U62(zeros, x1))) A__U62(tt, U62(U11(z0), x1)) -> c18(A__LENGTH(a__U62(a__U11(mark(z0)), x1)), MARK(U62(U11(z0), x1))) A__U62(tt, U62(U21(z0), x1)) -> c18(A__LENGTH(a__U62(a__U21(mark(z0)), x1)), MARK(U62(U21(z0), x1))) A__U62(tt, U62(U31(z0), x1)) -> c18(A__LENGTH(a__U62(a__U31(mark(z0)), x1)), MARK(U62(U31(z0), x1))) A__U62(tt, U62(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U41(mark(z0), z1), x1)), MARK(U62(U41(z0, z1), x1))) A__U62(tt, U62(U42(z0), x1)) -> c18(A__LENGTH(a__U62(a__U42(mark(z0)), x1)), MARK(U62(U42(z0), x1))) A__U62(tt, U62(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatIList(z0), x1)), MARK(U62(isNatIList(z0), x1))) A__U62(tt, U62(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U51(mark(z0), z1), x1)), MARK(U62(U51(z0, z1), x1))) A__U62(tt, U62(U52(z0), x1)) -> c18(A__LENGTH(a__U62(a__U52(mark(z0)), x1)), MARK(U62(U52(z0), x1))) A__U62(tt, U62(isNatList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatList(z0), x1)), MARK(U62(isNatList(z0), x1))) A__U62(tt, U62(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U62(a__U61(mark(z0), z1, z2), x1)), MARK(U62(U61(z0, z1, z2), x1))) A__U62(tt, U62(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U62(mark(z0), z1), x1)), MARK(U62(U62(z0, z1), x1))) A__U62(tt, U62(isNat(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNat(z0), x1)), MARK(U62(isNat(z0), x1))) A__U62(tt, U62(length(z0), x1)) -> c18(A__LENGTH(a__U62(a__length(mark(z0)), x1)), MARK(U62(length(z0), x1))) A__U62(tt, U62(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U62(cons(mark(z0), z1), x1)), MARK(U62(cons(z0, z1), x1))) A__U62(tt, U62(tt, x1)) -> c18(A__LENGTH(a__U62(tt, x1)), MARK(U62(tt, x1))) A__U62(tt, U62(s(z0), x1)) -> c18(A__LENGTH(a__U62(s(mark(z0)), x1)), MARK(U62(s(z0), x1))) A__U62(tt, U62(x0, z1)) -> c18(MARK(U62(x0, z1))) A__U62(tt, U62(0, x1)) -> c18(A__LENGTH(a__U62(0, x1))) A__U62(tt, U62(nil, x1)) -> c18(A__LENGTH(a__U62(nil, x1))) A__U62(tt, isNat(length(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(isNat(length(z0)))) A__U62(tt, isNat(s(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(isNat(s(z0)))) A__U62(tt, isNat(0)) -> c18(MARK(isNat(0))) A__U62(tt, isNat(z0)) -> c18(MARK(isNat(z0))) A__U62(tt, length(zeros)) -> c18(A__LENGTH(a__length(a__zeros)), MARK(length(zeros))) A__U62(tt, length(U11(z0))) -> c18(A__LENGTH(a__length(a__U11(mark(z0)))), MARK(length(U11(z0)))) A__U62(tt, length(U21(z0))) -> c18(A__LENGTH(a__length(a__U21(mark(z0)))), MARK(length(U21(z0)))) A__U62(tt, length(U31(z0))) -> c18(A__LENGTH(a__length(a__U31(mark(z0)))), MARK(length(U31(z0)))) A__U62(tt, length(U41(z0, z1))) -> c18(A__LENGTH(a__length(a__U41(mark(z0), z1))), MARK(length(U41(z0, z1)))) A__U62(tt, length(U42(z0))) -> c18(A__LENGTH(a__length(a__U42(mark(z0)))), MARK(length(U42(z0)))) A__U62(tt, length(isNatIList(z0))) -> c18(A__LENGTH(a__length(a__isNatIList(z0))), MARK(length(isNatIList(z0)))) A__U62(tt, length(U51(z0, z1))) -> c18(A__LENGTH(a__length(a__U51(mark(z0), z1))), MARK(length(U51(z0, z1)))) A__U62(tt, length(U52(z0))) -> c18(A__LENGTH(a__length(a__U52(mark(z0)))), MARK(length(U52(z0)))) A__U62(tt, length(isNatList(z0))) -> c18(A__LENGTH(a__length(a__isNatList(z0))), MARK(length(isNatList(z0)))) A__U62(tt, length(U61(z0, z1, z2))) -> c18(A__LENGTH(a__length(a__U61(mark(z0), z1, z2))), MARK(length(U61(z0, z1, z2)))) A__U62(tt, length(U62(z0, z1))) -> c18(A__LENGTH(a__length(a__U62(mark(z0), z1))), MARK(length(U62(z0, z1)))) A__U62(tt, length(isNat(z0))) -> c18(A__LENGTH(a__length(a__isNat(z0))), MARK(length(isNat(z0)))) A__U62(tt, length(length(z0))) -> c18(A__LENGTH(a__length(a__length(mark(z0)))), MARK(length(length(z0)))) A__U62(tt, length(cons(z0, z1))) -> c18(A__LENGTH(a__length(cons(mark(z0), z1))), MARK(length(cons(z0, z1)))) A__U62(tt, length(s(z0))) -> c18(A__LENGTH(a__length(s(mark(z0)))), MARK(length(s(z0)))) A__U62(tt, length(x0)) -> c18(MARK(length(x0))) A__U62(tt, length(0)) -> c18(A__LENGTH(a__length(0))) A__U62(tt, length(tt)) -> c18(A__LENGTH(a__length(tt))) A__U62(tt, length(nil)) -> c18(A__LENGTH(a__length(nil))) A__U62(tt, zeros) -> c18(A__LENGTH(cons(0, zeros))) A__ISNATILIST(cons(length(nil), x1)) -> c26(A__U41(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATILIST(cons(length(cons(z0, z1)), x1)) -> c26(A__U41(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(length(x0), x1)) -> c26(A__ISNAT(length(x0))) A__ISNATILIST(cons(s(0), x1)) -> c26(A__U41(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATILIST(cons(s(length(z0)), x1)) -> c26(A__U41(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATILIST(cons(s(s(z0)), x1)) -> c26(A__U41(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(s(x0), x1)) -> c26(A__ISNAT(s(x0))) A__ISNATLIST(cons(length(nil), x1)) -> c29(A__U51(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATLIST(cons(length(cons(z0, z1)), x1)) -> c29(A__U51(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(length(x0), x1)) -> c29(A__ISNAT(length(x0))) A__ISNATLIST(cons(s(0), x1)) -> c29(A__U51(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATLIST(cons(s(length(z0)), x1)) -> c29(A__U51(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATLIST(cons(s(s(z0)), x1)) -> c29(A__U51(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(s(x0), x1)) -> c29(A__ISNAT(s(x0))) S tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) A__U62(tt, isNatList(cons(z0, z1))) -> c18(A__LENGTH(a__U51(a__isNat(z0), z1)), MARK(isNatList(cons(z0, z1)))) A__U62(tt, isNatList(nil)) -> c18(MARK(isNatList(nil))) A__U62(tt, isNatList(z0)) -> c18(MARK(isNatList(z0))) A__U62(tt, U61(zeros, x1, x2)) -> c18(A__LENGTH(a__U61(a__zeros, x1, x2)), MARK(U61(zeros, x1, x2))) A__U62(tt, U61(U11(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U11(mark(z0)), x1, x2)), MARK(U61(U11(z0), x1, x2))) A__U62(tt, U61(U21(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U21(mark(z0)), x1, x2)), MARK(U61(U21(z0), x1, x2))) A__U62(tt, U61(U31(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U31(mark(z0)), x1, x2)), MARK(U61(U31(z0), x1, x2))) A__U62(tt, U61(U41(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U41(mark(z0), z1), x1, x2)), MARK(U61(U41(z0, z1), x1, x2))) A__U62(tt, U61(U42(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U42(mark(z0)), x1, x2)), MARK(U61(U42(z0), x1, x2))) A__U62(tt, U61(isNatIList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatIList(z0), x1, x2)), MARK(U61(isNatIList(z0), x1, x2))) A__U62(tt, U61(U51(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U51(mark(z0), z1), x1, x2)), MARK(U61(U51(z0, z1), x1, x2))) A__U62(tt, U61(U52(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U52(mark(z0)), x1, x2)), MARK(U61(U52(z0), x1, x2))) A__U62(tt, U61(isNatList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatList(z0), x1, x2)), MARK(U61(isNatList(z0), x1, x2))) A__U62(tt, U61(U61(z0, z1, z2), x1, x2)) -> c18(A__LENGTH(a__U61(a__U61(mark(z0), z1, z2), x1, x2)), MARK(U61(U61(z0, z1, z2), x1, x2))) A__U62(tt, U61(U62(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U62(mark(z0), z1), x1, x2)), MARK(U61(U62(z0, z1), x1, x2))) A__U62(tt, U61(isNat(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNat(z0), x1, x2)), MARK(U61(isNat(z0), x1, x2))) A__U62(tt, U61(length(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__length(mark(z0)), x1, x2)), MARK(U61(length(z0), x1, x2))) A__U62(tt, U61(cons(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(cons(mark(z0), z1), x1, x2)), MARK(U61(cons(z0, z1), x1, x2))) A__U62(tt, U61(tt, x1, x2)) -> c18(A__LENGTH(a__U61(tt, x1, x2)), MARK(U61(tt, x1, x2))) A__U62(tt, U61(s(z0), x1, x2)) -> c18(A__LENGTH(a__U61(s(mark(z0)), x1, x2)), MARK(U61(s(z0), x1, x2))) A__U62(tt, U61(x0, z1, z2)) -> c18(MARK(U61(x0, z1, z2))) A__U62(tt, U61(0, x1, x2)) -> c18(A__LENGTH(a__U61(0, x1, x2))) A__U62(tt, U61(nil, x1, x2)) -> c18(A__LENGTH(a__U61(nil, x1, x2))) A__U62(tt, U62(zeros, x1)) -> c18(A__LENGTH(a__U62(a__zeros, x1)), MARK(U62(zeros, x1))) A__U62(tt, U62(U11(z0), x1)) -> c18(A__LENGTH(a__U62(a__U11(mark(z0)), x1)), MARK(U62(U11(z0), x1))) A__U62(tt, U62(U21(z0), x1)) -> c18(A__LENGTH(a__U62(a__U21(mark(z0)), x1)), MARK(U62(U21(z0), x1))) A__U62(tt, U62(U31(z0), x1)) -> c18(A__LENGTH(a__U62(a__U31(mark(z0)), x1)), MARK(U62(U31(z0), x1))) A__U62(tt, U62(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U41(mark(z0), z1), x1)), MARK(U62(U41(z0, z1), x1))) A__U62(tt, U62(U42(z0), x1)) -> c18(A__LENGTH(a__U62(a__U42(mark(z0)), x1)), MARK(U62(U42(z0), x1))) A__U62(tt, U62(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatIList(z0), x1)), MARK(U62(isNatIList(z0), x1))) A__U62(tt, U62(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U51(mark(z0), z1), x1)), MARK(U62(U51(z0, z1), x1))) A__U62(tt, U62(U52(z0), x1)) -> c18(A__LENGTH(a__U62(a__U52(mark(z0)), x1)), MARK(U62(U52(z0), x1))) A__U62(tt, U62(isNatList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatList(z0), x1)), MARK(U62(isNatList(z0), x1))) A__U62(tt, U62(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U62(a__U61(mark(z0), z1, z2), x1)), MARK(U62(U61(z0, z1, z2), x1))) A__U62(tt, U62(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U62(mark(z0), z1), x1)), MARK(U62(U62(z0, z1), x1))) A__U62(tt, U62(isNat(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNat(z0), x1)), MARK(U62(isNat(z0), x1))) A__U62(tt, U62(length(z0), x1)) -> c18(A__LENGTH(a__U62(a__length(mark(z0)), x1)), MARK(U62(length(z0), x1))) A__U62(tt, U62(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U62(cons(mark(z0), z1), x1)), MARK(U62(cons(z0, z1), x1))) A__U62(tt, U62(tt, x1)) -> c18(A__LENGTH(a__U62(tt, x1)), MARK(U62(tt, x1))) A__U62(tt, U62(s(z0), x1)) -> c18(A__LENGTH(a__U62(s(mark(z0)), x1)), MARK(U62(s(z0), x1))) A__U62(tt, U62(x0, z1)) -> c18(MARK(U62(x0, z1))) A__U62(tt, U62(0, x1)) -> c18(A__LENGTH(a__U62(0, x1))) A__U62(tt, U62(nil, x1)) -> c18(A__LENGTH(a__U62(nil, x1))) A__U62(tt, isNat(length(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(isNat(length(z0)))) A__U62(tt, isNat(s(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(isNat(s(z0)))) A__U62(tt, isNat(0)) -> c18(MARK(isNat(0))) A__U62(tt, isNat(z0)) -> c18(MARK(isNat(z0))) A__U62(tt, length(zeros)) -> c18(A__LENGTH(a__length(a__zeros)), MARK(length(zeros))) A__U62(tt, length(U11(z0))) -> c18(A__LENGTH(a__length(a__U11(mark(z0)))), MARK(length(U11(z0)))) A__U62(tt, length(U21(z0))) -> c18(A__LENGTH(a__length(a__U21(mark(z0)))), MARK(length(U21(z0)))) A__U62(tt, length(U31(z0))) -> c18(A__LENGTH(a__length(a__U31(mark(z0)))), MARK(length(U31(z0)))) A__U62(tt, length(U41(z0, z1))) -> c18(A__LENGTH(a__length(a__U41(mark(z0), z1))), MARK(length(U41(z0, z1)))) A__U62(tt, length(U42(z0))) -> c18(A__LENGTH(a__length(a__U42(mark(z0)))), MARK(length(U42(z0)))) A__U62(tt, length(isNatIList(z0))) -> c18(A__LENGTH(a__length(a__isNatIList(z0))), MARK(length(isNatIList(z0)))) A__U62(tt, length(U51(z0, z1))) -> c18(A__LENGTH(a__length(a__U51(mark(z0), z1))), MARK(length(U51(z0, z1)))) A__U62(tt, length(U52(z0))) -> c18(A__LENGTH(a__length(a__U52(mark(z0)))), MARK(length(U52(z0)))) A__U62(tt, length(isNatList(z0))) -> c18(A__LENGTH(a__length(a__isNatList(z0))), MARK(length(isNatList(z0)))) A__U62(tt, length(U61(z0, z1, z2))) -> c18(A__LENGTH(a__length(a__U61(mark(z0), z1, z2))), MARK(length(U61(z0, z1, z2)))) A__U62(tt, length(U62(z0, z1))) -> c18(A__LENGTH(a__length(a__U62(mark(z0), z1))), MARK(length(U62(z0, z1)))) A__U62(tt, length(isNat(z0))) -> c18(A__LENGTH(a__length(a__isNat(z0))), MARK(length(isNat(z0)))) A__U62(tt, length(length(z0))) -> c18(A__LENGTH(a__length(a__length(mark(z0)))), MARK(length(length(z0)))) A__U62(tt, length(cons(z0, z1))) -> c18(A__LENGTH(a__length(cons(mark(z0), z1))), MARK(length(cons(z0, z1)))) A__U62(tt, length(s(z0))) -> c18(A__LENGTH(a__length(s(mark(z0)))), MARK(length(s(z0)))) A__U62(tt, length(x0)) -> c18(MARK(length(x0))) A__U62(tt, length(0)) -> c18(A__LENGTH(a__length(0))) A__U62(tt, length(tt)) -> c18(A__LENGTH(a__length(tt))) A__U62(tt, length(nil)) -> c18(A__LENGTH(a__length(nil))) A__U62(tt, zeros) -> c18(A__LENGTH(cons(0, zeros))) A__ISNATILIST(cons(length(nil), x1)) -> c26(A__U41(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATILIST(cons(length(cons(z0, z1)), x1)) -> c26(A__U41(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(length(x0), x1)) -> c26(A__ISNAT(length(x0))) A__ISNATILIST(cons(s(0), x1)) -> c26(A__U41(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATILIST(cons(s(length(z0)), x1)) -> c26(A__U41(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATILIST(cons(s(s(z0)), x1)) -> c26(A__U41(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(s(x0), x1)) -> c26(A__ISNAT(s(x0))) A__ISNATLIST(cons(length(nil), x1)) -> c29(A__U51(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATLIST(cons(length(cons(z0, z1)), x1)) -> c29(A__U51(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(length(x0), x1)) -> c29(A__ISNAT(length(x0))) A__ISNATLIST(cons(s(0), x1)) -> c29(A__U51(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATLIST(cons(s(length(z0)), x1)) -> c29(A__U51(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATLIST(cons(s(s(z0)), x1)) -> c29(A__U51(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(s(x0), x1)) -> c29(A__ISNAT(s(x0))) K tuples:none Defined Rule Symbols: a__zeros, a__U11_1, a__U21_1, a__U31_1, a__U41_2, a__U42_1, a__U51_2, a__U52_1, a__U61_3, a__U62_2, a__isNat_1, a__isNatIList_1, a__isNatList_1, a__length_1, mark_1 Defined Pair Symbols: MARK_1, A__U41_2, A__U51_2, A__ISNAT_1, A__ISNATILIST_1, A__U61_3, A__U62_2, A__ISNATLIST_1, A__LENGTH_1 Compound Symbols: c40_1, c43_1, c46_1, c48_1, c51_1, c8_1, c12_1, c21_1, c22_1, c24_1, c35_1, c36_1, c37_1, c39_1, c42_1, c16_1, c18_2, c18_1, c26_1, c29_1, c32_2, c32_1, c38_2, c38_1, c_1, c41_2, c41_1, c1_1, c44_2, c44_1, c45_2, c45_1, c47_2, c47_1, c16_2, c26_2, c29_2 ---------------------------------------- (165) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace A__LENGTH(cons(x0, cons(z0, z1))) -> c32(A__U61(a__U51(a__isNat(z0), z1), cons(z0, z1), x0), A__ISNATLIST(cons(z0, z1))) by A__LENGTH(cons(x0, cons(x1, z1))) -> c32(A__U61(U51(a__isNat(x1), z1), cons(x1, z1), x0), A__ISNATLIST(cons(x1, z1))) A__LENGTH(cons(x0, cons(0, x2))) -> c32(A__U61(a__U51(tt, x2), cons(0, x2), x0), A__ISNATLIST(cons(0, x2))) A__LENGTH(cons(x0, cons(length(z0), x2))) -> c32(A__U61(a__U51(a__U11(a__isNatList(z0)), x2), cons(length(z0), x2), x0), A__ISNATLIST(cons(length(z0), x2))) A__LENGTH(cons(x0, cons(s(z0), x2))) -> c32(A__U61(a__U51(a__U21(a__isNat(z0)), x2), cons(s(z0), x2), x0), A__ISNATLIST(cons(s(z0), x2))) A__LENGTH(cons(x0, cons(z0, x2))) -> c32(A__U61(a__U51(isNat(z0), x2), cons(z0, x2), x0), A__ISNATLIST(cons(z0, x2))) ---------------------------------------- (166) Obligation: Complexity Dependency Tuples Problem Rules: a__zeros -> cons(0, zeros) a__zeros -> zeros a__U11(tt) -> tt a__U11(z0) -> U11(z0) a__U21(tt) -> tt a__U21(z0) -> U21(z0) a__U31(tt) -> tt a__U31(z0) -> U31(z0) a__U41(tt, z0) -> a__U42(a__isNatIList(z0)) a__U41(z0, z1) -> U41(z0, z1) a__U42(tt) -> tt a__U42(z0) -> U42(z0) a__U51(tt, z0) -> a__U52(a__isNatList(z0)) a__U51(z0, z1) -> U51(z0, z1) a__U52(tt) -> tt a__U52(z0) -> U52(z0) a__U61(tt, z0, z1) -> a__U62(a__isNat(z1), z0) a__U61(z0, z1, z2) -> U61(z0, z1, z2) a__U62(tt, z0) -> s(a__length(mark(z0))) a__U62(z0, z1) -> U62(z0, z1) a__isNat(0) -> tt a__isNat(length(z0)) -> a__U11(a__isNatList(z0)) a__isNat(s(z0)) -> a__U21(a__isNat(z0)) a__isNat(z0) -> isNat(z0) a__isNatIList(z0) -> a__U31(a__isNatList(z0)) a__isNatIList(zeros) -> tt a__isNatIList(cons(z0, z1)) -> a__U41(a__isNat(z0), z1) a__isNatIList(z0) -> isNatIList(z0) a__isNatList(nil) -> tt a__isNatList(cons(z0, z1)) -> a__U51(a__isNat(z0), z1) a__isNatList(z0) -> isNatList(z0) a__length(nil) -> 0 a__length(cons(z0, z1)) -> a__U61(a__isNatList(z1), z1, z0) a__length(z0) -> length(z0) mark(zeros) -> a__zeros mark(U11(z0)) -> a__U11(mark(z0)) mark(U21(z0)) -> a__U21(mark(z0)) mark(U31(z0)) -> a__U31(mark(z0)) mark(U41(z0, z1)) -> a__U41(mark(z0), z1) mark(U42(z0)) -> a__U42(mark(z0)) mark(isNatIList(z0)) -> a__isNatIList(z0) mark(U51(z0, z1)) -> a__U51(mark(z0), z1) mark(U52(z0)) -> a__U52(mark(z0)) mark(isNatList(z0)) -> a__isNatList(z0) mark(U61(z0, z1, z2)) -> a__U61(mark(z0), z1, z2) mark(U62(z0, z1)) -> a__U62(mark(z0), z1) mark(isNat(z0)) -> a__isNat(z0) mark(length(z0)) -> a__length(mark(z0)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(0) -> 0 mark(tt) -> tt mark(s(z0)) -> s(mark(z0)) mark(nil) -> nil Tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) A__U62(tt, isNatList(cons(z0, z1))) -> c18(A__LENGTH(a__U51(a__isNat(z0), z1)), MARK(isNatList(cons(z0, z1)))) A__U62(tt, isNatList(nil)) -> c18(MARK(isNatList(nil))) A__U62(tt, isNatList(z0)) -> c18(MARK(isNatList(z0))) A__U62(tt, U61(zeros, x1, x2)) -> c18(A__LENGTH(a__U61(a__zeros, x1, x2)), MARK(U61(zeros, x1, x2))) A__U62(tt, U61(U11(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U11(mark(z0)), x1, x2)), MARK(U61(U11(z0), x1, x2))) A__U62(tt, U61(U21(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U21(mark(z0)), x1, x2)), MARK(U61(U21(z0), x1, x2))) A__U62(tt, U61(U31(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U31(mark(z0)), x1, x2)), MARK(U61(U31(z0), x1, x2))) A__U62(tt, U61(U41(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U41(mark(z0), z1), x1, x2)), MARK(U61(U41(z0, z1), x1, x2))) A__U62(tt, U61(U42(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U42(mark(z0)), x1, x2)), MARK(U61(U42(z0), x1, x2))) A__U62(tt, U61(isNatIList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatIList(z0), x1, x2)), MARK(U61(isNatIList(z0), x1, x2))) A__U62(tt, U61(U51(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U51(mark(z0), z1), x1, x2)), MARK(U61(U51(z0, z1), x1, x2))) A__U62(tt, U61(U52(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U52(mark(z0)), x1, x2)), MARK(U61(U52(z0), x1, x2))) A__U62(tt, U61(isNatList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatList(z0), x1, x2)), MARK(U61(isNatList(z0), x1, x2))) A__U62(tt, U61(U61(z0, z1, z2), x1, x2)) -> c18(A__LENGTH(a__U61(a__U61(mark(z0), z1, z2), x1, x2)), MARK(U61(U61(z0, z1, z2), x1, x2))) A__U62(tt, U61(U62(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U62(mark(z0), z1), x1, x2)), MARK(U61(U62(z0, z1), x1, x2))) A__U62(tt, U61(isNat(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNat(z0), x1, x2)), MARK(U61(isNat(z0), x1, x2))) A__U62(tt, U61(length(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__length(mark(z0)), x1, x2)), MARK(U61(length(z0), x1, x2))) A__U62(tt, U61(cons(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(cons(mark(z0), z1), x1, x2)), MARK(U61(cons(z0, z1), x1, x2))) A__U62(tt, U61(tt, x1, x2)) -> c18(A__LENGTH(a__U61(tt, x1, x2)), MARK(U61(tt, x1, x2))) A__U62(tt, U61(s(z0), x1, x2)) -> c18(A__LENGTH(a__U61(s(mark(z0)), x1, x2)), MARK(U61(s(z0), x1, x2))) A__U62(tt, U61(x0, z1, z2)) -> c18(MARK(U61(x0, z1, z2))) A__U62(tt, U61(0, x1, x2)) -> c18(A__LENGTH(a__U61(0, x1, x2))) A__U62(tt, U61(nil, x1, x2)) -> c18(A__LENGTH(a__U61(nil, x1, x2))) A__U62(tt, U62(zeros, x1)) -> c18(A__LENGTH(a__U62(a__zeros, x1)), MARK(U62(zeros, x1))) A__U62(tt, U62(U11(z0), x1)) -> c18(A__LENGTH(a__U62(a__U11(mark(z0)), x1)), MARK(U62(U11(z0), x1))) A__U62(tt, U62(U21(z0), x1)) -> c18(A__LENGTH(a__U62(a__U21(mark(z0)), x1)), MARK(U62(U21(z0), x1))) A__U62(tt, U62(U31(z0), x1)) -> c18(A__LENGTH(a__U62(a__U31(mark(z0)), x1)), MARK(U62(U31(z0), x1))) A__U62(tt, U62(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U41(mark(z0), z1), x1)), MARK(U62(U41(z0, z1), x1))) A__U62(tt, U62(U42(z0), x1)) -> c18(A__LENGTH(a__U62(a__U42(mark(z0)), x1)), MARK(U62(U42(z0), x1))) A__U62(tt, U62(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatIList(z0), x1)), MARK(U62(isNatIList(z0), x1))) A__U62(tt, U62(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U51(mark(z0), z1), x1)), MARK(U62(U51(z0, z1), x1))) A__U62(tt, U62(U52(z0), x1)) -> c18(A__LENGTH(a__U62(a__U52(mark(z0)), x1)), MARK(U62(U52(z0), x1))) A__U62(tt, U62(isNatList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatList(z0), x1)), MARK(U62(isNatList(z0), x1))) A__U62(tt, U62(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U62(a__U61(mark(z0), z1, z2), x1)), MARK(U62(U61(z0, z1, z2), x1))) A__U62(tt, U62(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U62(mark(z0), z1), x1)), MARK(U62(U62(z0, z1), x1))) A__U62(tt, U62(isNat(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNat(z0), x1)), MARK(U62(isNat(z0), x1))) A__U62(tt, U62(length(z0), x1)) -> c18(A__LENGTH(a__U62(a__length(mark(z0)), x1)), MARK(U62(length(z0), x1))) A__U62(tt, U62(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U62(cons(mark(z0), z1), x1)), MARK(U62(cons(z0, z1), x1))) A__U62(tt, U62(tt, x1)) -> c18(A__LENGTH(a__U62(tt, x1)), MARK(U62(tt, x1))) A__U62(tt, U62(s(z0), x1)) -> c18(A__LENGTH(a__U62(s(mark(z0)), x1)), MARK(U62(s(z0), x1))) A__U62(tt, U62(x0, z1)) -> c18(MARK(U62(x0, z1))) A__U62(tt, U62(0, x1)) -> c18(A__LENGTH(a__U62(0, x1))) A__U62(tt, U62(nil, x1)) -> c18(A__LENGTH(a__U62(nil, x1))) A__U62(tt, isNat(length(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(isNat(length(z0)))) A__U62(tt, isNat(s(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(isNat(s(z0)))) A__U62(tt, isNat(0)) -> c18(MARK(isNat(0))) A__U62(tt, isNat(z0)) -> c18(MARK(isNat(z0))) A__U62(tt, length(zeros)) -> c18(A__LENGTH(a__length(a__zeros)), MARK(length(zeros))) A__U62(tt, length(U11(z0))) -> c18(A__LENGTH(a__length(a__U11(mark(z0)))), MARK(length(U11(z0)))) A__U62(tt, length(U21(z0))) -> c18(A__LENGTH(a__length(a__U21(mark(z0)))), MARK(length(U21(z0)))) A__U62(tt, length(U31(z0))) -> c18(A__LENGTH(a__length(a__U31(mark(z0)))), MARK(length(U31(z0)))) A__U62(tt, length(U41(z0, z1))) -> c18(A__LENGTH(a__length(a__U41(mark(z0), z1))), MARK(length(U41(z0, z1)))) A__U62(tt, length(U42(z0))) -> c18(A__LENGTH(a__length(a__U42(mark(z0)))), MARK(length(U42(z0)))) A__U62(tt, length(isNatIList(z0))) -> c18(A__LENGTH(a__length(a__isNatIList(z0))), MARK(length(isNatIList(z0)))) A__U62(tt, length(U51(z0, z1))) -> c18(A__LENGTH(a__length(a__U51(mark(z0), z1))), MARK(length(U51(z0, z1)))) A__U62(tt, length(U52(z0))) -> c18(A__LENGTH(a__length(a__U52(mark(z0)))), MARK(length(U52(z0)))) A__U62(tt, length(isNatList(z0))) -> c18(A__LENGTH(a__length(a__isNatList(z0))), MARK(length(isNatList(z0)))) A__U62(tt, length(U61(z0, z1, z2))) -> c18(A__LENGTH(a__length(a__U61(mark(z0), z1, z2))), MARK(length(U61(z0, z1, z2)))) A__U62(tt, length(U62(z0, z1))) -> c18(A__LENGTH(a__length(a__U62(mark(z0), z1))), MARK(length(U62(z0, z1)))) A__U62(tt, length(isNat(z0))) -> c18(A__LENGTH(a__length(a__isNat(z0))), MARK(length(isNat(z0)))) A__U62(tt, length(length(z0))) -> c18(A__LENGTH(a__length(a__length(mark(z0)))), MARK(length(length(z0)))) A__U62(tt, length(cons(z0, z1))) -> c18(A__LENGTH(a__length(cons(mark(z0), z1))), MARK(length(cons(z0, z1)))) A__U62(tt, length(s(z0))) -> c18(A__LENGTH(a__length(s(mark(z0)))), MARK(length(s(z0)))) A__U62(tt, length(x0)) -> c18(MARK(length(x0))) A__U62(tt, length(0)) -> c18(A__LENGTH(a__length(0))) A__U62(tt, length(tt)) -> c18(A__LENGTH(a__length(tt))) A__U62(tt, length(nil)) -> c18(A__LENGTH(a__length(nil))) A__U62(tt, zeros) -> c18(A__LENGTH(cons(0, zeros))) A__ISNATILIST(cons(length(nil), x1)) -> c26(A__U41(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATILIST(cons(length(cons(z0, z1)), x1)) -> c26(A__U41(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(length(x0), x1)) -> c26(A__ISNAT(length(x0))) A__ISNATILIST(cons(s(0), x1)) -> c26(A__U41(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATILIST(cons(s(length(z0)), x1)) -> c26(A__U41(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATILIST(cons(s(s(z0)), x1)) -> c26(A__U41(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(s(x0), x1)) -> c26(A__ISNAT(s(x0))) A__ISNATLIST(cons(length(nil), x1)) -> c29(A__U51(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATLIST(cons(length(cons(z0, z1)), x1)) -> c29(A__U51(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(length(x0), x1)) -> c29(A__ISNAT(length(x0))) A__ISNATLIST(cons(s(0), x1)) -> c29(A__U51(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATLIST(cons(s(length(z0)), x1)) -> c29(A__U51(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATLIST(cons(s(s(z0)), x1)) -> c29(A__U51(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(s(x0), x1)) -> c29(A__ISNAT(s(x0))) A__LENGTH(cons(x0, cons(x1, z1))) -> c32(A__U61(U51(a__isNat(x1), z1), cons(x1, z1), x0), A__ISNATLIST(cons(x1, z1))) A__LENGTH(cons(x0, cons(0, x2))) -> c32(A__U61(a__U51(tt, x2), cons(0, x2), x0), A__ISNATLIST(cons(0, x2))) A__LENGTH(cons(x0, cons(length(z0), x2))) -> c32(A__U61(a__U51(a__U11(a__isNatList(z0)), x2), cons(length(z0), x2), x0), A__ISNATLIST(cons(length(z0), x2))) A__LENGTH(cons(x0, cons(s(z0), x2))) -> c32(A__U61(a__U51(a__U21(a__isNat(z0)), x2), cons(s(z0), x2), x0), A__ISNATLIST(cons(s(z0), x2))) A__LENGTH(cons(x0, cons(z0, x2))) -> c32(A__U61(a__U51(isNat(z0), x2), cons(z0, x2), x0), A__ISNATLIST(cons(z0, x2))) S tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) A__U62(tt, isNatList(cons(z0, z1))) -> c18(A__LENGTH(a__U51(a__isNat(z0), z1)), MARK(isNatList(cons(z0, z1)))) A__U62(tt, isNatList(nil)) -> c18(MARK(isNatList(nil))) A__U62(tt, isNatList(z0)) -> c18(MARK(isNatList(z0))) A__U62(tt, U61(zeros, x1, x2)) -> c18(A__LENGTH(a__U61(a__zeros, x1, x2)), MARK(U61(zeros, x1, x2))) A__U62(tt, U61(U11(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U11(mark(z0)), x1, x2)), MARK(U61(U11(z0), x1, x2))) A__U62(tt, U61(U21(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U21(mark(z0)), x1, x2)), MARK(U61(U21(z0), x1, x2))) A__U62(tt, U61(U31(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U31(mark(z0)), x1, x2)), MARK(U61(U31(z0), x1, x2))) A__U62(tt, U61(U41(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U41(mark(z0), z1), x1, x2)), MARK(U61(U41(z0, z1), x1, x2))) A__U62(tt, U61(U42(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U42(mark(z0)), x1, x2)), MARK(U61(U42(z0), x1, x2))) A__U62(tt, U61(isNatIList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatIList(z0), x1, x2)), MARK(U61(isNatIList(z0), x1, x2))) A__U62(tt, U61(U51(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U51(mark(z0), z1), x1, x2)), MARK(U61(U51(z0, z1), x1, x2))) A__U62(tt, U61(U52(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U52(mark(z0)), x1, x2)), MARK(U61(U52(z0), x1, x2))) A__U62(tt, U61(isNatList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatList(z0), x1, x2)), MARK(U61(isNatList(z0), x1, x2))) A__U62(tt, U61(U61(z0, z1, z2), x1, x2)) -> c18(A__LENGTH(a__U61(a__U61(mark(z0), z1, z2), x1, x2)), MARK(U61(U61(z0, z1, z2), x1, x2))) A__U62(tt, U61(U62(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U62(mark(z0), z1), x1, x2)), MARK(U61(U62(z0, z1), x1, x2))) A__U62(tt, U61(isNat(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNat(z0), x1, x2)), MARK(U61(isNat(z0), x1, x2))) A__U62(tt, U61(length(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__length(mark(z0)), x1, x2)), MARK(U61(length(z0), x1, x2))) A__U62(tt, U61(cons(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(cons(mark(z0), z1), x1, x2)), MARK(U61(cons(z0, z1), x1, x2))) A__U62(tt, U61(tt, x1, x2)) -> c18(A__LENGTH(a__U61(tt, x1, x2)), MARK(U61(tt, x1, x2))) A__U62(tt, U61(s(z0), x1, x2)) -> c18(A__LENGTH(a__U61(s(mark(z0)), x1, x2)), MARK(U61(s(z0), x1, x2))) A__U62(tt, U61(x0, z1, z2)) -> c18(MARK(U61(x0, z1, z2))) A__U62(tt, U61(0, x1, x2)) -> c18(A__LENGTH(a__U61(0, x1, x2))) A__U62(tt, U61(nil, x1, x2)) -> c18(A__LENGTH(a__U61(nil, x1, x2))) A__U62(tt, U62(zeros, x1)) -> c18(A__LENGTH(a__U62(a__zeros, x1)), MARK(U62(zeros, x1))) A__U62(tt, U62(U11(z0), x1)) -> c18(A__LENGTH(a__U62(a__U11(mark(z0)), x1)), MARK(U62(U11(z0), x1))) A__U62(tt, U62(U21(z0), x1)) -> c18(A__LENGTH(a__U62(a__U21(mark(z0)), x1)), MARK(U62(U21(z0), x1))) A__U62(tt, U62(U31(z0), x1)) -> c18(A__LENGTH(a__U62(a__U31(mark(z0)), x1)), MARK(U62(U31(z0), x1))) A__U62(tt, U62(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U41(mark(z0), z1), x1)), MARK(U62(U41(z0, z1), x1))) A__U62(tt, U62(U42(z0), x1)) -> c18(A__LENGTH(a__U62(a__U42(mark(z0)), x1)), MARK(U62(U42(z0), x1))) A__U62(tt, U62(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatIList(z0), x1)), MARK(U62(isNatIList(z0), x1))) A__U62(tt, U62(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U51(mark(z0), z1), x1)), MARK(U62(U51(z0, z1), x1))) A__U62(tt, U62(U52(z0), x1)) -> c18(A__LENGTH(a__U62(a__U52(mark(z0)), x1)), MARK(U62(U52(z0), x1))) A__U62(tt, U62(isNatList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatList(z0), x1)), MARK(U62(isNatList(z0), x1))) A__U62(tt, U62(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U62(a__U61(mark(z0), z1, z2), x1)), MARK(U62(U61(z0, z1, z2), x1))) A__U62(tt, U62(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U62(mark(z0), z1), x1)), MARK(U62(U62(z0, z1), x1))) A__U62(tt, U62(isNat(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNat(z0), x1)), MARK(U62(isNat(z0), x1))) A__U62(tt, U62(length(z0), x1)) -> c18(A__LENGTH(a__U62(a__length(mark(z0)), x1)), MARK(U62(length(z0), x1))) A__U62(tt, U62(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U62(cons(mark(z0), z1), x1)), MARK(U62(cons(z0, z1), x1))) A__U62(tt, U62(tt, x1)) -> c18(A__LENGTH(a__U62(tt, x1)), MARK(U62(tt, x1))) A__U62(tt, U62(s(z0), x1)) -> c18(A__LENGTH(a__U62(s(mark(z0)), x1)), MARK(U62(s(z0), x1))) A__U62(tt, U62(x0, z1)) -> c18(MARK(U62(x0, z1))) A__U62(tt, U62(0, x1)) -> c18(A__LENGTH(a__U62(0, x1))) A__U62(tt, U62(nil, x1)) -> c18(A__LENGTH(a__U62(nil, x1))) A__U62(tt, isNat(length(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(isNat(length(z0)))) A__U62(tt, isNat(s(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(isNat(s(z0)))) A__U62(tt, isNat(0)) -> c18(MARK(isNat(0))) A__U62(tt, isNat(z0)) -> c18(MARK(isNat(z0))) A__U62(tt, length(zeros)) -> c18(A__LENGTH(a__length(a__zeros)), MARK(length(zeros))) A__U62(tt, length(U11(z0))) -> c18(A__LENGTH(a__length(a__U11(mark(z0)))), MARK(length(U11(z0)))) A__U62(tt, length(U21(z0))) -> c18(A__LENGTH(a__length(a__U21(mark(z0)))), MARK(length(U21(z0)))) A__U62(tt, length(U31(z0))) -> c18(A__LENGTH(a__length(a__U31(mark(z0)))), MARK(length(U31(z0)))) A__U62(tt, length(U41(z0, z1))) -> c18(A__LENGTH(a__length(a__U41(mark(z0), z1))), MARK(length(U41(z0, z1)))) A__U62(tt, length(U42(z0))) -> c18(A__LENGTH(a__length(a__U42(mark(z0)))), MARK(length(U42(z0)))) A__U62(tt, length(isNatIList(z0))) -> c18(A__LENGTH(a__length(a__isNatIList(z0))), MARK(length(isNatIList(z0)))) A__U62(tt, length(U51(z0, z1))) -> c18(A__LENGTH(a__length(a__U51(mark(z0), z1))), MARK(length(U51(z0, z1)))) A__U62(tt, length(U52(z0))) -> c18(A__LENGTH(a__length(a__U52(mark(z0)))), MARK(length(U52(z0)))) A__U62(tt, length(isNatList(z0))) -> c18(A__LENGTH(a__length(a__isNatList(z0))), MARK(length(isNatList(z0)))) A__U62(tt, length(U61(z0, z1, z2))) -> c18(A__LENGTH(a__length(a__U61(mark(z0), z1, z2))), MARK(length(U61(z0, z1, z2)))) A__U62(tt, length(U62(z0, z1))) -> c18(A__LENGTH(a__length(a__U62(mark(z0), z1))), MARK(length(U62(z0, z1)))) A__U62(tt, length(isNat(z0))) -> c18(A__LENGTH(a__length(a__isNat(z0))), MARK(length(isNat(z0)))) A__U62(tt, length(length(z0))) -> c18(A__LENGTH(a__length(a__length(mark(z0)))), MARK(length(length(z0)))) A__U62(tt, length(cons(z0, z1))) -> c18(A__LENGTH(a__length(cons(mark(z0), z1))), MARK(length(cons(z0, z1)))) A__U62(tt, length(s(z0))) -> c18(A__LENGTH(a__length(s(mark(z0)))), MARK(length(s(z0)))) A__U62(tt, length(x0)) -> c18(MARK(length(x0))) A__U62(tt, length(0)) -> c18(A__LENGTH(a__length(0))) A__U62(tt, length(tt)) -> c18(A__LENGTH(a__length(tt))) A__U62(tt, length(nil)) -> c18(A__LENGTH(a__length(nil))) A__U62(tt, zeros) -> c18(A__LENGTH(cons(0, zeros))) A__ISNATILIST(cons(length(nil), x1)) -> c26(A__U41(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATILIST(cons(length(cons(z0, z1)), x1)) -> c26(A__U41(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(length(x0), x1)) -> c26(A__ISNAT(length(x0))) A__ISNATILIST(cons(s(0), x1)) -> c26(A__U41(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATILIST(cons(s(length(z0)), x1)) -> c26(A__U41(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATILIST(cons(s(s(z0)), x1)) -> c26(A__U41(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(s(x0), x1)) -> c26(A__ISNAT(s(x0))) A__ISNATLIST(cons(length(nil), x1)) -> c29(A__U51(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATLIST(cons(length(cons(z0, z1)), x1)) -> c29(A__U51(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(length(x0), x1)) -> c29(A__ISNAT(length(x0))) A__ISNATLIST(cons(s(0), x1)) -> c29(A__U51(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATLIST(cons(s(length(z0)), x1)) -> c29(A__U51(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATLIST(cons(s(s(z0)), x1)) -> c29(A__U51(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(s(x0), x1)) -> c29(A__ISNAT(s(x0))) A__LENGTH(cons(x0, cons(x1, z1))) -> c32(A__U61(U51(a__isNat(x1), z1), cons(x1, z1), x0), A__ISNATLIST(cons(x1, z1))) A__LENGTH(cons(x0, cons(0, x2))) -> c32(A__U61(a__U51(tt, x2), cons(0, x2), x0), A__ISNATLIST(cons(0, x2))) A__LENGTH(cons(x0, cons(length(z0), x2))) -> c32(A__U61(a__U51(a__U11(a__isNatList(z0)), x2), cons(length(z0), x2), x0), A__ISNATLIST(cons(length(z0), x2))) A__LENGTH(cons(x0, cons(s(z0), x2))) -> c32(A__U61(a__U51(a__U21(a__isNat(z0)), x2), cons(s(z0), x2), x0), A__ISNATLIST(cons(s(z0), x2))) A__LENGTH(cons(x0, cons(z0, x2))) -> c32(A__U61(a__U51(isNat(z0), x2), cons(z0, x2), x0), A__ISNATLIST(cons(z0, x2))) K tuples:none Defined Rule Symbols: a__zeros, a__U11_1, a__U21_1, a__U31_1, a__U41_2, a__U42_1, a__U51_2, a__U52_1, a__U61_3, a__U62_2, a__isNat_1, a__isNatIList_1, a__isNatList_1, a__length_1, mark_1 Defined Pair Symbols: MARK_1, A__U41_2, A__U51_2, A__ISNAT_1, A__ISNATILIST_1, A__U61_3, A__U62_2, A__ISNATLIST_1, A__LENGTH_1 Compound Symbols: c40_1, c43_1, c46_1, c48_1, c51_1, c8_1, c12_1, c21_1, c22_1, c24_1, c35_1, c36_1, c37_1, c39_1, c42_1, c16_1, c18_2, c18_1, c26_1, c29_1, c32_1, c38_2, c38_1, c_1, c41_2, c41_1, c1_1, c44_2, c44_1, c45_2, c45_1, c47_2, c47_1, c16_2, c26_2, c29_2, c32_2 ---------------------------------------- (167) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 1 trailing tuple parts ---------------------------------------- (168) Obligation: Complexity Dependency Tuples Problem Rules: a__zeros -> cons(0, zeros) a__zeros -> zeros a__U11(tt) -> tt a__U11(z0) -> U11(z0) a__U21(tt) -> tt a__U21(z0) -> U21(z0) a__U31(tt) -> tt a__U31(z0) -> U31(z0) a__U41(tt, z0) -> a__U42(a__isNatIList(z0)) a__U41(z0, z1) -> U41(z0, z1) a__U42(tt) -> tt a__U42(z0) -> U42(z0) a__U51(tt, z0) -> a__U52(a__isNatList(z0)) a__U51(z0, z1) -> U51(z0, z1) a__U52(tt) -> tt a__U52(z0) -> U52(z0) a__U61(tt, z0, z1) -> a__U62(a__isNat(z1), z0) a__U61(z0, z1, z2) -> U61(z0, z1, z2) a__U62(tt, z0) -> s(a__length(mark(z0))) a__U62(z0, z1) -> U62(z0, z1) a__isNat(0) -> tt a__isNat(length(z0)) -> a__U11(a__isNatList(z0)) a__isNat(s(z0)) -> a__U21(a__isNat(z0)) a__isNat(z0) -> isNat(z0) a__isNatIList(z0) -> a__U31(a__isNatList(z0)) a__isNatIList(zeros) -> tt a__isNatIList(cons(z0, z1)) -> a__U41(a__isNat(z0), z1) a__isNatIList(z0) -> isNatIList(z0) a__isNatList(nil) -> tt a__isNatList(cons(z0, z1)) -> a__U51(a__isNat(z0), z1) a__isNatList(z0) -> isNatList(z0) a__length(nil) -> 0 a__length(cons(z0, z1)) -> a__U61(a__isNatList(z1), z1, z0) a__length(z0) -> length(z0) mark(zeros) -> a__zeros mark(U11(z0)) -> a__U11(mark(z0)) mark(U21(z0)) -> a__U21(mark(z0)) mark(U31(z0)) -> a__U31(mark(z0)) mark(U41(z0, z1)) -> a__U41(mark(z0), z1) mark(U42(z0)) -> a__U42(mark(z0)) mark(isNatIList(z0)) -> a__isNatIList(z0) mark(U51(z0, z1)) -> a__U51(mark(z0), z1) mark(U52(z0)) -> a__U52(mark(z0)) mark(isNatList(z0)) -> a__isNatList(z0) mark(U61(z0, z1, z2)) -> a__U61(mark(z0), z1, z2) mark(U62(z0, z1)) -> a__U62(mark(z0), z1) mark(isNat(z0)) -> a__isNat(z0) mark(length(z0)) -> a__length(mark(z0)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(0) -> 0 mark(tt) -> tt mark(s(z0)) -> s(mark(z0)) mark(nil) -> nil Tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) A__U62(tt, isNatList(cons(z0, z1))) -> c18(A__LENGTH(a__U51(a__isNat(z0), z1)), MARK(isNatList(cons(z0, z1)))) A__U62(tt, isNatList(nil)) -> c18(MARK(isNatList(nil))) A__U62(tt, isNatList(z0)) -> c18(MARK(isNatList(z0))) A__U62(tt, U61(zeros, x1, x2)) -> c18(A__LENGTH(a__U61(a__zeros, x1, x2)), MARK(U61(zeros, x1, x2))) A__U62(tt, U61(U11(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U11(mark(z0)), x1, x2)), MARK(U61(U11(z0), x1, x2))) A__U62(tt, U61(U21(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U21(mark(z0)), x1, x2)), MARK(U61(U21(z0), x1, x2))) A__U62(tt, U61(U31(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U31(mark(z0)), x1, x2)), MARK(U61(U31(z0), x1, x2))) A__U62(tt, U61(U41(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U41(mark(z0), z1), x1, x2)), MARK(U61(U41(z0, z1), x1, x2))) A__U62(tt, U61(U42(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U42(mark(z0)), x1, x2)), MARK(U61(U42(z0), x1, x2))) A__U62(tt, U61(isNatIList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatIList(z0), x1, x2)), MARK(U61(isNatIList(z0), x1, x2))) A__U62(tt, U61(U51(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U51(mark(z0), z1), x1, x2)), MARK(U61(U51(z0, z1), x1, x2))) A__U62(tt, U61(U52(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U52(mark(z0)), x1, x2)), MARK(U61(U52(z0), x1, x2))) A__U62(tt, U61(isNatList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatList(z0), x1, x2)), MARK(U61(isNatList(z0), x1, x2))) A__U62(tt, U61(U61(z0, z1, z2), x1, x2)) -> c18(A__LENGTH(a__U61(a__U61(mark(z0), z1, z2), x1, x2)), MARK(U61(U61(z0, z1, z2), x1, x2))) A__U62(tt, U61(U62(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U62(mark(z0), z1), x1, x2)), MARK(U61(U62(z0, z1), x1, x2))) A__U62(tt, U61(isNat(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNat(z0), x1, x2)), MARK(U61(isNat(z0), x1, x2))) A__U62(tt, U61(length(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__length(mark(z0)), x1, x2)), MARK(U61(length(z0), x1, x2))) A__U62(tt, U61(cons(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(cons(mark(z0), z1), x1, x2)), MARK(U61(cons(z0, z1), x1, x2))) A__U62(tt, U61(tt, x1, x2)) -> c18(A__LENGTH(a__U61(tt, x1, x2)), MARK(U61(tt, x1, x2))) A__U62(tt, U61(s(z0), x1, x2)) -> c18(A__LENGTH(a__U61(s(mark(z0)), x1, x2)), MARK(U61(s(z0), x1, x2))) A__U62(tt, U61(x0, z1, z2)) -> c18(MARK(U61(x0, z1, z2))) A__U62(tt, U61(0, x1, x2)) -> c18(A__LENGTH(a__U61(0, x1, x2))) A__U62(tt, U61(nil, x1, x2)) -> c18(A__LENGTH(a__U61(nil, x1, x2))) A__U62(tt, U62(zeros, x1)) -> c18(A__LENGTH(a__U62(a__zeros, x1)), MARK(U62(zeros, x1))) A__U62(tt, U62(U11(z0), x1)) -> c18(A__LENGTH(a__U62(a__U11(mark(z0)), x1)), MARK(U62(U11(z0), x1))) A__U62(tt, U62(U21(z0), x1)) -> c18(A__LENGTH(a__U62(a__U21(mark(z0)), x1)), MARK(U62(U21(z0), x1))) A__U62(tt, U62(U31(z0), x1)) -> c18(A__LENGTH(a__U62(a__U31(mark(z0)), x1)), MARK(U62(U31(z0), x1))) A__U62(tt, U62(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U41(mark(z0), z1), x1)), MARK(U62(U41(z0, z1), x1))) A__U62(tt, U62(U42(z0), x1)) -> c18(A__LENGTH(a__U62(a__U42(mark(z0)), x1)), MARK(U62(U42(z0), x1))) A__U62(tt, U62(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatIList(z0), x1)), MARK(U62(isNatIList(z0), x1))) A__U62(tt, U62(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U51(mark(z0), z1), x1)), MARK(U62(U51(z0, z1), x1))) A__U62(tt, U62(U52(z0), x1)) -> c18(A__LENGTH(a__U62(a__U52(mark(z0)), x1)), MARK(U62(U52(z0), x1))) A__U62(tt, U62(isNatList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatList(z0), x1)), MARK(U62(isNatList(z0), x1))) A__U62(tt, U62(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U62(a__U61(mark(z0), z1, z2), x1)), MARK(U62(U61(z0, z1, z2), x1))) A__U62(tt, U62(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U62(mark(z0), z1), x1)), MARK(U62(U62(z0, z1), x1))) A__U62(tt, U62(isNat(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNat(z0), x1)), MARK(U62(isNat(z0), x1))) A__U62(tt, U62(length(z0), x1)) -> c18(A__LENGTH(a__U62(a__length(mark(z0)), x1)), MARK(U62(length(z0), x1))) A__U62(tt, U62(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U62(cons(mark(z0), z1), x1)), MARK(U62(cons(z0, z1), x1))) A__U62(tt, U62(tt, x1)) -> c18(A__LENGTH(a__U62(tt, x1)), MARK(U62(tt, x1))) A__U62(tt, U62(s(z0), x1)) -> c18(A__LENGTH(a__U62(s(mark(z0)), x1)), MARK(U62(s(z0), x1))) A__U62(tt, U62(x0, z1)) -> c18(MARK(U62(x0, z1))) A__U62(tt, U62(0, x1)) -> c18(A__LENGTH(a__U62(0, x1))) A__U62(tt, U62(nil, x1)) -> c18(A__LENGTH(a__U62(nil, x1))) A__U62(tt, isNat(length(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(isNat(length(z0)))) A__U62(tt, isNat(s(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(isNat(s(z0)))) A__U62(tt, isNat(0)) -> c18(MARK(isNat(0))) A__U62(tt, isNat(z0)) -> c18(MARK(isNat(z0))) A__U62(tt, length(zeros)) -> c18(A__LENGTH(a__length(a__zeros)), MARK(length(zeros))) A__U62(tt, length(U11(z0))) -> c18(A__LENGTH(a__length(a__U11(mark(z0)))), MARK(length(U11(z0)))) A__U62(tt, length(U21(z0))) -> c18(A__LENGTH(a__length(a__U21(mark(z0)))), MARK(length(U21(z0)))) A__U62(tt, length(U31(z0))) -> c18(A__LENGTH(a__length(a__U31(mark(z0)))), MARK(length(U31(z0)))) A__U62(tt, length(U41(z0, z1))) -> c18(A__LENGTH(a__length(a__U41(mark(z0), z1))), MARK(length(U41(z0, z1)))) A__U62(tt, length(U42(z0))) -> c18(A__LENGTH(a__length(a__U42(mark(z0)))), MARK(length(U42(z0)))) A__U62(tt, length(isNatIList(z0))) -> c18(A__LENGTH(a__length(a__isNatIList(z0))), MARK(length(isNatIList(z0)))) A__U62(tt, length(U51(z0, z1))) -> c18(A__LENGTH(a__length(a__U51(mark(z0), z1))), MARK(length(U51(z0, z1)))) A__U62(tt, length(U52(z0))) -> c18(A__LENGTH(a__length(a__U52(mark(z0)))), MARK(length(U52(z0)))) A__U62(tt, length(isNatList(z0))) -> c18(A__LENGTH(a__length(a__isNatList(z0))), MARK(length(isNatList(z0)))) A__U62(tt, length(U61(z0, z1, z2))) -> c18(A__LENGTH(a__length(a__U61(mark(z0), z1, z2))), MARK(length(U61(z0, z1, z2)))) A__U62(tt, length(U62(z0, z1))) -> c18(A__LENGTH(a__length(a__U62(mark(z0), z1))), MARK(length(U62(z0, z1)))) A__U62(tt, length(isNat(z0))) -> c18(A__LENGTH(a__length(a__isNat(z0))), MARK(length(isNat(z0)))) A__U62(tt, length(length(z0))) -> c18(A__LENGTH(a__length(a__length(mark(z0)))), MARK(length(length(z0)))) A__U62(tt, length(cons(z0, z1))) -> c18(A__LENGTH(a__length(cons(mark(z0), z1))), MARK(length(cons(z0, z1)))) A__U62(tt, length(s(z0))) -> c18(A__LENGTH(a__length(s(mark(z0)))), MARK(length(s(z0)))) A__U62(tt, length(x0)) -> c18(MARK(length(x0))) A__U62(tt, length(0)) -> c18(A__LENGTH(a__length(0))) A__U62(tt, length(tt)) -> c18(A__LENGTH(a__length(tt))) A__U62(tt, length(nil)) -> c18(A__LENGTH(a__length(nil))) A__U62(tt, zeros) -> c18(A__LENGTH(cons(0, zeros))) A__ISNATILIST(cons(length(nil), x1)) -> c26(A__U41(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATILIST(cons(length(cons(z0, z1)), x1)) -> c26(A__U41(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(length(x0), x1)) -> c26(A__ISNAT(length(x0))) A__ISNATILIST(cons(s(0), x1)) -> c26(A__U41(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATILIST(cons(s(length(z0)), x1)) -> c26(A__U41(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATILIST(cons(s(s(z0)), x1)) -> c26(A__U41(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(s(x0), x1)) -> c26(A__ISNAT(s(x0))) A__ISNATLIST(cons(length(nil), x1)) -> c29(A__U51(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATLIST(cons(length(cons(z0, z1)), x1)) -> c29(A__U51(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(length(x0), x1)) -> c29(A__ISNAT(length(x0))) A__ISNATLIST(cons(s(0), x1)) -> c29(A__U51(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATLIST(cons(s(length(z0)), x1)) -> c29(A__U51(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATLIST(cons(s(s(z0)), x1)) -> c29(A__U51(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(s(x0), x1)) -> c29(A__ISNAT(s(x0))) A__LENGTH(cons(x0, cons(0, x2))) -> c32(A__U61(a__U51(tt, x2), cons(0, x2), x0), A__ISNATLIST(cons(0, x2))) A__LENGTH(cons(x0, cons(length(z0), x2))) -> c32(A__U61(a__U51(a__U11(a__isNatList(z0)), x2), cons(length(z0), x2), x0), A__ISNATLIST(cons(length(z0), x2))) A__LENGTH(cons(x0, cons(s(z0), x2))) -> c32(A__U61(a__U51(a__U21(a__isNat(z0)), x2), cons(s(z0), x2), x0), A__ISNATLIST(cons(s(z0), x2))) A__LENGTH(cons(x0, cons(z0, x2))) -> c32(A__U61(a__U51(isNat(z0), x2), cons(z0, x2), x0), A__ISNATLIST(cons(z0, x2))) A__LENGTH(cons(x0, cons(x1, z1))) -> c32(A__ISNATLIST(cons(x1, z1))) S tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) A__U62(tt, isNatList(cons(z0, z1))) -> c18(A__LENGTH(a__U51(a__isNat(z0), z1)), MARK(isNatList(cons(z0, z1)))) A__U62(tt, isNatList(nil)) -> c18(MARK(isNatList(nil))) A__U62(tt, isNatList(z0)) -> c18(MARK(isNatList(z0))) A__U62(tt, U61(zeros, x1, x2)) -> c18(A__LENGTH(a__U61(a__zeros, x1, x2)), MARK(U61(zeros, x1, x2))) A__U62(tt, U61(U11(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U11(mark(z0)), x1, x2)), MARK(U61(U11(z0), x1, x2))) A__U62(tt, U61(U21(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U21(mark(z0)), x1, x2)), MARK(U61(U21(z0), x1, x2))) A__U62(tt, U61(U31(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U31(mark(z0)), x1, x2)), MARK(U61(U31(z0), x1, x2))) A__U62(tt, U61(U41(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U41(mark(z0), z1), x1, x2)), MARK(U61(U41(z0, z1), x1, x2))) A__U62(tt, U61(U42(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U42(mark(z0)), x1, x2)), MARK(U61(U42(z0), x1, x2))) A__U62(tt, U61(isNatIList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatIList(z0), x1, x2)), MARK(U61(isNatIList(z0), x1, x2))) A__U62(tt, U61(U51(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U51(mark(z0), z1), x1, x2)), MARK(U61(U51(z0, z1), x1, x2))) A__U62(tt, U61(U52(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U52(mark(z0)), x1, x2)), MARK(U61(U52(z0), x1, x2))) A__U62(tt, U61(isNatList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatList(z0), x1, x2)), MARK(U61(isNatList(z0), x1, x2))) A__U62(tt, U61(U61(z0, z1, z2), x1, x2)) -> c18(A__LENGTH(a__U61(a__U61(mark(z0), z1, z2), x1, x2)), MARK(U61(U61(z0, z1, z2), x1, x2))) A__U62(tt, U61(U62(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U62(mark(z0), z1), x1, x2)), MARK(U61(U62(z0, z1), x1, x2))) A__U62(tt, U61(isNat(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNat(z0), x1, x2)), MARK(U61(isNat(z0), x1, x2))) A__U62(tt, U61(length(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__length(mark(z0)), x1, x2)), MARK(U61(length(z0), x1, x2))) A__U62(tt, U61(cons(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(cons(mark(z0), z1), x1, x2)), MARK(U61(cons(z0, z1), x1, x2))) A__U62(tt, U61(tt, x1, x2)) -> c18(A__LENGTH(a__U61(tt, x1, x2)), MARK(U61(tt, x1, x2))) A__U62(tt, U61(s(z0), x1, x2)) -> c18(A__LENGTH(a__U61(s(mark(z0)), x1, x2)), MARK(U61(s(z0), x1, x2))) A__U62(tt, U61(x0, z1, z2)) -> c18(MARK(U61(x0, z1, z2))) A__U62(tt, U61(0, x1, x2)) -> c18(A__LENGTH(a__U61(0, x1, x2))) A__U62(tt, U61(nil, x1, x2)) -> c18(A__LENGTH(a__U61(nil, x1, x2))) A__U62(tt, U62(zeros, x1)) -> c18(A__LENGTH(a__U62(a__zeros, x1)), MARK(U62(zeros, x1))) A__U62(tt, U62(U11(z0), x1)) -> c18(A__LENGTH(a__U62(a__U11(mark(z0)), x1)), MARK(U62(U11(z0), x1))) A__U62(tt, U62(U21(z0), x1)) -> c18(A__LENGTH(a__U62(a__U21(mark(z0)), x1)), MARK(U62(U21(z0), x1))) A__U62(tt, U62(U31(z0), x1)) -> c18(A__LENGTH(a__U62(a__U31(mark(z0)), x1)), MARK(U62(U31(z0), x1))) A__U62(tt, U62(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U41(mark(z0), z1), x1)), MARK(U62(U41(z0, z1), x1))) A__U62(tt, U62(U42(z0), x1)) -> c18(A__LENGTH(a__U62(a__U42(mark(z0)), x1)), MARK(U62(U42(z0), x1))) A__U62(tt, U62(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatIList(z0), x1)), MARK(U62(isNatIList(z0), x1))) A__U62(tt, U62(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U51(mark(z0), z1), x1)), MARK(U62(U51(z0, z1), x1))) A__U62(tt, U62(U52(z0), x1)) -> c18(A__LENGTH(a__U62(a__U52(mark(z0)), x1)), MARK(U62(U52(z0), x1))) A__U62(tt, U62(isNatList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatList(z0), x1)), MARK(U62(isNatList(z0), x1))) A__U62(tt, U62(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U62(a__U61(mark(z0), z1, z2), x1)), MARK(U62(U61(z0, z1, z2), x1))) A__U62(tt, U62(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U62(mark(z0), z1), x1)), MARK(U62(U62(z0, z1), x1))) A__U62(tt, U62(isNat(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNat(z0), x1)), MARK(U62(isNat(z0), x1))) A__U62(tt, U62(length(z0), x1)) -> c18(A__LENGTH(a__U62(a__length(mark(z0)), x1)), MARK(U62(length(z0), x1))) A__U62(tt, U62(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U62(cons(mark(z0), z1), x1)), MARK(U62(cons(z0, z1), x1))) A__U62(tt, U62(tt, x1)) -> c18(A__LENGTH(a__U62(tt, x1)), MARK(U62(tt, x1))) A__U62(tt, U62(s(z0), x1)) -> c18(A__LENGTH(a__U62(s(mark(z0)), x1)), MARK(U62(s(z0), x1))) A__U62(tt, U62(x0, z1)) -> c18(MARK(U62(x0, z1))) A__U62(tt, U62(0, x1)) -> c18(A__LENGTH(a__U62(0, x1))) A__U62(tt, U62(nil, x1)) -> c18(A__LENGTH(a__U62(nil, x1))) A__U62(tt, isNat(length(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(isNat(length(z0)))) A__U62(tt, isNat(s(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(isNat(s(z0)))) A__U62(tt, isNat(0)) -> c18(MARK(isNat(0))) A__U62(tt, isNat(z0)) -> c18(MARK(isNat(z0))) A__U62(tt, length(zeros)) -> c18(A__LENGTH(a__length(a__zeros)), MARK(length(zeros))) A__U62(tt, length(U11(z0))) -> c18(A__LENGTH(a__length(a__U11(mark(z0)))), MARK(length(U11(z0)))) A__U62(tt, length(U21(z0))) -> c18(A__LENGTH(a__length(a__U21(mark(z0)))), MARK(length(U21(z0)))) A__U62(tt, length(U31(z0))) -> c18(A__LENGTH(a__length(a__U31(mark(z0)))), MARK(length(U31(z0)))) A__U62(tt, length(U41(z0, z1))) -> c18(A__LENGTH(a__length(a__U41(mark(z0), z1))), MARK(length(U41(z0, z1)))) A__U62(tt, length(U42(z0))) -> c18(A__LENGTH(a__length(a__U42(mark(z0)))), MARK(length(U42(z0)))) A__U62(tt, length(isNatIList(z0))) -> c18(A__LENGTH(a__length(a__isNatIList(z0))), MARK(length(isNatIList(z0)))) A__U62(tt, length(U51(z0, z1))) -> c18(A__LENGTH(a__length(a__U51(mark(z0), z1))), MARK(length(U51(z0, z1)))) A__U62(tt, length(U52(z0))) -> c18(A__LENGTH(a__length(a__U52(mark(z0)))), MARK(length(U52(z0)))) A__U62(tt, length(isNatList(z0))) -> c18(A__LENGTH(a__length(a__isNatList(z0))), MARK(length(isNatList(z0)))) A__U62(tt, length(U61(z0, z1, z2))) -> c18(A__LENGTH(a__length(a__U61(mark(z0), z1, z2))), MARK(length(U61(z0, z1, z2)))) A__U62(tt, length(U62(z0, z1))) -> c18(A__LENGTH(a__length(a__U62(mark(z0), z1))), MARK(length(U62(z0, z1)))) A__U62(tt, length(isNat(z0))) -> c18(A__LENGTH(a__length(a__isNat(z0))), MARK(length(isNat(z0)))) A__U62(tt, length(length(z0))) -> c18(A__LENGTH(a__length(a__length(mark(z0)))), MARK(length(length(z0)))) A__U62(tt, length(cons(z0, z1))) -> c18(A__LENGTH(a__length(cons(mark(z0), z1))), MARK(length(cons(z0, z1)))) A__U62(tt, length(s(z0))) -> c18(A__LENGTH(a__length(s(mark(z0)))), MARK(length(s(z0)))) A__U62(tt, length(x0)) -> c18(MARK(length(x0))) A__U62(tt, length(0)) -> c18(A__LENGTH(a__length(0))) A__U62(tt, length(tt)) -> c18(A__LENGTH(a__length(tt))) A__U62(tt, length(nil)) -> c18(A__LENGTH(a__length(nil))) A__U62(tt, zeros) -> c18(A__LENGTH(cons(0, zeros))) A__ISNATILIST(cons(length(nil), x1)) -> c26(A__U41(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATILIST(cons(length(cons(z0, z1)), x1)) -> c26(A__U41(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(length(x0), x1)) -> c26(A__ISNAT(length(x0))) A__ISNATILIST(cons(s(0), x1)) -> c26(A__U41(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATILIST(cons(s(length(z0)), x1)) -> c26(A__U41(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATILIST(cons(s(s(z0)), x1)) -> c26(A__U41(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(s(x0), x1)) -> c26(A__ISNAT(s(x0))) A__ISNATLIST(cons(length(nil), x1)) -> c29(A__U51(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATLIST(cons(length(cons(z0, z1)), x1)) -> c29(A__U51(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(length(x0), x1)) -> c29(A__ISNAT(length(x0))) A__ISNATLIST(cons(s(0), x1)) -> c29(A__U51(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATLIST(cons(s(length(z0)), x1)) -> c29(A__U51(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATLIST(cons(s(s(z0)), x1)) -> c29(A__U51(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(s(x0), x1)) -> c29(A__ISNAT(s(x0))) A__LENGTH(cons(x0, cons(0, x2))) -> c32(A__U61(a__U51(tt, x2), cons(0, x2), x0), A__ISNATLIST(cons(0, x2))) A__LENGTH(cons(x0, cons(length(z0), x2))) -> c32(A__U61(a__U51(a__U11(a__isNatList(z0)), x2), cons(length(z0), x2), x0), A__ISNATLIST(cons(length(z0), x2))) A__LENGTH(cons(x0, cons(s(z0), x2))) -> c32(A__U61(a__U51(a__U21(a__isNat(z0)), x2), cons(s(z0), x2), x0), A__ISNATLIST(cons(s(z0), x2))) A__LENGTH(cons(x0, cons(z0, x2))) -> c32(A__U61(a__U51(isNat(z0), x2), cons(z0, x2), x0), A__ISNATLIST(cons(z0, x2))) A__LENGTH(cons(x0, cons(x1, z1))) -> c32(A__ISNATLIST(cons(x1, z1))) K tuples:none Defined Rule Symbols: a__zeros, a__U11_1, a__U21_1, a__U31_1, a__U41_2, a__U42_1, a__U51_2, a__U52_1, a__U61_3, a__U62_2, a__isNat_1, a__isNatIList_1, a__isNatList_1, a__length_1, mark_1 Defined Pair Symbols: MARK_1, A__U41_2, A__U51_2, A__ISNAT_1, A__ISNATILIST_1, A__U61_3, A__U62_2, A__ISNATLIST_1, A__LENGTH_1 Compound Symbols: c40_1, c43_1, c46_1, c48_1, c51_1, c8_1, c12_1, c21_1, c22_1, c24_1, c35_1, c36_1, c37_1, c39_1, c42_1, c16_1, c18_2, c18_1, c26_1, c29_1, c32_1, c38_2, c38_1, c_1, c41_2, c41_1, c1_1, c44_2, c44_1, c45_2, c45_1, c47_2, c47_1, c16_2, c26_2, c29_2, c32_2 ---------------------------------------- (169) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace MARK(U41(U11(z0), x1)) -> c38(A__U41(a__U11(mark(z0)), x1), MARK(U11(z0))) by MARK(U41(U11(x0), x1)) -> c38(A__U41(U11(mark(x0)), x1), MARK(U11(x0))) MARK(U41(U11(zeros), x1)) -> c38(A__U41(a__U11(a__zeros), x1), MARK(U11(zeros))) MARK(U41(U11(U11(z0)), x1)) -> c38(A__U41(a__U11(a__U11(mark(z0))), x1), MARK(U11(U11(z0)))) MARK(U41(U11(U21(z0)), x1)) -> c38(A__U41(a__U11(a__U21(mark(z0))), x1), MARK(U11(U21(z0)))) MARK(U41(U11(U31(z0)), x1)) -> c38(A__U41(a__U11(a__U31(mark(z0))), x1), MARK(U11(U31(z0)))) MARK(U41(U11(U41(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U41(mark(z0), z1)), x1), MARK(U11(U41(z0, z1)))) MARK(U41(U11(U42(z0)), x1)) -> c38(A__U41(a__U11(a__U42(mark(z0))), x1), MARK(U11(U42(z0)))) MARK(U41(U11(isNatIList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatIList(z0)), x1), MARK(U11(isNatIList(z0)))) MARK(U41(U11(U51(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U51(mark(z0), z1)), x1), MARK(U11(U51(z0, z1)))) MARK(U41(U11(U52(z0)), x1)) -> c38(A__U41(a__U11(a__U52(mark(z0))), x1), MARK(U11(U52(z0)))) MARK(U41(U11(isNatList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatList(z0)), x1), MARK(U11(isNatList(z0)))) MARK(U41(U11(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U11(a__U61(mark(z0), z1, z2)), x1), MARK(U11(U61(z0, z1, z2)))) MARK(U41(U11(U62(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U62(mark(z0), z1)), x1), MARK(U11(U62(z0, z1)))) MARK(U41(U11(isNat(z0)), x1)) -> c38(A__U41(a__U11(a__isNat(z0)), x1), MARK(U11(isNat(z0)))) MARK(U41(U11(length(z0)), x1)) -> c38(A__U41(a__U11(a__length(mark(z0))), x1), MARK(U11(length(z0)))) MARK(U41(U11(cons(z0, z1)), x1)) -> c38(A__U41(a__U11(cons(mark(z0), z1)), x1), MARK(U11(cons(z0, z1)))) MARK(U41(U11(0), x1)) -> c38(A__U41(a__U11(0), x1), MARK(U11(0))) MARK(U41(U11(tt), x1)) -> c38(A__U41(a__U11(tt), x1), MARK(U11(tt))) MARK(U41(U11(s(z0)), x1)) -> c38(A__U41(a__U11(s(mark(z0))), x1), MARK(U11(s(z0)))) MARK(U41(U11(nil), x1)) -> c38(A__U41(a__U11(nil), x1), MARK(U11(nil))) MARK(U41(U11(x0), x1)) -> c38(MARK(U11(x0))) ---------------------------------------- (170) Obligation: Complexity Dependency Tuples Problem Rules: a__zeros -> cons(0, zeros) a__zeros -> zeros a__U11(tt) -> tt a__U11(z0) -> U11(z0) a__U21(tt) -> tt a__U21(z0) -> U21(z0) a__U31(tt) -> tt a__U31(z0) -> U31(z0) a__U41(tt, z0) -> a__U42(a__isNatIList(z0)) a__U41(z0, z1) -> U41(z0, z1) a__U42(tt) -> tt a__U42(z0) -> U42(z0) a__U51(tt, z0) -> a__U52(a__isNatList(z0)) a__U51(z0, z1) -> U51(z0, z1) a__U52(tt) -> tt a__U52(z0) -> U52(z0) a__U61(tt, z0, z1) -> a__U62(a__isNat(z1), z0) a__U61(z0, z1, z2) -> U61(z0, z1, z2) a__U62(tt, z0) -> s(a__length(mark(z0))) a__U62(z0, z1) -> U62(z0, z1) a__isNat(0) -> tt a__isNat(length(z0)) -> a__U11(a__isNatList(z0)) a__isNat(s(z0)) -> a__U21(a__isNat(z0)) a__isNat(z0) -> isNat(z0) a__isNatIList(z0) -> a__U31(a__isNatList(z0)) a__isNatIList(zeros) -> tt a__isNatIList(cons(z0, z1)) -> a__U41(a__isNat(z0), z1) a__isNatIList(z0) -> isNatIList(z0) a__isNatList(nil) -> tt a__isNatList(cons(z0, z1)) -> a__U51(a__isNat(z0), z1) a__isNatList(z0) -> isNatList(z0) a__length(nil) -> 0 a__length(cons(z0, z1)) -> a__U61(a__isNatList(z1), z1, z0) a__length(z0) -> length(z0) mark(zeros) -> a__zeros mark(U11(z0)) -> a__U11(mark(z0)) mark(U21(z0)) -> a__U21(mark(z0)) mark(U31(z0)) -> a__U31(mark(z0)) mark(U41(z0, z1)) -> a__U41(mark(z0), z1) mark(U42(z0)) -> a__U42(mark(z0)) mark(isNatIList(z0)) -> a__isNatIList(z0) mark(U51(z0, z1)) -> a__U51(mark(z0), z1) mark(U52(z0)) -> a__U52(mark(z0)) mark(isNatList(z0)) -> a__isNatList(z0) mark(U61(z0, z1, z2)) -> a__U61(mark(z0), z1, z2) mark(U62(z0, z1)) -> a__U62(mark(z0), z1) mark(isNat(z0)) -> a__isNat(z0) mark(length(z0)) -> a__length(mark(z0)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(0) -> 0 mark(tt) -> tt mark(s(z0)) -> s(mark(z0)) mark(nil) -> nil Tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) A__U62(tt, isNatList(cons(z0, z1))) -> c18(A__LENGTH(a__U51(a__isNat(z0), z1)), MARK(isNatList(cons(z0, z1)))) A__U62(tt, isNatList(nil)) -> c18(MARK(isNatList(nil))) A__U62(tt, isNatList(z0)) -> c18(MARK(isNatList(z0))) A__U62(tt, U61(zeros, x1, x2)) -> c18(A__LENGTH(a__U61(a__zeros, x1, x2)), MARK(U61(zeros, x1, x2))) A__U62(tt, U61(U11(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U11(mark(z0)), x1, x2)), MARK(U61(U11(z0), x1, x2))) A__U62(tt, U61(U21(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U21(mark(z0)), x1, x2)), MARK(U61(U21(z0), x1, x2))) A__U62(tt, U61(U31(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U31(mark(z0)), x1, x2)), MARK(U61(U31(z0), x1, x2))) A__U62(tt, U61(U41(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U41(mark(z0), z1), x1, x2)), MARK(U61(U41(z0, z1), x1, x2))) A__U62(tt, U61(U42(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U42(mark(z0)), x1, x2)), MARK(U61(U42(z0), x1, x2))) A__U62(tt, U61(isNatIList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatIList(z0), x1, x2)), MARK(U61(isNatIList(z0), x1, x2))) A__U62(tt, U61(U51(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U51(mark(z0), z1), x1, x2)), MARK(U61(U51(z0, z1), x1, x2))) A__U62(tt, U61(U52(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U52(mark(z0)), x1, x2)), MARK(U61(U52(z0), x1, x2))) A__U62(tt, U61(isNatList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatList(z0), x1, x2)), MARK(U61(isNatList(z0), x1, x2))) A__U62(tt, U61(U61(z0, z1, z2), x1, x2)) -> c18(A__LENGTH(a__U61(a__U61(mark(z0), z1, z2), x1, x2)), MARK(U61(U61(z0, z1, z2), x1, x2))) A__U62(tt, U61(U62(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U62(mark(z0), z1), x1, x2)), MARK(U61(U62(z0, z1), x1, x2))) A__U62(tt, U61(isNat(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNat(z0), x1, x2)), MARK(U61(isNat(z0), x1, x2))) A__U62(tt, U61(length(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__length(mark(z0)), x1, x2)), MARK(U61(length(z0), x1, x2))) A__U62(tt, U61(cons(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(cons(mark(z0), z1), x1, x2)), MARK(U61(cons(z0, z1), x1, x2))) A__U62(tt, U61(tt, x1, x2)) -> c18(A__LENGTH(a__U61(tt, x1, x2)), MARK(U61(tt, x1, x2))) A__U62(tt, U61(s(z0), x1, x2)) -> c18(A__LENGTH(a__U61(s(mark(z0)), x1, x2)), MARK(U61(s(z0), x1, x2))) A__U62(tt, U61(x0, z1, z2)) -> c18(MARK(U61(x0, z1, z2))) A__U62(tt, U61(0, x1, x2)) -> c18(A__LENGTH(a__U61(0, x1, x2))) A__U62(tt, U61(nil, x1, x2)) -> c18(A__LENGTH(a__U61(nil, x1, x2))) A__U62(tt, U62(zeros, x1)) -> c18(A__LENGTH(a__U62(a__zeros, x1)), MARK(U62(zeros, x1))) A__U62(tt, U62(U11(z0), x1)) -> c18(A__LENGTH(a__U62(a__U11(mark(z0)), x1)), MARK(U62(U11(z0), x1))) A__U62(tt, U62(U21(z0), x1)) -> c18(A__LENGTH(a__U62(a__U21(mark(z0)), x1)), MARK(U62(U21(z0), x1))) A__U62(tt, U62(U31(z0), x1)) -> c18(A__LENGTH(a__U62(a__U31(mark(z0)), x1)), MARK(U62(U31(z0), x1))) A__U62(tt, U62(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U41(mark(z0), z1), x1)), MARK(U62(U41(z0, z1), x1))) A__U62(tt, U62(U42(z0), x1)) -> c18(A__LENGTH(a__U62(a__U42(mark(z0)), x1)), MARK(U62(U42(z0), x1))) A__U62(tt, U62(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatIList(z0), x1)), MARK(U62(isNatIList(z0), x1))) A__U62(tt, U62(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U51(mark(z0), z1), x1)), MARK(U62(U51(z0, z1), x1))) A__U62(tt, U62(U52(z0), x1)) -> c18(A__LENGTH(a__U62(a__U52(mark(z0)), x1)), MARK(U62(U52(z0), x1))) A__U62(tt, U62(isNatList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatList(z0), x1)), MARK(U62(isNatList(z0), x1))) A__U62(tt, U62(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U62(a__U61(mark(z0), z1, z2), x1)), MARK(U62(U61(z0, z1, z2), x1))) A__U62(tt, U62(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U62(mark(z0), z1), x1)), MARK(U62(U62(z0, z1), x1))) A__U62(tt, U62(isNat(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNat(z0), x1)), MARK(U62(isNat(z0), x1))) A__U62(tt, U62(length(z0), x1)) -> c18(A__LENGTH(a__U62(a__length(mark(z0)), x1)), MARK(U62(length(z0), x1))) A__U62(tt, U62(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U62(cons(mark(z0), z1), x1)), MARK(U62(cons(z0, z1), x1))) A__U62(tt, U62(tt, x1)) -> c18(A__LENGTH(a__U62(tt, x1)), MARK(U62(tt, x1))) A__U62(tt, U62(s(z0), x1)) -> c18(A__LENGTH(a__U62(s(mark(z0)), x1)), MARK(U62(s(z0), x1))) A__U62(tt, U62(x0, z1)) -> c18(MARK(U62(x0, z1))) A__U62(tt, U62(0, x1)) -> c18(A__LENGTH(a__U62(0, x1))) A__U62(tt, U62(nil, x1)) -> c18(A__LENGTH(a__U62(nil, x1))) A__U62(tt, isNat(length(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(isNat(length(z0)))) A__U62(tt, isNat(s(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(isNat(s(z0)))) A__U62(tt, isNat(0)) -> c18(MARK(isNat(0))) A__U62(tt, isNat(z0)) -> c18(MARK(isNat(z0))) A__U62(tt, length(zeros)) -> c18(A__LENGTH(a__length(a__zeros)), MARK(length(zeros))) A__U62(tt, length(U11(z0))) -> c18(A__LENGTH(a__length(a__U11(mark(z0)))), MARK(length(U11(z0)))) A__U62(tt, length(U21(z0))) -> c18(A__LENGTH(a__length(a__U21(mark(z0)))), MARK(length(U21(z0)))) A__U62(tt, length(U31(z0))) -> c18(A__LENGTH(a__length(a__U31(mark(z0)))), MARK(length(U31(z0)))) A__U62(tt, length(U41(z0, z1))) -> c18(A__LENGTH(a__length(a__U41(mark(z0), z1))), MARK(length(U41(z0, z1)))) A__U62(tt, length(U42(z0))) -> c18(A__LENGTH(a__length(a__U42(mark(z0)))), MARK(length(U42(z0)))) A__U62(tt, length(isNatIList(z0))) -> c18(A__LENGTH(a__length(a__isNatIList(z0))), MARK(length(isNatIList(z0)))) A__U62(tt, length(U51(z0, z1))) -> c18(A__LENGTH(a__length(a__U51(mark(z0), z1))), MARK(length(U51(z0, z1)))) A__U62(tt, length(U52(z0))) -> c18(A__LENGTH(a__length(a__U52(mark(z0)))), MARK(length(U52(z0)))) A__U62(tt, length(isNatList(z0))) -> c18(A__LENGTH(a__length(a__isNatList(z0))), MARK(length(isNatList(z0)))) A__U62(tt, length(U61(z0, z1, z2))) -> c18(A__LENGTH(a__length(a__U61(mark(z0), z1, z2))), MARK(length(U61(z0, z1, z2)))) A__U62(tt, length(U62(z0, z1))) -> c18(A__LENGTH(a__length(a__U62(mark(z0), z1))), MARK(length(U62(z0, z1)))) A__U62(tt, length(isNat(z0))) -> c18(A__LENGTH(a__length(a__isNat(z0))), MARK(length(isNat(z0)))) A__U62(tt, length(length(z0))) -> c18(A__LENGTH(a__length(a__length(mark(z0)))), MARK(length(length(z0)))) A__U62(tt, length(cons(z0, z1))) -> c18(A__LENGTH(a__length(cons(mark(z0), z1))), MARK(length(cons(z0, z1)))) A__U62(tt, length(s(z0))) -> c18(A__LENGTH(a__length(s(mark(z0)))), MARK(length(s(z0)))) A__U62(tt, length(x0)) -> c18(MARK(length(x0))) A__U62(tt, length(0)) -> c18(A__LENGTH(a__length(0))) A__U62(tt, length(tt)) -> c18(A__LENGTH(a__length(tt))) A__U62(tt, length(nil)) -> c18(A__LENGTH(a__length(nil))) A__U62(tt, zeros) -> c18(A__LENGTH(cons(0, zeros))) A__ISNATILIST(cons(length(nil), x1)) -> c26(A__U41(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATILIST(cons(length(cons(z0, z1)), x1)) -> c26(A__U41(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(length(x0), x1)) -> c26(A__ISNAT(length(x0))) A__ISNATILIST(cons(s(0), x1)) -> c26(A__U41(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATILIST(cons(s(length(z0)), x1)) -> c26(A__U41(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATILIST(cons(s(s(z0)), x1)) -> c26(A__U41(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(s(x0), x1)) -> c26(A__ISNAT(s(x0))) A__ISNATLIST(cons(length(nil), x1)) -> c29(A__U51(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATLIST(cons(length(cons(z0, z1)), x1)) -> c29(A__U51(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(length(x0), x1)) -> c29(A__ISNAT(length(x0))) A__ISNATLIST(cons(s(0), x1)) -> c29(A__U51(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATLIST(cons(s(length(z0)), x1)) -> c29(A__U51(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATLIST(cons(s(s(z0)), x1)) -> c29(A__U51(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(s(x0), x1)) -> c29(A__ISNAT(s(x0))) A__LENGTH(cons(x0, cons(0, x2))) -> c32(A__U61(a__U51(tt, x2), cons(0, x2), x0), A__ISNATLIST(cons(0, x2))) A__LENGTH(cons(x0, cons(length(z0), x2))) -> c32(A__U61(a__U51(a__U11(a__isNatList(z0)), x2), cons(length(z0), x2), x0), A__ISNATLIST(cons(length(z0), x2))) A__LENGTH(cons(x0, cons(s(z0), x2))) -> c32(A__U61(a__U51(a__U21(a__isNat(z0)), x2), cons(s(z0), x2), x0), A__ISNATLIST(cons(s(z0), x2))) A__LENGTH(cons(x0, cons(z0, x2))) -> c32(A__U61(a__U51(isNat(z0), x2), cons(z0, x2), x0), A__ISNATLIST(cons(z0, x2))) A__LENGTH(cons(x0, cons(x1, z1))) -> c32(A__ISNATLIST(cons(x1, z1))) MARK(U41(U11(x0), x1)) -> c38(A__U41(U11(mark(x0)), x1), MARK(U11(x0))) MARK(U41(U11(zeros), x1)) -> c38(A__U41(a__U11(a__zeros), x1), MARK(U11(zeros))) MARK(U41(U11(U11(z0)), x1)) -> c38(A__U41(a__U11(a__U11(mark(z0))), x1), MARK(U11(U11(z0)))) MARK(U41(U11(U21(z0)), x1)) -> c38(A__U41(a__U11(a__U21(mark(z0))), x1), MARK(U11(U21(z0)))) MARK(U41(U11(U31(z0)), x1)) -> c38(A__U41(a__U11(a__U31(mark(z0))), x1), MARK(U11(U31(z0)))) MARK(U41(U11(U41(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U41(mark(z0), z1)), x1), MARK(U11(U41(z0, z1)))) MARK(U41(U11(U42(z0)), x1)) -> c38(A__U41(a__U11(a__U42(mark(z0))), x1), MARK(U11(U42(z0)))) MARK(U41(U11(isNatIList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatIList(z0)), x1), MARK(U11(isNatIList(z0)))) MARK(U41(U11(U51(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U51(mark(z0), z1)), x1), MARK(U11(U51(z0, z1)))) MARK(U41(U11(U52(z0)), x1)) -> c38(A__U41(a__U11(a__U52(mark(z0))), x1), MARK(U11(U52(z0)))) MARK(U41(U11(isNatList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatList(z0)), x1), MARK(U11(isNatList(z0)))) MARK(U41(U11(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U11(a__U61(mark(z0), z1, z2)), x1), MARK(U11(U61(z0, z1, z2)))) MARK(U41(U11(U62(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U62(mark(z0), z1)), x1), MARK(U11(U62(z0, z1)))) MARK(U41(U11(isNat(z0)), x1)) -> c38(A__U41(a__U11(a__isNat(z0)), x1), MARK(U11(isNat(z0)))) MARK(U41(U11(length(z0)), x1)) -> c38(A__U41(a__U11(a__length(mark(z0))), x1), MARK(U11(length(z0)))) MARK(U41(U11(cons(z0, z1)), x1)) -> c38(A__U41(a__U11(cons(mark(z0), z1)), x1), MARK(U11(cons(z0, z1)))) MARK(U41(U11(0), x1)) -> c38(A__U41(a__U11(0), x1), MARK(U11(0))) MARK(U41(U11(tt), x1)) -> c38(A__U41(a__U11(tt), x1), MARK(U11(tt))) MARK(U41(U11(s(z0)), x1)) -> c38(A__U41(a__U11(s(mark(z0))), x1), MARK(U11(s(z0)))) MARK(U41(U11(nil), x1)) -> c38(A__U41(a__U11(nil), x1), MARK(U11(nil))) MARK(U41(U11(x0), x1)) -> c38(MARK(U11(x0))) S tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) A__U62(tt, isNatList(cons(z0, z1))) -> c18(A__LENGTH(a__U51(a__isNat(z0), z1)), MARK(isNatList(cons(z0, z1)))) A__U62(tt, isNatList(nil)) -> c18(MARK(isNatList(nil))) A__U62(tt, isNatList(z0)) -> c18(MARK(isNatList(z0))) A__U62(tt, U61(zeros, x1, x2)) -> c18(A__LENGTH(a__U61(a__zeros, x1, x2)), MARK(U61(zeros, x1, x2))) A__U62(tt, U61(U11(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U11(mark(z0)), x1, x2)), MARK(U61(U11(z0), x1, x2))) A__U62(tt, U61(U21(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U21(mark(z0)), x1, x2)), MARK(U61(U21(z0), x1, x2))) A__U62(tt, U61(U31(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U31(mark(z0)), x1, x2)), MARK(U61(U31(z0), x1, x2))) A__U62(tt, U61(U41(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U41(mark(z0), z1), x1, x2)), MARK(U61(U41(z0, z1), x1, x2))) A__U62(tt, U61(U42(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U42(mark(z0)), x1, x2)), MARK(U61(U42(z0), x1, x2))) A__U62(tt, U61(isNatIList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatIList(z0), x1, x2)), MARK(U61(isNatIList(z0), x1, x2))) A__U62(tt, U61(U51(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U51(mark(z0), z1), x1, x2)), MARK(U61(U51(z0, z1), x1, x2))) A__U62(tt, U61(U52(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U52(mark(z0)), x1, x2)), MARK(U61(U52(z0), x1, x2))) A__U62(tt, U61(isNatList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatList(z0), x1, x2)), MARK(U61(isNatList(z0), x1, x2))) A__U62(tt, U61(U61(z0, z1, z2), x1, x2)) -> c18(A__LENGTH(a__U61(a__U61(mark(z0), z1, z2), x1, x2)), MARK(U61(U61(z0, z1, z2), x1, x2))) A__U62(tt, U61(U62(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U62(mark(z0), z1), x1, x2)), MARK(U61(U62(z0, z1), x1, x2))) A__U62(tt, U61(isNat(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNat(z0), x1, x2)), MARK(U61(isNat(z0), x1, x2))) A__U62(tt, U61(length(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__length(mark(z0)), x1, x2)), MARK(U61(length(z0), x1, x2))) A__U62(tt, U61(cons(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(cons(mark(z0), z1), x1, x2)), MARK(U61(cons(z0, z1), x1, x2))) A__U62(tt, U61(tt, x1, x2)) -> c18(A__LENGTH(a__U61(tt, x1, x2)), MARK(U61(tt, x1, x2))) A__U62(tt, U61(s(z0), x1, x2)) -> c18(A__LENGTH(a__U61(s(mark(z0)), x1, x2)), MARK(U61(s(z0), x1, x2))) A__U62(tt, U61(x0, z1, z2)) -> c18(MARK(U61(x0, z1, z2))) A__U62(tt, U61(0, x1, x2)) -> c18(A__LENGTH(a__U61(0, x1, x2))) A__U62(tt, U61(nil, x1, x2)) -> c18(A__LENGTH(a__U61(nil, x1, x2))) A__U62(tt, U62(zeros, x1)) -> c18(A__LENGTH(a__U62(a__zeros, x1)), MARK(U62(zeros, x1))) A__U62(tt, U62(U11(z0), x1)) -> c18(A__LENGTH(a__U62(a__U11(mark(z0)), x1)), MARK(U62(U11(z0), x1))) A__U62(tt, U62(U21(z0), x1)) -> c18(A__LENGTH(a__U62(a__U21(mark(z0)), x1)), MARK(U62(U21(z0), x1))) A__U62(tt, U62(U31(z0), x1)) -> c18(A__LENGTH(a__U62(a__U31(mark(z0)), x1)), MARK(U62(U31(z0), x1))) A__U62(tt, U62(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U41(mark(z0), z1), x1)), MARK(U62(U41(z0, z1), x1))) A__U62(tt, U62(U42(z0), x1)) -> c18(A__LENGTH(a__U62(a__U42(mark(z0)), x1)), MARK(U62(U42(z0), x1))) A__U62(tt, U62(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatIList(z0), x1)), MARK(U62(isNatIList(z0), x1))) A__U62(tt, U62(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U51(mark(z0), z1), x1)), MARK(U62(U51(z0, z1), x1))) A__U62(tt, U62(U52(z0), x1)) -> c18(A__LENGTH(a__U62(a__U52(mark(z0)), x1)), MARK(U62(U52(z0), x1))) A__U62(tt, U62(isNatList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatList(z0), x1)), MARK(U62(isNatList(z0), x1))) A__U62(tt, U62(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U62(a__U61(mark(z0), z1, z2), x1)), MARK(U62(U61(z0, z1, z2), x1))) A__U62(tt, U62(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U62(mark(z0), z1), x1)), MARK(U62(U62(z0, z1), x1))) A__U62(tt, U62(isNat(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNat(z0), x1)), MARK(U62(isNat(z0), x1))) A__U62(tt, U62(length(z0), x1)) -> c18(A__LENGTH(a__U62(a__length(mark(z0)), x1)), MARK(U62(length(z0), x1))) A__U62(tt, U62(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U62(cons(mark(z0), z1), x1)), MARK(U62(cons(z0, z1), x1))) A__U62(tt, U62(tt, x1)) -> c18(A__LENGTH(a__U62(tt, x1)), MARK(U62(tt, x1))) A__U62(tt, U62(s(z0), x1)) -> c18(A__LENGTH(a__U62(s(mark(z0)), x1)), MARK(U62(s(z0), x1))) A__U62(tt, U62(x0, z1)) -> c18(MARK(U62(x0, z1))) A__U62(tt, U62(0, x1)) -> c18(A__LENGTH(a__U62(0, x1))) A__U62(tt, U62(nil, x1)) -> c18(A__LENGTH(a__U62(nil, x1))) A__U62(tt, isNat(length(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(isNat(length(z0)))) A__U62(tt, isNat(s(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(isNat(s(z0)))) A__U62(tt, isNat(0)) -> c18(MARK(isNat(0))) A__U62(tt, isNat(z0)) -> c18(MARK(isNat(z0))) A__U62(tt, length(zeros)) -> c18(A__LENGTH(a__length(a__zeros)), MARK(length(zeros))) A__U62(tt, length(U11(z0))) -> c18(A__LENGTH(a__length(a__U11(mark(z0)))), MARK(length(U11(z0)))) A__U62(tt, length(U21(z0))) -> c18(A__LENGTH(a__length(a__U21(mark(z0)))), MARK(length(U21(z0)))) A__U62(tt, length(U31(z0))) -> c18(A__LENGTH(a__length(a__U31(mark(z0)))), MARK(length(U31(z0)))) A__U62(tt, length(U41(z0, z1))) -> c18(A__LENGTH(a__length(a__U41(mark(z0), z1))), MARK(length(U41(z0, z1)))) A__U62(tt, length(U42(z0))) -> c18(A__LENGTH(a__length(a__U42(mark(z0)))), MARK(length(U42(z0)))) A__U62(tt, length(isNatIList(z0))) -> c18(A__LENGTH(a__length(a__isNatIList(z0))), MARK(length(isNatIList(z0)))) A__U62(tt, length(U51(z0, z1))) -> c18(A__LENGTH(a__length(a__U51(mark(z0), z1))), MARK(length(U51(z0, z1)))) A__U62(tt, length(U52(z0))) -> c18(A__LENGTH(a__length(a__U52(mark(z0)))), MARK(length(U52(z0)))) A__U62(tt, length(isNatList(z0))) -> c18(A__LENGTH(a__length(a__isNatList(z0))), MARK(length(isNatList(z0)))) A__U62(tt, length(U61(z0, z1, z2))) -> c18(A__LENGTH(a__length(a__U61(mark(z0), z1, z2))), MARK(length(U61(z0, z1, z2)))) A__U62(tt, length(U62(z0, z1))) -> c18(A__LENGTH(a__length(a__U62(mark(z0), z1))), MARK(length(U62(z0, z1)))) A__U62(tt, length(isNat(z0))) -> c18(A__LENGTH(a__length(a__isNat(z0))), MARK(length(isNat(z0)))) A__U62(tt, length(length(z0))) -> c18(A__LENGTH(a__length(a__length(mark(z0)))), MARK(length(length(z0)))) A__U62(tt, length(cons(z0, z1))) -> c18(A__LENGTH(a__length(cons(mark(z0), z1))), MARK(length(cons(z0, z1)))) A__U62(tt, length(s(z0))) -> c18(A__LENGTH(a__length(s(mark(z0)))), MARK(length(s(z0)))) A__U62(tt, length(x0)) -> c18(MARK(length(x0))) A__U62(tt, length(0)) -> c18(A__LENGTH(a__length(0))) A__U62(tt, length(tt)) -> c18(A__LENGTH(a__length(tt))) A__U62(tt, length(nil)) -> c18(A__LENGTH(a__length(nil))) A__U62(tt, zeros) -> c18(A__LENGTH(cons(0, zeros))) A__ISNATILIST(cons(length(nil), x1)) -> c26(A__U41(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATILIST(cons(length(cons(z0, z1)), x1)) -> c26(A__U41(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(length(x0), x1)) -> c26(A__ISNAT(length(x0))) A__ISNATILIST(cons(s(0), x1)) -> c26(A__U41(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATILIST(cons(s(length(z0)), x1)) -> c26(A__U41(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATILIST(cons(s(s(z0)), x1)) -> c26(A__U41(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(s(x0), x1)) -> c26(A__ISNAT(s(x0))) A__ISNATLIST(cons(length(nil), x1)) -> c29(A__U51(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATLIST(cons(length(cons(z0, z1)), x1)) -> c29(A__U51(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(length(x0), x1)) -> c29(A__ISNAT(length(x0))) A__ISNATLIST(cons(s(0), x1)) -> c29(A__U51(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATLIST(cons(s(length(z0)), x1)) -> c29(A__U51(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATLIST(cons(s(s(z0)), x1)) -> c29(A__U51(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(s(x0), x1)) -> c29(A__ISNAT(s(x0))) A__LENGTH(cons(x0, cons(0, x2))) -> c32(A__U61(a__U51(tt, x2), cons(0, x2), x0), A__ISNATLIST(cons(0, x2))) A__LENGTH(cons(x0, cons(length(z0), x2))) -> c32(A__U61(a__U51(a__U11(a__isNatList(z0)), x2), cons(length(z0), x2), x0), A__ISNATLIST(cons(length(z0), x2))) A__LENGTH(cons(x0, cons(s(z0), x2))) -> c32(A__U61(a__U51(a__U21(a__isNat(z0)), x2), cons(s(z0), x2), x0), A__ISNATLIST(cons(s(z0), x2))) A__LENGTH(cons(x0, cons(z0, x2))) -> c32(A__U61(a__U51(isNat(z0), x2), cons(z0, x2), x0), A__ISNATLIST(cons(z0, x2))) A__LENGTH(cons(x0, cons(x1, z1))) -> c32(A__ISNATLIST(cons(x1, z1))) MARK(U41(U11(x0), x1)) -> c38(A__U41(U11(mark(x0)), x1), MARK(U11(x0))) MARK(U41(U11(zeros), x1)) -> c38(A__U41(a__U11(a__zeros), x1), MARK(U11(zeros))) MARK(U41(U11(U11(z0)), x1)) -> c38(A__U41(a__U11(a__U11(mark(z0))), x1), MARK(U11(U11(z0)))) MARK(U41(U11(U21(z0)), x1)) -> c38(A__U41(a__U11(a__U21(mark(z0))), x1), MARK(U11(U21(z0)))) MARK(U41(U11(U31(z0)), x1)) -> c38(A__U41(a__U11(a__U31(mark(z0))), x1), MARK(U11(U31(z0)))) MARK(U41(U11(U41(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U41(mark(z0), z1)), x1), MARK(U11(U41(z0, z1)))) MARK(U41(U11(U42(z0)), x1)) -> c38(A__U41(a__U11(a__U42(mark(z0))), x1), MARK(U11(U42(z0)))) MARK(U41(U11(isNatIList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatIList(z0)), x1), MARK(U11(isNatIList(z0)))) MARK(U41(U11(U51(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U51(mark(z0), z1)), x1), MARK(U11(U51(z0, z1)))) MARK(U41(U11(U52(z0)), x1)) -> c38(A__U41(a__U11(a__U52(mark(z0))), x1), MARK(U11(U52(z0)))) MARK(U41(U11(isNatList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatList(z0)), x1), MARK(U11(isNatList(z0)))) MARK(U41(U11(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U11(a__U61(mark(z0), z1, z2)), x1), MARK(U11(U61(z0, z1, z2)))) MARK(U41(U11(U62(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U62(mark(z0), z1)), x1), MARK(U11(U62(z0, z1)))) MARK(U41(U11(isNat(z0)), x1)) -> c38(A__U41(a__U11(a__isNat(z0)), x1), MARK(U11(isNat(z0)))) MARK(U41(U11(length(z0)), x1)) -> c38(A__U41(a__U11(a__length(mark(z0))), x1), MARK(U11(length(z0)))) MARK(U41(U11(cons(z0, z1)), x1)) -> c38(A__U41(a__U11(cons(mark(z0), z1)), x1), MARK(U11(cons(z0, z1)))) MARK(U41(U11(0), x1)) -> c38(A__U41(a__U11(0), x1), MARK(U11(0))) MARK(U41(U11(tt), x1)) -> c38(A__U41(a__U11(tt), x1), MARK(U11(tt))) MARK(U41(U11(s(z0)), x1)) -> c38(A__U41(a__U11(s(mark(z0))), x1), MARK(U11(s(z0)))) MARK(U41(U11(nil), x1)) -> c38(A__U41(a__U11(nil), x1), MARK(U11(nil))) MARK(U41(U11(x0), x1)) -> c38(MARK(U11(x0))) K tuples:none Defined Rule Symbols: a__zeros, a__U11_1, a__U21_1, a__U31_1, a__U41_2, a__U42_1, a__U51_2, a__U52_1, a__U61_3, a__U62_2, a__isNat_1, a__isNatIList_1, a__isNatList_1, a__length_1, mark_1 Defined Pair Symbols: MARK_1, A__U41_2, A__U51_2, A__ISNAT_1, A__ISNATILIST_1, A__U61_3, A__U62_2, A__ISNATLIST_1, A__LENGTH_1 Compound Symbols: c40_1, c43_1, c46_1, c48_1, c51_1, c8_1, c12_1, c21_1, c22_1, c24_1, c35_1, c36_1, c37_1, c39_1, c42_1, c16_1, c18_2, c18_1, c26_1, c29_1, c32_1, c38_2, c38_1, c_1, c41_2, c41_1, c1_1, c44_2, c44_1, c45_2, c45_1, c47_2, c47_1, c16_2, c26_2, c29_2, c32_2 ---------------------------------------- (171) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 1 trailing tuple parts ---------------------------------------- (172) Obligation: Complexity Dependency Tuples Problem Rules: a__zeros -> cons(0, zeros) a__zeros -> zeros a__U11(tt) -> tt a__U11(z0) -> U11(z0) a__U21(tt) -> tt a__U21(z0) -> U21(z0) a__U31(tt) -> tt a__U31(z0) -> U31(z0) a__U41(tt, z0) -> a__U42(a__isNatIList(z0)) a__U41(z0, z1) -> U41(z0, z1) a__U42(tt) -> tt a__U42(z0) -> U42(z0) a__U51(tt, z0) -> a__U52(a__isNatList(z0)) a__U51(z0, z1) -> U51(z0, z1) a__U52(tt) -> tt a__U52(z0) -> U52(z0) a__U61(tt, z0, z1) -> a__U62(a__isNat(z1), z0) a__U61(z0, z1, z2) -> U61(z0, z1, z2) a__U62(tt, z0) -> s(a__length(mark(z0))) a__U62(z0, z1) -> U62(z0, z1) a__isNat(0) -> tt a__isNat(length(z0)) -> a__U11(a__isNatList(z0)) a__isNat(s(z0)) -> a__U21(a__isNat(z0)) a__isNat(z0) -> isNat(z0) a__isNatIList(z0) -> a__U31(a__isNatList(z0)) a__isNatIList(zeros) -> tt a__isNatIList(cons(z0, z1)) -> a__U41(a__isNat(z0), z1) a__isNatIList(z0) -> isNatIList(z0) a__isNatList(nil) -> tt a__isNatList(cons(z0, z1)) -> a__U51(a__isNat(z0), z1) a__isNatList(z0) -> isNatList(z0) a__length(nil) -> 0 a__length(cons(z0, z1)) -> a__U61(a__isNatList(z1), z1, z0) a__length(z0) -> length(z0) mark(zeros) -> a__zeros mark(U11(z0)) -> a__U11(mark(z0)) mark(U21(z0)) -> a__U21(mark(z0)) mark(U31(z0)) -> a__U31(mark(z0)) mark(U41(z0, z1)) -> a__U41(mark(z0), z1) mark(U42(z0)) -> a__U42(mark(z0)) mark(isNatIList(z0)) -> a__isNatIList(z0) mark(U51(z0, z1)) -> a__U51(mark(z0), z1) mark(U52(z0)) -> a__U52(mark(z0)) mark(isNatList(z0)) -> a__isNatList(z0) mark(U61(z0, z1, z2)) -> a__U61(mark(z0), z1, z2) mark(U62(z0, z1)) -> a__U62(mark(z0), z1) mark(isNat(z0)) -> a__isNat(z0) mark(length(z0)) -> a__length(mark(z0)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(0) -> 0 mark(tt) -> tt mark(s(z0)) -> s(mark(z0)) mark(nil) -> nil Tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) A__U62(tt, isNatList(cons(z0, z1))) -> c18(A__LENGTH(a__U51(a__isNat(z0), z1)), MARK(isNatList(cons(z0, z1)))) A__U62(tt, isNatList(nil)) -> c18(MARK(isNatList(nil))) A__U62(tt, isNatList(z0)) -> c18(MARK(isNatList(z0))) A__U62(tt, U61(zeros, x1, x2)) -> c18(A__LENGTH(a__U61(a__zeros, x1, x2)), MARK(U61(zeros, x1, x2))) A__U62(tt, U61(U11(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U11(mark(z0)), x1, x2)), MARK(U61(U11(z0), x1, x2))) A__U62(tt, U61(U21(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U21(mark(z0)), x1, x2)), MARK(U61(U21(z0), x1, x2))) A__U62(tt, U61(U31(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U31(mark(z0)), x1, x2)), MARK(U61(U31(z0), x1, x2))) A__U62(tt, U61(U41(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U41(mark(z0), z1), x1, x2)), MARK(U61(U41(z0, z1), x1, x2))) A__U62(tt, U61(U42(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U42(mark(z0)), x1, x2)), MARK(U61(U42(z0), x1, x2))) A__U62(tt, U61(isNatIList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatIList(z0), x1, x2)), MARK(U61(isNatIList(z0), x1, x2))) A__U62(tt, U61(U51(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U51(mark(z0), z1), x1, x2)), MARK(U61(U51(z0, z1), x1, x2))) A__U62(tt, U61(U52(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U52(mark(z0)), x1, x2)), MARK(U61(U52(z0), x1, x2))) A__U62(tt, U61(isNatList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatList(z0), x1, x2)), MARK(U61(isNatList(z0), x1, x2))) A__U62(tt, U61(U61(z0, z1, z2), x1, x2)) -> c18(A__LENGTH(a__U61(a__U61(mark(z0), z1, z2), x1, x2)), MARK(U61(U61(z0, z1, z2), x1, x2))) A__U62(tt, U61(U62(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U62(mark(z0), z1), x1, x2)), MARK(U61(U62(z0, z1), x1, x2))) A__U62(tt, U61(isNat(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNat(z0), x1, x2)), MARK(U61(isNat(z0), x1, x2))) A__U62(tt, U61(length(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__length(mark(z0)), x1, x2)), MARK(U61(length(z0), x1, x2))) A__U62(tt, U61(cons(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(cons(mark(z0), z1), x1, x2)), MARK(U61(cons(z0, z1), x1, x2))) A__U62(tt, U61(tt, x1, x2)) -> c18(A__LENGTH(a__U61(tt, x1, x2)), MARK(U61(tt, x1, x2))) A__U62(tt, U61(s(z0), x1, x2)) -> c18(A__LENGTH(a__U61(s(mark(z0)), x1, x2)), MARK(U61(s(z0), x1, x2))) A__U62(tt, U61(x0, z1, z2)) -> c18(MARK(U61(x0, z1, z2))) A__U62(tt, U61(0, x1, x2)) -> c18(A__LENGTH(a__U61(0, x1, x2))) A__U62(tt, U61(nil, x1, x2)) -> c18(A__LENGTH(a__U61(nil, x1, x2))) A__U62(tt, U62(zeros, x1)) -> c18(A__LENGTH(a__U62(a__zeros, x1)), MARK(U62(zeros, x1))) A__U62(tt, U62(U11(z0), x1)) -> c18(A__LENGTH(a__U62(a__U11(mark(z0)), x1)), MARK(U62(U11(z0), x1))) A__U62(tt, U62(U21(z0), x1)) -> c18(A__LENGTH(a__U62(a__U21(mark(z0)), x1)), MARK(U62(U21(z0), x1))) A__U62(tt, U62(U31(z0), x1)) -> c18(A__LENGTH(a__U62(a__U31(mark(z0)), x1)), MARK(U62(U31(z0), x1))) A__U62(tt, U62(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U41(mark(z0), z1), x1)), MARK(U62(U41(z0, z1), x1))) A__U62(tt, U62(U42(z0), x1)) -> c18(A__LENGTH(a__U62(a__U42(mark(z0)), x1)), MARK(U62(U42(z0), x1))) A__U62(tt, U62(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatIList(z0), x1)), MARK(U62(isNatIList(z0), x1))) A__U62(tt, U62(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U51(mark(z0), z1), x1)), MARK(U62(U51(z0, z1), x1))) A__U62(tt, U62(U52(z0), x1)) -> c18(A__LENGTH(a__U62(a__U52(mark(z0)), x1)), MARK(U62(U52(z0), x1))) A__U62(tt, U62(isNatList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatList(z0), x1)), MARK(U62(isNatList(z0), x1))) A__U62(tt, U62(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U62(a__U61(mark(z0), z1, z2), x1)), MARK(U62(U61(z0, z1, z2), x1))) A__U62(tt, U62(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U62(mark(z0), z1), x1)), MARK(U62(U62(z0, z1), x1))) A__U62(tt, U62(isNat(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNat(z0), x1)), MARK(U62(isNat(z0), x1))) A__U62(tt, U62(length(z0), x1)) -> c18(A__LENGTH(a__U62(a__length(mark(z0)), x1)), MARK(U62(length(z0), x1))) A__U62(tt, U62(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U62(cons(mark(z0), z1), x1)), MARK(U62(cons(z0, z1), x1))) A__U62(tt, U62(tt, x1)) -> c18(A__LENGTH(a__U62(tt, x1)), MARK(U62(tt, x1))) A__U62(tt, U62(s(z0), x1)) -> c18(A__LENGTH(a__U62(s(mark(z0)), x1)), MARK(U62(s(z0), x1))) A__U62(tt, U62(x0, z1)) -> c18(MARK(U62(x0, z1))) A__U62(tt, U62(0, x1)) -> c18(A__LENGTH(a__U62(0, x1))) A__U62(tt, U62(nil, x1)) -> c18(A__LENGTH(a__U62(nil, x1))) A__U62(tt, isNat(length(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(isNat(length(z0)))) A__U62(tt, isNat(s(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(isNat(s(z0)))) A__U62(tt, isNat(0)) -> c18(MARK(isNat(0))) A__U62(tt, isNat(z0)) -> c18(MARK(isNat(z0))) A__U62(tt, length(zeros)) -> c18(A__LENGTH(a__length(a__zeros)), MARK(length(zeros))) A__U62(tt, length(U11(z0))) -> c18(A__LENGTH(a__length(a__U11(mark(z0)))), MARK(length(U11(z0)))) A__U62(tt, length(U21(z0))) -> c18(A__LENGTH(a__length(a__U21(mark(z0)))), MARK(length(U21(z0)))) A__U62(tt, length(U31(z0))) -> c18(A__LENGTH(a__length(a__U31(mark(z0)))), MARK(length(U31(z0)))) A__U62(tt, length(U41(z0, z1))) -> c18(A__LENGTH(a__length(a__U41(mark(z0), z1))), MARK(length(U41(z0, z1)))) A__U62(tt, length(U42(z0))) -> c18(A__LENGTH(a__length(a__U42(mark(z0)))), MARK(length(U42(z0)))) A__U62(tt, length(isNatIList(z0))) -> c18(A__LENGTH(a__length(a__isNatIList(z0))), MARK(length(isNatIList(z0)))) A__U62(tt, length(U51(z0, z1))) -> c18(A__LENGTH(a__length(a__U51(mark(z0), z1))), MARK(length(U51(z0, z1)))) A__U62(tt, length(U52(z0))) -> c18(A__LENGTH(a__length(a__U52(mark(z0)))), MARK(length(U52(z0)))) A__U62(tt, length(isNatList(z0))) -> c18(A__LENGTH(a__length(a__isNatList(z0))), MARK(length(isNatList(z0)))) A__U62(tt, length(U61(z0, z1, z2))) -> c18(A__LENGTH(a__length(a__U61(mark(z0), z1, z2))), MARK(length(U61(z0, z1, z2)))) A__U62(tt, length(U62(z0, z1))) -> c18(A__LENGTH(a__length(a__U62(mark(z0), z1))), MARK(length(U62(z0, z1)))) A__U62(tt, length(isNat(z0))) -> c18(A__LENGTH(a__length(a__isNat(z0))), MARK(length(isNat(z0)))) A__U62(tt, length(length(z0))) -> c18(A__LENGTH(a__length(a__length(mark(z0)))), MARK(length(length(z0)))) A__U62(tt, length(cons(z0, z1))) -> c18(A__LENGTH(a__length(cons(mark(z0), z1))), MARK(length(cons(z0, z1)))) A__U62(tt, length(s(z0))) -> c18(A__LENGTH(a__length(s(mark(z0)))), MARK(length(s(z0)))) A__U62(tt, length(x0)) -> c18(MARK(length(x0))) A__U62(tt, length(0)) -> c18(A__LENGTH(a__length(0))) A__U62(tt, length(tt)) -> c18(A__LENGTH(a__length(tt))) A__U62(tt, length(nil)) -> c18(A__LENGTH(a__length(nil))) A__U62(tt, zeros) -> c18(A__LENGTH(cons(0, zeros))) A__ISNATILIST(cons(length(nil), x1)) -> c26(A__U41(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATILIST(cons(length(cons(z0, z1)), x1)) -> c26(A__U41(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(length(x0), x1)) -> c26(A__ISNAT(length(x0))) A__ISNATILIST(cons(s(0), x1)) -> c26(A__U41(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATILIST(cons(s(length(z0)), x1)) -> c26(A__U41(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATILIST(cons(s(s(z0)), x1)) -> c26(A__U41(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(s(x0), x1)) -> c26(A__ISNAT(s(x0))) A__ISNATLIST(cons(length(nil), x1)) -> c29(A__U51(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATLIST(cons(length(cons(z0, z1)), x1)) -> c29(A__U51(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(length(x0), x1)) -> c29(A__ISNAT(length(x0))) A__ISNATLIST(cons(s(0), x1)) -> c29(A__U51(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATLIST(cons(s(length(z0)), x1)) -> c29(A__U51(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATLIST(cons(s(s(z0)), x1)) -> c29(A__U51(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(s(x0), x1)) -> c29(A__ISNAT(s(x0))) A__LENGTH(cons(x0, cons(0, x2))) -> c32(A__U61(a__U51(tt, x2), cons(0, x2), x0), A__ISNATLIST(cons(0, x2))) A__LENGTH(cons(x0, cons(length(z0), x2))) -> c32(A__U61(a__U51(a__U11(a__isNatList(z0)), x2), cons(length(z0), x2), x0), A__ISNATLIST(cons(length(z0), x2))) A__LENGTH(cons(x0, cons(s(z0), x2))) -> c32(A__U61(a__U51(a__U21(a__isNat(z0)), x2), cons(s(z0), x2), x0), A__ISNATLIST(cons(s(z0), x2))) A__LENGTH(cons(x0, cons(z0, x2))) -> c32(A__U61(a__U51(isNat(z0), x2), cons(z0, x2), x0), A__ISNATLIST(cons(z0, x2))) A__LENGTH(cons(x0, cons(x1, z1))) -> c32(A__ISNATLIST(cons(x1, z1))) MARK(U41(U11(zeros), x1)) -> c38(A__U41(a__U11(a__zeros), x1), MARK(U11(zeros))) MARK(U41(U11(U11(z0)), x1)) -> c38(A__U41(a__U11(a__U11(mark(z0))), x1), MARK(U11(U11(z0)))) MARK(U41(U11(U21(z0)), x1)) -> c38(A__U41(a__U11(a__U21(mark(z0))), x1), MARK(U11(U21(z0)))) MARK(U41(U11(U31(z0)), x1)) -> c38(A__U41(a__U11(a__U31(mark(z0))), x1), MARK(U11(U31(z0)))) MARK(U41(U11(U41(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U41(mark(z0), z1)), x1), MARK(U11(U41(z0, z1)))) MARK(U41(U11(U42(z0)), x1)) -> c38(A__U41(a__U11(a__U42(mark(z0))), x1), MARK(U11(U42(z0)))) MARK(U41(U11(isNatIList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatIList(z0)), x1), MARK(U11(isNatIList(z0)))) MARK(U41(U11(U51(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U51(mark(z0), z1)), x1), MARK(U11(U51(z0, z1)))) MARK(U41(U11(U52(z0)), x1)) -> c38(A__U41(a__U11(a__U52(mark(z0))), x1), MARK(U11(U52(z0)))) MARK(U41(U11(isNatList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatList(z0)), x1), MARK(U11(isNatList(z0)))) MARK(U41(U11(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U11(a__U61(mark(z0), z1, z2)), x1), MARK(U11(U61(z0, z1, z2)))) MARK(U41(U11(U62(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U62(mark(z0), z1)), x1), MARK(U11(U62(z0, z1)))) MARK(U41(U11(isNat(z0)), x1)) -> c38(A__U41(a__U11(a__isNat(z0)), x1), MARK(U11(isNat(z0)))) MARK(U41(U11(length(z0)), x1)) -> c38(A__U41(a__U11(a__length(mark(z0))), x1), MARK(U11(length(z0)))) MARK(U41(U11(cons(z0, z1)), x1)) -> c38(A__U41(a__U11(cons(mark(z0), z1)), x1), MARK(U11(cons(z0, z1)))) MARK(U41(U11(0), x1)) -> c38(A__U41(a__U11(0), x1), MARK(U11(0))) MARK(U41(U11(tt), x1)) -> c38(A__U41(a__U11(tt), x1), MARK(U11(tt))) MARK(U41(U11(s(z0)), x1)) -> c38(A__U41(a__U11(s(mark(z0))), x1), MARK(U11(s(z0)))) MARK(U41(U11(nil), x1)) -> c38(A__U41(a__U11(nil), x1), MARK(U11(nil))) MARK(U41(U11(x0), x1)) -> c38(MARK(U11(x0))) S tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) A__U62(tt, isNatList(cons(z0, z1))) -> c18(A__LENGTH(a__U51(a__isNat(z0), z1)), MARK(isNatList(cons(z0, z1)))) A__U62(tt, isNatList(nil)) -> c18(MARK(isNatList(nil))) A__U62(tt, isNatList(z0)) -> c18(MARK(isNatList(z0))) A__U62(tt, U61(zeros, x1, x2)) -> c18(A__LENGTH(a__U61(a__zeros, x1, x2)), MARK(U61(zeros, x1, x2))) A__U62(tt, U61(U11(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U11(mark(z0)), x1, x2)), MARK(U61(U11(z0), x1, x2))) A__U62(tt, U61(U21(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U21(mark(z0)), x1, x2)), MARK(U61(U21(z0), x1, x2))) A__U62(tt, U61(U31(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U31(mark(z0)), x1, x2)), MARK(U61(U31(z0), x1, x2))) A__U62(tt, U61(U41(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U41(mark(z0), z1), x1, x2)), MARK(U61(U41(z0, z1), x1, x2))) A__U62(tt, U61(U42(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U42(mark(z0)), x1, x2)), MARK(U61(U42(z0), x1, x2))) A__U62(tt, U61(isNatIList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatIList(z0), x1, x2)), MARK(U61(isNatIList(z0), x1, x2))) A__U62(tt, U61(U51(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U51(mark(z0), z1), x1, x2)), MARK(U61(U51(z0, z1), x1, x2))) A__U62(tt, U61(U52(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U52(mark(z0)), x1, x2)), MARK(U61(U52(z0), x1, x2))) A__U62(tt, U61(isNatList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatList(z0), x1, x2)), MARK(U61(isNatList(z0), x1, x2))) A__U62(tt, U61(U61(z0, z1, z2), x1, x2)) -> c18(A__LENGTH(a__U61(a__U61(mark(z0), z1, z2), x1, x2)), MARK(U61(U61(z0, z1, z2), x1, x2))) A__U62(tt, U61(U62(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U62(mark(z0), z1), x1, x2)), MARK(U61(U62(z0, z1), x1, x2))) A__U62(tt, U61(isNat(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNat(z0), x1, x2)), MARK(U61(isNat(z0), x1, x2))) A__U62(tt, U61(length(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__length(mark(z0)), x1, x2)), MARK(U61(length(z0), x1, x2))) A__U62(tt, U61(cons(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(cons(mark(z0), z1), x1, x2)), MARK(U61(cons(z0, z1), x1, x2))) A__U62(tt, U61(tt, x1, x2)) -> c18(A__LENGTH(a__U61(tt, x1, x2)), MARK(U61(tt, x1, x2))) A__U62(tt, U61(s(z0), x1, x2)) -> c18(A__LENGTH(a__U61(s(mark(z0)), x1, x2)), MARK(U61(s(z0), x1, x2))) A__U62(tt, U61(x0, z1, z2)) -> c18(MARK(U61(x0, z1, z2))) A__U62(tt, U61(0, x1, x2)) -> c18(A__LENGTH(a__U61(0, x1, x2))) A__U62(tt, U61(nil, x1, x2)) -> c18(A__LENGTH(a__U61(nil, x1, x2))) A__U62(tt, U62(zeros, x1)) -> c18(A__LENGTH(a__U62(a__zeros, x1)), MARK(U62(zeros, x1))) A__U62(tt, U62(U11(z0), x1)) -> c18(A__LENGTH(a__U62(a__U11(mark(z0)), x1)), MARK(U62(U11(z0), x1))) A__U62(tt, U62(U21(z0), x1)) -> c18(A__LENGTH(a__U62(a__U21(mark(z0)), x1)), MARK(U62(U21(z0), x1))) A__U62(tt, U62(U31(z0), x1)) -> c18(A__LENGTH(a__U62(a__U31(mark(z0)), x1)), MARK(U62(U31(z0), x1))) A__U62(tt, U62(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U41(mark(z0), z1), x1)), MARK(U62(U41(z0, z1), x1))) A__U62(tt, U62(U42(z0), x1)) -> c18(A__LENGTH(a__U62(a__U42(mark(z0)), x1)), MARK(U62(U42(z0), x1))) A__U62(tt, U62(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatIList(z0), x1)), MARK(U62(isNatIList(z0), x1))) A__U62(tt, U62(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U51(mark(z0), z1), x1)), MARK(U62(U51(z0, z1), x1))) A__U62(tt, U62(U52(z0), x1)) -> c18(A__LENGTH(a__U62(a__U52(mark(z0)), x1)), MARK(U62(U52(z0), x1))) A__U62(tt, U62(isNatList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatList(z0), x1)), MARK(U62(isNatList(z0), x1))) A__U62(tt, U62(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U62(a__U61(mark(z0), z1, z2), x1)), MARK(U62(U61(z0, z1, z2), x1))) A__U62(tt, U62(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U62(mark(z0), z1), x1)), MARK(U62(U62(z0, z1), x1))) A__U62(tt, U62(isNat(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNat(z0), x1)), MARK(U62(isNat(z0), x1))) A__U62(tt, U62(length(z0), x1)) -> c18(A__LENGTH(a__U62(a__length(mark(z0)), x1)), MARK(U62(length(z0), x1))) A__U62(tt, U62(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U62(cons(mark(z0), z1), x1)), MARK(U62(cons(z0, z1), x1))) A__U62(tt, U62(tt, x1)) -> c18(A__LENGTH(a__U62(tt, x1)), MARK(U62(tt, x1))) A__U62(tt, U62(s(z0), x1)) -> c18(A__LENGTH(a__U62(s(mark(z0)), x1)), MARK(U62(s(z0), x1))) A__U62(tt, U62(x0, z1)) -> c18(MARK(U62(x0, z1))) A__U62(tt, U62(0, x1)) -> c18(A__LENGTH(a__U62(0, x1))) A__U62(tt, U62(nil, x1)) -> c18(A__LENGTH(a__U62(nil, x1))) A__U62(tt, isNat(length(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(isNat(length(z0)))) A__U62(tt, isNat(s(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(isNat(s(z0)))) A__U62(tt, isNat(0)) -> c18(MARK(isNat(0))) A__U62(tt, isNat(z0)) -> c18(MARK(isNat(z0))) A__U62(tt, length(zeros)) -> c18(A__LENGTH(a__length(a__zeros)), MARK(length(zeros))) A__U62(tt, length(U11(z0))) -> c18(A__LENGTH(a__length(a__U11(mark(z0)))), MARK(length(U11(z0)))) A__U62(tt, length(U21(z0))) -> c18(A__LENGTH(a__length(a__U21(mark(z0)))), MARK(length(U21(z0)))) A__U62(tt, length(U31(z0))) -> c18(A__LENGTH(a__length(a__U31(mark(z0)))), MARK(length(U31(z0)))) A__U62(tt, length(U41(z0, z1))) -> c18(A__LENGTH(a__length(a__U41(mark(z0), z1))), MARK(length(U41(z0, z1)))) A__U62(tt, length(U42(z0))) -> c18(A__LENGTH(a__length(a__U42(mark(z0)))), MARK(length(U42(z0)))) A__U62(tt, length(isNatIList(z0))) -> c18(A__LENGTH(a__length(a__isNatIList(z0))), MARK(length(isNatIList(z0)))) A__U62(tt, length(U51(z0, z1))) -> c18(A__LENGTH(a__length(a__U51(mark(z0), z1))), MARK(length(U51(z0, z1)))) A__U62(tt, length(U52(z0))) -> c18(A__LENGTH(a__length(a__U52(mark(z0)))), MARK(length(U52(z0)))) A__U62(tt, length(isNatList(z0))) -> c18(A__LENGTH(a__length(a__isNatList(z0))), MARK(length(isNatList(z0)))) A__U62(tt, length(U61(z0, z1, z2))) -> c18(A__LENGTH(a__length(a__U61(mark(z0), z1, z2))), MARK(length(U61(z0, z1, z2)))) A__U62(tt, length(U62(z0, z1))) -> c18(A__LENGTH(a__length(a__U62(mark(z0), z1))), MARK(length(U62(z0, z1)))) A__U62(tt, length(isNat(z0))) -> c18(A__LENGTH(a__length(a__isNat(z0))), MARK(length(isNat(z0)))) A__U62(tt, length(length(z0))) -> c18(A__LENGTH(a__length(a__length(mark(z0)))), MARK(length(length(z0)))) A__U62(tt, length(cons(z0, z1))) -> c18(A__LENGTH(a__length(cons(mark(z0), z1))), MARK(length(cons(z0, z1)))) A__U62(tt, length(s(z0))) -> c18(A__LENGTH(a__length(s(mark(z0)))), MARK(length(s(z0)))) A__U62(tt, length(x0)) -> c18(MARK(length(x0))) A__U62(tt, length(0)) -> c18(A__LENGTH(a__length(0))) A__U62(tt, length(tt)) -> c18(A__LENGTH(a__length(tt))) A__U62(tt, length(nil)) -> c18(A__LENGTH(a__length(nil))) A__U62(tt, zeros) -> c18(A__LENGTH(cons(0, zeros))) A__ISNATILIST(cons(length(nil), x1)) -> c26(A__U41(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATILIST(cons(length(cons(z0, z1)), x1)) -> c26(A__U41(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(length(x0), x1)) -> c26(A__ISNAT(length(x0))) A__ISNATILIST(cons(s(0), x1)) -> c26(A__U41(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATILIST(cons(s(length(z0)), x1)) -> c26(A__U41(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATILIST(cons(s(s(z0)), x1)) -> c26(A__U41(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(s(x0), x1)) -> c26(A__ISNAT(s(x0))) A__ISNATLIST(cons(length(nil), x1)) -> c29(A__U51(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATLIST(cons(length(cons(z0, z1)), x1)) -> c29(A__U51(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(length(x0), x1)) -> c29(A__ISNAT(length(x0))) A__ISNATLIST(cons(s(0), x1)) -> c29(A__U51(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATLIST(cons(s(length(z0)), x1)) -> c29(A__U51(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATLIST(cons(s(s(z0)), x1)) -> c29(A__U51(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(s(x0), x1)) -> c29(A__ISNAT(s(x0))) A__LENGTH(cons(x0, cons(0, x2))) -> c32(A__U61(a__U51(tt, x2), cons(0, x2), x0), A__ISNATLIST(cons(0, x2))) A__LENGTH(cons(x0, cons(length(z0), x2))) -> c32(A__U61(a__U51(a__U11(a__isNatList(z0)), x2), cons(length(z0), x2), x0), A__ISNATLIST(cons(length(z0), x2))) A__LENGTH(cons(x0, cons(s(z0), x2))) -> c32(A__U61(a__U51(a__U21(a__isNat(z0)), x2), cons(s(z0), x2), x0), A__ISNATLIST(cons(s(z0), x2))) A__LENGTH(cons(x0, cons(z0, x2))) -> c32(A__U61(a__U51(isNat(z0), x2), cons(z0, x2), x0), A__ISNATLIST(cons(z0, x2))) A__LENGTH(cons(x0, cons(x1, z1))) -> c32(A__ISNATLIST(cons(x1, z1))) MARK(U41(U11(zeros), x1)) -> c38(A__U41(a__U11(a__zeros), x1), MARK(U11(zeros))) MARK(U41(U11(U11(z0)), x1)) -> c38(A__U41(a__U11(a__U11(mark(z0))), x1), MARK(U11(U11(z0)))) MARK(U41(U11(U21(z0)), x1)) -> c38(A__U41(a__U11(a__U21(mark(z0))), x1), MARK(U11(U21(z0)))) MARK(U41(U11(U31(z0)), x1)) -> c38(A__U41(a__U11(a__U31(mark(z0))), x1), MARK(U11(U31(z0)))) MARK(U41(U11(U41(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U41(mark(z0), z1)), x1), MARK(U11(U41(z0, z1)))) MARK(U41(U11(U42(z0)), x1)) -> c38(A__U41(a__U11(a__U42(mark(z0))), x1), MARK(U11(U42(z0)))) MARK(U41(U11(isNatIList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatIList(z0)), x1), MARK(U11(isNatIList(z0)))) MARK(U41(U11(U51(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U51(mark(z0), z1)), x1), MARK(U11(U51(z0, z1)))) MARK(U41(U11(U52(z0)), x1)) -> c38(A__U41(a__U11(a__U52(mark(z0))), x1), MARK(U11(U52(z0)))) MARK(U41(U11(isNatList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatList(z0)), x1), MARK(U11(isNatList(z0)))) MARK(U41(U11(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U11(a__U61(mark(z0), z1, z2)), x1), MARK(U11(U61(z0, z1, z2)))) MARK(U41(U11(U62(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U62(mark(z0), z1)), x1), MARK(U11(U62(z0, z1)))) MARK(U41(U11(isNat(z0)), x1)) -> c38(A__U41(a__U11(a__isNat(z0)), x1), MARK(U11(isNat(z0)))) MARK(U41(U11(length(z0)), x1)) -> c38(A__U41(a__U11(a__length(mark(z0))), x1), MARK(U11(length(z0)))) MARK(U41(U11(cons(z0, z1)), x1)) -> c38(A__U41(a__U11(cons(mark(z0), z1)), x1), MARK(U11(cons(z0, z1)))) MARK(U41(U11(0), x1)) -> c38(A__U41(a__U11(0), x1), MARK(U11(0))) MARK(U41(U11(tt), x1)) -> c38(A__U41(a__U11(tt), x1), MARK(U11(tt))) MARK(U41(U11(s(z0)), x1)) -> c38(A__U41(a__U11(s(mark(z0))), x1), MARK(U11(s(z0)))) MARK(U41(U11(nil), x1)) -> c38(A__U41(a__U11(nil), x1), MARK(U11(nil))) MARK(U41(U11(x0), x1)) -> c38(MARK(U11(x0))) K tuples:none Defined Rule Symbols: a__zeros, a__U11_1, a__U21_1, a__U31_1, a__U41_2, a__U42_1, a__U51_2, a__U52_1, a__U61_3, a__U62_2, a__isNat_1, a__isNatIList_1, a__isNatList_1, a__length_1, mark_1 Defined Pair Symbols: MARK_1, A__U41_2, A__U51_2, A__ISNAT_1, A__ISNATILIST_1, A__U61_3, A__U62_2, A__ISNATLIST_1, A__LENGTH_1 Compound Symbols: c40_1, c43_1, c46_1, c48_1, c51_1, c8_1, c12_1, c21_1, c22_1, c24_1, c35_1, c36_1, c37_1, c39_1, c42_1, c16_1, c18_2, c18_1, c26_1, c29_1, c32_1, c38_2, c38_1, c_1, c41_2, c41_1, c1_1, c44_2, c44_1, c45_2, c45_1, c47_2, c47_1, c16_2, c26_2, c29_2, c32_2 ---------------------------------------- (173) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace MARK(U41(U21(z0), x1)) -> c38(A__U41(a__U21(mark(z0)), x1), MARK(U21(z0))) by MARK(U41(U21(x0), x1)) -> c38(A__U41(U21(mark(x0)), x1), MARK(U21(x0))) MARK(U41(U21(zeros), x1)) -> c38(A__U41(a__U21(a__zeros), x1), MARK(U21(zeros))) MARK(U41(U21(U11(z0)), x1)) -> c38(A__U41(a__U21(a__U11(mark(z0))), x1), MARK(U21(U11(z0)))) MARK(U41(U21(U21(z0)), x1)) -> c38(A__U41(a__U21(a__U21(mark(z0))), x1), MARK(U21(U21(z0)))) MARK(U41(U21(U31(z0)), x1)) -> c38(A__U41(a__U21(a__U31(mark(z0))), x1), MARK(U21(U31(z0)))) MARK(U41(U21(U41(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U41(mark(z0), z1)), x1), MARK(U21(U41(z0, z1)))) MARK(U41(U21(U42(z0)), x1)) -> c38(A__U41(a__U21(a__U42(mark(z0))), x1), MARK(U21(U42(z0)))) MARK(U41(U21(isNatIList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatIList(z0)), x1), MARK(U21(isNatIList(z0)))) MARK(U41(U21(U51(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U51(mark(z0), z1)), x1), MARK(U21(U51(z0, z1)))) MARK(U41(U21(U52(z0)), x1)) -> c38(A__U41(a__U21(a__U52(mark(z0))), x1), MARK(U21(U52(z0)))) MARK(U41(U21(isNatList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatList(z0)), x1), MARK(U21(isNatList(z0)))) MARK(U41(U21(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U21(a__U61(mark(z0), z1, z2)), x1), MARK(U21(U61(z0, z1, z2)))) MARK(U41(U21(U62(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U62(mark(z0), z1)), x1), MARK(U21(U62(z0, z1)))) MARK(U41(U21(isNat(z0)), x1)) -> c38(A__U41(a__U21(a__isNat(z0)), x1), MARK(U21(isNat(z0)))) MARK(U41(U21(length(z0)), x1)) -> c38(A__U41(a__U21(a__length(mark(z0))), x1), MARK(U21(length(z0)))) MARK(U41(U21(cons(z0, z1)), x1)) -> c38(A__U41(a__U21(cons(mark(z0), z1)), x1), MARK(U21(cons(z0, z1)))) MARK(U41(U21(0), x1)) -> c38(A__U41(a__U21(0), x1), MARK(U21(0))) MARK(U41(U21(tt), x1)) -> c38(A__U41(a__U21(tt), x1), MARK(U21(tt))) MARK(U41(U21(s(z0)), x1)) -> c38(A__U41(a__U21(s(mark(z0))), x1), MARK(U21(s(z0)))) MARK(U41(U21(nil), x1)) -> c38(A__U41(a__U21(nil), x1), MARK(U21(nil))) MARK(U41(U21(x0), x1)) -> c38(MARK(U21(x0))) ---------------------------------------- (174) Obligation: Complexity Dependency Tuples Problem Rules: a__zeros -> cons(0, zeros) a__zeros -> zeros a__U11(tt) -> tt a__U11(z0) -> U11(z0) a__U21(tt) -> tt a__U21(z0) -> U21(z0) a__U31(tt) -> tt a__U31(z0) -> U31(z0) a__U41(tt, z0) -> a__U42(a__isNatIList(z0)) a__U41(z0, z1) -> U41(z0, z1) a__U42(tt) -> tt a__U42(z0) -> U42(z0) a__U51(tt, z0) -> a__U52(a__isNatList(z0)) a__U51(z0, z1) -> U51(z0, z1) a__U52(tt) -> tt a__U52(z0) -> U52(z0) a__U61(tt, z0, z1) -> a__U62(a__isNat(z1), z0) a__U61(z0, z1, z2) -> U61(z0, z1, z2) a__U62(tt, z0) -> s(a__length(mark(z0))) a__U62(z0, z1) -> U62(z0, z1) a__isNat(0) -> tt a__isNat(length(z0)) -> a__U11(a__isNatList(z0)) a__isNat(s(z0)) -> a__U21(a__isNat(z0)) a__isNat(z0) -> isNat(z0) a__isNatIList(z0) -> a__U31(a__isNatList(z0)) a__isNatIList(zeros) -> tt a__isNatIList(cons(z0, z1)) -> a__U41(a__isNat(z0), z1) a__isNatIList(z0) -> isNatIList(z0) a__isNatList(nil) -> tt a__isNatList(cons(z0, z1)) -> a__U51(a__isNat(z0), z1) a__isNatList(z0) -> isNatList(z0) a__length(nil) -> 0 a__length(cons(z0, z1)) -> a__U61(a__isNatList(z1), z1, z0) a__length(z0) -> length(z0) mark(zeros) -> a__zeros mark(U11(z0)) -> a__U11(mark(z0)) mark(U21(z0)) -> a__U21(mark(z0)) mark(U31(z0)) -> a__U31(mark(z0)) mark(U41(z0, z1)) -> a__U41(mark(z0), z1) mark(U42(z0)) -> a__U42(mark(z0)) mark(isNatIList(z0)) -> a__isNatIList(z0) mark(U51(z0, z1)) -> a__U51(mark(z0), z1) mark(U52(z0)) -> a__U52(mark(z0)) mark(isNatList(z0)) -> a__isNatList(z0) mark(U61(z0, z1, z2)) -> a__U61(mark(z0), z1, z2) mark(U62(z0, z1)) -> a__U62(mark(z0), z1) mark(isNat(z0)) -> a__isNat(z0) mark(length(z0)) -> a__length(mark(z0)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(0) -> 0 mark(tt) -> tt mark(s(z0)) -> s(mark(z0)) mark(nil) -> nil Tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) A__U62(tt, isNatList(cons(z0, z1))) -> c18(A__LENGTH(a__U51(a__isNat(z0), z1)), MARK(isNatList(cons(z0, z1)))) A__U62(tt, isNatList(nil)) -> c18(MARK(isNatList(nil))) A__U62(tt, isNatList(z0)) -> c18(MARK(isNatList(z0))) A__U62(tt, U61(zeros, x1, x2)) -> c18(A__LENGTH(a__U61(a__zeros, x1, x2)), MARK(U61(zeros, x1, x2))) A__U62(tt, U61(U11(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U11(mark(z0)), x1, x2)), MARK(U61(U11(z0), x1, x2))) A__U62(tt, U61(U21(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U21(mark(z0)), x1, x2)), MARK(U61(U21(z0), x1, x2))) A__U62(tt, U61(U31(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U31(mark(z0)), x1, x2)), MARK(U61(U31(z0), x1, x2))) A__U62(tt, U61(U41(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U41(mark(z0), z1), x1, x2)), MARK(U61(U41(z0, z1), x1, x2))) A__U62(tt, U61(U42(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U42(mark(z0)), x1, x2)), MARK(U61(U42(z0), x1, x2))) A__U62(tt, U61(isNatIList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatIList(z0), x1, x2)), MARK(U61(isNatIList(z0), x1, x2))) A__U62(tt, U61(U51(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U51(mark(z0), z1), x1, x2)), MARK(U61(U51(z0, z1), x1, x2))) A__U62(tt, U61(U52(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U52(mark(z0)), x1, x2)), MARK(U61(U52(z0), x1, x2))) A__U62(tt, U61(isNatList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatList(z0), x1, x2)), MARK(U61(isNatList(z0), x1, x2))) A__U62(tt, U61(U61(z0, z1, z2), x1, x2)) -> c18(A__LENGTH(a__U61(a__U61(mark(z0), z1, z2), x1, x2)), MARK(U61(U61(z0, z1, z2), x1, x2))) A__U62(tt, U61(U62(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U62(mark(z0), z1), x1, x2)), MARK(U61(U62(z0, z1), x1, x2))) A__U62(tt, U61(isNat(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNat(z0), x1, x2)), MARK(U61(isNat(z0), x1, x2))) A__U62(tt, U61(length(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__length(mark(z0)), x1, x2)), MARK(U61(length(z0), x1, x2))) A__U62(tt, U61(cons(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(cons(mark(z0), z1), x1, x2)), MARK(U61(cons(z0, z1), x1, x2))) A__U62(tt, U61(tt, x1, x2)) -> c18(A__LENGTH(a__U61(tt, x1, x2)), MARK(U61(tt, x1, x2))) A__U62(tt, U61(s(z0), x1, x2)) -> c18(A__LENGTH(a__U61(s(mark(z0)), x1, x2)), MARK(U61(s(z0), x1, x2))) A__U62(tt, U61(x0, z1, z2)) -> c18(MARK(U61(x0, z1, z2))) A__U62(tt, U61(0, x1, x2)) -> c18(A__LENGTH(a__U61(0, x1, x2))) A__U62(tt, U61(nil, x1, x2)) -> c18(A__LENGTH(a__U61(nil, x1, x2))) A__U62(tt, U62(zeros, x1)) -> c18(A__LENGTH(a__U62(a__zeros, x1)), MARK(U62(zeros, x1))) A__U62(tt, U62(U11(z0), x1)) -> c18(A__LENGTH(a__U62(a__U11(mark(z0)), x1)), MARK(U62(U11(z0), x1))) A__U62(tt, U62(U21(z0), x1)) -> c18(A__LENGTH(a__U62(a__U21(mark(z0)), x1)), MARK(U62(U21(z0), x1))) A__U62(tt, U62(U31(z0), x1)) -> c18(A__LENGTH(a__U62(a__U31(mark(z0)), x1)), MARK(U62(U31(z0), x1))) A__U62(tt, U62(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U41(mark(z0), z1), x1)), MARK(U62(U41(z0, z1), x1))) A__U62(tt, U62(U42(z0), x1)) -> c18(A__LENGTH(a__U62(a__U42(mark(z0)), x1)), MARK(U62(U42(z0), x1))) A__U62(tt, U62(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatIList(z0), x1)), MARK(U62(isNatIList(z0), x1))) A__U62(tt, U62(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U51(mark(z0), z1), x1)), MARK(U62(U51(z0, z1), x1))) A__U62(tt, U62(U52(z0), x1)) -> c18(A__LENGTH(a__U62(a__U52(mark(z0)), x1)), MARK(U62(U52(z0), x1))) A__U62(tt, U62(isNatList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatList(z0), x1)), MARK(U62(isNatList(z0), x1))) A__U62(tt, U62(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U62(a__U61(mark(z0), z1, z2), x1)), MARK(U62(U61(z0, z1, z2), x1))) A__U62(tt, U62(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U62(mark(z0), z1), x1)), MARK(U62(U62(z0, z1), x1))) A__U62(tt, U62(isNat(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNat(z0), x1)), MARK(U62(isNat(z0), x1))) A__U62(tt, U62(length(z0), x1)) -> c18(A__LENGTH(a__U62(a__length(mark(z0)), x1)), MARK(U62(length(z0), x1))) A__U62(tt, U62(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U62(cons(mark(z0), z1), x1)), MARK(U62(cons(z0, z1), x1))) A__U62(tt, U62(tt, x1)) -> c18(A__LENGTH(a__U62(tt, x1)), MARK(U62(tt, x1))) A__U62(tt, U62(s(z0), x1)) -> c18(A__LENGTH(a__U62(s(mark(z0)), x1)), MARK(U62(s(z0), x1))) A__U62(tt, U62(x0, z1)) -> c18(MARK(U62(x0, z1))) A__U62(tt, U62(0, x1)) -> c18(A__LENGTH(a__U62(0, x1))) A__U62(tt, U62(nil, x1)) -> c18(A__LENGTH(a__U62(nil, x1))) A__U62(tt, isNat(length(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(isNat(length(z0)))) A__U62(tt, isNat(s(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(isNat(s(z0)))) A__U62(tt, isNat(0)) -> c18(MARK(isNat(0))) A__U62(tt, isNat(z0)) -> c18(MARK(isNat(z0))) A__U62(tt, length(zeros)) -> c18(A__LENGTH(a__length(a__zeros)), MARK(length(zeros))) A__U62(tt, length(U11(z0))) -> c18(A__LENGTH(a__length(a__U11(mark(z0)))), MARK(length(U11(z0)))) A__U62(tt, length(U21(z0))) -> c18(A__LENGTH(a__length(a__U21(mark(z0)))), MARK(length(U21(z0)))) A__U62(tt, length(U31(z0))) -> c18(A__LENGTH(a__length(a__U31(mark(z0)))), MARK(length(U31(z0)))) A__U62(tt, length(U41(z0, z1))) -> c18(A__LENGTH(a__length(a__U41(mark(z0), z1))), MARK(length(U41(z0, z1)))) A__U62(tt, length(U42(z0))) -> c18(A__LENGTH(a__length(a__U42(mark(z0)))), MARK(length(U42(z0)))) A__U62(tt, length(isNatIList(z0))) -> c18(A__LENGTH(a__length(a__isNatIList(z0))), MARK(length(isNatIList(z0)))) A__U62(tt, length(U51(z0, z1))) -> c18(A__LENGTH(a__length(a__U51(mark(z0), z1))), MARK(length(U51(z0, z1)))) A__U62(tt, length(U52(z0))) -> c18(A__LENGTH(a__length(a__U52(mark(z0)))), MARK(length(U52(z0)))) A__U62(tt, length(isNatList(z0))) -> c18(A__LENGTH(a__length(a__isNatList(z0))), MARK(length(isNatList(z0)))) A__U62(tt, length(U61(z0, z1, z2))) -> c18(A__LENGTH(a__length(a__U61(mark(z0), z1, z2))), MARK(length(U61(z0, z1, z2)))) A__U62(tt, length(U62(z0, z1))) -> c18(A__LENGTH(a__length(a__U62(mark(z0), z1))), MARK(length(U62(z0, z1)))) A__U62(tt, length(isNat(z0))) -> c18(A__LENGTH(a__length(a__isNat(z0))), MARK(length(isNat(z0)))) A__U62(tt, length(length(z0))) -> c18(A__LENGTH(a__length(a__length(mark(z0)))), MARK(length(length(z0)))) A__U62(tt, length(cons(z0, z1))) -> c18(A__LENGTH(a__length(cons(mark(z0), z1))), MARK(length(cons(z0, z1)))) A__U62(tt, length(s(z0))) -> c18(A__LENGTH(a__length(s(mark(z0)))), MARK(length(s(z0)))) A__U62(tt, length(x0)) -> c18(MARK(length(x0))) A__U62(tt, length(0)) -> c18(A__LENGTH(a__length(0))) A__U62(tt, length(tt)) -> c18(A__LENGTH(a__length(tt))) A__U62(tt, length(nil)) -> c18(A__LENGTH(a__length(nil))) A__U62(tt, zeros) -> c18(A__LENGTH(cons(0, zeros))) A__ISNATILIST(cons(length(nil), x1)) -> c26(A__U41(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATILIST(cons(length(cons(z0, z1)), x1)) -> c26(A__U41(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(length(x0), x1)) -> c26(A__ISNAT(length(x0))) A__ISNATILIST(cons(s(0), x1)) -> c26(A__U41(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATILIST(cons(s(length(z0)), x1)) -> c26(A__U41(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATILIST(cons(s(s(z0)), x1)) -> c26(A__U41(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(s(x0), x1)) -> c26(A__ISNAT(s(x0))) A__ISNATLIST(cons(length(nil), x1)) -> c29(A__U51(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATLIST(cons(length(cons(z0, z1)), x1)) -> c29(A__U51(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(length(x0), x1)) -> c29(A__ISNAT(length(x0))) A__ISNATLIST(cons(s(0), x1)) -> c29(A__U51(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATLIST(cons(s(length(z0)), x1)) -> c29(A__U51(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATLIST(cons(s(s(z0)), x1)) -> c29(A__U51(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(s(x0), x1)) -> c29(A__ISNAT(s(x0))) A__LENGTH(cons(x0, cons(0, x2))) -> c32(A__U61(a__U51(tt, x2), cons(0, x2), x0), A__ISNATLIST(cons(0, x2))) A__LENGTH(cons(x0, cons(length(z0), x2))) -> c32(A__U61(a__U51(a__U11(a__isNatList(z0)), x2), cons(length(z0), x2), x0), A__ISNATLIST(cons(length(z0), x2))) A__LENGTH(cons(x0, cons(s(z0), x2))) -> c32(A__U61(a__U51(a__U21(a__isNat(z0)), x2), cons(s(z0), x2), x0), A__ISNATLIST(cons(s(z0), x2))) A__LENGTH(cons(x0, cons(z0, x2))) -> c32(A__U61(a__U51(isNat(z0), x2), cons(z0, x2), x0), A__ISNATLIST(cons(z0, x2))) A__LENGTH(cons(x0, cons(x1, z1))) -> c32(A__ISNATLIST(cons(x1, z1))) MARK(U41(U11(zeros), x1)) -> c38(A__U41(a__U11(a__zeros), x1), MARK(U11(zeros))) MARK(U41(U11(U11(z0)), x1)) -> c38(A__U41(a__U11(a__U11(mark(z0))), x1), MARK(U11(U11(z0)))) MARK(U41(U11(U21(z0)), x1)) -> c38(A__U41(a__U11(a__U21(mark(z0))), x1), MARK(U11(U21(z0)))) MARK(U41(U11(U31(z0)), x1)) -> c38(A__U41(a__U11(a__U31(mark(z0))), x1), MARK(U11(U31(z0)))) MARK(U41(U11(U41(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U41(mark(z0), z1)), x1), MARK(U11(U41(z0, z1)))) MARK(U41(U11(U42(z0)), x1)) -> c38(A__U41(a__U11(a__U42(mark(z0))), x1), MARK(U11(U42(z0)))) MARK(U41(U11(isNatIList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatIList(z0)), x1), MARK(U11(isNatIList(z0)))) MARK(U41(U11(U51(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U51(mark(z0), z1)), x1), MARK(U11(U51(z0, z1)))) MARK(U41(U11(U52(z0)), x1)) -> c38(A__U41(a__U11(a__U52(mark(z0))), x1), MARK(U11(U52(z0)))) MARK(U41(U11(isNatList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatList(z0)), x1), MARK(U11(isNatList(z0)))) MARK(U41(U11(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U11(a__U61(mark(z0), z1, z2)), x1), MARK(U11(U61(z0, z1, z2)))) MARK(U41(U11(U62(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U62(mark(z0), z1)), x1), MARK(U11(U62(z0, z1)))) MARK(U41(U11(isNat(z0)), x1)) -> c38(A__U41(a__U11(a__isNat(z0)), x1), MARK(U11(isNat(z0)))) MARK(U41(U11(length(z0)), x1)) -> c38(A__U41(a__U11(a__length(mark(z0))), x1), MARK(U11(length(z0)))) MARK(U41(U11(cons(z0, z1)), x1)) -> c38(A__U41(a__U11(cons(mark(z0), z1)), x1), MARK(U11(cons(z0, z1)))) MARK(U41(U11(0), x1)) -> c38(A__U41(a__U11(0), x1), MARK(U11(0))) MARK(U41(U11(tt), x1)) -> c38(A__U41(a__U11(tt), x1), MARK(U11(tt))) MARK(U41(U11(s(z0)), x1)) -> c38(A__U41(a__U11(s(mark(z0))), x1), MARK(U11(s(z0)))) MARK(U41(U11(nil), x1)) -> c38(A__U41(a__U11(nil), x1), MARK(U11(nil))) MARK(U41(U11(x0), x1)) -> c38(MARK(U11(x0))) MARK(U41(U21(x0), x1)) -> c38(A__U41(U21(mark(x0)), x1), MARK(U21(x0))) MARK(U41(U21(zeros), x1)) -> c38(A__U41(a__U21(a__zeros), x1), MARK(U21(zeros))) MARK(U41(U21(U11(z0)), x1)) -> c38(A__U41(a__U21(a__U11(mark(z0))), x1), MARK(U21(U11(z0)))) MARK(U41(U21(U21(z0)), x1)) -> c38(A__U41(a__U21(a__U21(mark(z0))), x1), MARK(U21(U21(z0)))) MARK(U41(U21(U31(z0)), x1)) -> c38(A__U41(a__U21(a__U31(mark(z0))), x1), MARK(U21(U31(z0)))) MARK(U41(U21(U41(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U41(mark(z0), z1)), x1), MARK(U21(U41(z0, z1)))) MARK(U41(U21(U42(z0)), x1)) -> c38(A__U41(a__U21(a__U42(mark(z0))), x1), MARK(U21(U42(z0)))) MARK(U41(U21(isNatIList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatIList(z0)), x1), MARK(U21(isNatIList(z0)))) MARK(U41(U21(U51(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U51(mark(z0), z1)), x1), MARK(U21(U51(z0, z1)))) MARK(U41(U21(U52(z0)), x1)) -> c38(A__U41(a__U21(a__U52(mark(z0))), x1), MARK(U21(U52(z0)))) MARK(U41(U21(isNatList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatList(z0)), x1), MARK(U21(isNatList(z0)))) MARK(U41(U21(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U21(a__U61(mark(z0), z1, z2)), x1), MARK(U21(U61(z0, z1, z2)))) MARK(U41(U21(U62(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U62(mark(z0), z1)), x1), MARK(U21(U62(z0, z1)))) MARK(U41(U21(isNat(z0)), x1)) -> c38(A__U41(a__U21(a__isNat(z0)), x1), MARK(U21(isNat(z0)))) MARK(U41(U21(length(z0)), x1)) -> c38(A__U41(a__U21(a__length(mark(z0))), x1), MARK(U21(length(z0)))) MARK(U41(U21(cons(z0, z1)), x1)) -> c38(A__U41(a__U21(cons(mark(z0), z1)), x1), MARK(U21(cons(z0, z1)))) MARK(U41(U21(0), x1)) -> c38(A__U41(a__U21(0), x1), MARK(U21(0))) MARK(U41(U21(tt), x1)) -> c38(A__U41(a__U21(tt), x1), MARK(U21(tt))) MARK(U41(U21(s(z0)), x1)) -> c38(A__U41(a__U21(s(mark(z0))), x1), MARK(U21(s(z0)))) MARK(U41(U21(nil), x1)) -> c38(A__U41(a__U21(nil), x1), MARK(U21(nil))) MARK(U41(U21(x0), x1)) -> c38(MARK(U21(x0))) S tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) A__U62(tt, isNatList(cons(z0, z1))) -> c18(A__LENGTH(a__U51(a__isNat(z0), z1)), MARK(isNatList(cons(z0, z1)))) A__U62(tt, isNatList(nil)) -> c18(MARK(isNatList(nil))) A__U62(tt, isNatList(z0)) -> c18(MARK(isNatList(z0))) A__U62(tt, U61(zeros, x1, x2)) -> c18(A__LENGTH(a__U61(a__zeros, x1, x2)), MARK(U61(zeros, x1, x2))) A__U62(tt, U61(U11(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U11(mark(z0)), x1, x2)), MARK(U61(U11(z0), x1, x2))) A__U62(tt, U61(U21(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U21(mark(z0)), x1, x2)), MARK(U61(U21(z0), x1, x2))) A__U62(tt, U61(U31(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U31(mark(z0)), x1, x2)), MARK(U61(U31(z0), x1, x2))) A__U62(tt, U61(U41(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U41(mark(z0), z1), x1, x2)), MARK(U61(U41(z0, z1), x1, x2))) A__U62(tt, U61(U42(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U42(mark(z0)), x1, x2)), MARK(U61(U42(z0), x1, x2))) A__U62(tt, U61(isNatIList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatIList(z0), x1, x2)), MARK(U61(isNatIList(z0), x1, x2))) A__U62(tt, U61(U51(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U51(mark(z0), z1), x1, x2)), MARK(U61(U51(z0, z1), x1, x2))) A__U62(tt, U61(U52(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U52(mark(z0)), x1, x2)), MARK(U61(U52(z0), x1, x2))) A__U62(tt, U61(isNatList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatList(z0), x1, x2)), MARK(U61(isNatList(z0), x1, x2))) A__U62(tt, U61(U61(z0, z1, z2), x1, x2)) -> c18(A__LENGTH(a__U61(a__U61(mark(z0), z1, z2), x1, x2)), MARK(U61(U61(z0, z1, z2), x1, x2))) A__U62(tt, U61(U62(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U62(mark(z0), z1), x1, x2)), MARK(U61(U62(z0, z1), x1, x2))) A__U62(tt, U61(isNat(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNat(z0), x1, x2)), MARK(U61(isNat(z0), x1, x2))) A__U62(tt, U61(length(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__length(mark(z0)), x1, x2)), MARK(U61(length(z0), x1, x2))) A__U62(tt, U61(cons(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(cons(mark(z0), z1), x1, x2)), MARK(U61(cons(z0, z1), x1, x2))) A__U62(tt, U61(tt, x1, x2)) -> c18(A__LENGTH(a__U61(tt, x1, x2)), MARK(U61(tt, x1, x2))) A__U62(tt, U61(s(z0), x1, x2)) -> c18(A__LENGTH(a__U61(s(mark(z0)), x1, x2)), MARK(U61(s(z0), x1, x2))) A__U62(tt, U61(x0, z1, z2)) -> c18(MARK(U61(x0, z1, z2))) A__U62(tt, U61(0, x1, x2)) -> c18(A__LENGTH(a__U61(0, x1, x2))) A__U62(tt, U61(nil, x1, x2)) -> c18(A__LENGTH(a__U61(nil, x1, x2))) A__U62(tt, U62(zeros, x1)) -> c18(A__LENGTH(a__U62(a__zeros, x1)), MARK(U62(zeros, x1))) A__U62(tt, U62(U11(z0), x1)) -> c18(A__LENGTH(a__U62(a__U11(mark(z0)), x1)), MARK(U62(U11(z0), x1))) A__U62(tt, U62(U21(z0), x1)) -> c18(A__LENGTH(a__U62(a__U21(mark(z0)), x1)), MARK(U62(U21(z0), x1))) A__U62(tt, U62(U31(z0), x1)) -> c18(A__LENGTH(a__U62(a__U31(mark(z0)), x1)), MARK(U62(U31(z0), x1))) A__U62(tt, U62(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U41(mark(z0), z1), x1)), MARK(U62(U41(z0, z1), x1))) A__U62(tt, U62(U42(z0), x1)) -> c18(A__LENGTH(a__U62(a__U42(mark(z0)), x1)), MARK(U62(U42(z0), x1))) A__U62(tt, U62(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatIList(z0), x1)), MARK(U62(isNatIList(z0), x1))) A__U62(tt, U62(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U51(mark(z0), z1), x1)), MARK(U62(U51(z0, z1), x1))) A__U62(tt, U62(U52(z0), x1)) -> c18(A__LENGTH(a__U62(a__U52(mark(z0)), x1)), MARK(U62(U52(z0), x1))) A__U62(tt, U62(isNatList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatList(z0), x1)), MARK(U62(isNatList(z0), x1))) A__U62(tt, U62(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U62(a__U61(mark(z0), z1, z2), x1)), MARK(U62(U61(z0, z1, z2), x1))) A__U62(tt, U62(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U62(mark(z0), z1), x1)), MARK(U62(U62(z0, z1), x1))) A__U62(tt, U62(isNat(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNat(z0), x1)), MARK(U62(isNat(z0), x1))) A__U62(tt, U62(length(z0), x1)) -> c18(A__LENGTH(a__U62(a__length(mark(z0)), x1)), MARK(U62(length(z0), x1))) A__U62(tt, U62(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U62(cons(mark(z0), z1), x1)), MARK(U62(cons(z0, z1), x1))) A__U62(tt, U62(tt, x1)) -> c18(A__LENGTH(a__U62(tt, x1)), MARK(U62(tt, x1))) A__U62(tt, U62(s(z0), x1)) -> c18(A__LENGTH(a__U62(s(mark(z0)), x1)), MARK(U62(s(z0), x1))) A__U62(tt, U62(x0, z1)) -> c18(MARK(U62(x0, z1))) A__U62(tt, U62(0, x1)) -> c18(A__LENGTH(a__U62(0, x1))) A__U62(tt, U62(nil, x1)) -> c18(A__LENGTH(a__U62(nil, x1))) A__U62(tt, isNat(length(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(isNat(length(z0)))) A__U62(tt, isNat(s(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(isNat(s(z0)))) A__U62(tt, isNat(0)) -> c18(MARK(isNat(0))) A__U62(tt, isNat(z0)) -> c18(MARK(isNat(z0))) A__U62(tt, length(zeros)) -> c18(A__LENGTH(a__length(a__zeros)), MARK(length(zeros))) A__U62(tt, length(U11(z0))) -> c18(A__LENGTH(a__length(a__U11(mark(z0)))), MARK(length(U11(z0)))) A__U62(tt, length(U21(z0))) -> c18(A__LENGTH(a__length(a__U21(mark(z0)))), MARK(length(U21(z0)))) A__U62(tt, length(U31(z0))) -> c18(A__LENGTH(a__length(a__U31(mark(z0)))), MARK(length(U31(z0)))) A__U62(tt, length(U41(z0, z1))) -> c18(A__LENGTH(a__length(a__U41(mark(z0), z1))), MARK(length(U41(z0, z1)))) A__U62(tt, length(U42(z0))) -> c18(A__LENGTH(a__length(a__U42(mark(z0)))), MARK(length(U42(z0)))) A__U62(tt, length(isNatIList(z0))) -> c18(A__LENGTH(a__length(a__isNatIList(z0))), MARK(length(isNatIList(z0)))) A__U62(tt, length(U51(z0, z1))) -> c18(A__LENGTH(a__length(a__U51(mark(z0), z1))), MARK(length(U51(z0, z1)))) A__U62(tt, length(U52(z0))) -> c18(A__LENGTH(a__length(a__U52(mark(z0)))), MARK(length(U52(z0)))) A__U62(tt, length(isNatList(z0))) -> c18(A__LENGTH(a__length(a__isNatList(z0))), MARK(length(isNatList(z0)))) A__U62(tt, length(U61(z0, z1, z2))) -> c18(A__LENGTH(a__length(a__U61(mark(z0), z1, z2))), MARK(length(U61(z0, z1, z2)))) A__U62(tt, length(U62(z0, z1))) -> c18(A__LENGTH(a__length(a__U62(mark(z0), z1))), MARK(length(U62(z0, z1)))) A__U62(tt, length(isNat(z0))) -> c18(A__LENGTH(a__length(a__isNat(z0))), MARK(length(isNat(z0)))) A__U62(tt, length(length(z0))) -> c18(A__LENGTH(a__length(a__length(mark(z0)))), MARK(length(length(z0)))) A__U62(tt, length(cons(z0, z1))) -> c18(A__LENGTH(a__length(cons(mark(z0), z1))), MARK(length(cons(z0, z1)))) A__U62(tt, length(s(z0))) -> c18(A__LENGTH(a__length(s(mark(z0)))), MARK(length(s(z0)))) A__U62(tt, length(x0)) -> c18(MARK(length(x0))) A__U62(tt, length(0)) -> c18(A__LENGTH(a__length(0))) A__U62(tt, length(tt)) -> c18(A__LENGTH(a__length(tt))) A__U62(tt, length(nil)) -> c18(A__LENGTH(a__length(nil))) A__U62(tt, zeros) -> c18(A__LENGTH(cons(0, zeros))) A__ISNATILIST(cons(length(nil), x1)) -> c26(A__U41(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATILIST(cons(length(cons(z0, z1)), x1)) -> c26(A__U41(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(length(x0), x1)) -> c26(A__ISNAT(length(x0))) A__ISNATILIST(cons(s(0), x1)) -> c26(A__U41(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATILIST(cons(s(length(z0)), x1)) -> c26(A__U41(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATILIST(cons(s(s(z0)), x1)) -> c26(A__U41(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(s(x0), x1)) -> c26(A__ISNAT(s(x0))) A__ISNATLIST(cons(length(nil), x1)) -> c29(A__U51(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATLIST(cons(length(cons(z0, z1)), x1)) -> c29(A__U51(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(length(x0), x1)) -> c29(A__ISNAT(length(x0))) A__ISNATLIST(cons(s(0), x1)) -> c29(A__U51(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATLIST(cons(s(length(z0)), x1)) -> c29(A__U51(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATLIST(cons(s(s(z0)), x1)) -> c29(A__U51(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(s(x0), x1)) -> c29(A__ISNAT(s(x0))) A__LENGTH(cons(x0, cons(0, x2))) -> c32(A__U61(a__U51(tt, x2), cons(0, x2), x0), A__ISNATLIST(cons(0, x2))) A__LENGTH(cons(x0, cons(length(z0), x2))) -> c32(A__U61(a__U51(a__U11(a__isNatList(z0)), x2), cons(length(z0), x2), x0), A__ISNATLIST(cons(length(z0), x2))) A__LENGTH(cons(x0, cons(s(z0), x2))) -> c32(A__U61(a__U51(a__U21(a__isNat(z0)), x2), cons(s(z0), x2), x0), A__ISNATLIST(cons(s(z0), x2))) A__LENGTH(cons(x0, cons(z0, x2))) -> c32(A__U61(a__U51(isNat(z0), x2), cons(z0, x2), x0), A__ISNATLIST(cons(z0, x2))) A__LENGTH(cons(x0, cons(x1, z1))) -> c32(A__ISNATLIST(cons(x1, z1))) MARK(U41(U11(zeros), x1)) -> c38(A__U41(a__U11(a__zeros), x1), MARK(U11(zeros))) MARK(U41(U11(U11(z0)), x1)) -> c38(A__U41(a__U11(a__U11(mark(z0))), x1), MARK(U11(U11(z0)))) MARK(U41(U11(U21(z0)), x1)) -> c38(A__U41(a__U11(a__U21(mark(z0))), x1), MARK(U11(U21(z0)))) MARK(U41(U11(U31(z0)), x1)) -> c38(A__U41(a__U11(a__U31(mark(z0))), x1), MARK(U11(U31(z0)))) MARK(U41(U11(U41(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U41(mark(z0), z1)), x1), MARK(U11(U41(z0, z1)))) MARK(U41(U11(U42(z0)), x1)) -> c38(A__U41(a__U11(a__U42(mark(z0))), x1), MARK(U11(U42(z0)))) MARK(U41(U11(isNatIList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatIList(z0)), x1), MARK(U11(isNatIList(z0)))) MARK(U41(U11(U51(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U51(mark(z0), z1)), x1), MARK(U11(U51(z0, z1)))) MARK(U41(U11(U52(z0)), x1)) -> c38(A__U41(a__U11(a__U52(mark(z0))), x1), MARK(U11(U52(z0)))) MARK(U41(U11(isNatList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatList(z0)), x1), MARK(U11(isNatList(z0)))) MARK(U41(U11(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U11(a__U61(mark(z0), z1, z2)), x1), MARK(U11(U61(z0, z1, z2)))) MARK(U41(U11(U62(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U62(mark(z0), z1)), x1), MARK(U11(U62(z0, z1)))) MARK(U41(U11(isNat(z0)), x1)) -> c38(A__U41(a__U11(a__isNat(z0)), x1), MARK(U11(isNat(z0)))) MARK(U41(U11(length(z0)), x1)) -> c38(A__U41(a__U11(a__length(mark(z0))), x1), MARK(U11(length(z0)))) MARK(U41(U11(cons(z0, z1)), x1)) -> c38(A__U41(a__U11(cons(mark(z0), z1)), x1), MARK(U11(cons(z0, z1)))) MARK(U41(U11(0), x1)) -> c38(A__U41(a__U11(0), x1), MARK(U11(0))) MARK(U41(U11(tt), x1)) -> c38(A__U41(a__U11(tt), x1), MARK(U11(tt))) MARK(U41(U11(s(z0)), x1)) -> c38(A__U41(a__U11(s(mark(z0))), x1), MARK(U11(s(z0)))) MARK(U41(U11(nil), x1)) -> c38(A__U41(a__U11(nil), x1), MARK(U11(nil))) MARK(U41(U11(x0), x1)) -> c38(MARK(U11(x0))) MARK(U41(U21(x0), x1)) -> c38(A__U41(U21(mark(x0)), x1), MARK(U21(x0))) MARK(U41(U21(zeros), x1)) -> c38(A__U41(a__U21(a__zeros), x1), MARK(U21(zeros))) MARK(U41(U21(U11(z0)), x1)) -> c38(A__U41(a__U21(a__U11(mark(z0))), x1), MARK(U21(U11(z0)))) MARK(U41(U21(U21(z0)), x1)) -> c38(A__U41(a__U21(a__U21(mark(z0))), x1), MARK(U21(U21(z0)))) MARK(U41(U21(U31(z0)), x1)) -> c38(A__U41(a__U21(a__U31(mark(z0))), x1), MARK(U21(U31(z0)))) MARK(U41(U21(U41(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U41(mark(z0), z1)), x1), MARK(U21(U41(z0, z1)))) MARK(U41(U21(U42(z0)), x1)) -> c38(A__U41(a__U21(a__U42(mark(z0))), x1), MARK(U21(U42(z0)))) MARK(U41(U21(isNatIList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatIList(z0)), x1), MARK(U21(isNatIList(z0)))) MARK(U41(U21(U51(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U51(mark(z0), z1)), x1), MARK(U21(U51(z0, z1)))) MARK(U41(U21(U52(z0)), x1)) -> c38(A__U41(a__U21(a__U52(mark(z0))), x1), MARK(U21(U52(z0)))) MARK(U41(U21(isNatList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatList(z0)), x1), MARK(U21(isNatList(z0)))) MARK(U41(U21(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U21(a__U61(mark(z0), z1, z2)), x1), MARK(U21(U61(z0, z1, z2)))) MARK(U41(U21(U62(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U62(mark(z0), z1)), x1), MARK(U21(U62(z0, z1)))) MARK(U41(U21(isNat(z0)), x1)) -> c38(A__U41(a__U21(a__isNat(z0)), x1), MARK(U21(isNat(z0)))) MARK(U41(U21(length(z0)), x1)) -> c38(A__U41(a__U21(a__length(mark(z0))), x1), MARK(U21(length(z0)))) MARK(U41(U21(cons(z0, z1)), x1)) -> c38(A__U41(a__U21(cons(mark(z0), z1)), x1), MARK(U21(cons(z0, z1)))) MARK(U41(U21(0), x1)) -> c38(A__U41(a__U21(0), x1), MARK(U21(0))) MARK(U41(U21(tt), x1)) -> c38(A__U41(a__U21(tt), x1), MARK(U21(tt))) MARK(U41(U21(s(z0)), x1)) -> c38(A__U41(a__U21(s(mark(z0))), x1), MARK(U21(s(z0)))) MARK(U41(U21(nil), x1)) -> c38(A__U41(a__U21(nil), x1), MARK(U21(nil))) MARK(U41(U21(x0), x1)) -> c38(MARK(U21(x0))) K tuples:none Defined Rule Symbols: a__zeros, a__U11_1, a__U21_1, a__U31_1, a__U41_2, a__U42_1, a__U51_2, a__U52_1, a__U61_3, a__U62_2, a__isNat_1, a__isNatIList_1, a__isNatList_1, a__length_1, mark_1 Defined Pair Symbols: MARK_1, A__U41_2, A__U51_2, A__ISNAT_1, A__ISNATILIST_1, A__U61_3, A__U62_2, A__ISNATLIST_1, A__LENGTH_1 Compound Symbols: c40_1, c43_1, c46_1, c48_1, c51_1, c8_1, c12_1, c21_1, c22_1, c24_1, c35_1, c36_1, c37_1, c39_1, c42_1, c16_1, c18_2, c18_1, c26_1, c29_1, c32_1, c38_2, c38_1, c_1, c41_2, c41_1, c1_1, c44_2, c44_1, c45_2, c45_1, c47_2, c47_1, c16_2, c26_2, c29_2, c32_2 ---------------------------------------- (175) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 1 trailing tuple parts ---------------------------------------- (176) Obligation: Complexity Dependency Tuples Problem Rules: a__zeros -> cons(0, zeros) a__zeros -> zeros a__U11(tt) -> tt a__U11(z0) -> U11(z0) a__U21(tt) -> tt a__U21(z0) -> U21(z0) a__U31(tt) -> tt a__U31(z0) -> U31(z0) a__U41(tt, z0) -> a__U42(a__isNatIList(z0)) a__U41(z0, z1) -> U41(z0, z1) a__U42(tt) -> tt a__U42(z0) -> U42(z0) a__U51(tt, z0) -> a__U52(a__isNatList(z0)) a__U51(z0, z1) -> U51(z0, z1) a__U52(tt) -> tt a__U52(z0) -> U52(z0) a__U61(tt, z0, z1) -> a__U62(a__isNat(z1), z0) a__U61(z0, z1, z2) -> U61(z0, z1, z2) a__U62(tt, z0) -> s(a__length(mark(z0))) a__U62(z0, z1) -> U62(z0, z1) a__isNat(0) -> tt a__isNat(length(z0)) -> a__U11(a__isNatList(z0)) a__isNat(s(z0)) -> a__U21(a__isNat(z0)) a__isNat(z0) -> isNat(z0) a__isNatIList(z0) -> a__U31(a__isNatList(z0)) a__isNatIList(zeros) -> tt a__isNatIList(cons(z0, z1)) -> a__U41(a__isNat(z0), z1) a__isNatIList(z0) -> isNatIList(z0) a__isNatList(nil) -> tt a__isNatList(cons(z0, z1)) -> a__U51(a__isNat(z0), z1) a__isNatList(z0) -> isNatList(z0) a__length(nil) -> 0 a__length(cons(z0, z1)) -> a__U61(a__isNatList(z1), z1, z0) a__length(z0) -> length(z0) mark(zeros) -> a__zeros mark(U11(z0)) -> a__U11(mark(z0)) mark(U21(z0)) -> a__U21(mark(z0)) mark(U31(z0)) -> a__U31(mark(z0)) mark(U41(z0, z1)) -> a__U41(mark(z0), z1) mark(U42(z0)) -> a__U42(mark(z0)) mark(isNatIList(z0)) -> a__isNatIList(z0) mark(U51(z0, z1)) -> a__U51(mark(z0), z1) mark(U52(z0)) -> a__U52(mark(z0)) mark(isNatList(z0)) -> a__isNatList(z0) mark(U61(z0, z1, z2)) -> a__U61(mark(z0), z1, z2) mark(U62(z0, z1)) -> a__U62(mark(z0), z1) mark(isNat(z0)) -> a__isNat(z0) mark(length(z0)) -> a__length(mark(z0)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(0) -> 0 mark(tt) -> tt mark(s(z0)) -> s(mark(z0)) mark(nil) -> nil Tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) A__U62(tt, isNatList(cons(z0, z1))) -> c18(A__LENGTH(a__U51(a__isNat(z0), z1)), MARK(isNatList(cons(z0, z1)))) A__U62(tt, isNatList(nil)) -> c18(MARK(isNatList(nil))) A__U62(tt, isNatList(z0)) -> c18(MARK(isNatList(z0))) A__U62(tt, U61(zeros, x1, x2)) -> c18(A__LENGTH(a__U61(a__zeros, x1, x2)), MARK(U61(zeros, x1, x2))) A__U62(tt, U61(U11(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U11(mark(z0)), x1, x2)), MARK(U61(U11(z0), x1, x2))) A__U62(tt, U61(U21(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U21(mark(z0)), x1, x2)), MARK(U61(U21(z0), x1, x2))) A__U62(tt, U61(U31(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U31(mark(z0)), x1, x2)), MARK(U61(U31(z0), x1, x2))) A__U62(tt, U61(U41(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U41(mark(z0), z1), x1, x2)), MARK(U61(U41(z0, z1), x1, x2))) A__U62(tt, U61(U42(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U42(mark(z0)), x1, x2)), MARK(U61(U42(z0), x1, x2))) A__U62(tt, U61(isNatIList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatIList(z0), x1, x2)), MARK(U61(isNatIList(z0), x1, x2))) A__U62(tt, U61(U51(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U51(mark(z0), z1), x1, x2)), MARK(U61(U51(z0, z1), x1, x2))) A__U62(tt, U61(U52(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U52(mark(z0)), x1, x2)), MARK(U61(U52(z0), x1, x2))) A__U62(tt, U61(isNatList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatList(z0), x1, x2)), MARK(U61(isNatList(z0), x1, x2))) A__U62(tt, U61(U61(z0, z1, z2), x1, x2)) -> c18(A__LENGTH(a__U61(a__U61(mark(z0), z1, z2), x1, x2)), MARK(U61(U61(z0, z1, z2), x1, x2))) A__U62(tt, U61(U62(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U62(mark(z0), z1), x1, x2)), MARK(U61(U62(z0, z1), x1, x2))) A__U62(tt, U61(isNat(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNat(z0), x1, x2)), MARK(U61(isNat(z0), x1, x2))) A__U62(tt, U61(length(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__length(mark(z0)), x1, x2)), MARK(U61(length(z0), x1, x2))) A__U62(tt, U61(cons(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(cons(mark(z0), z1), x1, x2)), MARK(U61(cons(z0, z1), x1, x2))) A__U62(tt, U61(tt, x1, x2)) -> c18(A__LENGTH(a__U61(tt, x1, x2)), MARK(U61(tt, x1, x2))) A__U62(tt, U61(s(z0), x1, x2)) -> c18(A__LENGTH(a__U61(s(mark(z0)), x1, x2)), MARK(U61(s(z0), x1, x2))) A__U62(tt, U61(x0, z1, z2)) -> c18(MARK(U61(x0, z1, z2))) A__U62(tt, U61(0, x1, x2)) -> c18(A__LENGTH(a__U61(0, x1, x2))) A__U62(tt, U61(nil, x1, x2)) -> c18(A__LENGTH(a__U61(nil, x1, x2))) A__U62(tt, U62(zeros, x1)) -> c18(A__LENGTH(a__U62(a__zeros, x1)), MARK(U62(zeros, x1))) A__U62(tt, U62(U11(z0), x1)) -> c18(A__LENGTH(a__U62(a__U11(mark(z0)), x1)), MARK(U62(U11(z0), x1))) A__U62(tt, U62(U21(z0), x1)) -> c18(A__LENGTH(a__U62(a__U21(mark(z0)), x1)), MARK(U62(U21(z0), x1))) A__U62(tt, U62(U31(z0), x1)) -> c18(A__LENGTH(a__U62(a__U31(mark(z0)), x1)), MARK(U62(U31(z0), x1))) A__U62(tt, U62(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U41(mark(z0), z1), x1)), MARK(U62(U41(z0, z1), x1))) A__U62(tt, U62(U42(z0), x1)) -> c18(A__LENGTH(a__U62(a__U42(mark(z0)), x1)), MARK(U62(U42(z0), x1))) A__U62(tt, U62(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatIList(z0), x1)), MARK(U62(isNatIList(z0), x1))) A__U62(tt, U62(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U51(mark(z0), z1), x1)), MARK(U62(U51(z0, z1), x1))) A__U62(tt, U62(U52(z0), x1)) -> c18(A__LENGTH(a__U62(a__U52(mark(z0)), x1)), MARK(U62(U52(z0), x1))) A__U62(tt, U62(isNatList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatList(z0), x1)), MARK(U62(isNatList(z0), x1))) A__U62(tt, U62(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U62(a__U61(mark(z0), z1, z2), x1)), MARK(U62(U61(z0, z1, z2), x1))) A__U62(tt, U62(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U62(mark(z0), z1), x1)), MARK(U62(U62(z0, z1), x1))) A__U62(tt, U62(isNat(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNat(z0), x1)), MARK(U62(isNat(z0), x1))) A__U62(tt, U62(length(z0), x1)) -> c18(A__LENGTH(a__U62(a__length(mark(z0)), x1)), MARK(U62(length(z0), x1))) A__U62(tt, U62(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U62(cons(mark(z0), z1), x1)), MARK(U62(cons(z0, z1), x1))) A__U62(tt, U62(tt, x1)) -> c18(A__LENGTH(a__U62(tt, x1)), MARK(U62(tt, x1))) A__U62(tt, U62(s(z0), x1)) -> c18(A__LENGTH(a__U62(s(mark(z0)), x1)), MARK(U62(s(z0), x1))) A__U62(tt, U62(x0, z1)) -> c18(MARK(U62(x0, z1))) A__U62(tt, U62(0, x1)) -> c18(A__LENGTH(a__U62(0, x1))) A__U62(tt, U62(nil, x1)) -> c18(A__LENGTH(a__U62(nil, x1))) A__U62(tt, isNat(length(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(isNat(length(z0)))) A__U62(tt, isNat(s(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(isNat(s(z0)))) A__U62(tt, isNat(0)) -> c18(MARK(isNat(0))) A__U62(tt, isNat(z0)) -> c18(MARK(isNat(z0))) A__U62(tt, length(zeros)) -> c18(A__LENGTH(a__length(a__zeros)), MARK(length(zeros))) A__U62(tt, length(U11(z0))) -> c18(A__LENGTH(a__length(a__U11(mark(z0)))), MARK(length(U11(z0)))) A__U62(tt, length(U21(z0))) -> c18(A__LENGTH(a__length(a__U21(mark(z0)))), MARK(length(U21(z0)))) A__U62(tt, length(U31(z0))) -> c18(A__LENGTH(a__length(a__U31(mark(z0)))), MARK(length(U31(z0)))) A__U62(tt, length(U41(z0, z1))) -> c18(A__LENGTH(a__length(a__U41(mark(z0), z1))), MARK(length(U41(z0, z1)))) A__U62(tt, length(U42(z0))) -> c18(A__LENGTH(a__length(a__U42(mark(z0)))), MARK(length(U42(z0)))) A__U62(tt, length(isNatIList(z0))) -> c18(A__LENGTH(a__length(a__isNatIList(z0))), MARK(length(isNatIList(z0)))) A__U62(tt, length(U51(z0, z1))) -> c18(A__LENGTH(a__length(a__U51(mark(z0), z1))), MARK(length(U51(z0, z1)))) A__U62(tt, length(U52(z0))) -> c18(A__LENGTH(a__length(a__U52(mark(z0)))), MARK(length(U52(z0)))) A__U62(tt, length(isNatList(z0))) -> c18(A__LENGTH(a__length(a__isNatList(z0))), MARK(length(isNatList(z0)))) A__U62(tt, length(U61(z0, z1, z2))) -> c18(A__LENGTH(a__length(a__U61(mark(z0), z1, z2))), MARK(length(U61(z0, z1, z2)))) A__U62(tt, length(U62(z0, z1))) -> c18(A__LENGTH(a__length(a__U62(mark(z0), z1))), MARK(length(U62(z0, z1)))) A__U62(tt, length(isNat(z0))) -> c18(A__LENGTH(a__length(a__isNat(z0))), MARK(length(isNat(z0)))) A__U62(tt, length(length(z0))) -> c18(A__LENGTH(a__length(a__length(mark(z0)))), MARK(length(length(z0)))) A__U62(tt, length(cons(z0, z1))) -> c18(A__LENGTH(a__length(cons(mark(z0), z1))), MARK(length(cons(z0, z1)))) A__U62(tt, length(s(z0))) -> c18(A__LENGTH(a__length(s(mark(z0)))), MARK(length(s(z0)))) A__U62(tt, length(x0)) -> c18(MARK(length(x0))) A__U62(tt, length(0)) -> c18(A__LENGTH(a__length(0))) A__U62(tt, length(tt)) -> c18(A__LENGTH(a__length(tt))) A__U62(tt, length(nil)) -> c18(A__LENGTH(a__length(nil))) A__U62(tt, zeros) -> c18(A__LENGTH(cons(0, zeros))) A__ISNATILIST(cons(length(nil), x1)) -> c26(A__U41(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATILIST(cons(length(cons(z0, z1)), x1)) -> c26(A__U41(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(length(x0), x1)) -> c26(A__ISNAT(length(x0))) A__ISNATILIST(cons(s(0), x1)) -> c26(A__U41(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATILIST(cons(s(length(z0)), x1)) -> c26(A__U41(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATILIST(cons(s(s(z0)), x1)) -> c26(A__U41(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(s(x0), x1)) -> c26(A__ISNAT(s(x0))) A__ISNATLIST(cons(length(nil), x1)) -> c29(A__U51(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATLIST(cons(length(cons(z0, z1)), x1)) -> c29(A__U51(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(length(x0), x1)) -> c29(A__ISNAT(length(x0))) A__ISNATLIST(cons(s(0), x1)) -> c29(A__U51(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATLIST(cons(s(length(z0)), x1)) -> c29(A__U51(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATLIST(cons(s(s(z0)), x1)) -> c29(A__U51(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(s(x0), x1)) -> c29(A__ISNAT(s(x0))) A__LENGTH(cons(x0, cons(0, x2))) -> c32(A__U61(a__U51(tt, x2), cons(0, x2), x0), A__ISNATLIST(cons(0, x2))) A__LENGTH(cons(x0, cons(length(z0), x2))) -> c32(A__U61(a__U51(a__U11(a__isNatList(z0)), x2), cons(length(z0), x2), x0), A__ISNATLIST(cons(length(z0), x2))) A__LENGTH(cons(x0, cons(s(z0), x2))) -> c32(A__U61(a__U51(a__U21(a__isNat(z0)), x2), cons(s(z0), x2), x0), A__ISNATLIST(cons(s(z0), x2))) A__LENGTH(cons(x0, cons(z0, x2))) -> c32(A__U61(a__U51(isNat(z0), x2), cons(z0, x2), x0), A__ISNATLIST(cons(z0, x2))) A__LENGTH(cons(x0, cons(x1, z1))) -> c32(A__ISNATLIST(cons(x1, z1))) MARK(U41(U11(zeros), x1)) -> c38(A__U41(a__U11(a__zeros), x1), MARK(U11(zeros))) MARK(U41(U11(U11(z0)), x1)) -> c38(A__U41(a__U11(a__U11(mark(z0))), x1), MARK(U11(U11(z0)))) MARK(U41(U11(U21(z0)), x1)) -> c38(A__U41(a__U11(a__U21(mark(z0))), x1), MARK(U11(U21(z0)))) MARK(U41(U11(U31(z0)), x1)) -> c38(A__U41(a__U11(a__U31(mark(z0))), x1), MARK(U11(U31(z0)))) MARK(U41(U11(U41(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U41(mark(z0), z1)), x1), MARK(U11(U41(z0, z1)))) MARK(U41(U11(U42(z0)), x1)) -> c38(A__U41(a__U11(a__U42(mark(z0))), x1), MARK(U11(U42(z0)))) MARK(U41(U11(isNatIList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatIList(z0)), x1), MARK(U11(isNatIList(z0)))) MARK(U41(U11(U51(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U51(mark(z0), z1)), x1), MARK(U11(U51(z0, z1)))) MARK(U41(U11(U52(z0)), x1)) -> c38(A__U41(a__U11(a__U52(mark(z0))), x1), MARK(U11(U52(z0)))) MARK(U41(U11(isNatList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatList(z0)), x1), MARK(U11(isNatList(z0)))) MARK(U41(U11(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U11(a__U61(mark(z0), z1, z2)), x1), MARK(U11(U61(z0, z1, z2)))) MARK(U41(U11(U62(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U62(mark(z0), z1)), x1), MARK(U11(U62(z0, z1)))) MARK(U41(U11(isNat(z0)), x1)) -> c38(A__U41(a__U11(a__isNat(z0)), x1), MARK(U11(isNat(z0)))) MARK(U41(U11(length(z0)), x1)) -> c38(A__U41(a__U11(a__length(mark(z0))), x1), MARK(U11(length(z0)))) MARK(U41(U11(cons(z0, z1)), x1)) -> c38(A__U41(a__U11(cons(mark(z0), z1)), x1), MARK(U11(cons(z0, z1)))) MARK(U41(U11(0), x1)) -> c38(A__U41(a__U11(0), x1), MARK(U11(0))) MARK(U41(U11(tt), x1)) -> c38(A__U41(a__U11(tt), x1), MARK(U11(tt))) MARK(U41(U11(s(z0)), x1)) -> c38(A__U41(a__U11(s(mark(z0))), x1), MARK(U11(s(z0)))) MARK(U41(U11(nil), x1)) -> c38(A__U41(a__U11(nil), x1), MARK(U11(nil))) MARK(U41(U11(x0), x1)) -> c38(MARK(U11(x0))) MARK(U41(U21(zeros), x1)) -> c38(A__U41(a__U21(a__zeros), x1), MARK(U21(zeros))) MARK(U41(U21(U11(z0)), x1)) -> c38(A__U41(a__U21(a__U11(mark(z0))), x1), MARK(U21(U11(z0)))) MARK(U41(U21(U21(z0)), x1)) -> c38(A__U41(a__U21(a__U21(mark(z0))), x1), MARK(U21(U21(z0)))) MARK(U41(U21(U31(z0)), x1)) -> c38(A__U41(a__U21(a__U31(mark(z0))), x1), MARK(U21(U31(z0)))) MARK(U41(U21(U41(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U41(mark(z0), z1)), x1), MARK(U21(U41(z0, z1)))) MARK(U41(U21(U42(z0)), x1)) -> c38(A__U41(a__U21(a__U42(mark(z0))), x1), MARK(U21(U42(z0)))) MARK(U41(U21(isNatIList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatIList(z0)), x1), MARK(U21(isNatIList(z0)))) MARK(U41(U21(U51(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U51(mark(z0), z1)), x1), MARK(U21(U51(z0, z1)))) MARK(U41(U21(U52(z0)), x1)) -> c38(A__U41(a__U21(a__U52(mark(z0))), x1), MARK(U21(U52(z0)))) MARK(U41(U21(isNatList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatList(z0)), x1), MARK(U21(isNatList(z0)))) MARK(U41(U21(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U21(a__U61(mark(z0), z1, z2)), x1), MARK(U21(U61(z0, z1, z2)))) MARK(U41(U21(U62(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U62(mark(z0), z1)), x1), MARK(U21(U62(z0, z1)))) MARK(U41(U21(isNat(z0)), x1)) -> c38(A__U41(a__U21(a__isNat(z0)), x1), MARK(U21(isNat(z0)))) MARK(U41(U21(length(z0)), x1)) -> c38(A__U41(a__U21(a__length(mark(z0))), x1), MARK(U21(length(z0)))) MARK(U41(U21(cons(z0, z1)), x1)) -> c38(A__U41(a__U21(cons(mark(z0), z1)), x1), MARK(U21(cons(z0, z1)))) MARK(U41(U21(0), x1)) -> c38(A__U41(a__U21(0), x1), MARK(U21(0))) MARK(U41(U21(tt), x1)) -> c38(A__U41(a__U21(tt), x1), MARK(U21(tt))) MARK(U41(U21(s(z0)), x1)) -> c38(A__U41(a__U21(s(mark(z0))), x1), MARK(U21(s(z0)))) MARK(U41(U21(nil), x1)) -> c38(A__U41(a__U21(nil), x1), MARK(U21(nil))) MARK(U41(U21(x0), x1)) -> c38(MARK(U21(x0))) S tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) A__U62(tt, isNatList(cons(z0, z1))) -> c18(A__LENGTH(a__U51(a__isNat(z0), z1)), MARK(isNatList(cons(z0, z1)))) A__U62(tt, isNatList(nil)) -> c18(MARK(isNatList(nil))) A__U62(tt, isNatList(z0)) -> c18(MARK(isNatList(z0))) A__U62(tt, U61(zeros, x1, x2)) -> c18(A__LENGTH(a__U61(a__zeros, x1, x2)), MARK(U61(zeros, x1, x2))) A__U62(tt, U61(U11(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U11(mark(z0)), x1, x2)), MARK(U61(U11(z0), x1, x2))) A__U62(tt, U61(U21(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U21(mark(z0)), x1, x2)), MARK(U61(U21(z0), x1, x2))) A__U62(tt, U61(U31(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U31(mark(z0)), x1, x2)), MARK(U61(U31(z0), x1, x2))) A__U62(tt, U61(U41(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U41(mark(z0), z1), x1, x2)), MARK(U61(U41(z0, z1), x1, x2))) A__U62(tt, U61(U42(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U42(mark(z0)), x1, x2)), MARK(U61(U42(z0), x1, x2))) A__U62(tt, U61(isNatIList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatIList(z0), x1, x2)), MARK(U61(isNatIList(z0), x1, x2))) A__U62(tt, U61(U51(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U51(mark(z0), z1), x1, x2)), MARK(U61(U51(z0, z1), x1, x2))) A__U62(tt, U61(U52(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U52(mark(z0)), x1, x2)), MARK(U61(U52(z0), x1, x2))) A__U62(tt, U61(isNatList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatList(z0), x1, x2)), MARK(U61(isNatList(z0), x1, x2))) A__U62(tt, U61(U61(z0, z1, z2), x1, x2)) -> c18(A__LENGTH(a__U61(a__U61(mark(z0), z1, z2), x1, x2)), MARK(U61(U61(z0, z1, z2), x1, x2))) A__U62(tt, U61(U62(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U62(mark(z0), z1), x1, x2)), MARK(U61(U62(z0, z1), x1, x2))) A__U62(tt, U61(isNat(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNat(z0), x1, x2)), MARK(U61(isNat(z0), x1, x2))) A__U62(tt, U61(length(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__length(mark(z0)), x1, x2)), MARK(U61(length(z0), x1, x2))) A__U62(tt, U61(cons(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(cons(mark(z0), z1), x1, x2)), MARK(U61(cons(z0, z1), x1, x2))) A__U62(tt, U61(tt, x1, x2)) -> c18(A__LENGTH(a__U61(tt, x1, x2)), MARK(U61(tt, x1, x2))) A__U62(tt, U61(s(z0), x1, x2)) -> c18(A__LENGTH(a__U61(s(mark(z0)), x1, x2)), MARK(U61(s(z0), x1, x2))) A__U62(tt, U61(x0, z1, z2)) -> c18(MARK(U61(x0, z1, z2))) A__U62(tt, U61(0, x1, x2)) -> c18(A__LENGTH(a__U61(0, x1, x2))) A__U62(tt, U61(nil, x1, x2)) -> c18(A__LENGTH(a__U61(nil, x1, x2))) A__U62(tt, U62(zeros, x1)) -> c18(A__LENGTH(a__U62(a__zeros, x1)), MARK(U62(zeros, x1))) A__U62(tt, U62(U11(z0), x1)) -> c18(A__LENGTH(a__U62(a__U11(mark(z0)), x1)), MARK(U62(U11(z0), x1))) A__U62(tt, U62(U21(z0), x1)) -> c18(A__LENGTH(a__U62(a__U21(mark(z0)), x1)), MARK(U62(U21(z0), x1))) A__U62(tt, U62(U31(z0), x1)) -> c18(A__LENGTH(a__U62(a__U31(mark(z0)), x1)), MARK(U62(U31(z0), x1))) A__U62(tt, U62(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U41(mark(z0), z1), x1)), MARK(U62(U41(z0, z1), x1))) A__U62(tt, U62(U42(z0), x1)) -> c18(A__LENGTH(a__U62(a__U42(mark(z0)), x1)), MARK(U62(U42(z0), x1))) A__U62(tt, U62(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatIList(z0), x1)), MARK(U62(isNatIList(z0), x1))) A__U62(tt, U62(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U51(mark(z0), z1), x1)), MARK(U62(U51(z0, z1), x1))) A__U62(tt, U62(U52(z0), x1)) -> c18(A__LENGTH(a__U62(a__U52(mark(z0)), x1)), MARK(U62(U52(z0), x1))) A__U62(tt, U62(isNatList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatList(z0), x1)), MARK(U62(isNatList(z0), x1))) A__U62(tt, U62(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U62(a__U61(mark(z0), z1, z2), x1)), MARK(U62(U61(z0, z1, z2), x1))) A__U62(tt, U62(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U62(mark(z0), z1), x1)), MARK(U62(U62(z0, z1), x1))) A__U62(tt, U62(isNat(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNat(z0), x1)), MARK(U62(isNat(z0), x1))) A__U62(tt, U62(length(z0), x1)) -> c18(A__LENGTH(a__U62(a__length(mark(z0)), x1)), MARK(U62(length(z0), x1))) A__U62(tt, U62(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U62(cons(mark(z0), z1), x1)), MARK(U62(cons(z0, z1), x1))) A__U62(tt, U62(tt, x1)) -> c18(A__LENGTH(a__U62(tt, x1)), MARK(U62(tt, x1))) A__U62(tt, U62(s(z0), x1)) -> c18(A__LENGTH(a__U62(s(mark(z0)), x1)), MARK(U62(s(z0), x1))) A__U62(tt, U62(x0, z1)) -> c18(MARK(U62(x0, z1))) A__U62(tt, U62(0, x1)) -> c18(A__LENGTH(a__U62(0, x1))) A__U62(tt, U62(nil, x1)) -> c18(A__LENGTH(a__U62(nil, x1))) A__U62(tt, isNat(length(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(isNat(length(z0)))) A__U62(tt, isNat(s(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(isNat(s(z0)))) A__U62(tt, isNat(0)) -> c18(MARK(isNat(0))) A__U62(tt, isNat(z0)) -> c18(MARK(isNat(z0))) A__U62(tt, length(zeros)) -> c18(A__LENGTH(a__length(a__zeros)), MARK(length(zeros))) A__U62(tt, length(U11(z0))) -> c18(A__LENGTH(a__length(a__U11(mark(z0)))), MARK(length(U11(z0)))) A__U62(tt, length(U21(z0))) -> c18(A__LENGTH(a__length(a__U21(mark(z0)))), MARK(length(U21(z0)))) A__U62(tt, length(U31(z0))) -> c18(A__LENGTH(a__length(a__U31(mark(z0)))), MARK(length(U31(z0)))) A__U62(tt, length(U41(z0, z1))) -> c18(A__LENGTH(a__length(a__U41(mark(z0), z1))), MARK(length(U41(z0, z1)))) A__U62(tt, length(U42(z0))) -> c18(A__LENGTH(a__length(a__U42(mark(z0)))), MARK(length(U42(z0)))) A__U62(tt, length(isNatIList(z0))) -> c18(A__LENGTH(a__length(a__isNatIList(z0))), MARK(length(isNatIList(z0)))) A__U62(tt, length(U51(z0, z1))) -> c18(A__LENGTH(a__length(a__U51(mark(z0), z1))), MARK(length(U51(z0, z1)))) A__U62(tt, length(U52(z0))) -> c18(A__LENGTH(a__length(a__U52(mark(z0)))), MARK(length(U52(z0)))) A__U62(tt, length(isNatList(z0))) -> c18(A__LENGTH(a__length(a__isNatList(z0))), MARK(length(isNatList(z0)))) A__U62(tt, length(U61(z0, z1, z2))) -> c18(A__LENGTH(a__length(a__U61(mark(z0), z1, z2))), MARK(length(U61(z0, z1, z2)))) A__U62(tt, length(U62(z0, z1))) -> c18(A__LENGTH(a__length(a__U62(mark(z0), z1))), MARK(length(U62(z0, z1)))) A__U62(tt, length(isNat(z0))) -> c18(A__LENGTH(a__length(a__isNat(z0))), MARK(length(isNat(z0)))) A__U62(tt, length(length(z0))) -> c18(A__LENGTH(a__length(a__length(mark(z0)))), MARK(length(length(z0)))) A__U62(tt, length(cons(z0, z1))) -> c18(A__LENGTH(a__length(cons(mark(z0), z1))), MARK(length(cons(z0, z1)))) A__U62(tt, length(s(z0))) -> c18(A__LENGTH(a__length(s(mark(z0)))), MARK(length(s(z0)))) A__U62(tt, length(x0)) -> c18(MARK(length(x0))) A__U62(tt, length(0)) -> c18(A__LENGTH(a__length(0))) A__U62(tt, length(tt)) -> c18(A__LENGTH(a__length(tt))) A__U62(tt, length(nil)) -> c18(A__LENGTH(a__length(nil))) A__U62(tt, zeros) -> c18(A__LENGTH(cons(0, zeros))) A__ISNATILIST(cons(length(nil), x1)) -> c26(A__U41(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATILIST(cons(length(cons(z0, z1)), x1)) -> c26(A__U41(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(length(x0), x1)) -> c26(A__ISNAT(length(x0))) A__ISNATILIST(cons(s(0), x1)) -> c26(A__U41(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATILIST(cons(s(length(z0)), x1)) -> c26(A__U41(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATILIST(cons(s(s(z0)), x1)) -> c26(A__U41(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(s(x0), x1)) -> c26(A__ISNAT(s(x0))) A__ISNATLIST(cons(length(nil), x1)) -> c29(A__U51(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATLIST(cons(length(cons(z0, z1)), x1)) -> c29(A__U51(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(length(x0), x1)) -> c29(A__ISNAT(length(x0))) A__ISNATLIST(cons(s(0), x1)) -> c29(A__U51(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATLIST(cons(s(length(z0)), x1)) -> c29(A__U51(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATLIST(cons(s(s(z0)), x1)) -> c29(A__U51(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(s(x0), x1)) -> c29(A__ISNAT(s(x0))) A__LENGTH(cons(x0, cons(0, x2))) -> c32(A__U61(a__U51(tt, x2), cons(0, x2), x0), A__ISNATLIST(cons(0, x2))) A__LENGTH(cons(x0, cons(length(z0), x2))) -> c32(A__U61(a__U51(a__U11(a__isNatList(z0)), x2), cons(length(z0), x2), x0), A__ISNATLIST(cons(length(z0), x2))) A__LENGTH(cons(x0, cons(s(z0), x2))) -> c32(A__U61(a__U51(a__U21(a__isNat(z0)), x2), cons(s(z0), x2), x0), A__ISNATLIST(cons(s(z0), x2))) A__LENGTH(cons(x0, cons(z0, x2))) -> c32(A__U61(a__U51(isNat(z0), x2), cons(z0, x2), x0), A__ISNATLIST(cons(z0, x2))) A__LENGTH(cons(x0, cons(x1, z1))) -> c32(A__ISNATLIST(cons(x1, z1))) MARK(U41(U11(zeros), x1)) -> c38(A__U41(a__U11(a__zeros), x1), MARK(U11(zeros))) MARK(U41(U11(U11(z0)), x1)) -> c38(A__U41(a__U11(a__U11(mark(z0))), x1), MARK(U11(U11(z0)))) MARK(U41(U11(U21(z0)), x1)) -> c38(A__U41(a__U11(a__U21(mark(z0))), x1), MARK(U11(U21(z0)))) MARK(U41(U11(U31(z0)), x1)) -> c38(A__U41(a__U11(a__U31(mark(z0))), x1), MARK(U11(U31(z0)))) MARK(U41(U11(U41(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U41(mark(z0), z1)), x1), MARK(U11(U41(z0, z1)))) MARK(U41(U11(U42(z0)), x1)) -> c38(A__U41(a__U11(a__U42(mark(z0))), x1), MARK(U11(U42(z0)))) MARK(U41(U11(isNatIList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatIList(z0)), x1), MARK(U11(isNatIList(z0)))) MARK(U41(U11(U51(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U51(mark(z0), z1)), x1), MARK(U11(U51(z0, z1)))) MARK(U41(U11(U52(z0)), x1)) -> c38(A__U41(a__U11(a__U52(mark(z0))), x1), MARK(U11(U52(z0)))) MARK(U41(U11(isNatList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatList(z0)), x1), MARK(U11(isNatList(z0)))) MARK(U41(U11(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U11(a__U61(mark(z0), z1, z2)), x1), MARK(U11(U61(z0, z1, z2)))) MARK(U41(U11(U62(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U62(mark(z0), z1)), x1), MARK(U11(U62(z0, z1)))) MARK(U41(U11(isNat(z0)), x1)) -> c38(A__U41(a__U11(a__isNat(z0)), x1), MARK(U11(isNat(z0)))) MARK(U41(U11(length(z0)), x1)) -> c38(A__U41(a__U11(a__length(mark(z0))), x1), MARK(U11(length(z0)))) MARK(U41(U11(cons(z0, z1)), x1)) -> c38(A__U41(a__U11(cons(mark(z0), z1)), x1), MARK(U11(cons(z0, z1)))) MARK(U41(U11(0), x1)) -> c38(A__U41(a__U11(0), x1), MARK(U11(0))) MARK(U41(U11(tt), x1)) -> c38(A__U41(a__U11(tt), x1), MARK(U11(tt))) MARK(U41(U11(s(z0)), x1)) -> c38(A__U41(a__U11(s(mark(z0))), x1), MARK(U11(s(z0)))) MARK(U41(U11(nil), x1)) -> c38(A__U41(a__U11(nil), x1), MARK(U11(nil))) MARK(U41(U11(x0), x1)) -> c38(MARK(U11(x0))) MARK(U41(U21(zeros), x1)) -> c38(A__U41(a__U21(a__zeros), x1), MARK(U21(zeros))) MARK(U41(U21(U11(z0)), x1)) -> c38(A__U41(a__U21(a__U11(mark(z0))), x1), MARK(U21(U11(z0)))) MARK(U41(U21(U21(z0)), x1)) -> c38(A__U41(a__U21(a__U21(mark(z0))), x1), MARK(U21(U21(z0)))) MARK(U41(U21(U31(z0)), x1)) -> c38(A__U41(a__U21(a__U31(mark(z0))), x1), MARK(U21(U31(z0)))) MARK(U41(U21(U41(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U41(mark(z0), z1)), x1), MARK(U21(U41(z0, z1)))) MARK(U41(U21(U42(z0)), x1)) -> c38(A__U41(a__U21(a__U42(mark(z0))), x1), MARK(U21(U42(z0)))) MARK(U41(U21(isNatIList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatIList(z0)), x1), MARK(U21(isNatIList(z0)))) MARK(U41(U21(U51(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U51(mark(z0), z1)), x1), MARK(U21(U51(z0, z1)))) MARK(U41(U21(U52(z0)), x1)) -> c38(A__U41(a__U21(a__U52(mark(z0))), x1), MARK(U21(U52(z0)))) MARK(U41(U21(isNatList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatList(z0)), x1), MARK(U21(isNatList(z0)))) MARK(U41(U21(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U21(a__U61(mark(z0), z1, z2)), x1), MARK(U21(U61(z0, z1, z2)))) MARK(U41(U21(U62(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U62(mark(z0), z1)), x1), MARK(U21(U62(z0, z1)))) MARK(U41(U21(isNat(z0)), x1)) -> c38(A__U41(a__U21(a__isNat(z0)), x1), MARK(U21(isNat(z0)))) MARK(U41(U21(length(z0)), x1)) -> c38(A__U41(a__U21(a__length(mark(z0))), x1), MARK(U21(length(z0)))) MARK(U41(U21(cons(z0, z1)), x1)) -> c38(A__U41(a__U21(cons(mark(z0), z1)), x1), MARK(U21(cons(z0, z1)))) MARK(U41(U21(0), x1)) -> c38(A__U41(a__U21(0), x1), MARK(U21(0))) MARK(U41(U21(tt), x1)) -> c38(A__U41(a__U21(tt), x1), MARK(U21(tt))) MARK(U41(U21(s(z0)), x1)) -> c38(A__U41(a__U21(s(mark(z0))), x1), MARK(U21(s(z0)))) MARK(U41(U21(nil), x1)) -> c38(A__U41(a__U21(nil), x1), MARK(U21(nil))) MARK(U41(U21(x0), x1)) -> c38(MARK(U21(x0))) K tuples:none Defined Rule Symbols: a__zeros, a__U11_1, a__U21_1, a__U31_1, a__U41_2, a__U42_1, a__U51_2, a__U52_1, a__U61_3, a__U62_2, a__isNat_1, a__isNatIList_1, a__isNatList_1, a__length_1, mark_1 Defined Pair Symbols: MARK_1, A__U41_2, A__U51_2, A__ISNAT_1, A__ISNATILIST_1, A__U61_3, A__U62_2, A__ISNATLIST_1, A__LENGTH_1 Compound Symbols: c40_1, c43_1, c46_1, c48_1, c51_1, c8_1, c12_1, c21_1, c22_1, c24_1, c35_1, c36_1, c37_1, c39_1, c42_1, c16_1, c18_2, c18_1, c26_1, c29_1, c32_1, c38_2, c38_1, c_1, c41_2, c41_1, c1_1, c44_2, c44_1, c45_2, c45_1, c47_2, c47_1, c16_2, c26_2, c29_2, c32_2 ---------------------------------------- (177) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace MARK(U41(U31(z0), x1)) -> c38(A__U41(a__U31(mark(z0)), x1), MARK(U31(z0))) by MARK(U41(U31(x0), x1)) -> c38(A__U41(U31(mark(x0)), x1), MARK(U31(x0))) MARK(U41(U31(zeros), x1)) -> c38(A__U41(a__U31(a__zeros), x1), MARK(U31(zeros))) MARK(U41(U31(U11(z0)), x1)) -> c38(A__U41(a__U31(a__U11(mark(z0))), x1), MARK(U31(U11(z0)))) MARK(U41(U31(U21(z0)), x1)) -> c38(A__U41(a__U31(a__U21(mark(z0))), x1), MARK(U31(U21(z0)))) MARK(U41(U31(U31(z0)), x1)) -> c38(A__U41(a__U31(a__U31(mark(z0))), x1), MARK(U31(U31(z0)))) MARK(U41(U31(U41(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U41(mark(z0), z1)), x1), MARK(U31(U41(z0, z1)))) MARK(U41(U31(U42(z0)), x1)) -> c38(A__U41(a__U31(a__U42(mark(z0))), x1), MARK(U31(U42(z0)))) MARK(U41(U31(isNatIList(z0)), x1)) -> c38(A__U41(a__U31(a__isNatIList(z0)), x1), MARK(U31(isNatIList(z0)))) MARK(U41(U31(U51(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U51(mark(z0), z1)), x1), MARK(U31(U51(z0, z1)))) MARK(U41(U31(U52(z0)), x1)) -> c38(A__U41(a__U31(a__U52(mark(z0))), x1), MARK(U31(U52(z0)))) MARK(U41(U31(isNatList(z0)), x1)) -> c38(A__U41(a__U31(a__isNatList(z0)), x1), MARK(U31(isNatList(z0)))) MARK(U41(U31(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U31(a__U61(mark(z0), z1, z2)), x1), MARK(U31(U61(z0, z1, z2)))) MARK(U41(U31(U62(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U62(mark(z0), z1)), x1), MARK(U31(U62(z0, z1)))) MARK(U41(U31(isNat(z0)), x1)) -> c38(A__U41(a__U31(a__isNat(z0)), x1), MARK(U31(isNat(z0)))) MARK(U41(U31(length(z0)), x1)) -> c38(A__U41(a__U31(a__length(mark(z0))), x1), MARK(U31(length(z0)))) MARK(U41(U31(cons(z0, z1)), x1)) -> c38(A__U41(a__U31(cons(mark(z0), z1)), x1), MARK(U31(cons(z0, z1)))) MARK(U41(U31(0), x1)) -> c38(A__U41(a__U31(0), x1), MARK(U31(0))) MARK(U41(U31(tt), x1)) -> c38(A__U41(a__U31(tt), x1), MARK(U31(tt))) MARK(U41(U31(s(z0)), x1)) -> c38(A__U41(a__U31(s(mark(z0))), x1), MARK(U31(s(z0)))) MARK(U41(U31(nil), x1)) -> c38(A__U41(a__U31(nil), x1), MARK(U31(nil))) MARK(U41(U31(x0), x1)) -> c38(MARK(U31(x0))) ---------------------------------------- (178) Obligation: Complexity Dependency Tuples Problem Rules: a__zeros -> cons(0, zeros) a__zeros -> zeros a__U11(tt) -> tt a__U11(z0) -> U11(z0) a__U21(tt) -> tt a__U21(z0) -> U21(z0) a__U31(tt) -> tt a__U31(z0) -> U31(z0) a__U41(tt, z0) -> a__U42(a__isNatIList(z0)) a__U41(z0, z1) -> U41(z0, z1) a__U42(tt) -> tt a__U42(z0) -> U42(z0) a__U51(tt, z0) -> a__U52(a__isNatList(z0)) a__U51(z0, z1) -> U51(z0, z1) a__U52(tt) -> tt a__U52(z0) -> U52(z0) a__U61(tt, z0, z1) -> a__U62(a__isNat(z1), z0) a__U61(z0, z1, z2) -> U61(z0, z1, z2) a__U62(tt, z0) -> s(a__length(mark(z0))) a__U62(z0, z1) -> U62(z0, z1) a__isNat(0) -> tt a__isNat(length(z0)) -> a__U11(a__isNatList(z0)) a__isNat(s(z0)) -> a__U21(a__isNat(z0)) a__isNat(z0) -> isNat(z0) a__isNatIList(z0) -> a__U31(a__isNatList(z0)) a__isNatIList(zeros) -> tt a__isNatIList(cons(z0, z1)) -> a__U41(a__isNat(z0), z1) a__isNatIList(z0) -> isNatIList(z0) a__isNatList(nil) -> tt a__isNatList(cons(z0, z1)) -> a__U51(a__isNat(z0), z1) a__isNatList(z0) -> isNatList(z0) a__length(nil) -> 0 a__length(cons(z0, z1)) -> a__U61(a__isNatList(z1), z1, z0) a__length(z0) -> length(z0) mark(zeros) -> a__zeros mark(U11(z0)) -> a__U11(mark(z0)) mark(U21(z0)) -> a__U21(mark(z0)) mark(U31(z0)) -> a__U31(mark(z0)) mark(U41(z0, z1)) -> a__U41(mark(z0), z1) mark(U42(z0)) -> a__U42(mark(z0)) mark(isNatIList(z0)) -> a__isNatIList(z0) mark(U51(z0, z1)) -> a__U51(mark(z0), z1) mark(U52(z0)) -> a__U52(mark(z0)) mark(isNatList(z0)) -> a__isNatList(z0) mark(U61(z0, z1, z2)) -> a__U61(mark(z0), z1, z2) mark(U62(z0, z1)) -> a__U62(mark(z0), z1) mark(isNat(z0)) -> a__isNat(z0) mark(length(z0)) -> a__length(mark(z0)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(0) -> 0 mark(tt) -> tt mark(s(z0)) -> s(mark(z0)) mark(nil) -> nil Tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) A__U62(tt, isNatList(cons(z0, z1))) -> c18(A__LENGTH(a__U51(a__isNat(z0), z1)), MARK(isNatList(cons(z0, z1)))) A__U62(tt, isNatList(nil)) -> c18(MARK(isNatList(nil))) A__U62(tt, isNatList(z0)) -> c18(MARK(isNatList(z0))) A__U62(tt, U61(zeros, x1, x2)) -> c18(A__LENGTH(a__U61(a__zeros, x1, x2)), MARK(U61(zeros, x1, x2))) A__U62(tt, U61(U11(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U11(mark(z0)), x1, x2)), MARK(U61(U11(z0), x1, x2))) A__U62(tt, U61(U21(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U21(mark(z0)), x1, x2)), MARK(U61(U21(z0), x1, x2))) A__U62(tt, U61(U31(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U31(mark(z0)), x1, x2)), MARK(U61(U31(z0), x1, x2))) A__U62(tt, U61(U41(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U41(mark(z0), z1), x1, x2)), MARK(U61(U41(z0, z1), x1, x2))) A__U62(tt, U61(U42(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U42(mark(z0)), x1, x2)), MARK(U61(U42(z0), x1, x2))) A__U62(tt, U61(isNatIList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatIList(z0), x1, x2)), MARK(U61(isNatIList(z0), x1, x2))) A__U62(tt, U61(U51(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U51(mark(z0), z1), x1, x2)), MARK(U61(U51(z0, z1), x1, x2))) A__U62(tt, U61(U52(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U52(mark(z0)), x1, x2)), MARK(U61(U52(z0), x1, x2))) A__U62(tt, U61(isNatList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatList(z0), x1, x2)), MARK(U61(isNatList(z0), x1, x2))) A__U62(tt, U61(U61(z0, z1, z2), x1, x2)) -> c18(A__LENGTH(a__U61(a__U61(mark(z0), z1, z2), x1, x2)), MARK(U61(U61(z0, z1, z2), x1, x2))) A__U62(tt, U61(U62(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U62(mark(z0), z1), x1, x2)), MARK(U61(U62(z0, z1), x1, x2))) A__U62(tt, U61(isNat(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNat(z0), x1, x2)), MARK(U61(isNat(z0), x1, x2))) A__U62(tt, U61(length(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__length(mark(z0)), x1, x2)), MARK(U61(length(z0), x1, x2))) A__U62(tt, U61(cons(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(cons(mark(z0), z1), x1, x2)), MARK(U61(cons(z0, z1), x1, x2))) A__U62(tt, U61(tt, x1, x2)) -> c18(A__LENGTH(a__U61(tt, x1, x2)), MARK(U61(tt, x1, x2))) A__U62(tt, U61(s(z0), x1, x2)) -> c18(A__LENGTH(a__U61(s(mark(z0)), x1, x2)), MARK(U61(s(z0), x1, x2))) A__U62(tt, U61(x0, z1, z2)) -> c18(MARK(U61(x0, z1, z2))) A__U62(tt, U61(0, x1, x2)) -> c18(A__LENGTH(a__U61(0, x1, x2))) A__U62(tt, U61(nil, x1, x2)) -> c18(A__LENGTH(a__U61(nil, x1, x2))) A__U62(tt, U62(zeros, x1)) -> c18(A__LENGTH(a__U62(a__zeros, x1)), MARK(U62(zeros, x1))) A__U62(tt, U62(U11(z0), x1)) -> c18(A__LENGTH(a__U62(a__U11(mark(z0)), x1)), MARK(U62(U11(z0), x1))) A__U62(tt, U62(U21(z0), x1)) -> c18(A__LENGTH(a__U62(a__U21(mark(z0)), x1)), MARK(U62(U21(z0), x1))) A__U62(tt, U62(U31(z0), x1)) -> c18(A__LENGTH(a__U62(a__U31(mark(z0)), x1)), MARK(U62(U31(z0), x1))) A__U62(tt, U62(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U41(mark(z0), z1), x1)), MARK(U62(U41(z0, z1), x1))) A__U62(tt, U62(U42(z0), x1)) -> c18(A__LENGTH(a__U62(a__U42(mark(z0)), x1)), MARK(U62(U42(z0), x1))) A__U62(tt, U62(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatIList(z0), x1)), MARK(U62(isNatIList(z0), x1))) A__U62(tt, U62(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U51(mark(z0), z1), x1)), MARK(U62(U51(z0, z1), x1))) A__U62(tt, U62(U52(z0), x1)) -> c18(A__LENGTH(a__U62(a__U52(mark(z0)), x1)), MARK(U62(U52(z0), x1))) A__U62(tt, U62(isNatList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatList(z0), x1)), MARK(U62(isNatList(z0), x1))) A__U62(tt, U62(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U62(a__U61(mark(z0), z1, z2), x1)), MARK(U62(U61(z0, z1, z2), x1))) A__U62(tt, U62(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U62(mark(z0), z1), x1)), MARK(U62(U62(z0, z1), x1))) A__U62(tt, U62(isNat(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNat(z0), x1)), MARK(U62(isNat(z0), x1))) A__U62(tt, U62(length(z0), x1)) -> c18(A__LENGTH(a__U62(a__length(mark(z0)), x1)), MARK(U62(length(z0), x1))) A__U62(tt, U62(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U62(cons(mark(z0), z1), x1)), MARK(U62(cons(z0, z1), x1))) A__U62(tt, U62(tt, x1)) -> c18(A__LENGTH(a__U62(tt, x1)), MARK(U62(tt, x1))) A__U62(tt, U62(s(z0), x1)) -> c18(A__LENGTH(a__U62(s(mark(z0)), x1)), MARK(U62(s(z0), x1))) A__U62(tt, U62(x0, z1)) -> c18(MARK(U62(x0, z1))) A__U62(tt, U62(0, x1)) -> c18(A__LENGTH(a__U62(0, x1))) A__U62(tt, U62(nil, x1)) -> c18(A__LENGTH(a__U62(nil, x1))) A__U62(tt, isNat(length(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(isNat(length(z0)))) A__U62(tt, isNat(s(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(isNat(s(z0)))) A__U62(tt, isNat(0)) -> c18(MARK(isNat(0))) A__U62(tt, isNat(z0)) -> c18(MARK(isNat(z0))) A__U62(tt, length(zeros)) -> c18(A__LENGTH(a__length(a__zeros)), MARK(length(zeros))) A__U62(tt, length(U11(z0))) -> c18(A__LENGTH(a__length(a__U11(mark(z0)))), MARK(length(U11(z0)))) A__U62(tt, length(U21(z0))) -> c18(A__LENGTH(a__length(a__U21(mark(z0)))), MARK(length(U21(z0)))) A__U62(tt, length(U31(z0))) -> c18(A__LENGTH(a__length(a__U31(mark(z0)))), MARK(length(U31(z0)))) A__U62(tt, length(U41(z0, z1))) -> c18(A__LENGTH(a__length(a__U41(mark(z0), z1))), MARK(length(U41(z0, z1)))) A__U62(tt, length(U42(z0))) -> c18(A__LENGTH(a__length(a__U42(mark(z0)))), MARK(length(U42(z0)))) A__U62(tt, length(isNatIList(z0))) -> c18(A__LENGTH(a__length(a__isNatIList(z0))), MARK(length(isNatIList(z0)))) A__U62(tt, length(U51(z0, z1))) -> c18(A__LENGTH(a__length(a__U51(mark(z0), z1))), MARK(length(U51(z0, z1)))) A__U62(tt, length(U52(z0))) -> c18(A__LENGTH(a__length(a__U52(mark(z0)))), MARK(length(U52(z0)))) A__U62(tt, length(isNatList(z0))) -> c18(A__LENGTH(a__length(a__isNatList(z0))), MARK(length(isNatList(z0)))) A__U62(tt, length(U61(z0, z1, z2))) -> c18(A__LENGTH(a__length(a__U61(mark(z0), z1, z2))), MARK(length(U61(z0, z1, z2)))) A__U62(tt, length(U62(z0, z1))) -> c18(A__LENGTH(a__length(a__U62(mark(z0), z1))), MARK(length(U62(z0, z1)))) A__U62(tt, length(isNat(z0))) -> c18(A__LENGTH(a__length(a__isNat(z0))), MARK(length(isNat(z0)))) A__U62(tt, length(length(z0))) -> c18(A__LENGTH(a__length(a__length(mark(z0)))), MARK(length(length(z0)))) A__U62(tt, length(cons(z0, z1))) -> c18(A__LENGTH(a__length(cons(mark(z0), z1))), MARK(length(cons(z0, z1)))) A__U62(tt, length(s(z0))) -> c18(A__LENGTH(a__length(s(mark(z0)))), MARK(length(s(z0)))) A__U62(tt, length(x0)) -> c18(MARK(length(x0))) A__U62(tt, length(0)) -> c18(A__LENGTH(a__length(0))) A__U62(tt, length(tt)) -> c18(A__LENGTH(a__length(tt))) A__U62(tt, length(nil)) -> c18(A__LENGTH(a__length(nil))) A__U62(tt, zeros) -> c18(A__LENGTH(cons(0, zeros))) A__ISNATILIST(cons(length(nil), x1)) -> c26(A__U41(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATILIST(cons(length(cons(z0, z1)), x1)) -> c26(A__U41(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(length(x0), x1)) -> c26(A__ISNAT(length(x0))) A__ISNATILIST(cons(s(0), x1)) -> c26(A__U41(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATILIST(cons(s(length(z0)), x1)) -> c26(A__U41(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATILIST(cons(s(s(z0)), x1)) -> c26(A__U41(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(s(x0), x1)) -> c26(A__ISNAT(s(x0))) A__ISNATLIST(cons(length(nil), x1)) -> c29(A__U51(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATLIST(cons(length(cons(z0, z1)), x1)) -> c29(A__U51(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(length(x0), x1)) -> c29(A__ISNAT(length(x0))) A__ISNATLIST(cons(s(0), x1)) -> c29(A__U51(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATLIST(cons(s(length(z0)), x1)) -> c29(A__U51(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATLIST(cons(s(s(z0)), x1)) -> c29(A__U51(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(s(x0), x1)) -> c29(A__ISNAT(s(x0))) A__LENGTH(cons(x0, cons(0, x2))) -> c32(A__U61(a__U51(tt, x2), cons(0, x2), x0), A__ISNATLIST(cons(0, x2))) A__LENGTH(cons(x0, cons(length(z0), x2))) -> c32(A__U61(a__U51(a__U11(a__isNatList(z0)), x2), cons(length(z0), x2), x0), A__ISNATLIST(cons(length(z0), x2))) A__LENGTH(cons(x0, cons(s(z0), x2))) -> c32(A__U61(a__U51(a__U21(a__isNat(z0)), x2), cons(s(z0), x2), x0), A__ISNATLIST(cons(s(z0), x2))) A__LENGTH(cons(x0, cons(z0, x2))) -> c32(A__U61(a__U51(isNat(z0), x2), cons(z0, x2), x0), A__ISNATLIST(cons(z0, x2))) A__LENGTH(cons(x0, cons(x1, z1))) -> c32(A__ISNATLIST(cons(x1, z1))) MARK(U41(U11(zeros), x1)) -> c38(A__U41(a__U11(a__zeros), x1), MARK(U11(zeros))) MARK(U41(U11(U11(z0)), x1)) -> c38(A__U41(a__U11(a__U11(mark(z0))), x1), MARK(U11(U11(z0)))) MARK(U41(U11(U21(z0)), x1)) -> c38(A__U41(a__U11(a__U21(mark(z0))), x1), MARK(U11(U21(z0)))) MARK(U41(U11(U31(z0)), x1)) -> c38(A__U41(a__U11(a__U31(mark(z0))), x1), MARK(U11(U31(z0)))) MARK(U41(U11(U41(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U41(mark(z0), z1)), x1), MARK(U11(U41(z0, z1)))) MARK(U41(U11(U42(z0)), x1)) -> c38(A__U41(a__U11(a__U42(mark(z0))), x1), MARK(U11(U42(z0)))) MARK(U41(U11(isNatIList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatIList(z0)), x1), MARK(U11(isNatIList(z0)))) MARK(U41(U11(U51(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U51(mark(z0), z1)), x1), MARK(U11(U51(z0, z1)))) MARK(U41(U11(U52(z0)), x1)) -> c38(A__U41(a__U11(a__U52(mark(z0))), x1), MARK(U11(U52(z0)))) MARK(U41(U11(isNatList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatList(z0)), x1), MARK(U11(isNatList(z0)))) MARK(U41(U11(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U11(a__U61(mark(z0), z1, z2)), x1), MARK(U11(U61(z0, z1, z2)))) MARK(U41(U11(U62(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U62(mark(z0), z1)), x1), MARK(U11(U62(z0, z1)))) MARK(U41(U11(isNat(z0)), x1)) -> c38(A__U41(a__U11(a__isNat(z0)), x1), MARK(U11(isNat(z0)))) MARK(U41(U11(length(z0)), x1)) -> c38(A__U41(a__U11(a__length(mark(z0))), x1), MARK(U11(length(z0)))) MARK(U41(U11(cons(z0, z1)), x1)) -> c38(A__U41(a__U11(cons(mark(z0), z1)), x1), MARK(U11(cons(z0, z1)))) MARK(U41(U11(0), x1)) -> c38(A__U41(a__U11(0), x1), MARK(U11(0))) MARK(U41(U11(tt), x1)) -> c38(A__U41(a__U11(tt), x1), MARK(U11(tt))) MARK(U41(U11(s(z0)), x1)) -> c38(A__U41(a__U11(s(mark(z0))), x1), MARK(U11(s(z0)))) MARK(U41(U11(nil), x1)) -> c38(A__U41(a__U11(nil), x1), MARK(U11(nil))) MARK(U41(U11(x0), x1)) -> c38(MARK(U11(x0))) MARK(U41(U21(zeros), x1)) -> c38(A__U41(a__U21(a__zeros), x1), MARK(U21(zeros))) MARK(U41(U21(U11(z0)), x1)) -> c38(A__U41(a__U21(a__U11(mark(z0))), x1), MARK(U21(U11(z0)))) MARK(U41(U21(U21(z0)), x1)) -> c38(A__U41(a__U21(a__U21(mark(z0))), x1), MARK(U21(U21(z0)))) MARK(U41(U21(U31(z0)), x1)) -> c38(A__U41(a__U21(a__U31(mark(z0))), x1), MARK(U21(U31(z0)))) MARK(U41(U21(U41(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U41(mark(z0), z1)), x1), MARK(U21(U41(z0, z1)))) MARK(U41(U21(U42(z0)), x1)) -> c38(A__U41(a__U21(a__U42(mark(z0))), x1), MARK(U21(U42(z0)))) MARK(U41(U21(isNatIList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatIList(z0)), x1), MARK(U21(isNatIList(z0)))) MARK(U41(U21(U51(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U51(mark(z0), z1)), x1), MARK(U21(U51(z0, z1)))) MARK(U41(U21(U52(z0)), x1)) -> c38(A__U41(a__U21(a__U52(mark(z0))), x1), MARK(U21(U52(z0)))) MARK(U41(U21(isNatList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatList(z0)), x1), MARK(U21(isNatList(z0)))) MARK(U41(U21(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U21(a__U61(mark(z0), z1, z2)), x1), MARK(U21(U61(z0, z1, z2)))) MARK(U41(U21(U62(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U62(mark(z0), z1)), x1), MARK(U21(U62(z0, z1)))) MARK(U41(U21(isNat(z0)), x1)) -> c38(A__U41(a__U21(a__isNat(z0)), x1), MARK(U21(isNat(z0)))) MARK(U41(U21(length(z0)), x1)) -> c38(A__U41(a__U21(a__length(mark(z0))), x1), MARK(U21(length(z0)))) MARK(U41(U21(cons(z0, z1)), x1)) -> c38(A__U41(a__U21(cons(mark(z0), z1)), x1), MARK(U21(cons(z0, z1)))) MARK(U41(U21(0), x1)) -> c38(A__U41(a__U21(0), x1), MARK(U21(0))) MARK(U41(U21(tt), x1)) -> c38(A__U41(a__U21(tt), x1), MARK(U21(tt))) MARK(U41(U21(s(z0)), x1)) -> c38(A__U41(a__U21(s(mark(z0))), x1), MARK(U21(s(z0)))) MARK(U41(U21(nil), x1)) -> c38(A__U41(a__U21(nil), x1), MARK(U21(nil))) MARK(U41(U21(x0), x1)) -> c38(MARK(U21(x0))) MARK(U41(U31(x0), x1)) -> c38(A__U41(U31(mark(x0)), x1), MARK(U31(x0))) MARK(U41(U31(zeros), x1)) -> c38(A__U41(a__U31(a__zeros), x1), MARK(U31(zeros))) MARK(U41(U31(U11(z0)), x1)) -> c38(A__U41(a__U31(a__U11(mark(z0))), x1), MARK(U31(U11(z0)))) MARK(U41(U31(U21(z0)), x1)) -> c38(A__U41(a__U31(a__U21(mark(z0))), x1), MARK(U31(U21(z0)))) MARK(U41(U31(U31(z0)), x1)) -> c38(A__U41(a__U31(a__U31(mark(z0))), x1), MARK(U31(U31(z0)))) MARK(U41(U31(U41(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U41(mark(z0), z1)), x1), MARK(U31(U41(z0, z1)))) MARK(U41(U31(U42(z0)), x1)) -> c38(A__U41(a__U31(a__U42(mark(z0))), x1), MARK(U31(U42(z0)))) MARK(U41(U31(isNatIList(z0)), x1)) -> c38(A__U41(a__U31(a__isNatIList(z0)), x1), MARK(U31(isNatIList(z0)))) MARK(U41(U31(U51(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U51(mark(z0), z1)), x1), MARK(U31(U51(z0, z1)))) MARK(U41(U31(U52(z0)), x1)) -> c38(A__U41(a__U31(a__U52(mark(z0))), x1), MARK(U31(U52(z0)))) MARK(U41(U31(isNatList(z0)), x1)) -> c38(A__U41(a__U31(a__isNatList(z0)), x1), MARK(U31(isNatList(z0)))) MARK(U41(U31(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U31(a__U61(mark(z0), z1, z2)), x1), MARK(U31(U61(z0, z1, z2)))) MARK(U41(U31(U62(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U62(mark(z0), z1)), x1), MARK(U31(U62(z0, z1)))) MARK(U41(U31(isNat(z0)), x1)) -> c38(A__U41(a__U31(a__isNat(z0)), x1), MARK(U31(isNat(z0)))) MARK(U41(U31(length(z0)), x1)) -> c38(A__U41(a__U31(a__length(mark(z0))), x1), MARK(U31(length(z0)))) MARK(U41(U31(cons(z0, z1)), x1)) -> c38(A__U41(a__U31(cons(mark(z0), z1)), x1), MARK(U31(cons(z0, z1)))) MARK(U41(U31(0), x1)) -> c38(A__U41(a__U31(0), x1), MARK(U31(0))) MARK(U41(U31(tt), x1)) -> c38(A__U41(a__U31(tt), x1), MARK(U31(tt))) MARK(U41(U31(s(z0)), x1)) -> c38(A__U41(a__U31(s(mark(z0))), x1), MARK(U31(s(z0)))) MARK(U41(U31(nil), x1)) -> c38(A__U41(a__U31(nil), x1), MARK(U31(nil))) MARK(U41(U31(x0), x1)) -> c38(MARK(U31(x0))) S tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) A__U62(tt, isNatList(cons(z0, z1))) -> c18(A__LENGTH(a__U51(a__isNat(z0), z1)), MARK(isNatList(cons(z0, z1)))) A__U62(tt, isNatList(nil)) -> c18(MARK(isNatList(nil))) A__U62(tt, isNatList(z0)) -> c18(MARK(isNatList(z0))) A__U62(tt, U61(zeros, x1, x2)) -> c18(A__LENGTH(a__U61(a__zeros, x1, x2)), MARK(U61(zeros, x1, x2))) A__U62(tt, U61(U11(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U11(mark(z0)), x1, x2)), MARK(U61(U11(z0), x1, x2))) A__U62(tt, U61(U21(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U21(mark(z0)), x1, x2)), MARK(U61(U21(z0), x1, x2))) A__U62(tt, U61(U31(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U31(mark(z0)), x1, x2)), MARK(U61(U31(z0), x1, x2))) A__U62(tt, U61(U41(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U41(mark(z0), z1), x1, x2)), MARK(U61(U41(z0, z1), x1, x2))) A__U62(tt, U61(U42(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U42(mark(z0)), x1, x2)), MARK(U61(U42(z0), x1, x2))) A__U62(tt, U61(isNatIList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatIList(z0), x1, x2)), MARK(U61(isNatIList(z0), x1, x2))) A__U62(tt, U61(U51(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U51(mark(z0), z1), x1, x2)), MARK(U61(U51(z0, z1), x1, x2))) A__U62(tt, U61(U52(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U52(mark(z0)), x1, x2)), MARK(U61(U52(z0), x1, x2))) A__U62(tt, U61(isNatList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatList(z0), x1, x2)), MARK(U61(isNatList(z0), x1, x2))) A__U62(tt, U61(U61(z0, z1, z2), x1, x2)) -> c18(A__LENGTH(a__U61(a__U61(mark(z0), z1, z2), x1, x2)), MARK(U61(U61(z0, z1, z2), x1, x2))) A__U62(tt, U61(U62(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U62(mark(z0), z1), x1, x2)), MARK(U61(U62(z0, z1), x1, x2))) A__U62(tt, U61(isNat(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNat(z0), x1, x2)), MARK(U61(isNat(z0), x1, x2))) A__U62(tt, U61(length(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__length(mark(z0)), x1, x2)), MARK(U61(length(z0), x1, x2))) A__U62(tt, U61(cons(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(cons(mark(z0), z1), x1, x2)), MARK(U61(cons(z0, z1), x1, x2))) A__U62(tt, U61(tt, x1, x2)) -> c18(A__LENGTH(a__U61(tt, x1, x2)), MARK(U61(tt, x1, x2))) A__U62(tt, U61(s(z0), x1, x2)) -> c18(A__LENGTH(a__U61(s(mark(z0)), x1, x2)), MARK(U61(s(z0), x1, x2))) A__U62(tt, U61(x0, z1, z2)) -> c18(MARK(U61(x0, z1, z2))) A__U62(tt, U61(0, x1, x2)) -> c18(A__LENGTH(a__U61(0, x1, x2))) A__U62(tt, U61(nil, x1, x2)) -> c18(A__LENGTH(a__U61(nil, x1, x2))) A__U62(tt, U62(zeros, x1)) -> c18(A__LENGTH(a__U62(a__zeros, x1)), MARK(U62(zeros, x1))) A__U62(tt, U62(U11(z0), x1)) -> c18(A__LENGTH(a__U62(a__U11(mark(z0)), x1)), MARK(U62(U11(z0), x1))) A__U62(tt, U62(U21(z0), x1)) -> c18(A__LENGTH(a__U62(a__U21(mark(z0)), x1)), MARK(U62(U21(z0), x1))) A__U62(tt, U62(U31(z0), x1)) -> c18(A__LENGTH(a__U62(a__U31(mark(z0)), x1)), MARK(U62(U31(z0), x1))) A__U62(tt, U62(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U41(mark(z0), z1), x1)), MARK(U62(U41(z0, z1), x1))) A__U62(tt, U62(U42(z0), x1)) -> c18(A__LENGTH(a__U62(a__U42(mark(z0)), x1)), MARK(U62(U42(z0), x1))) A__U62(tt, U62(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatIList(z0), x1)), MARK(U62(isNatIList(z0), x1))) A__U62(tt, U62(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U51(mark(z0), z1), x1)), MARK(U62(U51(z0, z1), x1))) A__U62(tt, U62(U52(z0), x1)) -> c18(A__LENGTH(a__U62(a__U52(mark(z0)), x1)), MARK(U62(U52(z0), x1))) A__U62(tt, U62(isNatList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatList(z0), x1)), MARK(U62(isNatList(z0), x1))) A__U62(tt, U62(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U62(a__U61(mark(z0), z1, z2), x1)), MARK(U62(U61(z0, z1, z2), x1))) A__U62(tt, U62(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U62(mark(z0), z1), x1)), MARK(U62(U62(z0, z1), x1))) A__U62(tt, U62(isNat(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNat(z0), x1)), MARK(U62(isNat(z0), x1))) A__U62(tt, U62(length(z0), x1)) -> c18(A__LENGTH(a__U62(a__length(mark(z0)), x1)), MARK(U62(length(z0), x1))) A__U62(tt, U62(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U62(cons(mark(z0), z1), x1)), MARK(U62(cons(z0, z1), x1))) A__U62(tt, U62(tt, x1)) -> c18(A__LENGTH(a__U62(tt, x1)), MARK(U62(tt, x1))) A__U62(tt, U62(s(z0), x1)) -> c18(A__LENGTH(a__U62(s(mark(z0)), x1)), MARK(U62(s(z0), x1))) A__U62(tt, U62(x0, z1)) -> c18(MARK(U62(x0, z1))) A__U62(tt, U62(0, x1)) -> c18(A__LENGTH(a__U62(0, x1))) A__U62(tt, U62(nil, x1)) -> c18(A__LENGTH(a__U62(nil, x1))) A__U62(tt, isNat(length(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(isNat(length(z0)))) A__U62(tt, isNat(s(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(isNat(s(z0)))) A__U62(tt, isNat(0)) -> c18(MARK(isNat(0))) A__U62(tt, isNat(z0)) -> c18(MARK(isNat(z0))) A__U62(tt, length(zeros)) -> c18(A__LENGTH(a__length(a__zeros)), MARK(length(zeros))) A__U62(tt, length(U11(z0))) -> c18(A__LENGTH(a__length(a__U11(mark(z0)))), MARK(length(U11(z0)))) A__U62(tt, length(U21(z0))) -> c18(A__LENGTH(a__length(a__U21(mark(z0)))), MARK(length(U21(z0)))) A__U62(tt, length(U31(z0))) -> c18(A__LENGTH(a__length(a__U31(mark(z0)))), MARK(length(U31(z0)))) A__U62(tt, length(U41(z0, z1))) -> c18(A__LENGTH(a__length(a__U41(mark(z0), z1))), MARK(length(U41(z0, z1)))) A__U62(tt, length(U42(z0))) -> c18(A__LENGTH(a__length(a__U42(mark(z0)))), MARK(length(U42(z0)))) A__U62(tt, length(isNatIList(z0))) -> c18(A__LENGTH(a__length(a__isNatIList(z0))), MARK(length(isNatIList(z0)))) A__U62(tt, length(U51(z0, z1))) -> c18(A__LENGTH(a__length(a__U51(mark(z0), z1))), MARK(length(U51(z0, z1)))) A__U62(tt, length(U52(z0))) -> c18(A__LENGTH(a__length(a__U52(mark(z0)))), MARK(length(U52(z0)))) A__U62(tt, length(isNatList(z0))) -> c18(A__LENGTH(a__length(a__isNatList(z0))), MARK(length(isNatList(z0)))) A__U62(tt, length(U61(z0, z1, z2))) -> c18(A__LENGTH(a__length(a__U61(mark(z0), z1, z2))), MARK(length(U61(z0, z1, z2)))) A__U62(tt, length(U62(z0, z1))) -> c18(A__LENGTH(a__length(a__U62(mark(z0), z1))), MARK(length(U62(z0, z1)))) A__U62(tt, length(isNat(z0))) -> c18(A__LENGTH(a__length(a__isNat(z0))), MARK(length(isNat(z0)))) A__U62(tt, length(length(z0))) -> c18(A__LENGTH(a__length(a__length(mark(z0)))), MARK(length(length(z0)))) A__U62(tt, length(cons(z0, z1))) -> c18(A__LENGTH(a__length(cons(mark(z0), z1))), MARK(length(cons(z0, z1)))) A__U62(tt, length(s(z0))) -> c18(A__LENGTH(a__length(s(mark(z0)))), MARK(length(s(z0)))) A__U62(tt, length(x0)) -> c18(MARK(length(x0))) A__U62(tt, length(0)) -> c18(A__LENGTH(a__length(0))) A__U62(tt, length(tt)) -> c18(A__LENGTH(a__length(tt))) A__U62(tt, length(nil)) -> c18(A__LENGTH(a__length(nil))) A__U62(tt, zeros) -> c18(A__LENGTH(cons(0, zeros))) A__ISNATILIST(cons(length(nil), x1)) -> c26(A__U41(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATILIST(cons(length(cons(z0, z1)), x1)) -> c26(A__U41(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(length(x0), x1)) -> c26(A__ISNAT(length(x0))) A__ISNATILIST(cons(s(0), x1)) -> c26(A__U41(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATILIST(cons(s(length(z0)), x1)) -> c26(A__U41(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATILIST(cons(s(s(z0)), x1)) -> c26(A__U41(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(s(x0), x1)) -> c26(A__ISNAT(s(x0))) A__ISNATLIST(cons(length(nil), x1)) -> c29(A__U51(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATLIST(cons(length(cons(z0, z1)), x1)) -> c29(A__U51(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(length(x0), x1)) -> c29(A__ISNAT(length(x0))) A__ISNATLIST(cons(s(0), x1)) -> c29(A__U51(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATLIST(cons(s(length(z0)), x1)) -> c29(A__U51(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATLIST(cons(s(s(z0)), x1)) -> c29(A__U51(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(s(x0), x1)) -> c29(A__ISNAT(s(x0))) A__LENGTH(cons(x0, cons(0, x2))) -> c32(A__U61(a__U51(tt, x2), cons(0, x2), x0), A__ISNATLIST(cons(0, x2))) A__LENGTH(cons(x0, cons(length(z0), x2))) -> c32(A__U61(a__U51(a__U11(a__isNatList(z0)), x2), cons(length(z0), x2), x0), A__ISNATLIST(cons(length(z0), x2))) A__LENGTH(cons(x0, cons(s(z0), x2))) -> c32(A__U61(a__U51(a__U21(a__isNat(z0)), x2), cons(s(z0), x2), x0), A__ISNATLIST(cons(s(z0), x2))) A__LENGTH(cons(x0, cons(z0, x2))) -> c32(A__U61(a__U51(isNat(z0), x2), cons(z0, x2), x0), A__ISNATLIST(cons(z0, x2))) A__LENGTH(cons(x0, cons(x1, z1))) -> c32(A__ISNATLIST(cons(x1, z1))) MARK(U41(U11(zeros), x1)) -> c38(A__U41(a__U11(a__zeros), x1), MARK(U11(zeros))) MARK(U41(U11(U11(z0)), x1)) -> c38(A__U41(a__U11(a__U11(mark(z0))), x1), MARK(U11(U11(z0)))) MARK(U41(U11(U21(z0)), x1)) -> c38(A__U41(a__U11(a__U21(mark(z0))), x1), MARK(U11(U21(z0)))) MARK(U41(U11(U31(z0)), x1)) -> c38(A__U41(a__U11(a__U31(mark(z0))), x1), MARK(U11(U31(z0)))) MARK(U41(U11(U41(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U41(mark(z0), z1)), x1), MARK(U11(U41(z0, z1)))) MARK(U41(U11(U42(z0)), x1)) -> c38(A__U41(a__U11(a__U42(mark(z0))), x1), MARK(U11(U42(z0)))) MARK(U41(U11(isNatIList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatIList(z0)), x1), MARK(U11(isNatIList(z0)))) MARK(U41(U11(U51(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U51(mark(z0), z1)), x1), MARK(U11(U51(z0, z1)))) MARK(U41(U11(U52(z0)), x1)) -> c38(A__U41(a__U11(a__U52(mark(z0))), x1), MARK(U11(U52(z0)))) MARK(U41(U11(isNatList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatList(z0)), x1), MARK(U11(isNatList(z0)))) MARK(U41(U11(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U11(a__U61(mark(z0), z1, z2)), x1), MARK(U11(U61(z0, z1, z2)))) MARK(U41(U11(U62(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U62(mark(z0), z1)), x1), MARK(U11(U62(z0, z1)))) MARK(U41(U11(isNat(z0)), x1)) -> c38(A__U41(a__U11(a__isNat(z0)), x1), MARK(U11(isNat(z0)))) MARK(U41(U11(length(z0)), x1)) -> c38(A__U41(a__U11(a__length(mark(z0))), x1), MARK(U11(length(z0)))) MARK(U41(U11(cons(z0, z1)), x1)) -> c38(A__U41(a__U11(cons(mark(z0), z1)), x1), MARK(U11(cons(z0, z1)))) MARK(U41(U11(0), x1)) -> c38(A__U41(a__U11(0), x1), MARK(U11(0))) MARK(U41(U11(tt), x1)) -> c38(A__U41(a__U11(tt), x1), MARK(U11(tt))) MARK(U41(U11(s(z0)), x1)) -> c38(A__U41(a__U11(s(mark(z0))), x1), MARK(U11(s(z0)))) MARK(U41(U11(nil), x1)) -> c38(A__U41(a__U11(nil), x1), MARK(U11(nil))) MARK(U41(U11(x0), x1)) -> c38(MARK(U11(x0))) MARK(U41(U21(zeros), x1)) -> c38(A__U41(a__U21(a__zeros), x1), MARK(U21(zeros))) MARK(U41(U21(U11(z0)), x1)) -> c38(A__U41(a__U21(a__U11(mark(z0))), x1), MARK(U21(U11(z0)))) MARK(U41(U21(U21(z0)), x1)) -> c38(A__U41(a__U21(a__U21(mark(z0))), x1), MARK(U21(U21(z0)))) MARK(U41(U21(U31(z0)), x1)) -> c38(A__U41(a__U21(a__U31(mark(z0))), x1), MARK(U21(U31(z0)))) MARK(U41(U21(U41(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U41(mark(z0), z1)), x1), MARK(U21(U41(z0, z1)))) MARK(U41(U21(U42(z0)), x1)) -> c38(A__U41(a__U21(a__U42(mark(z0))), x1), MARK(U21(U42(z0)))) MARK(U41(U21(isNatIList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatIList(z0)), x1), MARK(U21(isNatIList(z0)))) MARK(U41(U21(U51(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U51(mark(z0), z1)), x1), MARK(U21(U51(z0, z1)))) MARK(U41(U21(U52(z0)), x1)) -> c38(A__U41(a__U21(a__U52(mark(z0))), x1), MARK(U21(U52(z0)))) MARK(U41(U21(isNatList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatList(z0)), x1), MARK(U21(isNatList(z0)))) MARK(U41(U21(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U21(a__U61(mark(z0), z1, z2)), x1), MARK(U21(U61(z0, z1, z2)))) MARK(U41(U21(U62(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U62(mark(z0), z1)), x1), MARK(U21(U62(z0, z1)))) MARK(U41(U21(isNat(z0)), x1)) -> c38(A__U41(a__U21(a__isNat(z0)), x1), MARK(U21(isNat(z0)))) MARK(U41(U21(length(z0)), x1)) -> c38(A__U41(a__U21(a__length(mark(z0))), x1), MARK(U21(length(z0)))) MARK(U41(U21(cons(z0, z1)), x1)) -> c38(A__U41(a__U21(cons(mark(z0), z1)), x1), MARK(U21(cons(z0, z1)))) MARK(U41(U21(0), x1)) -> c38(A__U41(a__U21(0), x1), MARK(U21(0))) MARK(U41(U21(tt), x1)) -> c38(A__U41(a__U21(tt), x1), MARK(U21(tt))) MARK(U41(U21(s(z0)), x1)) -> c38(A__U41(a__U21(s(mark(z0))), x1), MARK(U21(s(z0)))) MARK(U41(U21(nil), x1)) -> c38(A__U41(a__U21(nil), x1), MARK(U21(nil))) MARK(U41(U21(x0), x1)) -> c38(MARK(U21(x0))) MARK(U41(U31(x0), x1)) -> c38(A__U41(U31(mark(x0)), x1), MARK(U31(x0))) MARK(U41(U31(zeros), x1)) -> c38(A__U41(a__U31(a__zeros), x1), MARK(U31(zeros))) MARK(U41(U31(U11(z0)), x1)) -> c38(A__U41(a__U31(a__U11(mark(z0))), x1), MARK(U31(U11(z0)))) MARK(U41(U31(U21(z0)), x1)) -> c38(A__U41(a__U31(a__U21(mark(z0))), x1), MARK(U31(U21(z0)))) MARK(U41(U31(U31(z0)), x1)) -> c38(A__U41(a__U31(a__U31(mark(z0))), x1), MARK(U31(U31(z0)))) MARK(U41(U31(U41(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U41(mark(z0), z1)), x1), MARK(U31(U41(z0, z1)))) MARK(U41(U31(U42(z0)), x1)) -> c38(A__U41(a__U31(a__U42(mark(z0))), x1), MARK(U31(U42(z0)))) MARK(U41(U31(isNatIList(z0)), x1)) -> c38(A__U41(a__U31(a__isNatIList(z0)), x1), MARK(U31(isNatIList(z0)))) MARK(U41(U31(U51(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U51(mark(z0), z1)), x1), MARK(U31(U51(z0, z1)))) MARK(U41(U31(U52(z0)), x1)) -> c38(A__U41(a__U31(a__U52(mark(z0))), x1), MARK(U31(U52(z0)))) MARK(U41(U31(isNatList(z0)), x1)) -> c38(A__U41(a__U31(a__isNatList(z0)), x1), MARK(U31(isNatList(z0)))) MARK(U41(U31(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U31(a__U61(mark(z0), z1, z2)), x1), MARK(U31(U61(z0, z1, z2)))) MARK(U41(U31(U62(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U62(mark(z0), z1)), x1), MARK(U31(U62(z0, z1)))) MARK(U41(U31(isNat(z0)), x1)) -> c38(A__U41(a__U31(a__isNat(z0)), x1), MARK(U31(isNat(z0)))) MARK(U41(U31(length(z0)), x1)) -> c38(A__U41(a__U31(a__length(mark(z0))), x1), MARK(U31(length(z0)))) MARK(U41(U31(cons(z0, z1)), x1)) -> c38(A__U41(a__U31(cons(mark(z0), z1)), x1), MARK(U31(cons(z0, z1)))) MARK(U41(U31(0), x1)) -> c38(A__U41(a__U31(0), x1), MARK(U31(0))) MARK(U41(U31(tt), x1)) -> c38(A__U41(a__U31(tt), x1), MARK(U31(tt))) MARK(U41(U31(s(z0)), x1)) -> c38(A__U41(a__U31(s(mark(z0))), x1), MARK(U31(s(z0)))) MARK(U41(U31(nil), x1)) -> c38(A__U41(a__U31(nil), x1), MARK(U31(nil))) MARK(U41(U31(x0), x1)) -> c38(MARK(U31(x0))) K tuples:none Defined Rule Symbols: a__zeros, a__U11_1, a__U21_1, a__U31_1, a__U41_2, a__U42_1, a__U51_2, a__U52_1, a__U61_3, a__U62_2, a__isNat_1, a__isNatIList_1, a__isNatList_1, a__length_1, mark_1 Defined Pair Symbols: MARK_1, A__U41_2, A__U51_2, A__ISNAT_1, A__ISNATILIST_1, A__U61_3, A__U62_2, A__ISNATLIST_1, A__LENGTH_1 Compound Symbols: c40_1, c43_1, c46_1, c48_1, c51_1, c8_1, c12_1, c21_1, c22_1, c24_1, c35_1, c36_1, c37_1, c39_1, c42_1, c16_1, c18_2, c18_1, c26_1, c29_1, c32_1, c38_2, c38_1, c_1, c41_2, c41_1, c1_1, c44_2, c44_1, c45_2, c45_1, c47_2, c47_1, c16_2, c26_2, c29_2, c32_2 ---------------------------------------- (179) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 1 trailing tuple parts ---------------------------------------- (180) Obligation: Complexity Dependency Tuples Problem Rules: a__zeros -> cons(0, zeros) a__zeros -> zeros a__U11(tt) -> tt a__U11(z0) -> U11(z0) a__U21(tt) -> tt a__U21(z0) -> U21(z0) a__U31(tt) -> tt a__U31(z0) -> U31(z0) a__U41(tt, z0) -> a__U42(a__isNatIList(z0)) a__U41(z0, z1) -> U41(z0, z1) a__U42(tt) -> tt a__U42(z0) -> U42(z0) a__U51(tt, z0) -> a__U52(a__isNatList(z0)) a__U51(z0, z1) -> U51(z0, z1) a__U52(tt) -> tt a__U52(z0) -> U52(z0) a__U61(tt, z0, z1) -> a__U62(a__isNat(z1), z0) a__U61(z0, z1, z2) -> U61(z0, z1, z2) a__U62(tt, z0) -> s(a__length(mark(z0))) a__U62(z0, z1) -> U62(z0, z1) a__isNat(0) -> tt a__isNat(length(z0)) -> a__U11(a__isNatList(z0)) a__isNat(s(z0)) -> a__U21(a__isNat(z0)) a__isNat(z0) -> isNat(z0) a__isNatIList(z0) -> a__U31(a__isNatList(z0)) a__isNatIList(zeros) -> tt a__isNatIList(cons(z0, z1)) -> a__U41(a__isNat(z0), z1) a__isNatIList(z0) -> isNatIList(z0) a__isNatList(nil) -> tt a__isNatList(cons(z0, z1)) -> a__U51(a__isNat(z0), z1) a__isNatList(z0) -> isNatList(z0) a__length(nil) -> 0 a__length(cons(z0, z1)) -> a__U61(a__isNatList(z1), z1, z0) a__length(z0) -> length(z0) mark(zeros) -> a__zeros mark(U11(z0)) -> a__U11(mark(z0)) mark(U21(z0)) -> a__U21(mark(z0)) mark(U31(z0)) -> a__U31(mark(z0)) mark(U41(z0, z1)) -> a__U41(mark(z0), z1) mark(U42(z0)) -> a__U42(mark(z0)) mark(isNatIList(z0)) -> a__isNatIList(z0) mark(U51(z0, z1)) -> a__U51(mark(z0), z1) mark(U52(z0)) -> a__U52(mark(z0)) mark(isNatList(z0)) -> a__isNatList(z0) mark(U61(z0, z1, z2)) -> a__U61(mark(z0), z1, z2) mark(U62(z0, z1)) -> a__U62(mark(z0), z1) mark(isNat(z0)) -> a__isNat(z0) mark(length(z0)) -> a__length(mark(z0)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(0) -> 0 mark(tt) -> tt mark(s(z0)) -> s(mark(z0)) mark(nil) -> nil Tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) A__U62(tt, isNatList(cons(z0, z1))) -> c18(A__LENGTH(a__U51(a__isNat(z0), z1)), MARK(isNatList(cons(z0, z1)))) A__U62(tt, isNatList(nil)) -> c18(MARK(isNatList(nil))) A__U62(tt, isNatList(z0)) -> c18(MARK(isNatList(z0))) A__U62(tt, U61(zeros, x1, x2)) -> c18(A__LENGTH(a__U61(a__zeros, x1, x2)), MARK(U61(zeros, x1, x2))) A__U62(tt, U61(U11(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U11(mark(z0)), x1, x2)), MARK(U61(U11(z0), x1, x2))) A__U62(tt, U61(U21(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U21(mark(z0)), x1, x2)), MARK(U61(U21(z0), x1, x2))) A__U62(tt, U61(U31(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U31(mark(z0)), x1, x2)), MARK(U61(U31(z0), x1, x2))) A__U62(tt, U61(U41(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U41(mark(z0), z1), x1, x2)), MARK(U61(U41(z0, z1), x1, x2))) A__U62(tt, U61(U42(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U42(mark(z0)), x1, x2)), MARK(U61(U42(z0), x1, x2))) A__U62(tt, U61(isNatIList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatIList(z0), x1, x2)), MARK(U61(isNatIList(z0), x1, x2))) A__U62(tt, U61(U51(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U51(mark(z0), z1), x1, x2)), MARK(U61(U51(z0, z1), x1, x2))) A__U62(tt, U61(U52(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U52(mark(z0)), x1, x2)), MARK(U61(U52(z0), x1, x2))) A__U62(tt, U61(isNatList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatList(z0), x1, x2)), MARK(U61(isNatList(z0), x1, x2))) A__U62(tt, U61(U61(z0, z1, z2), x1, x2)) -> c18(A__LENGTH(a__U61(a__U61(mark(z0), z1, z2), x1, x2)), MARK(U61(U61(z0, z1, z2), x1, x2))) A__U62(tt, U61(U62(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U62(mark(z0), z1), x1, x2)), MARK(U61(U62(z0, z1), x1, x2))) A__U62(tt, U61(isNat(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNat(z0), x1, x2)), MARK(U61(isNat(z0), x1, x2))) A__U62(tt, U61(length(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__length(mark(z0)), x1, x2)), MARK(U61(length(z0), x1, x2))) A__U62(tt, U61(cons(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(cons(mark(z0), z1), x1, x2)), MARK(U61(cons(z0, z1), x1, x2))) A__U62(tt, U61(tt, x1, x2)) -> c18(A__LENGTH(a__U61(tt, x1, x2)), MARK(U61(tt, x1, x2))) A__U62(tt, U61(s(z0), x1, x2)) -> c18(A__LENGTH(a__U61(s(mark(z0)), x1, x2)), MARK(U61(s(z0), x1, x2))) A__U62(tt, U61(x0, z1, z2)) -> c18(MARK(U61(x0, z1, z2))) A__U62(tt, U61(0, x1, x2)) -> c18(A__LENGTH(a__U61(0, x1, x2))) A__U62(tt, U61(nil, x1, x2)) -> c18(A__LENGTH(a__U61(nil, x1, x2))) A__U62(tt, U62(zeros, x1)) -> c18(A__LENGTH(a__U62(a__zeros, x1)), MARK(U62(zeros, x1))) A__U62(tt, U62(U11(z0), x1)) -> c18(A__LENGTH(a__U62(a__U11(mark(z0)), x1)), MARK(U62(U11(z0), x1))) A__U62(tt, U62(U21(z0), x1)) -> c18(A__LENGTH(a__U62(a__U21(mark(z0)), x1)), MARK(U62(U21(z0), x1))) A__U62(tt, U62(U31(z0), x1)) -> c18(A__LENGTH(a__U62(a__U31(mark(z0)), x1)), MARK(U62(U31(z0), x1))) A__U62(tt, U62(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U41(mark(z0), z1), x1)), MARK(U62(U41(z0, z1), x1))) A__U62(tt, U62(U42(z0), x1)) -> c18(A__LENGTH(a__U62(a__U42(mark(z0)), x1)), MARK(U62(U42(z0), x1))) A__U62(tt, U62(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatIList(z0), x1)), MARK(U62(isNatIList(z0), x1))) A__U62(tt, U62(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U51(mark(z0), z1), x1)), MARK(U62(U51(z0, z1), x1))) A__U62(tt, U62(U52(z0), x1)) -> c18(A__LENGTH(a__U62(a__U52(mark(z0)), x1)), MARK(U62(U52(z0), x1))) A__U62(tt, U62(isNatList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatList(z0), x1)), MARK(U62(isNatList(z0), x1))) A__U62(tt, U62(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U62(a__U61(mark(z0), z1, z2), x1)), MARK(U62(U61(z0, z1, z2), x1))) A__U62(tt, U62(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U62(mark(z0), z1), x1)), MARK(U62(U62(z0, z1), x1))) A__U62(tt, U62(isNat(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNat(z0), x1)), MARK(U62(isNat(z0), x1))) A__U62(tt, U62(length(z0), x1)) -> c18(A__LENGTH(a__U62(a__length(mark(z0)), x1)), MARK(U62(length(z0), x1))) A__U62(tt, U62(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U62(cons(mark(z0), z1), x1)), MARK(U62(cons(z0, z1), x1))) A__U62(tt, U62(tt, x1)) -> c18(A__LENGTH(a__U62(tt, x1)), MARK(U62(tt, x1))) A__U62(tt, U62(s(z0), x1)) -> c18(A__LENGTH(a__U62(s(mark(z0)), x1)), MARK(U62(s(z0), x1))) A__U62(tt, U62(x0, z1)) -> c18(MARK(U62(x0, z1))) A__U62(tt, U62(0, x1)) -> c18(A__LENGTH(a__U62(0, x1))) A__U62(tt, U62(nil, x1)) -> c18(A__LENGTH(a__U62(nil, x1))) A__U62(tt, isNat(length(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(isNat(length(z0)))) A__U62(tt, isNat(s(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(isNat(s(z0)))) A__U62(tt, isNat(0)) -> c18(MARK(isNat(0))) A__U62(tt, isNat(z0)) -> c18(MARK(isNat(z0))) A__U62(tt, length(zeros)) -> c18(A__LENGTH(a__length(a__zeros)), MARK(length(zeros))) A__U62(tt, length(U11(z0))) -> c18(A__LENGTH(a__length(a__U11(mark(z0)))), MARK(length(U11(z0)))) A__U62(tt, length(U21(z0))) -> c18(A__LENGTH(a__length(a__U21(mark(z0)))), MARK(length(U21(z0)))) A__U62(tt, length(U31(z0))) -> c18(A__LENGTH(a__length(a__U31(mark(z0)))), MARK(length(U31(z0)))) A__U62(tt, length(U41(z0, z1))) -> c18(A__LENGTH(a__length(a__U41(mark(z0), z1))), MARK(length(U41(z0, z1)))) A__U62(tt, length(U42(z0))) -> c18(A__LENGTH(a__length(a__U42(mark(z0)))), MARK(length(U42(z0)))) A__U62(tt, length(isNatIList(z0))) -> c18(A__LENGTH(a__length(a__isNatIList(z0))), MARK(length(isNatIList(z0)))) A__U62(tt, length(U51(z0, z1))) -> c18(A__LENGTH(a__length(a__U51(mark(z0), z1))), MARK(length(U51(z0, z1)))) A__U62(tt, length(U52(z0))) -> c18(A__LENGTH(a__length(a__U52(mark(z0)))), MARK(length(U52(z0)))) A__U62(tt, length(isNatList(z0))) -> c18(A__LENGTH(a__length(a__isNatList(z0))), MARK(length(isNatList(z0)))) A__U62(tt, length(U61(z0, z1, z2))) -> c18(A__LENGTH(a__length(a__U61(mark(z0), z1, z2))), MARK(length(U61(z0, z1, z2)))) A__U62(tt, length(U62(z0, z1))) -> c18(A__LENGTH(a__length(a__U62(mark(z0), z1))), MARK(length(U62(z0, z1)))) A__U62(tt, length(isNat(z0))) -> c18(A__LENGTH(a__length(a__isNat(z0))), MARK(length(isNat(z0)))) A__U62(tt, length(length(z0))) -> c18(A__LENGTH(a__length(a__length(mark(z0)))), MARK(length(length(z0)))) A__U62(tt, length(cons(z0, z1))) -> c18(A__LENGTH(a__length(cons(mark(z0), z1))), MARK(length(cons(z0, z1)))) A__U62(tt, length(s(z0))) -> c18(A__LENGTH(a__length(s(mark(z0)))), MARK(length(s(z0)))) A__U62(tt, length(x0)) -> c18(MARK(length(x0))) A__U62(tt, length(0)) -> c18(A__LENGTH(a__length(0))) A__U62(tt, length(tt)) -> c18(A__LENGTH(a__length(tt))) A__U62(tt, length(nil)) -> c18(A__LENGTH(a__length(nil))) A__U62(tt, zeros) -> c18(A__LENGTH(cons(0, zeros))) A__ISNATILIST(cons(length(nil), x1)) -> c26(A__U41(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATILIST(cons(length(cons(z0, z1)), x1)) -> c26(A__U41(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(length(x0), x1)) -> c26(A__ISNAT(length(x0))) A__ISNATILIST(cons(s(0), x1)) -> c26(A__U41(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATILIST(cons(s(length(z0)), x1)) -> c26(A__U41(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATILIST(cons(s(s(z0)), x1)) -> c26(A__U41(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(s(x0), x1)) -> c26(A__ISNAT(s(x0))) A__ISNATLIST(cons(length(nil), x1)) -> c29(A__U51(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATLIST(cons(length(cons(z0, z1)), x1)) -> c29(A__U51(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(length(x0), x1)) -> c29(A__ISNAT(length(x0))) A__ISNATLIST(cons(s(0), x1)) -> c29(A__U51(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATLIST(cons(s(length(z0)), x1)) -> c29(A__U51(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATLIST(cons(s(s(z0)), x1)) -> c29(A__U51(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(s(x0), x1)) -> c29(A__ISNAT(s(x0))) A__LENGTH(cons(x0, cons(0, x2))) -> c32(A__U61(a__U51(tt, x2), cons(0, x2), x0), A__ISNATLIST(cons(0, x2))) A__LENGTH(cons(x0, cons(length(z0), x2))) -> c32(A__U61(a__U51(a__U11(a__isNatList(z0)), x2), cons(length(z0), x2), x0), A__ISNATLIST(cons(length(z0), x2))) A__LENGTH(cons(x0, cons(s(z0), x2))) -> c32(A__U61(a__U51(a__U21(a__isNat(z0)), x2), cons(s(z0), x2), x0), A__ISNATLIST(cons(s(z0), x2))) A__LENGTH(cons(x0, cons(z0, x2))) -> c32(A__U61(a__U51(isNat(z0), x2), cons(z0, x2), x0), A__ISNATLIST(cons(z0, x2))) A__LENGTH(cons(x0, cons(x1, z1))) -> c32(A__ISNATLIST(cons(x1, z1))) MARK(U41(U11(zeros), x1)) -> c38(A__U41(a__U11(a__zeros), x1), MARK(U11(zeros))) MARK(U41(U11(U11(z0)), x1)) -> c38(A__U41(a__U11(a__U11(mark(z0))), x1), MARK(U11(U11(z0)))) MARK(U41(U11(U21(z0)), x1)) -> c38(A__U41(a__U11(a__U21(mark(z0))), x1), MARK(U11(U21(z0)))) MARK(U41(U11(U31(z0)), x1)) -> c38(A__U41(a__U11(a__U31(mark(z0))), x1), MARK(U11(U31(z0)))) MARK(U41(U11(U41(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U41(mark(z0), z1)), x1), MARK(U11(U41(z0, z1)))) MARK(U41(U11(U42(z0)), x1)) -> c38(A__U41(a__U11(a__U42(mark(z0))), x1), MARK(U11(U42(z0)))) MARK(U41(U11(isNatIList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatIList(z0)), x1), MARK(U11(isNatIList(z0)))) MARK(U41(U11(U51(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U51(mark(z0), z1)), x1), MARK(U11(U51(z0, z1)))) MARK(U41(U11(U52(z0)), x1)) -> c38(A__U41(a__U11(a__U52(mark(z0))), x1), MARK(U11(U52(z0)))) MARK(U41(U11(isNatList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatList(z0)), x1), MARK(U11(isNatList(z0)))) MARK(U41(U11(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U11(a__U61(mark(z0), z1, z2)), x1), MARK(U11(U61(z0, z1, z2)))) MARK(U41(U11(U62(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U62(mark(z0), z1)), x1), MARK(U11(U62(z0, z1)))) MARK(U41(U11(isNat(z0)), x1)) -> c38(A__U41(a__U11(a__isNat(z0)), x1), MARK(U11(isNat(z0)))) MARK(U41(U11(length(z0)), x1)) -> c38(A__U41(a__U11(a__length(mark(z0))), x1), MARK(U11(length(z0)))) MARK(U41(U11(cons(z0, z1)), x1)) -> c38(A__U41(a__U11(cons(mark(z0), z1)), x1), MARK(U11(cons(z0, z1)))) MARK(U41(U11(0), x1)) -> c38(A__U41(a__U11(0), x1), MARK(U11(0))) MARK(U41(U11(tt), x1)) -> c38(A__U41(a__U11(tt), x1), MARK(U11(tt))) MARK(U41(U11(s(z0)), x1)) -> c38(A__U41(a__U11(s(mark(z0))), x1), MARK(U11(s(z0)))) MARK(U41(U11(nil), x1)) -> c38(A__U41(a__U11(nil), x1), MARK(U11(nil))) MARK(U41(U11(x0), x1)) -> c38(MARK(U11(x0))) MARK(U41(U21(zeros), x1)) -> c38(A__U41(a__U21(a__zeros), x1), MARK(U21(zeros))) MARK(U41(U21(U11(z0)), x1)) -> c38(A__U41(a__U21(a__U11(mark(z0))), x1), MARK(U21(U11(z0)))) MARK(U41(U21(U21(z0)), x1)) -> c38(A__U41(a__U21(a__U21(mark(z0))), x1), MARK(U21(U21(z0)))) MARK(U41(U21(U31(z0)), x1)) -> c38(A__U41(a__U21(a__U31(mark(z0))), x1), MARK(U21(U31(z0)))) MARK(U41(U21(U41(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U41(mark(z0), z1)), x1), MARK(U21(U41(z0, z1)))) MARK(U41(U21(U42(z0)), x1)) -> c38(A__U41(a__U21(a__U42(mark(z0))), x1), MARK(U21(U42(z0)))) MARK(U41(U21(isNatIList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatIList(z0)), x1), MARK(U21(isNatIList(z0)))) MARK(U41(U21(U51(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U51(mark(z0), z1)), x1), MARK(U21(U51(z0, z1)))) MARK(U41(U21(U52(z0)), x1)) -> c38(A__U41(a__U21(a__U52(mark(z0))), x1), MARK(U21(U52(z0)))) MARK(U41(U21(isNatList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatList(z0)), x1), MARK(U21(isNatList(z0)))) MARK(U41(U21(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U21(a__U61(mark(z0), z1, z2)), x1), MARK(U21(U61(z0, z1, z2)))) MARK(U41(U21(U62(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U62(mark(z0), z1)), x1), MARK(U21(U62(z0, z1)))) MARK(U41(U21(isNat(z0)), x1)) -> c38(A__U41(a__U21(a__isNat(z0)), x1), MARK(U21(isNat(z0)))) MARK(U41(U21(length(z0)), x1)) -> c38(A__U41(a__U21(a__length(mark(z0))), x1), MARK(U21(length(z0)))) MARK(U41(U21(cons(z0, z1)), x1)) -> c38(A__U41(a__U21(cons(mark(z0), z1)), x1), MARK(U21(cons(z0, z1)))) MARK(U41(U21(0), x1)) -> c38(A__U41(a__U21(0), x1), MARK(U21(0))) MARK(U41(U21(tt), x1)) -> c38(A__U41(a__U21(tt), x1), MARK(U21(tt))) MARK(U41(U21(s(z0)), x1)) -> c38(A__U41(a__U21(s(mark(z0))), x1), MARK(U21(s(z0)))) MARK(U41(U21(nil), x1)) -> c38(A__U41(a__U21(nil), x1), MARK(U21(nil))) MARK(U41(U21(x0), x1)) -> c38(MARK(U21(x0))) MARK(U41(U31(zeros), x1)) -> c38(A__U41(a__U31(a__zeros), x1), MARK(U31(zeros))) MARK(U41(U31(U11(z0)), x1)) -> c38(A__U41(a__U31(a__U11(mark(z0))), x1), MARK(U31(U11(z0)))) MARK(U41(U31(U21(z0)), x1)) -> c38(A__U41(a__U31(a__U21(mark(z0))), x1), MARK(U31(U21(z0)))) MARK(U41(U31(U31(z0)), x1)) -> c38(A__U41(a__U31(a__U31(mark(z0))), x1), MARK(U31(U31(z0)))) MARK(U41(U31(U41(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U41(mark(z0), z1)), x1), MARK(U31(U41(z0, z1)))) MARK(U41(U31(U42(z0)), x1)) -> c38(A__U41(a__U31(a__U42(mark(z0))), x1), MARK(U31(U42(z0)))) MARK(U41(U31(isNatIList(z0)), x1)) -> c38(A__U41(a__U31(a__isNatIList(z0)), x1), MARK(U31(isNatIList(z0)))) MARK(U41(U31(U51(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U51(mark(z0), z1)), x1), MARK(U31(U51(z0, z1)))) MARK(U41(U31(U52(z0)), x1)) -> c38(A__U41(a__U31(a__U52(mark(z0))), x1), MARK(U31(U52(z0)))) MARK(U41(U31(isNatList(z0)), x1)) -> c38(A__U41(a__U31(a__isNatList(z0)), x1), MARK(U31(isNatList(z0)))) MARK(U41(U31(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U31(a__U61(mark(z0), z1, z2)), x1), MARK(U31(U61(z0, z1, z2)))) MARK(U41(U31(U62(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U62(mark(z0), z1)), x1), MARK(U31(U62(z0, z1)))) MARK(U41(U31(isNat(z0)), x1)) -> c38(A__U41(a__U31(a__isNat(z0)), x1), MARK(U31(isNat(z0)))) MARK(U41(U31(length(z0)), x1)) -> c38(A__U41(a__U31(a__length(mark(z0))), x1), MARK(U31(length(z0)))) MARK(U41(U31(cons(z0, z1)), x1)) -> c38(A__U41(a__U31(cons(mark(z0), z1)), x1), MARK(U31(cons(z0, z1)))) MARK(U41(U31(0), x1)) -> c38(A__U41(a__U31(0), x1), MARK(U31(0))) MARK(U41(U31(tt), x1)) -> c38(A__U41(a__U31(tt), x1), MARK(U31(tt))) MARK(U41(U31(s(z0)), x1)) -> c38(A__U41(a__U31(s(mark(z0))), x1), MARK(U31(s(z0)))) MARK(U41(U31(nil), x1)) -> c38(A__U41(a__U31(nil), x1), MARK(U31(nil))) MARK(U41(U31(x0), x1)) -> c38(MARK(U31(x0))) S tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) A__U62(tt, isNatList(cons(z0, z1))) -> c18(A__LENGTH(a__U51(a__isNat(z0), z1)), MARK(isNatList(cons(z0, z1)))) A__U62(tt, isNatList(nil)) -> c18(MARK(isNatList(nil))) A__U62(tt, isNatList(z0)) -> c18(MARK(isNatList(z0))) A__U62(tt, U61(zeros, x1, x2)) -> c18(A__LENGTH(a__U61(a__zeros, x1, x2)), MARK(U61(zeros, x1, x2))) A__U62(tt, U61(U11(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U11(mark(z0)), x1, x2)), MARK(U61(U11(z0), x1, x2))) A__U62(tt, U61(U21(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U21(mark(z0)), x1, x2)), MARK(U61(U21(z0), x1, x2))) A__U62(tt, U61(U31(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U31(mark(z0)), x1, x2)), MARK(U61(U31(z0), x1, x2))) A__U62(tt, U61(U41(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U41(mark(z0), z1), x1, x2)), MARK(U61(U41(z0, z1), x1, x2))) A__U62(tt, U61(U42(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U42(mark(z0)), x1, x2)), MARK(U61(U42(z0), x1, x2))) A__U62(tt, U61(isNatIList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatIList(z0), x1, x2)), MARK(U61(isNatIList(z0), x1, x2))) A__U62(tt, U61(U51(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U51(mark(z0), z1), x1, x2)), MARK(U61(U51(z0, z1), x1, x2))) A__U62(tt, U61(U52(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U52(mark(z0)), x1, x2)), MARK(U61(U52(z0), x1, x2))) A__U62(tt, U61(isNatList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatList(z0), x1, x2)), MARK(U61(isNatList(z0), x1, x2))) A__U62(tt, U61(U61(z0, z1, z2), x1, x2)) -> c18(A__LENGTH(a__U61(a__U61(mark(z0), z1, z2), x1, x2)), MARK(U61(U61(z0, z1, z2), x1, x2))) A__U62(tt, U61(U62(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U62(mark(z0), z1), x1, x2)), MARK(U61(U62(z0, z1), x1, x2))) A__U62(tt, U61(isNat(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNat(z0), x1, x2)), MARK(U61(isNat(z0), x1, x2))) A__U62(tt, U61(length(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__length(mark(z0)), x1, x2)), MARK(U61(length(z0), x1, x2))) A__U62(tt, U61(cons(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(cons(mark(z0), z1), x1, x2)), MARK(U61(cons(z0, z1), x1, x2))) A__U62(tt, U61(tt, x1, x2)) -> c18(A__LENGTH(a__U61(tt, x1, x2)), MARK(U61(tt, x1, x2))) A__U62(tt, U61(s(z0), x1, x2)) -> c18(A__LENGTH(a__U61(s(mark(z0)), x1, x2)), MARK(U61(s(z0), x1, x2))) A__U62(tt, U61(x0, z1, z2)) -> c18(MARK(U61(x0, z1, z2))) A__U62(tt, U61(0, x1, x2)) -> c18(A__LENGTH(a__U61(0, x1, x2))) A__U62(tt, U61(nil, x1, x2)) -> c18(A__LENGTH(a__U61(nil, x1, x2))) A__U62(tt, U62(zeros, x1)) -> c18(A__LENGTH(a__U62(a__zeros, x1)), MARK(U62(zeros, x1))) A__U62(tt, U62(U11(z0), x1)) -> c18(A__LENGTH(a__U62(a__U11(mark(z0)), x1)), MARK(U62(U11(z0), x1))) A__U62(tt, U62(U21(z0), x1)) -> c18(A__LENGTH(a__U62(a__U21(mark(z0)), x1)), MARK(U62(U21(z0), x1))) A__U62(tt, U62(U31(z0), x1)) -> c18(A__LENGTH(a__U62(a__U31(mark(z0)), x1)), MARK(U62(U31(z0), x1))) A__U62(tt, U62(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U41(mark(z0), z1), x1)), MARK(U62(U41(z0, z1), x1))) A__U62(tt, U62(U42(z0), x1)) -> c18(A__LENGTH(a__U62(a__U42(mark(z0)), x1)), MARK(U62(U42(z0), x1))) A__U62(tt, U62(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatIList(z0), x1)), MARK(U62(isNatIList(z0), x1))) A__U62(tt, U62(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U51(mark(z0), z1), x1)), MARK(U62(U51(z0, z1), x1))) A__U62(tt, U62(U52(z0), x1)) -> c18(A__LENGTH(a__U62(a__U52(mark(z0)), x1)), MARK(U62(U52(z0), x1))) A__U62(tt, U62(isNatList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatList(z0), x1)), MARK(U62(isNatList(z0), x1))) A__U62(tt, U62(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U62(a__U61(mark(z0), z1, z2), x1)), MARK(U62(U61(z0, z1, z2), x1))) A__U62(tt, U62(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U62(mark(z0), z1), x1)), MARK(U62(U62(z0, z1), x1))) A__U62(tt, U62(isNat(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNat(z0), x1)), MARK(U62(isNat(z0), x1))) A__U62(tt, U62(length(z0), x1)) -> c18(A__LENGTH(a__U62(a__length(mark(z0)), x1)), MARK(U62(length(z0), x1))) A__U62(tt, U62(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U62(cons(mark(z0), z1), x1)), MARK(U62(cons(z0, z1), x1))) A__U62(tt, U62(tt, x1)) -> c18(A__LENGTH(a__U62(tt, x1)), MARK(U62(tt, x1))) A__U62(tt, U62(s(z0), x1)) -> c18(A__LENGTH(a__U62(s(mark(z0)), x1)), MARK(U62(s(z0), x1))) A__U62(tt, U62(x0, z1)) -> c18(MARK(U62(x0, z1))) A__U62(tt, U62(0, x1)) -> c18(A__LENGTH(a__U62(0, x1))) A__U62(tt, U62(nil, x1)) -> c18(A__LENGTH(a__U62(nil, x1))) A__U62(tt, isNat(length(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(isNat(length(z0)))) A__U62(tt, isNat(s(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(isNat(s(z0)))) A__U62(tt, isNat(0)) -> c18(MARK(isNat(0))) A__U62(tt, isNat(z0)) -> c18(MARK(isNat(z0))) A__U62(tt, length(zeros)) -> c18(A__LENGTH(a__length(a__zeros)), MARK(length(zeros))) A__U62(tt, length(U11(z0))) -> c18(A__LENGTH(a__length(a__U11(mark(z0)))), MARK(length(U11(z0)))) A__U62(tt, length(U21(z0))) -> c18(A__LENGTH(a__length(a__U21(mark(z0)))), MARK(length(U21(z0)))) A__U62(tt, length(U31(z0))) -> c18(A__LENGTH(a__length(a__U31(mark(z0)))), MARK(length(U31(z0)))) A__U62(tt, length(U41(z0, z1))) -> c18(A__LENGTH(a__length(a__U41(mark(z0), z1))), MARK(length(U41(z0, z1)))) A__U62(tt, length(U42(z0))) -> c18(A__LENGTH(a__length(a__U42(mark(z0)))), MARK(length(U42(z0)))) A__U62(tt, length(isNatIList(z0))) -> c18(A__LENGTH(a__length(a__isNatIList(z0))), MARK(length(isNatIList(z0)))) A__U62(tt, length(U51(z0, z1))) -> c18(A__LENGTH(a__length(a__U51(mark(z0), z1))), MARK(length(U51(z0, z1)))) A__U62(tt, length(U52(z0))) -> c18(A__LENGTH(a__length(a__U52(mark(z0)))), MARK(length(U52(z0)))) A__U62(tt, length(isNatList(z0))) -> c18(A__LENGTH(a__length(a__isNatList(z0))), MARK(length(isNatList(z0)))) A__U62(tt, length(U61(z0, z1, z2))) -> c18(A__LENGTH(a__length(a__U61(mark(z0), z1, z2))), MARK(length(U61(z0, z1, z2)))) A__U62(tt, length(U62(z0, z1))) -> c18(A__LENGTH(a__length(a__U62(mark(z0), z1))), MARK(length(U62(z0, z1)))) A__U62(tt, length(isNat(z0))) -> c18(A__LENGTH(a__length(a__isNat(z0))), MARK(length(isNat(z0)))) A__U62(tt, length(length(z0))) -> c18(A__LENGTH(a__length(a__length(mark(z0)))), MARK(length(length(z0)))) A__U62(tt, length(cons(z0, z1))) -> c18(A__LENGTH(a__length(cons(mark(z0), z1))), MARK(length(cons(z0, z1)))) A__U62(tt, length(s(z0))) -> c18(A__LENGTH(a__length(s(mark(z0)))), MARK(length(s(z0)))) A__U62(tt, length(x0)) -> c18(MARK(length(x0))) A__U62(tt, length(0)) -> c18(A__LENGTH(a__length(0))) A__U62(tt, length(tt)) -> c18(A__LENGTH(a__length(tt))) A__U62(tt, length(nil)) -> c18(A__LENGTH(a__length(nil))) A__U62(tt, zeros) -> c18(A__LENGTH(cons(0, zeros))) A__ISNATILIST(cons(length(nil), x1)) -> c26(A__U41(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATILIST(cons(length(cons(z0, z1)), x1)) -> c26(A__U41(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(length(x0), x1)) -> c26(A__ISNAT(length(x0))) A__ISNATILIST(cons(s(0), x1)) -> c26(A__U41(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATILIST(cons(s(length(z0)), x1)) -> c26(A__U41(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATILIST(cons(s(s(z0)), x1)) -> c26(A__U41(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(s(x0), x1)) -> c26(A__ISNAT(s(x0))) A__ISNATLIST(cons(length(nil), x1)) -> c29(A__U51(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATLIST(cons(length(cons(z0, z1)), x1)) -> c29(A__U51(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(length(x0), x1)) -> c29(A__ISNAT(length(x0))) A__ISNATLIST(cons(s(0), x1)) -> c29(A__U51(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATLIST(cons(s(length(z0)), x1)) -> c29(A__U51(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATLIST(cons(s(s(z0)), x1)) -> c29(A__U51(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(s(x0), x1)) -> c29(A__ISNAT(s(x0))) A__LENGTH(cons(x0, cons(0, x2))) -> c32(A__U61(a__U51(tt, x2), cons(0, x2), x0), A__ISNATLIST(cons(0, x2))) A__LENGTH(cons(x0, cons(length(z0), x2))) -> c32(A__U61(a__U51(a__U11(a__isNatList(z0)), x2), cons(length(z0), x2), x0), A__ISNATLIST(cons(length(z0), x2))) A__LENGTH(cons(x0, cons(s(z0), x2))) -> c32(A__U61(a__U51(a__U21(a__isNat(z0)), x2), cons(s(z0), x2), x0), A__ISNATLIST(cons(s(z0), x2))) A__LENGTH(cons(x0, cons(z0, x2))) -> c32(A__U61(a__U51(isNat(z0), x2), cons(z0, x2), x0), A__ISNATLIST(cons(z0, x2))) A__LENGTH(cons(x0, cons(x1, z1))) -> c32(A__ISNATLIST(cons(x1, z1))) MARK(U41(U11(zeros), x1)) -> c38(A__U41(a__U11(a__zeros), x1), MARK(U11(zeros))) MARK(U41(U11(U11(z0)), x1)) -> c38(A__U41(a__U11(a__U11(mark(z0))), x1), MARK(U11(U11(z0)))) MARK(U41(U11(U21(z0)), x1)) -> c38(A__U41(a__U11(a__U21(mark(z0))), x1), MARK(U11(U21(z0)))) MARK(U41(U11(U31(z0)), x1)) -> c38(A__U41(a__U11(a__U31(mark(z0))), x1), MARK(U11(U31(z0)))) MARK(U41(U11(U41(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U41(mark(z0), z1)), x1), MARK(U11(U41(z0, z1)))) MARK(U41(U11(U42(z0)), x1)) -> c38(A__U41(a__U11(a__U42(mark(z0))), x1), MARK(U11(U42(z0)))) MARK(U41(U11(isNatIList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatIList(z0)), x1), MARK(U11(isNatIList(z0)))) MARK(U41(U11(U51(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U51(mark(z0), z1)), x1), MARK(U11(U51(z0, z1)))) MARK(U41(U11(U52(z0)), x1)) -> c38(A__U41(a__U11(a__U52(mark(z0))), x1), MARK(U11(U52(z0)))) MARK(U41(U11(isNatList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatList(z0)), x1), MARK(U11(isNatList(z0)))) MARK(U41(U11(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U11(a__U61(mark(z0), z1, z2)), x1), MARK(U11(U61(z0, z1, z2)))) MARK(U41(U11(U62(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U62(mark(z0), z1)), x1), MARK(U11(U62(z0, z1)))) MARK(U41(U11(isNat(z0)), x1)) -> c38(A__U41(a__U11(a__isNat(z0)), x1), MARK(U11(isNat(z0)))) MARK(U41(U11(length(z0)), x1)) -> c38(A__U41(a__U11(a__length(mark(z0))), x1), MARK(U11(length(z0)))) MARK(U41(U11(cons(z0, z1)), x1)) -> c38(A__U41(a__U11(cons(mark(z0), z1)), x1), MARK(U11(cons(z0, z1)))) MARK(U41(U11(0), x1)) -> c38(A__U41(a__U11(0), x1), MARK(U11(0))) MARK(U41(U11(tt), x1)) -> c38(A__U41(a__U11(tt), x1), MARK(U11(tt))) MARK(U41(U11(s(z0)), x1)) -> c38(A__U41(a__U11(s(mark(z0))), x1), MARK(U11(s(z0)))) MARK(U41(U11(nil), x1)) -> c38(A__U41(a__U11(nil), x1), MARK(U11(nil))) MARK(U41(U11(x0), x1)) -> c38(MARK(U11(x0))) MARK(U41(U21(zeros), x1)) -> c38(A__U41(a__U21(a__zeros), x1), MARK(U21(zeros))) MARK(U41(U21(U11(z0)), x1)) -> c38(A__U41(a__U21(a__U11(mark(z0))), x1), MARK(U21(U11(z0)))) MARK(U41(U21(U21(z0)), x1)) -> c38(A__U41(a__U21(a__U21(mark(z0))), x1), MARK(U21(U21(z0)))) MARK(U41(U21(U31(z0)), x1)) -> c38(A__U41(a__U21(a__U31(mark(z0))), x1), MARK(U21(U31(z0)))) MARK(U41(U21(U41(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U41(mark(z0), z1)), x1), MARK(U21(U41(z0, z1)))) MARK(U41(U21(U42(z0)), x1)) -> c38(A__U41(a__U21(a__U42(mark(z0))), x1), MARK(U21(U42(z0)))) MARK(U41(U21(isNatIList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatIList(z0)), x1), MARK(U21(isNatIList(z0)))) MARK(U41(U21(U51(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U51(mark(z0), z1)), x1), MARK(U21(U51(z0, z1)))) MARK(U41(U21(U52(z0)), x1)) -> c38(A__U41(a__U21(a__U52(mark(z0))), x1), MARK(U21(U52(z0)))) MARK(U41(U21(isNatList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatList(z0)), x1), MARK(U21(isNatList(z0)))) MARK(U41(U21(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U21(a__U61(mark(z0), z1, z2)), x1), MARK(U21(U61(z0, z1, z2)))) MARK(U41(U21(U62(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U62(mark(z0), z1)), x1), MARK(U21(U62(z0, z1)))) MARK(U41(U21(isNat(z0)), x1)) -> c38(A__U41(a__U21(a__isNat(z0)), x1), MARK(U21(isNat(z0)))) MARK(U41(U21(length(z0)), x1)) -> c38(A__U41(a__U21(a__length(mark(z0))), x1), MARK(U21(length(z0)))) MARK(U41(U21(cons(z0, z1)), x1)) -> c38(A__U41(a__U21(cons(mark(z0), z1)), x1), MARK(U21(cons(z0, z1)))) MARK(U41(U21(0), x1)) -> c38(A__U41(a__U21(0), x1), MARK(U21(0))) MARK(U41(U21(tt), x1)) -> c38(A__U41(a__U21(tt), x1), MARK(U21(tt))) MARK(U41(U21(s(z0)), x1)) -> c38(A__U41(a__U21(s(mark(z0))), x1), MARK(U21(s(z0)))) MARK(U41(U21(nil), x1)) -> c38(A__U41(a__U21(nil), x1), MARK(U21(nil))) MARK(U41(U21(x0), x1)) -> c38(MARK(U21(x0))) MARK(U41(U31(zeros), x1)) -> c38(A__U41(a__U31(a__zeros), x1), MARK(U31(zeros))) MARK(U41(U31(U11(z0)), x1)) -> c38(A__U41(a__U31(a__U11(mark(z0))), x1), MARK(U31(U11(z0)))) MARK(U41(U31(U21(z0)), x1)) -> c38(A__U41(a__U31(a__U21(mark(z0))), x1), MARK(U31(U21(z0)))) MARK(U41(U31(U31(z0)), x1)) -> c38(A__U41(a__U31(a__U31(mark(z0))), x1), MARK(U31(U31(z0)))) MARK(U41(U31(U41(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U41(mark(z0), z1)), x1), MARK(U31(U41(z0, z1)))) MARK(U41(U31(U42(z0)), x1)) -> c38(A__U41(a__U31(a__U42(mark(z0))), x1), MARK(U31(U42(z0)))) MARK(U41(U31(isNatIList(z0)), x1)) -> c38(A__U41(a__U31(a__isNatIList(z0)), x1), MARK(U31(isNatIList(z0)))) MARK(U41(U31(U51(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U51(mark(z0), z1)), x1), MARK(U31(U51(z0, z1)))) MARK(U41(U31(U52(z0)), x1)) -> c38(A__U41(a__U31(a__U52(mark(z0))), x1), MARK(U31(U52(z0)))) MARK(U41(U31(isNatList(z0)), x1)) -> c38(A__U41(a__U31(a__isNatList(z0)), x1), MARK(U31(isNatList(z0)))) MARK(U41(U31(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U31(a__U61(mark(z0), z1, z2)), x1), MARK(U31(U61(z0, z1, z2)))) MARK(U41(U31(U62(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U62(mark(z0), z1)), x1), MARK(U31(U62(z0, z1)))) MARK(U41(U31(isNat(z0)), x1)) -> c38(A__U41(a__U31(a__isNat(z0)), x1), MARK(U31(isNat(z0)))) MARK(U41(U31(length(z0)), x1)) -> c38(A__U41(a__U31(a__length(mark(z0))), x1), MARK(U31(length(z0)))) MARK(U41(U31(cons(z0, z1)), x1)) -> c38(A__U41(a__U31(cons(mark(z0), z1)), x1), MARK(U31(cons(z0, z1)))) MARK(U41(U31(0), x1)) -> c38(A__U41(a__U31(0), x1), MARK(U31(0))) MARK(U41(U31(tt), x1)) -> c38(A__U41(a__U31(tt), x1), MARK(U31(tt))) MARK(U41(U31(s(z0)), x1)) -> c38(A__U41(a__U31(s(mark(z0))), x1), MARK(U31(s(z0)))) MARK(U41(U31(nil), x1)) -> c38(A__U41(a__U31(nil), x1), MARK(U31(nil))) MARK(U41(U31(x0), x1)) -> c38(MARK(U31(x0))) K tuples:none Defined Rule Symbols: a__zeros, a__U11_1, a__U21_1, a__U31_1, a__U41_2, a__U42_1, a__U51_2, a__U52_1, a__U61_3, a__U62_2, a__isNat_1, a__isNatIList_1, a__isNatList_1, a__length_1, mark_1 Defined Pair Symbols: MARK_1, A__U41_2, A__U51_2, A__ISNAT_1, A__ISNATILIST_1, A__U61_3, A__U62_2, A__ISNATLIST_1, A__LENGTH_1 Compound Symbols: c40_1, c43_1, c46_1, c48_1, c51_1, c8_1, c12_1, c21_1, c22_1, c24_1, c35_1, c36_1, c37_1, c39_1, c42_1, c16_1, c18_2, c18_1, c26_1, c29_1, c32_1, c38_2, c38_1, c_1, c41_2, c41_1, c1_1, c44_2, c44_1, c45_2, c45_1, c47_2, c47_1, c16_2, c26_2, c29_2, c32_2 ---------------------------------------- (181) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace MARK(U41(U41(z0, z1), x1)) -> c38(A__U41(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) by MARK(U41(U41(x0, z1), x2)) -> c38(A__U41(U41(mark(x0), z1), x2), MARK(U41(x0, z1))) MARK(U41(U41(zeros, x1), x2)) -> c38(A__U41(a__U41(a__zeros, x1), x2), MARK(U41(zeros, x1))) MARK(U41(U41(U11(z0), x1), x2)) -> c38(A__U41(a__U41(a__U11(mark(z0)), x1), x2), MARK(U41(U11(z0), x1))) MARK(U41(U41(U21(z0), x1), x2)) -> c38(A__U41(a__U41(a__U21(mark(z0)), x1), x2), MARK(U41(U21(z0), x1))) MARK(U41(U41(U31(z0), x1), x2)) -> c38(A__U41(a__U41(a__U31(mark(z0)), x1), x2), MARK(U41(U31(z0), x1))) MARK(U41(U41(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U41(mark(z0), z1), x1), x2), MARK(U41(U41(z0, z1), x1))) MARK(U41(U41(U42(z0), x1), x2)) -> c38(A__U41(a__U41(a__U42(mark(z0)), x1), x2), MARK(U41(U42(z0), x1))) MARK(U41(U41(isNatIList(z0), x1), x2)) -> c38(A__U41(a__U41(a__isNatIList(z0), x1), x2), MARK(U41(isNatIList(z0), x1))) MARK(U41(U41(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U51(mark(z0), z1), x1), x2), MARK(U41(U51(z0, z1), x1))) MARK(U41(U41(U52(z0), x1), x2)) -> c38(A__U41(a__U41(a__U52(mark(z0)), x1), x2), MARK(U41(U52(z0), x1))) MARK(U41(U41(isNatList(z0), x1), x2)) -> c38(A__U41(a__U41(a__isNatList(z0), x1), x2), MARK(U41(isNatList(z0), x1))) MARK(U41(U41(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U41(a__U61(mark(z0), z1, z2), x1), x2), MARK(U41(U61(z0, z1, z2), x1))) MARK(U41(U41(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U62(mark(z0), z1), x1), x2), MARK(U41(U62(z0, z1), x1))) MARK(U41(U41(isNat(z0), x1), x2)) -> c38(A__U41(a__U41(a__isNat(z0), x1), x2), MARK(U41(isNat(z0), x1))) MARK(U41(U41(length(z0), x1), x2)) -> c38(A__U41(a__U41(a__length(mark(z0)), x1), x2), MARK(U41(length(z0), x1))) MARK(U41(U41(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U41(cons(mark(z0), z1), x1), x2), MARK(U41(cons(z0, z1), x1))) MARK(U41(U41(0, x1), x2)) -> c38(A__U41(a__U41(0, x1), x2), MARK(U41(0, x1))) MARK(U41(U41(tt, x1), x2)) -> c38(A__U41(a__U41(tt, x1), x2), MARK(U41(tt, x1))) MARK(U41(U41(s(z0), x1), x2)) -> c38(A__U41(a__U41(s(mark(z0)), x1), x2), MARK(U41(s(z0), x1))) MARK(U41(U41(nil, x1), x2)) -> c38(A__U41(a__U41(nil, x1), x2), MARK(U41(nil, x1))) ---------------------------------------- (182) Obligation: Complexity Dependency Tuples Problem Rules: a__zeros -> cons(0, zeros) a__zeros -> zeros a__U11(tt) -> tt a__U11(z0) -> U11(z0) a__U21(tt) -> tt a__U21(z0) -> U21(z0) a__U31(tt) -> tt a__U31(z0) -> U31(z0) a__U41(tt, z0) -> a__U42(a__isNatIList(z0)) a__U41(z0, z1) -> U41(z0, z1) a__U42(tt) -> tt a__U42(z0) -> U42(z0) a__U51(tt, z0) -> a__U52(a__isNatList(z0)) a__U51(z0, z1) -> U51(z0, z1) a__U52(tt) -> tt a__U52(z0) -> U52(z0) a__U61(tt, z0, z1) -> a__U62(a__isNat(z1), z0) a__U61(z0, z1, z2) -> U61(z0, z1, z2) a__U62(tt, z0) -> s(a__length(mark(z0))) a__U62(z0, z1) -> U62(z0, z1) a__isNat(0) -> tt a__isNat(length(z0)) -> a__U11(a__isNatList(z0)) a__isNat(s(z0)) -> a__U21(a__isNat(z0)) a__isNat(z0) -> isNat(z0) a__isNatIList(z0) -> a__U31(a__isNatList(z0)) a__isNatIList(zeros) -> tt a__isNatIList(cons(z0, z1)) -> a__U41(a__isNat(z0), z1) a__isNatIList(z0) -> isNatIList(z0) a__isNatList(nil) -> tt a__isNatList(cons(z0, z1)) -> a__U51(a__isNat(z0), z1) a__isNatList(z0) -> isNatList(z0) a__length(nil) -> 0 a__length(cons(z0, z1)) -> a__U61(a__isNatList(z1), z1, z0) a__length(z0) -> length(z0) mark(zeros) -> a__zeros mark(U11(z0)) -> a__U11(mark(z0)) mark(U21(z0)) -> a__U21(mark(z0)) mark(U31(z0)) -> a__U31(mark(z0)) mark(U41(z0, z1)) -> a__U41(mark(z0), z1) mark(U42(z0)) -> a__U42(mark(z0)) mark(isNatIList(z0)) -> a__isNatIList(z0) mark(U51(z0, z1)) -> a__U51(mark(z0), z1) mark(U52(z0)) -> a__U52(mark(z0)) mark(isNatList(z0)) -> a__isNatList(z0) mark(U61(z0, z1, z2)) -> a__U61(mark(z0), z1, z2) mark(U62(z0, z1)) -> a__U62(mark(z0), z1) mark(isNat(z0)) -> a__isNat(z0) mark(length(z0)) -> a__length(mark(z0)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(0) -> 0 mark(tt) -> tt mark(s(z0)) -> s(mark(z0)) mark(nil) -> nil Tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) A__U62(tt, isNatList(cons(z0, z1))) -> c18(A__LENGTH(a__U51(a__isNat(z0), z1)), MARK(isNatList(cons(z0, z1)))) A__U62(tt, isNatList(nil)) -> c18(MARK(isNatList(nil))) A__U62(tt, isNatList(z0)) -> c18(MARK(isNatList(z0))) A__U62(tt, U61(zeros, x1, x2)) -> c18(A__LENGTH(a__U61(a__zeros, x1, x2)), MARK(U61(zeros, x1, x2))) A__U62(tt, U61(U11(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U11(mark(z0)), x1, x2)), MARK(U61(U11(z0), x1, x2))) A__U62(tt, U61(U21(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U21(mark(z0)), x1, x2)), MARK(U61(U21(z0), x1, x2))) A__U62(tt, U61(U31(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U31(mark(z0)), x1, x2)), MARK(U61(U31(z0), x1, x2))) A__U62(tt, U61(U41(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U41(mark(z0), z1), x1, x2)), MARK(U61(U41(z0, z1), x1, x2))) A__U62(tt, U61(U42(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U42(mark(z0)), x1, x2)), MARK(U61(U42(z0), x1, x2))) A__U62(tt, U61(isNatIList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatIList(z0), x1, x2)), MARK(U61(isNatIList(z0), x1, x2))) A__U62(tt, U61(U51(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U51(mark(z0), z1), x1, x2)), MARK(U61(U51(z0, z1), x1, x2))) A__U62(tt, U61(U52(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U52(mark(z0)), x1, x2)), MARK(U61(U52(z0), x1, x2))) A__U62(tt, U61(isNatList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatList(z0), x1, x2)), MARK(U61(isNatList(z0), x1, x2))) A__U62(tt, U61(U61(z0, z1, z2), x1, x2)) -> c18(A__LENGTH(a__U61(a__U61(mark(z0), z1, z2), x1, x2)), MARK(U61(U61(z0, z1, z2), x1, x2))) A__U62(tt, U61(U62(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U62(mark(z0), z1), x1, x2)), MARK(U61(U62(z0, z1), x1, x2))) A__U62(tt, U61(isNat(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNat(z0), x1, x2)), MARK(U61(isNat(z0), x1, x2))) A__U62(tt, U61(length(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__length(mark(z0)), x1, x2)), MARK(U61(length(z0), x1, x2))) A__U62(tt, U61(cons(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(cons(mark(z0), z1), x1, x2)), MARK(U61(cons(z0, z1), x1, x2))) A__U62(tt, U61(tt, x1, x2)) -> c18(A__LENGTH(a__U61(tt, x1, x2)), MARK(U61(tt, x1, x2))) A__U62(tt, U61(s(z0), x1, x2)) -> c18(A__LENGTH(a__U61(s(mark(z0)), x1, x2)), MARK(U61(s(z0), x1, x2))) A__U62(tt, U61(x0, z1, z2)) -> c18(MARK(U61(x0, z1, z2))) A__U62(tt, U61(0, x1, x2)) -> c18(A__LENGTH(a__U61(0, x1, x2))) A__U62(tt, U61(nil, x1, x2)) -> c18(A__LENGTH(a__U61(nil, x1, x2))) A__U62(tt, U62(zeros, x1)) -> c18(A__LENGTH(a__U62(a__zeros, x1)), MARK(U62(zeros, x1))) A__U62(tt, U62(U11(z0), x1)) -> c18(A__LENGTH(a__U62(a__U11(mark(z0)), x1)), MARK(U62(U11(z0), x1))) A__U62(tt, U62(U21(z0), x1)) -> c18(A__LENGTH(a__U62(a__U21(mark(z0)), x1)), MARK(U62(U21(z0), x1))) A__U62(tt, U62(U31(z0), x1)) -> c18(A__LENGTH(a__U62(a__U31(mark(z0)), x1)), MARK(U62(U31(z0), x1))) A__U62(tt, U62(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U41(mark(z0), z1), x1)), MARK(U62(U41(z0, z1), x1))) A__U62(tt, U62(U42(z0), x1)) -> c18(A__LENGTH(a__U62(a__U42(mark(z0)), x1)), MARK(U62(U42(z0), x1))) A__U62(tt, U62(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatIList(z0), x1)), MARK(U62(isNatIList(z0), x1))) A__U62(tt, U62(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U51(mark(z0), z1), x1)), MARK(U62(U51(z0, z1), x1))) A__U62(tt, U62(U52(z0), x1)) -> c18(A__LENGTH(a__U62(a__U52(mark(z0)), x1)), MARK(U62(U52(z0), x1))) A__U62(tt, U62(isNatList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatList(z0), x1)), MARK(U62(isNatList(z0), x1))) A__U62(tt, U62(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U62(a__U61(mark(z0), z1, z2), x1)), MARK(U62(U61(z0, z1, z2), x1))) A__U62(tt, U62(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U62(mark(z0), z1), x1)), MARK(U62(U62(z0, z1), x1))) A__U62(tt, U62(isNat(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNat(z0), x1)), MARK(U62(isNat(z0), x1))) A__U62(tt, U62(length(z0), x1)) -> c18(A__LENGTH(a__U62(a__length(mark(z0)), x1)), MARK(U62(length(z0), x1))) A__U62(tt, U62(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U62(cons(mark(z0), z1), x1)), MARK(U62(cons(z0, z1), x1))) A__U62(tt, U62(tt, x1)) -> c18(A__LENGTH(a__U62(tt, x1)), MARK(U62(tt, x1))) A__U62(tt, U62(s(z0), x1)) -> c18(A__LENGTH(a__U62(s(mark(z0)), x1)), MARK(U62(s(z0), x1))) A__U62(tt, U62(x0, z1)) -> c18(MARK(U62(x0, z1))) A__U62(tt, U62(0, x1)) -> c18(A__LENGTH(a__U62(0, x1))) A__U62(tt, U62(nil, x1)) -> c18(A__LENGTH(a__U62(nil, x1))) A__U62(tt, isNat(length(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(isNat(length(z0)))) A__U62(tt, isNat(s(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(isNat(s(z0)))) A__U62(tt, isNat(0)) -> c18(MARK(isNat(0))) A__U62(tt, isNat(z0)) -> c18(MARK(isNat(z0))) A__U62(tt, length(zeros)) -> c18(A__LENGTH(a__length(a__zeros)), MARK(length(zeros))) A__U62(tt, length(U11(z0))) -> c18(A__LENGTH(a__length(a__U11(mark(z0)))), MARK(length(U11(z0)))) A__U62(tt, length(U21(z0))) -> c18(A__LENGTH(a__length(a__U21(mark(z0)))), MARK(length(U21(z0)))) A__U62(tt, length(U31(z0))) -> c18(A__LENGTH(a__length(a__U31(mark(z0)))), MARK(length(U31(z0)))) A__U62(tt, length(U41(z0, z1))) -> c18(A__LENGTH(a__length(a__U41(mark(z0), z1))), MARK(length(U41(z0, z1)))) A__U62(tt, length(U42(z0))) -> c18(A__LENGTH(a__length(a__U42(mark(z0)))), MARK(length(U42(z0)))) A__U62(tt, length(isNatIList(z0))) -> c18(A__LENGTH(a__length(a__isNatIList(z0))), MARK(length(isNatIList(z0)))) A__U62(tt, length(U51(z0, z1))) -> c18(A__LENGTH(a__length(a__U51(mark(z0), z1))), MARK(length(U51(z0, z1)))) A__U62(tt, length(U52(z0))) -> c18(A__LENGTH(a__length(a__U52(mark(z0)))), MARK(length(U52(z0)))) A__U62(tt, length(isNatList(z0))) -> c18(A__LENGTH(a__length(a__isNatList(z0))), MARK(length(isNatList(z0)))) A__U62(tt, length(U61(z0, z1, z2))) -> c18(A__LENGTH(a__length(a__U61(mark(z0), z1, z2))), MARK(length(U61(z0, z1, z2)))) A__U62(tt, length(U62(z0, z1))) -> c18(A__LENGTH(a__length(a__U62(mark(z0), z1))), MARK(length(U62(z0, z1)))) A__U62(tt, length(isNat(z0))) -> c18(A__LENGTH(a__length(a__isNat(z0))), MARK(length(isNat(z0)))) A__U62(tt, length(length(z0))) -> c18(A__LENGTH(a__length(a__length(mark(z0)))), MARK(length(length(z0)))) A__U62(tt, length(cons(z0, z1))) -> c18(A__LENGTH(a__length(cons(mark(z0), z1))), MARK(length(cons(z0, z1)))) A__U62(tt, length(s(z0))) -> c18(A__LENGTH(a__length(s(mark(z0)))), MARK(length(s(z0)))) A__U62(tt, length(x0)) -> c18(MARK(length(x0))) A__U62(tt, length(0)) -> c18(A__LENGTH(a__length(0))) A__U62(tt, length(tt)) -> c18(A__LENGTH(a__length(tt))) A__U62(tt, length(nil)) -> c18(A__LENGTH(a__length(nil))) A__U62(tt, zeros) -> c18(A__LENGTH(cons(0, zeros))) A__ISNATILIST(cons(length(nil), x1)) -> c26(A__U41(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATILIST(cons(length(cons(z0, z1)), x1)) -> c26(A__U41(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(length(x0), x1)) -> c26(A__ISNAT(length(x0))) A__ISNATILIST(cons(s(0), x1)) -> c26(A__U41(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATILIST(cons(s(length(z0)), x1)) -> c26(A__U41(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATILIST(cons(s(s(z0)), x1)) -> c26(A__U41(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(s(x0), x1)) -> c26(A__ISNAT(s(x0))) A__ISNATLIST(cons(length(nil), x1)) -> c29(A__U51(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATLIST(cons(length(cons(z0, z1)), x1)) -> c29(A__U51(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(length(x0), x1)) -> c29(A__ISNAT(length(x0))) A__ISNATLIST(cons(s(0), x1)) -> c29(A__U51(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATLIST(cons(s(length(z0)), x1)) -> c29(A__U51(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATLIST(cons(s(s(z0)), x1)) -> c29(A__U51(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(s(x0), x1)) -> c29(A__ISNAT(s(x0))) A__LENGTH(cons(x0, cons(0, x2))) -> c32(A__U61(a__U51(tt, x2), cons(0, x2), x0), A__ISNATLIST(cons(0, x2))) A__LENGTH(cons(x0, cons(length(z0), x2))) -> c32(A__U61(a__U51(a__U11(a__isNatList(z0)), x2), cons(length(z0), x2), x0), A__ISNATLIST(cons(length(z0), x2))) A__LENGTH(cons(x0, cons(s(z0), x2))) -> c32(A__U61(a__U51(a__U21(a__isNat(z0)), x2), cons(s(z0), x2), x0), A__ISNATLIST(cons(s(z0), x2))) A__LENGTH(cons(x0, cons(z0, x2))) -> c32(A__U61(a__U51(isNat(z0), x2), cons(z0, x2), x0), A__ISNATLIST(cons(z0, x2))) A__LENGTH(cons(x0, cons(x1, z1))) -> c32(A__ISNATLIST(cons(x1, z1))) MARK(U41(U11(zeros), x1)) -> c38(A__U41(a__U11(a__zeros), x1), MARK(U11(zeros))) MARK(U41(U11(U11(z0)), x1)) -> c38(A__U41(a__U11(a__U11(mark(z0))), x1), MARK(U11(U11(z0)))) MARK(U41(U11(U21(z0)), x1)) -> c38(A__U41(a__U11(a__U21(mark(z0))), x1), MARK(U11(U21(z0)))) MARK(U41(U11(U31(z0)), x1)) -> c38(A__U41(a__U11(a__U31(mark(z0))), x1), MARK(U11(U31(z0)))) MARK(U41(U11(U41(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U41(mark(z0), z1)), x1), MARK(U11(U41(z0, z1)))) MARK(U41(U11(U42(z0)), x1)) -> c38(A__U41(a__U11(a__U42(mark(z0))), x1), MARK(U11(U42(z0)))) MARK(U41(U11(isNatIList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatIList(z0)), x1), MARK(U11(isNatIList(z0)))) MARK(U41(U11(U51(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U51(mark(z0), z1)), x1), MARK(U11(U51(z0, z1)))) MARK(U41(U11(U52(z0)), x1)) -> c38(A__U41(a__U11(a__U52(mark(z0))), x1), MARK(U11(U52(z0)))) MARK(U41(U11(isNatList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatList(z0)), x1), MARK(U11(isNatList(z0)))) MARK(U41(U11(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U11(a__U61(mark(z0), z1, z2)), x1), MARK(U11(U61(z0, z1, z2)))) MARK(U41(U11(U62(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U62(mark(z0), z1)), x1), MARK(U11(U62(z0, z1)))) MARK(U41(U11(isNat(z0)), x1)) -> c38(A__U41(a__U11(a__isNat(z0)), x1), MARK(U11(isNat(z0)))) MARK(U41(U11(length(z0)), x1)) -> c38(A__U41(a__U11(a__length(mark(z0))), x1), MARK(U11(length(z0)))) MARK(U41(U11(cons(z0, z1)), x1)) -> c38(A__U41(a__U11(cons(mark(z0), z1)), x1), MARK(U11(cons(z0, z1)))) MARK(U41(U11(0), x1)) -> c38(A__U41(a__U11(0), x1), MARK(U11(0))) MARK(U41(U11(tt), x1)) -> c38(A__U41(a__U11(tt), x1), MARK(U11(tt))) MARK(U41(U11(s(z0)), x1)) -> c38(A__U41(a__U11(s(mark(z0))), x1), MARK(U11(s(z0)))) MARK(U41(U11(nil), x1)) -> c38(A__U41(a__U11(nil), x1), MARK(U11(nil))) MARK(U41(U11(x0), x1)) -> c38(MARK(U11(x0))) MARK(U41(U21(zeros), x1)) -> c38(A__U41(a__U21(a__zeros), x1), MARK(U21(zeros))) MARK(U41(U21(U11(z0)), x1)) -> c38(A__U41(a__U21(a__U11(mark(z0))), x1), MARK(U21(U11(z0)))) MARK(U41(U21(U21(z0)), x1)) -> c38(A__U41(a__U21(a__U21(mark(z0))), x1), MARK(U21(U21(z0)))) MARK(U41(U21(U31(z0)), x1)) -> c38(A__U41(a__U21(a__U31(mark(z0))), x1), MARK(U21(U31(z0)))) MARK(U41(U21(U41(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U41(mark(z0), z1)), x1), MARK(U21(U41(z0, z1)))) MARK(U41(U21(U42(z0)), x1)) -> c38(A__U41(a__U21(a__U42(mark(z0))), x1), MARK(U21(U42(z0)))) MARK(U41(U21(isNatIList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatIList(z0)), x1), MARK(U21(isNatIList(z0)))) MARK(U41(U21(U51(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U51(mark(z0), z1)), x1), MARK(U21(U51(z0, z1)))) MARK(U41(U21(U52(z0)), x1)) -> c38(A__U41(a__U21(a__U52(mark(z0))), x1), MARK(U21(U52(z0)))) MARK(U41(U21(isNatList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatList(z0)), x1), MARK(U21(isNatList(z0)))) MARK(U41(U21(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U21(a__U61(mark(z0), z1, z2)), x1), MARK(U21(U61(z0, z1, z2)))) MARK(U41(U21(U62(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U62(mark(z0), z1)), x1), MARK(U21(U62(z0, z1)))) MARK(U41(U21(isNat(z0)), x1)) -> c38(A__U41(a__U21(a__isNat(z0)), x1), MARK(U21(isNat(z0)))) MARK(U41(U21(length(z0)), x1)) -> c38(A__U41(a__U21(a__length(mark(z0))), x1), MARK(U21(length(z0)))) MARK(U41(U21(cons(z0, z1)), x1)) -> c38(A__U41(a__U21(cons(mark(z0), z1)), x1), MARK(U21(cons(z0, z1)))) MARK(U41(U21(0), x1)) -> c38(A__U41(a__U21(0), x1), MARK(U21(0))) MARK(U41(U21(tt), x1)) -> c38(A__U41(a__U21(tt), x1), MARK(U21(tt))) MARK(U41(U21(s(z0)), x1)) -> c38(A__U41(a__U21(s(mark(z0))), x1), MARK(U21(s(z0)))) MARK(U41(U21(nil), x1)) -> c38(A__U41(a__U21(nil), x1), MARK(U21(nil))) MARK(U41(U21(x0), x1)) -> c38(MARK(U21(x0))) MARK(U41(U31(zeros), x1)) -> c38(A__U41(a__U31(a__zeros), x1), MARK(U31(zeros))) MARK(U41(U31(U11(z0)), x1)) -> c38(A__U41(a__U31(a__U11(mark(z0))), x1), MARK(U31(U11(z0)))) MARK(U41(U31(U21(z0)), x1)) -> c38(A__U41(a__U31(a__U21(mark(z0))), x1), MARK(U31(U21(z0)))) MARK(U41(U31(U31(z0)), x1)) -> c38(A__U41(a__U31(a__U31(mark(z0))), x1), MARK(U31(U31(z0)))) MARK(U41(U31(U41(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U41(mark(z0), z1)), x1), MARK(U31(U41(z0, z1)))) MARK(U41(U31(U42(z0)), x1)) -> c38(A__U41(a__U31(a__U42(mark(z0))), x1), MARK(U31(U42(z0)))) MARK(U41(U31(isNatIList(z0)), x1)) -> c38(A__U41(a__U31(a__isNatIList(z0)), x1), MARK(U31(isNatIList(z0)))) MARK(U41(U31(U51(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U51(mark(z0), z1)), x1), MARK(U31(U51(z0, z1)))) MARK(U41(U31(U52(z0)), x1)) -> c38(A__U41(a__U31(a__U52(mark(z0))), x1), MARK(U31(U52(z0)))) MARK(U41(U31(isNatList(z0)), x1)) -> c38(A__U41(a__U31(a__isNatList(z0)), x1), MARK(U31(isNatList(z0)))) MARK(U41(U31(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U31(a__U61(mark(z0), z1, z2)), x1), MARK(U31(U61(z0, z1, z2)))) MARK(U41(U31(U62(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U62(mark(z0), z1)), x1), MARK(U31(U62(z0, z1)))) MARK(U41(U31(isNat(z0)), x1)) -> c38(A__U41(a__U31(a__isNat(z0)), x1), MARK(U31(isNat(z0)))) MARK(U41(U31(length(z0)), x1)) -> c38(A__U41(a__U31(a__length(mark(z0))), x1), MARK(U31(length(z0)))) MARK(U41(U31(cons(z0, z1)), x1)) -> c38(A__U41(a__U31(cons(mark(z0), z1)), x1), MARK(U31(cons(z0, z1)))) MARK(U41(U31(0), x1)) -> c38(A__U41(a__U31(0), x1), MARK(U31(0))) MARK(U41(U31(tt), x1)) -> c38(A__U41(a__U31(tt), x1), MARK(U31(tt))) MARK(U41(U31(s(z0)), x1)) -> c38(A__U41(a__U31(s(mark(z0))), x1), MARK(U31(s(z0)))) MARK(U41(U31(nil), x1)) -> c38(A__U41(a__U31(nil), x1), MARK(U31(nil))) MARK(U41(U31(x0), x1)) -> c38(MARK(U31(x0))) MARK(U41(U41(x0, z1), x2)) -> c38(A__U41(U41(mark(x0), z1), x2), MARK(U41(x0, z1))) MARK(U41(U41(zeros, x1), x2)) -> c38(A__U41(a__U41(a__zeros, x1), x2), MARK(U41(zeros, x1))) MARK(U41(U41(U11(z0), x1), x2)) -> c38(A__U41(a__U41(a__U11(mark(z0)), x1), x2), MARK(U41(U11(z0), x1))) MARK(U41(U41(U21(z0), x1), x2)) -> c38(A__U41(a__U41(a__U21(mark(z0)), x1), x2), MARK(U41(U21(z0), x1))) MARK(U41(U41(U31(z0), x1), x2)) -> c38(A__U41(a__U41(a__U31(mark(z0)), x1), x2), MARK(U41(U31(z0), x1))) MARK(U41(U41(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U41(mark(z0), z1), x1), x2), MARK(U41(U41(z0, z1), x1))) MARK(U41(U41(U42(z0), x1), x2)) -> c38(A__U41(a__U41(a__U42(mark(z0)), x1), x2), MARK(U41(U42(z0), x1))) MARK(U41(U41(isNatIList(z0), x1), x2)) -> c38(A__U41(a__U41(a__isNatIList(z0), x1), x2), MARK(U41(isNatIList(z0), x1))) MARK(U41(U41(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U51(mark(z0), z1), x1), x2), MARK(U41(U51(z0, z1), x1))) MARK(U41(U41(U52(z0), x1), x2)) -> c38(A__U41(a__U41(a__U52(mark(z0)), x1), x2), MARK(U41(U52(z0), x1))) MARK(U41(U41(isNatList(z0), x1), x2)) -> c38(A__U41(a__U41(a__isNatList(z0), x1), x2), MARK(U41(isNatList(z0), x1))) MARK(U41(U41(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U41(a__U61(mark(z0), z1, z2), x1), x2), MARK(U41(U61(z0, z1, z2), x1))) MARK(U41(U41(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U62(mark(z0), z1), x1), x2), MARK(U41(U62(z0, z1), x1))) MARK(U41(U41(isNat(z0), x1), x2)) -> c38(A__U41(a__U41(a__isNat(z0), x1), x2), MARK(U41(isNat(z0), x1))) MARK(U41(U41(length(z0), x1), x2)) -> c38(A__U41(a__U41(a__length(mark(z0)), x1), x2), MARK(U41(length(z0), x1))) MARK(U41(U41(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U41(cons(mark(z0), z1), x1), x2), MARK(U41(cons(z0, z1), x1))) MARK(U41(U41(0, x1), x2)) -> c38(A__U41(a__U41(0, x1), x2), MARK(U41(0, x1))) MARK(U41(U41(tt, x1), x2)) -> c38(A__U41(a__U41(tt, x1), x2), MARK(U41(tt, x1))) MARK(U41(U41(s(z0), x1), x2)) -> c38(A__U41(a__U41(s(mark(z0)), x1), x2), MARK(U41(s(z0), x1))) MARK(U41(U41(nil, x1), x2)) -> c38(A__U41(a__U41(nil, x1), x2), MARK(U41(nil, x1))) S tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) A__U62(tt, isNatList(cons(z0, z1))) -> c18(A__LENGTH(a__U51(a__isNat(z0), z1)), MARK(isNatList(cons(z0, z1)))) A__U62(tt, isNatList(nil)) -> c18(MARK(isNatList(nil))) A__U62(tt, isNatList(z0)) -> c18(MARK(isNatList(z0))) A__U62(tt, U61(zeros, x1, x2)) -> c18(A__LENGTH(a__U61(a__zeros, x1, x2)), MARK(U61(zeros, x1, x2))) A__U62(tt, U61(U11(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U11(mark(z0)), x1, x2)), MARK(U61(U11(z0), x1, x2))) A__U62(tt, U61(U21(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U21(mark(z0)), x1, x2)), MARK(U61(U21(z0), x1, x2))) A__U62(tt, U61(U31(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U31(mark(z0)), x1, x2)), MARK(U61(U31(z0), x1, x2))) A__U62(tt, U61(U41(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U41(mark(z0), z1), x1, x2)), MARK(U61(U41(z0, z1), x1, x2))) A__U62(tt, U61(U42(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U42(mark(z0)), x1, x2)), MARK(U61(U42(z0), x1, x2))) A__U62(tt, U61(isNatIList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatIList(z0), x1, x2)), MARK(U61(isNatIList(z0), x1, x2))) A__U62(tt, U61(U51(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U51(mark(z0), z1), x1, x2)), MARK(U61(U51(z0, z1), x1, x2))) A__U62(tt, U61(U52(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U52(mark(z0)), x1, x2)), MARK(U61(U52(z0), x1, x2))) A__U62(tt, U61(isNatList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatList(z0), x1, x2)), MARK(U61(isNatList(z0), x1, x2))) A__U62(tt, U61(U61(z0, z1, z2), x1, x2)) -> c18(A__LENGTH(a__U61(a__U61(mark(z0), z1, z2), x1, x2)), MARK(U61(U61(z0, z1, z2), x1, x2))) A__U62(tt, U61(U62(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U62(mark(z0), z1), x1, x2)), MARK(U61(U62(z0, z1), x1, x2))) A__U62(tt, U61(isNat(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNat(z0), x1, x2)), MARK(U61(isNat(z0), x1, x2))) A__U62(tt, U61(length(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__length(mark(z0)), x1, x2)), MARK(U61(length(z0), x1, x2))) A__U62(tt, U61(cons(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(cons(mark(z0), z1), x1, x2)), MARK(U61(cons(z0, z1), x1, x2))) A__U62(tt, U61(tt, x1, x2)) -> c18(A__LENGTH(a__U61(tt, x1, x2)), MARK(U61(tt, x1, x2))) A__U62(tt, U61(s(z0), x1, x2)) -> c18(A__LENGTH(a__U61(s(mark(z0)), x1, x2)), MARK(U61(s(z0), x1, x2))) A__U62(tt, U61(x0, z1, z2)) -> c18(MARK(U61(x0, z1, z2))) A__U62(tt, U61(0, x1, x2)) -> c18(A__LENGTH(a__U61(0, x1, x2))) A__U62(tt, U61(nil, x1, x2)) -> c18(A__LENGTH(a__U61(nil, x1, x2))) A__U62(tt, U62(zeros, x1)) -> c18(A__LENGTH(a__U62(a__zeros, x1)), MARK(U62(zeros, x1))) A__U62(tt, U62(U11(z0), x1)) -> c18(A__LENGTH(a__U62(a__U11(mark(z0)), x1)), MARK(U62(U11(z0), x1))) A__U62(tt, U62(U21(z0), x1)) -> c18(A__LENGTH(a__U62(a__U21(mark(z0)), x1)), MARK(U62(U21(z0), x1))) A__U62(tt, U62(U31(z0), x1)) -> c18(A__LENGTH(a__U62(a__U31(mark(z0)), x1)), MARK(U62(U31(z0), x1))) A__U62(tt, U62(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U41(mark(z0), z1), x1)), MARK(U62(U41(z0, z1), x1))) A__U62(tt, U62(U42(z0), x1)) -> c18(A__LENGTH(a__U62(a__U42(mark(z0)), x1)), MARK(U62(U42(z0), x1))) A__U62(tt, U62(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatIList(z0), x1)), MARK(U62(isNatIList(z0), x1))) A__U62(tt, U62(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U51(mark(z0), z1), x1)), MARK(U62(U51(z0, z1), x1))) A__U62(tt, U62(U52(z0), x1)) -> c18(A__LENGTH(a__U62(a__U52(mark(z0)), x1)), MARK(U62(U52(z0), x1))) A__U62(tt, U62(isNatList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatList(z0), x1)), MARK(U62(isNatList(z0), x1))) A__U62(tt, U62(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U62(a__U61(mark(z0), z1, z2), x1)), MARK(U62(U61(z0, z1, z2), x1))) A__U62(tt, U62(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U62(mark(z0), z1), x1)), MARK(U62(U62(z0, z1), x1))) A__U62(tt, U62(isNat(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNat(z0), x1)), MARK(U62(isNat(z0), x1))) A__U62(tt, U62(length(z0), x1)) -> c18(A__LENGTH(a__U62(a__length(mark(z0)), x1)), MARK(U62(length(z0), x1))) A__U62(tt, U62(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U62(cons(mark(z0), z1), x1)), MARK(U62(cons(z0, z1), x1))) A__U62(tt, U62(tt, x1)) -> c18(A__LENGTH(a__U62(tt, x1)), MARK(U62(tt, x1))) A__U62(tt, U62(s(z0), x1)) -> c18(A__LENGTH(a__U62(s(mark(z0)), x1)), MARK(U62(s(z0), x1))) A__U62(tt, U62(x0, z1)) -> c18(MARK(U62(x0, z1))) A__U62(tt, U62(0, x1)) -> c18(A__LENGTH(a__U62(0, x1))) A__U62(tt, U62(nil, x1)) -> c18(A__LENGTH(a__U62(nil, x1))) A__U62(tt, isNat(length(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(isNat(length(z0)))) A__U62(tt, isNat(s(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(isNat(s(z0)))) A__U62(tt, isNat(0)) -> c18(MARK(isNat(0))) A__U62(tt, isNat(z0)) -> c18(MARK(isNat(z0))) A__U62(tt, length(zeros)) -> c18(A__LENGTH(a__length(a__zeros)), MARK(length(zeros))) A__U62(tt, length(U11(z0))) -> c18(A__LENGTH(a__length(a__U11(mark(z0)))), MARK(length(U11(z0)))) A__U62(tt, length(U21(z0))) -> c18(A__LENGTH(a__length(a__U21(mark(z0)))), MARK(length(U21(z0)))) A__U62(tt, length(U31(z0))) -> c18(A__LENGTH(a__length(a__U31(mark(z0)))), MARK(length(U31(z0)))) A__U62(tt, length(U41(z0, z1))) -> c18(A__LENGTH(a__length(a__U41(mark(z0), z1))), MARK(length(U41(z0, z1)))) A__U62(tt, length(U42(z0))) -> c18(A__LENGTH(a__length(a__U42(mark(z0)))), MARK(length(U42(z0)))) A__U62(tt, length(isNatIList(z0))) -> c18(A__LENGTH(a__length(a__isNatIList(z0))), MARK(length(isNatIList(z0)))) A__U62(tt, length(U51(z0, z1))) -> c18(A__LENGTH(a__length(a__U51(mark(z0), z1))), MARK(length(U51(z0, z1)))) A__U62(tt, length(U52(z0))) -> c18(A__LENGTH(a__length(a__U52(mark(z0)))), MARK(length(U52(z0)))) A__U62(tt, length(isNatList(z0))) -> c18(A__LENGTH(a__length(a__isNatList(z0))), MARK(length(isNatList(z0)))) A__U62(tt, length(U61(z0, z1, z2))) -> c18(A__LENGTH(a__length(a__U61(mark(z0), z1, z2))), MARK(length(U61(z0, z1, z2)))) A__U62(tt, length(U62(z0, z1))) -> c18(A__LENGTH(a__length(a__U62(mark(z0), z1))), MARK(length(U62(z0, z1)))) A__U62(tt, length(isNat(z0))) -> c18(A__LENGTH(a__length(a__isNat(z0))), MARK(length(isNat(z0)))) A__U62(tt, length(length(z0))) -> c18(A__LENGTH(a__length(a__length(mark(z0)))), MARK(length(length(z0)))) A__U62(tt, length(cons(z0, z1))) -> c18(A__LENGTH(a__length(cons(mark(z0), z1))), MARK(length(cons(z0, z1)))) A__U62(tt, length(s(z0))) -> c18(A__LENGTH(a__length(s(mark(z0)))), MARK(length(s(z0)))) A__U62(tt, length(x0)) -> c18(MARK(length(x0))) A__U62(tt, length(0)) -> c18(A__LENGTH(a__length(0))) A__U62(tt, length(tt)) -> c18(A__LENGTH(a__length(tt))) A__U62(tt, length(nil)) -> c18(A__LENGTH(a__length(nil))) A__U62(tt, zeros) -> c18(A__LENGTH(cons(0, zeros))) A__ISNATILIST(cons(length(nil), x1)) -> c26(A__U41(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATILIST(cons(length(cons(z0, z1)), x1)) -> c26(A__U41(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(length(x0), x1)) -> c26(A__ISNAT(length(x0))) A__ISNATILIST(cons(s(0), x1)) -> c26(A__U41(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATILIST(cons(s(length(z0)), x1)) -> c26(A__U41(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATILIST(cons(s(s(z0)), x1)) -> c26(A__U41(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(s(x0), x1)) -> c26(A__ISNAT(s(x0))) A__ISNATLIST(cons(length(nil), x1)) -> c29(A__U51(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATLIST(cons(length(cons(z0, z1)), x1)) -> c29(A__U51(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(length(x0), x1)) -> c29(A__ISNAT(length(x0))) A__ISNATLIST(cons(s(0), x1)) -> c29(A__U51(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATLIST(cons(s(length(z0)), x1)) -> c29(A__U51(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATLIST(cons(s(s(z0)), x1)) -> c29(A__U51(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(s(x0), x1)) -> c29(A__ISNAT(s(x0))) A__LENGTH(cons(x0, cons(0, x2))) -> c32(A__U61(a__U51(tt, x2), cons(0, x2), x0), A__ISNATLIST(cons(0, x2))) A__LENGTH(cons(x0, cons(length(z0), x2))) -> c32(A__U61(a__U51(a__U11(a__isNatList(z0)), x2), cons(length(z0), x2), x0), A__ISNATLIST(cons(length(z0), x2))) A__LENGTH(cons(x0, cons(s(z0), x2))) -> c32(A__U61(a__U51(a__U21(a__isNat(z0)), x2), cons(s(z0), x2), x0), A__ISNATLIST(cons(s(z0), x2))) A__LENGTH(cons(x0, cons(z0, x2))) -> c32(A__U61(a__U51(isNat(z0), x2), cons(z0, x2), x0), A__ISNATLIST(cons(z0, x2))) A__LENGTH(cons(x0, cons(x1, z1))) -> c32(A__ISNATLIST(cons(x1, z1))) MARK(U41(U11(zeros), x1)) -> c38(A__U41(a__U11(a__zeros), x1), MARK(U11(zeros))) MARK(U41(U11(U11(z0)), x1)) -> c38(A__U41(a__U11(a__U11(mark(z0))), x1), MARK(U11(U11(z0)))) MARK(U41(U11(U21(z0)), x1)) -> c38(A__U41(a__U11(a__U21(mark(z0))), x1), MARK(U11(U21(z0)))) MARK(U41(U11(U31(z0)), x1)) -> c38(A__U41(a__U11(a__U31(mark(z0))), x1), MARK(U11(U31(z0)))) MARK(U41(U11(U41(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U41(mark(z0), z1)), x1), MARK(U11(U41(z0, z1)))) MARK(U41(U11(U42(z0)), x1)) -> c38(A__U41(a__U11(a__U42(mark(z0))), x1), MARK(U11(U42(z0)))) MARK(U41(U11(isNatIList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatIList(z0)), x1), MARK(U11(isNatIList(z0)))) MARK(U41(U11(U51(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U51(mark(z0), z1)), x1), MARK(U11(U51(z0, z1)))) MARK(U41(U11(U52(z0)), x1)) -> c38(A__U41(a__U11(a__U52(mark(z0))), x1), MARK(U11(U52(z0)))) MARK(U41(U11(isNatList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatList(z0)), x1), MARK(U11(isNatList(z0)))) MARK(U41(U11(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U11(a__U61(mark(z0), z1, z2)), x1), MARK(U11(U61(z0, z1, z2)))) MARK(U41(U11(U62(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U62(mark(z0), z1)), x1), MARK(U11(U62(z0, z1)))) MARK(U41(U11(isNat(z0)), x1)) -> c38(A__U41(a__U11(a__isNat(z0)), x1), MARK(U11(isNat(z0)))) MARK(U41(U11(length(z0)), x1)) -> c38(A__U41(a__U11(a__length(mark(z0))), x1), MARK(U11(length(z0)))) MARK(U41(U11(cons(z0, z1)), x1)) -> c38(A__U41(a__U11(cons(mark(z0), z1)), x1), MARK(U11(cons(z0, z1)))) MARK(U41(U11(0), x1)) -> c38(A__U41(a__U11(0), x1), MARK(U11(0))) MARK(U41(U11(tt), x1)) -> c38(A__U41(a__U11(tt), x1), MARK(U11(tt))) MARK(U41(U11(s(z0)), x1)) -> c38(A__U41(a__U11(s(mark(z0))), x1), MARK(U11(s(z0)))) MARK(U41(U11(nil), x1)) -> c38(A__U41(a__U11(nil), x1), MARK(U11(nil))) MARK(U41(U11(x0), x1)) -> c38(MARK(U11(x0))) MARK(U41(U21(zeros), x1)) -> c38(A__U41(a__U21(a__zeros), x1), MARK(U21(zeros))) MARK(U41(U21(U11(z0)), x1)) -> c38(A__U41(a__U21(a__U11(mark(z0))), x1), MARK(U21(U11(z0)))) MARK(U41(U21(U21(z0)), x1)) -> c38(A__U41(a__U21(a__U21(mark(z0))), x1), MARK(U21(U21(z0)))) MARK(U41(U21(U31(z0)), x1)) -> c38(A__U41(a__U21(a__U31(mark(z0))), x1), MARK(U21(U31(z0)))) MARK(U41(U21(U41(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U41(mark(z0), z1)), x1), MARK(U21(U41(z0, z1)))) MARK(U41(U21(U42(z0)), x1)) -> c38(A__U41(a__U21(a__U42(mark(z0))), x1), MARK(U21(U42(z0)))) MARK(U41(U21(isNatIList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatIList(z0)), x1), MARK(U21(isNatIList(z0)))) MARK(U41(U21(U51(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U51(mark(z0), z1)), x1), MARK(U21(U51(z0, z1)))) MARK(U41(U21(U52(z0)), x1)) -> c38(A__U41(a__U21(a__U52(mark(z0))), x1), MARK(U21(U52(z0)))) MARK(U41(U21(isNatList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatList(z0)), x1), MARK(U21(isNatList(z0)))) MARK(U41(U21(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U21(a__U61(mark(z0), z1, z2)), x1), MARK(U21(U61(z0, z1, z2)))) MARK(U41(U21(U62(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U62(mark(z0), z1)), x1), MARK(U21(U62(z0, z1)))) MARK(U41(U21(isNat(z0)), x1)) -> c38(A__U41(a__U21(a__isNat(z0)), x1), MARK(U21(isNat(z0)))) MARK(U41(U21(length(z0)), x1)) -> c38(A__U41(a__U21(a__length(mark(z0))), x1), MARK(U21(length(z0)))) MARK(U41(U21(cons(z0, z1)), x1)) -> c38(A__U41(a__U21(cons(mark(z0), z1)), x1), MARK(U21(cons(z0, z1)))) MARK(U41(U21(0), x1)) -> c38(A__U41(a__U21(0), x1), MARK(U21(0))) MARK(U41(U21(tt), x1)) -> c38(A__U41(a__U21(tt), x1), MARK(U21(tt))) MARK(U41(U21(s(z0)), x1)) -> c38(A__U41(a__U21(s(mark(z0))), x1), MARK(U21(s(z0)))) MARK(U41(U21(nil), x1)) -> c38(A__U41(a__U21(nil), x1), MARK(U21(nil))) MARK(U41(U21(x0), x1)) -> c38(MARK(U21(x0))) MARK(U41(U31(zeros), x1)) -> c38(A__U41(a__U31(a__zeros), x1), MARK(U31(zeros))) MARK(U41(U31(U11(z0)), x1)) -> c38(A__U41(a__U31(a__U11(mark(z0))), x1), MARK(U31(U11(z0)))) MARK(U41(U31(U21(z0)), x1)) -> c38(A__U41(a__U31(a__U21(mark(z0))), x1), MARK(U31(U21(z0)))) MARK(U41(U31(U31(z0)), x1)) -> c38(A__U41(a__U31(a__U31(mark(z0))), x1), MARK(U31(U31(z0)))) MARK(U41(U31(U41(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U41(mark(z0), z1)), x1), MARK(U31(U41(z0, z1)))) MARK(U41(U31(U42(z0)), x1)) -> c38(A__U41(a__U31(a__U42(mark(z0))), x1), MARK(U31(U42(z0)))) MARK(U41(U31(isNatIList(z0)), x1)) -> c38(A__U41(a__U31(a__isNatIList(z0)), x1), MARK(U31(isNatIList(z0)))) MARK(U41(U31(U51(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U51(mark(z0), z1)), x1), MARK(U31(U51(z0, z1)))) MARK(U41(U31(U52(z0)), x1)) -> c38(A__U41(a__U31(a__U52(mark(z0))), x1), MARK(U31(U52(z0)))) MARK(U41(U31(isNatList(z0)), x1)) -> c38(A__U41(a__U31(a__isNatList(z0)), x1), MARK(U31(isNatList(z0)))) MARK(U41(U31(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U31(a__U61(mark(z0), z1, z2)), x1), MARK(U31(U61(z0, z1, z2)))) MARK(U41(U31(U62(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U62(mark(z0), z1)), x1), MARK(U31(U62(z0, z1)))) MARK(U41(U31(isNat(z0)), x1)) -> c38(A__U41(a__U31(a__isNat(z0)), x1), MARK(U31(isNat(z0)))) MARK(U41(U31(length(z0)), x1)) -> c38(A__U41(a__U31(a__length(mark(z0))), x1), MARK(U31(length(z0)))) MARK(U41(U31(cons(z0, z1)), x1)) -> c38(A__U41(a__U31(cons(mark(z0), z1)), x1), MARK(U31(cons(z0, z1)))) MARK(U41(U31(0), x1)) -> c38(A__U41(a__U31(0), x1), MARK(U31(0))) MARK(U41(U31(tt), x1)) -> c38(A__U41(a__U31(tt), x1), MARK(U31(tt))) MARK(U41(U31(s(z0)), x1)) -> c38(A__U41(a__U31(s(mark(z0))), x1), MARK(U31(s(z0)))) MARK(U41(U31(nil), x1)) -> c38(A__U41(a__U31(nil), x1), MARK(U31(nil))) MARK(U41(U31(x0), x1)) -> c38(MARK(U31(x0))) MARK(U41(U41(x0, z1), x2)) -> c38(A__U41(U41(mark(x0), z1), x2), MARK(U41(x0, z1))) MARK(U41(U41(zeros, x1), x2)) -> c38(A__U41(a__U41(a__zeros, x1), x2), MARK(U41(zeros, x1))) MARK(U41(U41(U11(z0), x1), x2)) -> c38(A__U41(a__U41(a__U11(mark(z0)), x1), x2), MARK(U41(U11(z0), x1))) MARK(U41(U41(U21(z0), x1), x2)) -> c38(A__U41(a__U41(a__U21(mark(z0)), x1), x2), MARK(U41(U21(z0), x1))) MARK(U41(U41(U31(z0), x1), x2)) -> c38(A__U41(a__U41(a__U31(mark(z0)), x1), x2), MARK(U41(U31(z0), x1))) MARK(U41(U41(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U41(mark(z0), z1), x1), x2), MARK(U41(U41(z0, z1), x1))) MARK(U41(U41(U42(z0), x1), x2)) -> c38(A__U41(a__U41(a__U42(mark(z0)), x1), x2), MARK(U41(U42(z0), x1))) MARK(U41(U41(isNatIList(z0), x1), x2)) -> c38(A__U41(a__U41(a__isNatIList(z0), x1), x2), MARK(U41(isNatIList(z0), x1))) MARK(U41(U41(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U51(mark(z0), z1), x1), x2), MARK(U41(U51(z0, z1), x1))) MARK(U41(U41(U52(z0), x1), x2)) -> c38(A__U41(a__U41(a__U52(mark(z0)), x1), x2), MARK(U41(U52(z0), x1))) MARK(U41(U41(isNatList(z0), x1), x2)) -> c38(A__U41(a__U41(a__isNatList(z0), x1), x2), MARK(U41(isNatList(z0), x1))) MARK(U41(U41(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U41(a__U61(mark(z0), z1, z2), x1), x2), MARK(U41(U61(z0, z1, z2), x1))) MARK(U41(U41(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U62(mark(z0), z1), x1), x2), MARK(U41(U62(z0, z1), x1))) MARK(U41(U41(isNat(z0), x1), x2)) -> c38(A__U41(a__U41(a__isNat(z0), x1), x2), MARK(U41(isNat(z0), x1))) MARK(U41(U41(length(z0), x1), x2)) -> c38(A__U41(a__U41(a__length(mark(z0)), x1), x2), MARK(U41(length(z0), x1))) MARK(U41(U41(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U41(cons(mark(z0), z1), x1), x2), MARK(U41(cons(z0, z1), x1))) MARK(U41(U41(0, x1), x2)) -> c38(A__U41(a__U41(0, x1), x2), MARK(U41(0, x1))) MARK(U41(U41(tt, x1), x2)) -> c38(A__U41(a__U41(tt, x1), x2), MARK(U41(tt, x1))) MARK(U41(U41(s(z0), x1), x2)) -> c38(A__U41(a__U41(s(mark(z0)), x1), x2), MARK(U41(s(z0), x1))) MARK(U41(U41(nil, x1), x2)) -> c38(A__U41(a__U41(nil, x1), x2), MARK(U41(nil, x1))) K tuples:none Defined Rule Symbols: a__zeros, a__U11_1, a__U21_1, a__U31_1, a__U41_2, a__U42_1, a__U51_2, a__U52_1, a__U61_3, a__U62_2, a__isNat_1, a__isNatIList_1, a__isNatList_1, a__length_1, mark_1 Defined Pair Symbols: MARK_1, A__U41_2, A__U51_2, A__ISNAT_1, A__ISNATILIST_1, A__U61_3, A__U62_2, A__ISNATLIST_1, A__LENGTH_1 Compound Symbols: c40_1, c43_1, c46_1, c48_1, c51_1, c8_1, c12_1, c21_1, c22_1, c24_1, c35_1, c36_1, c37_1, c39_1, c42_1, c16_1, c18_2, c18_1, c26_1, c29_1, c32_1, c38_2, c38_1, c_1, c41_2, c41_1, c1_1, c44_2, c44_1, c45_2, c45_1, c47_2, c47_1, c16_2, c26_2, c29_2, c32_2 ---------------------------------------- (183) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 3 trailing tuple parts ---------------------------------------- (184) Obligation: Complexity Dependency Tuples Problem Rules: a__zeros -> cons(0, zeros) a__zeros -> zeros a__U11(tt) -> tt a__U11(z0) -> U11(z0) a__U21(tt) -> tt a__U21(z0) -> U21(z0) a__U31(tt) -> tt a__U31(z0) -> U31(z0) a__U41(tt, z0) -> a__U42(a__isNatIList(z0)) a__U41(z0, z1) -> U41(z0, z1) a__U42(tt) -> tt a__U42(z0) -> U42(z0) a__U51(tt, z0) -> a__U52(a__isNatList(z0)) a__U51(z0, z1) -> U51(z0, z1) a__U52(tt) -> tt a__U52(z0) -> U52(z0) a__U61(tt, z0, z1) -> a__U62(a__isNat(z1), z0) a__U61(z0, z1, z2) -> U61(z0, z1, z2) a__U62(tt, z0) -> s(a__length(mark(z0))) a__U62(z0, z1) -> U62(z0, z1) a__isNat(0) -> tt a__isNat(length(z0)) -> a__U11(a__isNatList(z0)) a__isNat(s(z0)) -> a__U21(a__isNat(z0)) a__isNat(z0) -> isNat(z0) a__isNatIList(z0) -> a__U31(a__isNatList(z0)) a__isNatIList(zeros) -> tt a__isNatIList(cons(z0, z1)) -> a__U41(a__isNat(z0), z1) a__isNatIList(z0) -> isNatIList(z0) a__isNatList(nil) -> tt a__isNatList(cons(z0, z1)) -> a__U51(a__isNat(z0), z1) a__isNatList(z0) -> isNatList(z0) a__length(nil) -> 0 a__length(cons(z0, z1)) -> a__U61(a__isNatList(z1), z1, z0) a__length(z0) -> length(z0) mark(zeros) -> a__zeros mark(U11(z0)) -> a__U11(mark(z0)) mark(U21(z0)) -> a__U21(mark(z0)) mark(U31(z0)) -> a__U31(mark(z0)) mark(U41(z0, z1)) -> a__U41(mark(z0), z1) mark(U42(z0)) -> a__U42(mark(z0)) mark(isNatIList(z0)) -> a__isNatIList(z0) mark(U51(z0, z1)) -> a__U51(mark(z0), z1) mark(U52(z0)) -> a__U52(mark(z0)) mark(isNatList(z0)) -> a__isNatList(z0) mark(U61(z0, z1, z2)) -> a__U61(mark(z0), z1, z2) mark(U62(z0, z1)) -> a__U62(mark(z0), z1) mark(isNat(z0)) -> a__isNat(z0) mark(length(z0)) -> a__length(mark(z0)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(0) -> 0 mark(tt) -> tt mark(s(z0)) -> s(mark(z0)) mark(nil) -> nil Tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) A__U62(tt, isNatList(cons(z0, z1))) -> c18(A__LENGTH(a__U51(a__isNat(z0), z1)), MARK(isNatList(cons(z0, z1)))) A__U62(tt, isNatList(nil)) -> c18(MARK(isNatList(nil))) A__U62(tt, isNatList(z0)) -> c18(MARK(isNatList(z0))) A__U62(tt, U61(zeros, x1, x2)) -> c18(A__LENGTH(a__U61(a__zeros, x1, x2)), MARK(U61(zeros, x1, x2))) A__U62(tt, U61(U11(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U11(mark(z0)), x1, x2)), MARK(U61(U11(z0), x1, x2))) A__U62(tt, U61(U21(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U21(mark(z0)), x1, x2)), MARK(U61(U21(z0), x1, x2))) A__U62(tt, U61(U31(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U31(mark(z0)), x1, x2)), MARK(U61(U31(z0), x1, x2))) A__U62(tt, U61(U41(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U41(mark(z0), z1), x1, x2)), MARK(U61(U41(z0, z1), x1, x2))) A__U62(tt, U61(U42(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U42(mark(z0)), x1, x2)), MARK(U61(U42(z0), x1, x2))) A__U62(tt, U61(isNatIList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatIList(z0), x1, x2)), MARK(U61(isNatIList(z0), x1, x2))) A__U62(tt, U61(U51(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U51(mark(z0), z1), x1, x2)), MARK(U61(U51(z0, z1), x1, x2))) A__U62(tt, U61(U52(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U52(mark(z0)), x1, x2)), MARK(U61(U52(z0), x1, x2))) A__U62(tt, U61(isNatList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatList(z0), x1, x2)), MARK(U61(isNatList(z0), x1, x2))) A__U62(tt, U61(U61(z0, z1, z2), x1, x2)) -> c18(A__LENGTH(a__U61(a__U61(mark(z0), z1, z2), x1, x2)), MARK(U61(U61(z0, z1, z2), x1, x2))) A__U62(tt, U61(U62(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U62(mark(z0), z1), x1, x2)), MARK(U61(U62(z0, z1), x1, x2))) A__U62(tt, U61(isNat(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNat(z0), x1, x2)), MARK(U61(isNat(z0), x1, x2))) A__U62(tt, U61(length(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__length(mark(z0)), x1, x2)), MARK(U61(length(z0), x1, x2))) A__U62(tt, U61(cons(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(cons(mark(z0), z1), x1, x2)), MARK(U61(cons(z0, z1), x1, x2))) A__U62(tt, U61(tt, x1, x2)) -> c18(A__LENGTH(a__U61(tt, x1, x2)), MARK(U61(tt, x1, x2))) A__U62(tt, U61(s(z0), x1, x2)) -> c18(A__LENGTH(a__U61(s(mark(z0)), x1, x2)), MARK(U61(s(z0), x1, x2))) A__U62(tt, U61(x0, z1, z2)) -> c18(MARK(U61(x0, z1, z2))) A__U62(tt, U61(0, x1, x2)) -> c18(A__LENGTH(a__U61(0, x1, x2))) A__U62(tt, U61(nil, x1, x2)) -> c18(A__LENGTH(a__U61(nil, x1, x2))) A__U62(tt, U62(zeros, x1)) -> c18(A__LENGTH(a__U62(a__zeros, x1)), MARK(U62(zeros, x1))) A__U62(tt, U62(U11(z0), x1)) -> c18(A__LENGTH(a__U62(a__U11(mark(z0)), x1)), MARK(U62(U11(z0), x1))) A__U62(tt, U62(U21(z0), x1)) -> c18(A__LENGTH(a__U62(a__U21(mark(z0)), x1)), MARK(U62(U21(z0), x1))) A__U62(tt, U62(U31(z0), x1)) -> c18(A__LENGTH(a__U62(a__U31(mark(z0)), x1)), MARK(U62(U31(z0), x1))) A__U62(tt, U62(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U41(mark(z0), z1), x1)), MARK(U62(U41(z0, z1), x1))) A__U62(tt, U62(U42(z0), x1)) -> c18(A__LENGTH(a__U62(a__U42(mark(z0)), x1)), MARK(U62(U42(z0), x1))) A__U62(tt, U62(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatIList(z0), x1)), MARK(U62(isNatIList(z0), x1))) A__U62(tt, U62(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U51(mark(z0), z1), x1)), MARK(U62(U51(z0, z1), x1))) A__U62(tt, U62(U52(z0), x1)) -> c18(A__LENGTH(a__U62(a__U52(mark(z0)), x1)), MARK(U62(U52(z0), x1))) A__U62(tt, U62(isNatList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatList(z0), x1)), MARK(U62(isNatList(z0), x1))) A__U62(tt, U62(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U62(a__U61(mark(z0), z1, z2), x1)), MARK(U62(U61(z0, z1, z2), x1))) A__U62(tt, U62(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U62(mark(z0), z1), x1)), MARK(U62(U62(z0, z1), x1))) A__U62(tt, U62(isNat(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNat(z0), x1)), MARK(U62(isNat(z0), x1))) A__U62(tt, U62(length(z0), x1)) -> c18(A__LENGTH(a__U62(a__length(mark(z0)), x1)), MARK(U62(length(z0), x1))) A__U62(tt, U62(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U62(cons(mark(z0), z1), x1)), MARK(U62(cons(z0, z1), x1))) A__U62(tt, U62(tt, x1)) -> c18(A__LENGTH(a__U62(tt, x1)), MARK(U62(tt, x1))) A__U62(tt, U62(s(z0), x1)) -> c18(A__LENGTH(a__U62(s(mark(z0)), x1)), MARK(U62(s(z0), x1))) A__U62(tt, U62(x0, z1)) -> c18(MARK(U62(x0, z1))) A__U62(tt, U62(0, x1)) -> c18(A__LENGTH(a__U62(0, x1))) A__U62(tt, U62(nil, x1)) -> c18(A__LENGTH(a__U62(nil, x1))) A__U62(tt, isNat(length(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(isNat(length(z0)))) A__U62(tt, isNat(s(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(isNat(s(z0)))) A__U62(tt, isNat(0)) -> c18(MARK(isNat(0))) A__U62(tt, isNat(z0)) -> c18(MARK(isNat(z0))) A__U62(tt, length(zeros)) -> c18(A__LENGTH(a__length(a__zeros)), MARK(length(zeros))) A__U62(tt, length(U11(z0))) -> c18(A__LENGTH(a__length(a__U11(mark(z0)))), MARK(length(U11(z0)))) A__U62(tt, length(U21(z0))) -> c18(A__LENGTH(a__length(a__U21(mark(z0)))), MARK(length(U21(z0)))) A__U62(tt, length(U31(z0))) -> c18(A__LENGTH(a__length(a__U31(mark(z0)))), MARK(length(U31(z0)))) A__U62(tt, length(U41(z0, z1))) -> c18(A__LENGTH(a__length(a__U41(mark(z0), z1))), MARK(length(U41(z0, z1)))) A__U62(tt, length(U42(z0))) -> c18(A__LENGTH(a__length(a__U42(mark(z0)))), MARK(length(U42(z0)))) A__U62(tt, length(isNatIList(z0))) -> c18(A__LENGTH(a__length(a__isNatIList(z0))), MARK(length(isNatIList(z0)))) A__U62(tt, length(U51(z0, z1))) -> c18(A__LENGTH(a__length(a__U51(mark(z0), z1))), MARK(length(U51(z0, z1)))) A__U62(tt, length(U52(z0))) -> c18(A__LENGTH(a__length(a__U52(mark(z0)))), MARK(length(U52(z0)))) A__U62(tt, length(isNatList(z0))) -> c18(A__LENGTH(a__length(a__isNatList(z0))), MARK(length(isNatList(z0)))) A__U62(tt, length(U61(z0, z1, z2))) -> c18(A__LENGTH(a__length(a__U61(mark(z0), z1, z2))), MARK(length(U61(z0, z1, z2)))) A__U62(tt, length(U62(z0, z1))) -> c18(A__LENGTH(a__length(a__U62(mark(z0), z1))), MARK(length(U62(z0, z1)))) A__U62(tt, length(isNat(z0))) -> c18(A__LENGTH(a__length(a__isNat(z0))), MARK(length(isNat(z0)))) A__U62(tt, length(length(z0))) -> c18(A__LENGTH(a__length(a__length(mark(z0)))), MARK(length(length(z0)))) A__U62(tt, length(cons(z0, z1))) -> c18(A__LENGTH(a__length(cons(mark(z0), z1))), MARK(length(cons(z0, z1)))) A__U62(tt, length(s(z0))) -> c18(A__LENGTH(a__length(s(mark(z0)))), MARK(length(s(z0)))) A__U62(tt, length(x0)) -> c18(MARK(length(x0))) A__U62(tt, length(0)) -> c18(A__LENGTH(a__length(0))) A__U62(tt, length(tt)) -> c18(A__LENGTH(a__length(tt))) A__U62(tt, length(nil)) -> c18(A__LENGTH(a__length(nil))) A__U62(tt, zeros) -> c18(A__LENGTH(cons(0, zeros))) A__ISNATILIST(cons(length(nil), x1)) -> c26(A__U41(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATILIST(cons(length(cons(z0, z1)), x1)) -> c26(A__U41(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(length(x0), x1)) -> c26(A__ISNAT(length(x0))) A__ISNATILIST(cons(s(0), x1)) -> c26(A__U41(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATILIST(cons(s(length(z0)), x1)) -> c26(A__U41(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATILIST(cons(s(s(z0)), x1)) -> c26(A__U41(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(s(x0), x1)) -> c26(A__ISNAT(s(x0))) A__ISNATLIST(cons(length(nil), x1)) -> c29(A__U51(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATLIST(cons(length(cons(z0, z1)), x1)) -> c29(A__U51(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(length(x0), x1)) -> c29(A__ISNAT(length(x0))) A__ISNATLIST(cons(s(0), x1)) -> c29(A__U51(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATLIST(cons(s(length(z0)), x1)) -> c29(A__U51(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATLIST(cons(s(s(z0)), x1)) -> c29(A__U51(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(s(x0), x1)) -> c29(A__ISNAT(s(x0))) A__LENGTH(cons(x0, cons(0, x2))) -> c32(A__U61(a__U51(tt, x2), cons(0, x2), x0), A__ISNATLIST(cons(0, x2))) A__LENGTH(cons(x0, cons(length(z0), x2))) -> c32(A__U61(a__U51(a__U11(a__isNatList(z0)), x2), cons(length(z0), x2), x0), A__ISNATLIST(cons(length(z0), x2))) A__LENGTH(cons(x0, cons(s(z0), x2))) -> c32(A__U61(a__U51(a__U21(a__isNat(z0)), x2), cons(s(z0), x2), x0), A__ISNATLIST(cons(s(z0), x2))) A__LENGTH(cons(x0, cons(z0, x2))) -> c32(A__U61(a__U51(isNat(z0), x2), cons(z0, x2), x0), A__ISNATLIST(cons(z0, x2))) A__LENGTH(cons(x0, cons(x1, z1))) -> c32(A__ISNATLIST(cons(x1, z1))) MARK(U41(U11(zeros), x1)) -> c38(A__U41(a__U11(a__zeros), x1), MARK(U11(zeros))) MARK(U41(U11(U11(z0)), x1)) -> c38(A__U41(a__U11(a__U11(mark(z0))), x1), MARK(U11(U11(z0)))) MARK(U41(U11(U21(z0)), x1)) -> c38(A__U41(a__U11(a__U21(mark(z0))), x1), MARK(U11(U21(z0)))) MARK(U41(U11(U31(z0)), x1)) -> c38(A__U41(a__U11(a__U31(mark(z0))), x1), MARK(U11(U31(z0)))) MARK(U41(U11(U41(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U41(mark(z0), z1)), x1), MARK(U11(U41(z0, z1)))) MARK(U41(U11(U42(z0)), x1)) -> c38(A__U41(a__U11(a__U42(mark(z0))), x1), MARK(U11(U42(z0)))) MARK(U41(U11(isNatIList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatIList(z0)), x1), MARK(U11(isNatIList(z0)))) MARK(U41(U11(U51(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U51(mark(z0), z1)), x1), MARK(U11(U51(z0, z1)))) MARK(U41(U11(U52(z0)), x1)) -> c38(A__U41(a__U11(a__U52(mark(z0))), x1), MARK(U11(U52(z0)))) MARK(U41(U11(isNatList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatList(z0)), x1), MARK(U11(isNatList(z0)))) MARK(U41(U11(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U11(a__U61(mark(z0), z1, z2)), x1), MARK(U11(U61(z0, z1, z2)))) MARK(U41(U11(U62(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U62(mark(z0), z1)), x1), MARK(U11(U62(z0, z1)))) MARK(U41(U11(isNat(z0)), x1)) -> c38(A__U41(a__U11(a__isNat(z0)), x1), MARK(U11(isNat(z0)))) MARK(U41(U11(length(z0)), x1)) -> c38(A__U41(a__U11(a__length(mark(z0))), x1), MARK(U11(length(z0)))) MARK(U41(U11(cons(z0, z1)), x1)) -> c38(A__U41(a__U11(cons(mark(z0), z1)), x1), MARK(U11(cons(z0, z1)))) MARK(U41(U11(0), x1)) -> c38(A__U41(a__U11(0), x1), MARK(U11(0))) MARK(U41(U11(tt), x1)) -> c38(A__U41(a__U11(tt), x1), MARK(U11(tt))) MARK(U41(U11(s(z0)), x1)) -> c38(A__U41(a__U11(s(mark(z0))), x1), MARK(U11(s(z0)))) MARK(U41(U11(nil), x1)) -> c38(A__U41(a__U11(nil), x1), MARK(U11(nil))) MARK(U41(U11(x0), x1)) -> c38(MARK(U11(x0))) MARK(U41(U21(zeros), x1)) -> c38(A__U41(a__U21(a__zeros), x1), MARK(U21(zeros))) MARK(U41(U21(U11(z0)), x1)) -> c38(A__U41(a__U21(a__U11(mark(z0))), x1), MARK(U21(U11(z0)))) MARK(U41(U21(U21(z0)), x1)) -> c38(A__U41(a__U21(a__U21(mark(z0))), x1), MARK(U21(U21(z0)))) MARK(U41(U21(U31(z0)), x1)) -> c38(A__U41(a__U21(a__U31(mark(z0))), x1), MARK(U21(U31(z0)))) MARK(U41(U21(U41(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U41(mark(z0), z1)), x1), MARK(U21(U41(z0, z1)))) MARK(U41(U21(U42(z0)), x1)) -> c38(A__U41(a__U21(a__U42(mark(z0))), x1), MARK(U21(U42(z0)))) MARK(U41(U21(isNatIList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatIList(z0)), x1), MARK(U21(isNatIList(z0)))) MARK(U41(U21(U51(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U51(mark(z0), z1)), x1), MARK(U21(U51(z0, z1)))) MARK(U41(U21(U52(z0)), x1)) -> c38(A__U41(a__U21(a__U52(mark(z0))), x1), MARK(U21(U52(z0)))) MARK(U41(U21(isNatList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatList(z0)), x1), MARK(U21(isNatList(z0)))) MARK(U41(U21(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U21(a__U61(mark(z0), z1, z2)), x1), MARK(U21(U61(z0, z1, z2)))) MARK(U41(U21(U62(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U62(mark(z0), z1)), x1), MARK(U21(U62(z0, z1)))) MARK(U41(U21(isNat(z0)), x1)) -> c38(A__U41(a__U21(a__isNat(z0)), x1), MARK(U21(isNat(z0)))) MARK(U41(U21(length(z0)), x1)) -> c38(A__U41(a__U21(a__length(mark(z0))), x1), MARK(U21(length(z0)))) MARK(U41(U21(cons(z0, z1)), x1)) -> c38(A__U41(a__U21(cons(mark(z0), z1)), x1), MARK(U21(cons(z0, z1)))) MARK(U41(U21(0), x1)) -> c38(A__U41(a__U21(0), x1), MARK(U21(0))) MARK(U41(U21(tt), x1)) -> c38(A__U41(a__U21(tt), x1), MARK(U21(tt))) MARK(U41(U21(s(z0)), x1)) -> c38(A__U41(a__U21(s(mark(z0))), x1), MARK(U21(s(z0)))) MARK(U41(U21(nil), x1)) -> c38(A__U41(a__U21(nil), x1), MARK(U21(nil))) MARK(U41(U21(x0), x1)) -> c38(MARK(U21(x0))) MARK(U41(U31(zeros), x1)) -> c38(A__U41(a__U31(a__zeros), x1), MARK(U31(zeros))) MARK(U41(U31(U11(z0)), x1)) -> c38(A__U41(a__U31(a__U11(mark(z0))), x1), MARK(U31(U11(z0)))) MARK(U41(U31(U21(z0)), x1)) -> c38(A__U41(a__U31(a__U21(mark(z0))), x1), MARK(U31(U21(z0)))) MARK(U41(U31(U31(z0)), x1)) -> c38(A__U41(a__U31(a__U31(mark(z0))), x1), MARK(U31(U31(z0)))) MARK(U41(U31(U41(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U41(mark(z0), z1)), x1), MARK(U31(U41(z0, z1)))) MARK(U41(U31(U42(z0)), x1)) -> c38(A__U41(a__U31(a__U42(mark(z0))), x1), MARK(U31(U42(z0)))) MARK(U41(U31(isNatIList(z0)), x1)) -> c38(A__U41(a__U31(a__isNatIList(z0)), x1), MARK(U31(isNatIList(z0)))) MARK(U41(U31(U51(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U51(mark(z0), z1)), x1), MARK(U31(U51(z0, z1)))) MARK(U41(U31(U52(z0)), x1)) -> c38(A__U41(a__U31(a__U52(mark(z0))), x1), MARK(U31(U52(z0)))) MARK(U41(U31(isNatList(z0)), x1)) -> c38(A__U41(a__U31(a__isNatList(z0)), x1), MARK(U31(isNatList(z0)))) MARK(U41(U31(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U31(a__U61(mark(z0), z1, z2)), x1), MARK(U31(U61(z0, z1, z2)))) MARK(U41(U31(U62(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U62(mark(z0), z1)), x1), MARK(U31(U62(z0, z1)))) MARK(U41(U31(isNat(z0)), x1)) -> c38(A__U41(a__U31(a__isNat(z0)), x1), MARK(U31(isNat(z0)))) MARK(U41(U31(length(z0)), x1)) -> c38(A__U41(a__U31(a__length(mark(z0))), x1), MARK(U31(length(z0)))) MARK(U41(U31(cons(z0, z1)), x1)) -> c38(A__U41(a__U31(cons(mark(z0), z1)), x1), MARK(U31(cons(z0, z1)))) MARK(U41(U31(0), x1)) -> c38(A__U41(a__U31(0), x1), MARK(U31(0))) MARK(U41(U31(tt), x1)) -> c38(A__U41(a__U31(tt), x1), MARK(U31(tt))) MARK(U41(U31(s(z0)), x1)) -> c38(A__U41(a__U31(s(mark(z0))), x1), MARK(U31(s(z0)))) MARK(U41(U31(nil), x1)) -> c38(A__U41(a__U31(nil), x1), MARK(U31(nil))) MARK(U41(U31(x0), x1)) -> c38(MARK(U31(x0))) MARK(U41(U41(zeros, x1), x2)) -> c38(A__U41(a__U41(a__zeros, x1), x2), MARK(U41(zeros, x1))) MARK(U41(U41(U11(z0), x1), x2)) -> c38(A__U41(a__U41(a__U11(mark(z0)), x1), x2), MARK(U41(U11(z0), x1))) MARK(U41(U41(U21(z0), x1), x2)) -> c38(A__U41(a__U41(a__U21(mark(z0)), x1), x2), MARK(U41(U21(z0), x1))) MARK(U41(U41(U31(z0), x1), x2)) -> c38(A__U41(a__U41(a__U31(mark(z0)), x1), x2), MARK(U41(U31(z0), x1))) MARK(U41(U41(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U41(mark(z0), z1), x1), x2), MARK(U41(U41(z0, z1), x1))) MARK(U41(U41(U42(z0), x1), x2)) -> c38(A__U41(a__U41(a__U42(mark(z0)), x1), x2), MARK(U41(U42(z0), x1))) MARK(U41(U41(isNatIList(z0), x1), x2)) -> c38(A__U41(a__U41(a__isNatIList(z0), x1), x2), MARK(U41(isNatIList(z0), x1))) MARK(U41(U41(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U51(mark(z0), z1), x1), x2), MARK(U41(U51(z0, z1), x1))) MARK(U41(U41(U52(z0), x1), x2)) -> c38(A__U41(a__U41(a__U52(mark(z0)), x1), x2), MARK(U41(U52(z0), x1))) MARK(U41(U41(isNatList(z0), x1), x2)) -> c38(A__U41(a__U41(a__isNatList(z0), x1), x2), MARK(U41(isNatList(z0), x1))) MARK(U41(U41(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U41(a__U61(mark(z0), z1, z2), x1), x2), MARK(U41(U61(z0, z1, z2), x1))) MARK(U41(U41(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U62(mark(z0), z1), x1), x2), MARK(U41(U62(z0, z1), x1))) MARK(U41(U41(isNat(z0), x1), x2)) -> c38(A__U41(a__U41(a__isNat(z0), x1), x2), MARK(U41(isNat(z0), x1))) MARK(U41(U41(length(z0), x1), x2)) -> c38(A__U41(a__U41(a__length(mark(z0)), x1), x2), MARK(U41(length(z0), x1))) MARK(U41(U41(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U41(cons(mark(z0), z1), x1), x2), MARK(U41(cons(z0, z1), x1))) MARK(U41(U41(tt, x1), x2)) -> c38(A__U41(a__U41(tt, x1), x2), MARK(U41(tt, x1))) MARK(U41(U41(s(z0), x1), x2)) -> c38(A__U41(a__U41(s(mark(z0)), x1), x2), MARK(U41(s(z0), x1))) MARK(U41(U41(x0, z1), x2)) -> c38(MARK(U41(x0, z1))) MARK(U41(U41(0, x1), x2)) -> c38(A__U41(a__U41(0, x1), x2)) MARK(U41(U41(nil, x1), x2)) -> c38(A__U41(a__U41(nil, x1), x2)) S tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) A__U62(tt, isNatList(cons(z0, z1))) -> c18(A__LENGTH(a__U51(a__isNat(z0), z1)), MARK(isNatList(cons(z0, z1)))) A__U62(tt, isNatList(nil)) -> c18(MARK(isNatList(nil))) A__U62(tt, isNatList(z0)) -> c18(MARK(isNatList(z0))) A__U62(tt, U61(zeros, x1, x2)) -> c18(A__LENGTH(a__U61(a__zeros, x1, x2)), MARK(U61(zeros, x1, x2))) A__U62(tt, U61(U11(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U11(mark(z0)), x1, x2)), MARK(U61(U11(z0), x1, x2))) A__U62(tt, U61(U21(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U21(mark(z0)), x1, x2)), MARK(U61(U21(z0), x1, x2))) A__U62(tt, U61(U31(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U31(mark(z0)), x1, x2)), MARK(U61(U31(z0), x1, x2))) A__U62(tt, U61(U41(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U41(mark(z0), z1), x1, x2)), MARK(U61(U41(z0, z1), x1, x2))) A__U62(tt, U61(U42(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U42(mark(z0)), x1, x2)), MARK(U61(U42(z0), x1, x2))) A__U62(tt, U61(isNatIList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatIList(z0), x1, x2)), MARK(U61(isNatIList(z0), x1, x2))) A__U62(tt, U61(U51(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U51(mark(z0), z1), x1, x2)), MARK(U61(U51(z0, z1), x1, x2))) A__U62(tt, U61(U52(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U52(mark(z0)), x1, x2)), MARK(U61(U52(z0), x1, x2))) A__U62(tt, U61(isNatList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatList(z0), x1, x2)), MARK(U61(isNatList(z0), x1, x2))) A__U62(tt, U61(U61(z0, z1, z2), x1, x2)) -> c18(A__LENGTH(a__U61(a__U61(mark(z0), z1, z2), x1, x2)), MARK(U61(U61(z0, z1, z2), x1, x2))) A__U62(tt, U61(U62(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U62(mark(z0), z1), x1, x2)), MARK(U61(U62(z0, z1), x1, x2))) A__U62(tt, U61(isNat(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNat(z0), x1, x2)), MARK(U61(isNat(z0), x1, x2))) A__U62(tt, U61(length(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__length(mark(z0)), x1, x2)), MARK(U61(length(z0), x1, x2))) A__U62(tt, U61(cons(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(cons(mark(z0), z1), x1, x2)), MARK(U61(cons(z0, z1), x1, x2))) A__U62(tt, U61(tt, x1, x2)) -> c18(A__LENGTH(a__U61(tt, x1, x2)), MARK(U61(tt, x1, x2))) A__U62(tt, U61(s(z0), x1, x2)) -> c18(A__LENGTH(a__U61(s(mark(z0)), x1, x2)), MARK(U61(s(z0), x1, x2))) A__U62(tt, U61(x0, z1, z2)) -> c18(MARK(U61(x0, z1, z2))) A__U62(tt, U61(0, x1, x2)) -> c18(A__LENGTH(a__U61(0, x1, x2))) A__U62(tt, U61(nil, x1, x2)) -> c18(A__LENGTH(a__U61(nil, x1, x2))) A__U62(tt, U62(zeros, x1)) -> c18(A__LENGTH(a__U62(a__zeros, x1)), MARK(U62(zeros, x1))) A__U62(tt, U62(U11(z0), x1)) -> c18(A__LENGTH(a__U62(a__U11(mark(z0)), x1)), MARK(U62(U11(z0), x1))) A__U62(tt, U62(U21(z0), x1)) -> c18(A__LENGTH(a__U62(a__U21(mark(z0)), x1)), MARK(U62(U21(z0), x1))) A__U62(tt, U62(U31(z0), x1)) -> c18(A__LENGTH(a__U62(a__U31(mark(z0)), x1)), MARK(U62(U31(z0), x1))) A__U62(tt, U62(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U41(mark(z0), z1), x1)), MARK(U62(U41(z0, z1), x1))) A__U62(tt, U62(U42(z0), x1)) -> c18(A__LENGTH(a__U62(a__U42(mark(z0)), x1)), MARK(U62(U42(z0), x1))) A__U62(tt, U62(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatIList(z0), x1)), MARK(U62(isNatIList(z0), x1))) A__U62(tt, U62(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U51(mark(z0), z1), x1)), MARK(U62(U51(z0, z1), x1))) A__U62(tt, U62(U52(z0), x1)) -> c18(A__LENGTH(a__U62(a__U52(mark(z0)), x1)), MARK(U62(U52(z0), x1))) A__U62(tt, U62(isNatList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatList(z0), x1)), MARK(U62(isNatList(z0), x1))) A__U62(tt, U62(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U62(a__U61(mark(z0), z1, z2), x1)), MARK(U62(U61(z0, z1, z2), x1))) A__U62(tt, U62(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U62(mark(z0), z1), x1)), MARK(U62(U62(z0, z1), x1))) A__U62(tt, U62(isNat(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNat(z0), x1)), MARK(U62(isNat(z0), x1))) A__U62(tt, U62(length(z0), x1)) -> c18(A__LENGTH(a__U62(a__length(mark(z0)), x1)), MARK(U62(length(z0), x1))) A__U62(tt, U62(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U62(cons(mark(z0), z1), x1)), MARK(U62(cons(z0, z1), x1))) A__U62(tt, U62(tt, x1)) -> c18(A__LENGTH(a__U62(tt, x1)), MARK(U62(tt, x1))) A__U62(tt, U62(s(z0), x1)) -> c18(A__LENGTH(a__U62(s(mark(z0)), x1)), MARK(U62(s(z0), x1))) A__U62(tt, U62(x0, z1)) -> c18(MARK(U62(x0, z1))) A__U62(tt, U62(0, x1)) -> c18(A__LENGTH(a__U62(0, x1))) A__U62(tt, U62(nil, x1)) -> c18(A__LENGTH(a__U62(nil, x1))) A__U62(tt, isNat(length(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(isNat(length(z0)))) A__U62(tt, isNat(s(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(isNat(s(z0)))) A__U62(tt, isNat(0)) -> c18(MARK(isNat(0))) A__U62(tt, isNat(z0)) -> c18(MARK(isNat(z0))) A__U62(tt, length(zeros)) -> c18(A__LENGTH(a__length(a__zeros)), MARK(length(zeros))) A__U62(tt, length(U11(z0))) -> c18(A__LENGTH(a__length(a__U11(mark(z0)))), MARK(length(U11(z0)))) A__U62(tt, length(U21(z0))) -> c18(A__LENGTH(a__length(a__U21(mark(z0)))), MARK(length(U21(z0)))) A__U62(tt, length(U31(z0))) -> c18(A__LENGTH(a__length(a__U31(mark(z0)))), MARK(length(U31(z0)))) A__U62(tt, length(U41(z0, z1))) -> c18(A__LENGTH(a__length(a__U41(mark(z0), z1))), MARK(length(U41(z0, z1)))) A__U62(tt, length(U42(z0))) -> c18(A__LENGTH(a__length(a__U42(mark(z0)))), MARK(length(U42(z0)))) A__U62(tt, length(isNatIList(z0))) -> c18(A__LENGTH(a__length(a__isNatIList(z0))), MARK(length(isNatIList(z0)))) A__U62(tt, length(U51(z0, z1))) -> c18(A__LENGTH(a__length(a__U51(mark(z0), z1))), MARK(length(U51(z0, z1)))) A__U62(tt, length(U52(z0))) -> c18(A__LENGTH(a__length(a__U52(mark(z0)))), MARK(length(U52(z0)))) A__U62(tt, length(isNatList(z0))) -> c18(A__LENGTH(a__length(a__isNatList(z0))), MARK(length(isNatList(z0)))) A__U62(tt, length(U61(z0, z1, z2))) -> c18(A__LENGTH(a__length(a__U61(mark(z0), z1, z2))), MARK(length(U61(z0, z1, z2)))) A__U62(tt, length(U62(z0, z1))) -> c18(A__LENGTH(a__length(a__U62(mark(z0), z1))), MARK(length(U62(z0, z1)))) A__U62(tt, length(isNat(z0))) -> c18(A__LENGTH(a__length(a__isNat(z0))), MARK(length(isNat(z0)))) A__U62(tt, length(length(z0))) -> c18(A__LENGTH(a__length(a__length(mark(z0)))), MARK(length(length(z0)))) A__U62(tt, length(cons(z0, z1))) -> c18(A__LENGTH(a__length(cons(mark(z0), z1))), MARK(length(cons(z0, z1)))) A__U62(tt, length(s(z0))) -> c18(A__LENGTH(a__length(s(mark(z0)))), MARK(length(s(z0)))) A__U62(tt, length(x0)) -> c18(MARK(length(x0))) A__U62(tt, length(0)) -> c18(A__LENGTH(a__length(0))) A__U62(tt, length(tt)) -> c18(A__LENGTH(a__length(tt))) A__U62(tt, length(nil)) -> c18(A__LENGTH(a__length(nil))) A__U62(tt, zeros) -> c18(A__LENGTH(cons(0, zeros))) A__ISNATILIST(cons(length(nil), x1)) -> c26(A__U41(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATILIST(cons(length(cons(z0, z1)), x1)) -> c26(A__U41(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(length(x0), x1)) -> c26(A__ISNAT(length(x0))) A__ISNATILIST(cons(s(0), x1)) -> c26(A__U41(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATILIST(cons(s(length(z0)), x1)) -> c26(A__U41(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATILIST(cons(s(s(z0)), x1)) -> c26(A__U41(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(s(x0), x1)) -> c26(A__ISNAT(s(x0))) A__ISNATLIST(cons(length(nil), x1)) -> c29(A__U51(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATLIST(cons(length(cons(z0, z1)), x1)) -> c29(A__U51(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(length(x0), x1)) -> c29(A__ISNAT(length(x0))) A__ISNATLIST(cons(s(0), x1)) -> c29(A__U51(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATLIST(cons(s(length(z0)), x1)) -> c29(A__U51(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATLIST(cons(s(s(z0)), x1)) -> c29(A__U51(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(s(x0), x1)) -> c29(A__ISNAT(s(x0))) A__LENGTH(cons(x0, cons(0, x2))) -> c32(A__U61(a__U51(tt, x2), cons(0, x2), x0), A__ISNATLIST(cons(0, x2))) A__LENGTH(cons(x0, cons(length(z0), x2))) -> c32(A__U61(a__U51(a__U11(a__isNatList(z0)), x2), cons(length(z0), x2), x0), A__ISNATLIST(cons(length(z0), x2))) A__LENGTH(cons(x0, cons(s(z0), x2))) -> c32(A__U61(a__U51(a__U21(a__isNat(z0)), x2), cons(s(z0), x2), x0), A__ISNATLIST(cons(s(z0), x2))) A__LENGTH(cons(x0, cons(z0, x2))) -> c32(A__U61(a__U51(isNat(z0), x2), cons(z0, x2), x0), A__ISNATLIST(cons(z0, x2))) A__LENGTH(cons(x0, cons(x1, z1))) -> c32(A__ISNATLIST(cons(x1, z1))) MARK(U41(U11(zeros), x1)) -> c38(A__U41(a__U11(a__zeros), x1), MARK(U11(zeros))) MARK(U41(U11(U11(z0)), x1)) -> c38(A__U41(a__U11(a__U11(mark(z0))), x1), MARK(U11(U11(z0)))) MARK(U41(U11(U21(z0)), x1)) -> c38(A__U41(a__U11(a__U21(mark(z0))), x1), MARK(U11(U21(z0)))) MARK(U41(U11(U31(z0)), x1)) -> c38(A__U41(a__U11(a__U31(mark(z0))), x1), MARK(U11(U31(z0)))) MARK(U41(U11(U41(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U41(mark(z0), z1)), x1), MARK(U11(U41(z0, z1)))) MARK(U41(U11(U42(z0)), x1)) -> c38(A__U41(a__U11(a__U42(mark(z0))), x1), MARK(U11(U42(z0)))) MARK(U41(U11(isNatIList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatIList(z0)), x1), MARK(U11(isNatIList(z0)))) MARK(U41(U11(U51(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U51(mark(z0), z1)), x1), MARK(U11(U51(z0, z1)))) MARK(U41(U11(U52(z0)), x1)) -> c38(A__U41(a__U11(a__U52(mark(z0))), x1), MARK(U11(U52(z0)))) MARK(U41(U11(isNatList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatList(z0)), x1), MARK(U11(isNatList(z0)))) MARK(U41(U11(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U11(a__U61(mark(z0), z1, z2)), x1), MARK(U11(U61(z0, z1, z2)))) MARK(U41(U11(U62(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U62(mark(z0), z1)), x1), MARK(U11(U62(z0, z1)))) MARK(U41(U11(isNat(z0)), x1)) -> c38(A__U41(a__U11(a__isNat(z0)), x1), MARK(U11(isNat(z0)))) MARK(U41(U11(length(z0)), x1)) -> c38(A__U41(a__U11(a__length(mark(z0))), x1), MARK(U11(length(z0)))) MARK(U41(U11(cons(z0, z1)), x1)) -> c38(A__U41(a__U11(cons(mark(z0), z1)), x1), MARK(U11(cons(z0, z1)))) MARK(U41(U11(0), x1)) -> c38(A__U41(a__U11(0), x1), MARK(U11(0))) MARK(U41(U11(tt), x1)) -> c38(A__U41(a__U11(tt), x1), MARK(U11(tt))) MARK(U41(U11(s(z0)), x1)) -> c38(A__U41(a__U11(s(mark(z0))), x1), MARK(U11(s(z0)))) MARK(U41(U11(nil), x1)) -> c38(A__U41(a__U11(nil), x1), MARK(U11(nil))) MARK(U41(U11(x0), x1)) -> c38(MARK(U11(x0))) MARK(U41(U21(zeros), x1)) -> c38(A__U41(a__U21(a__zeros), x1), MARK(U21(zeros))) MARK(U41(U21(U11(z0)), x1)) -> c38(A__U41(a__U21(a__U11(mark(z0))), x1), MARK(U21(U11(z0)))) MARK(U41(U21(U21(z0)), x1)) -> c38(A__U41(a__U21(a__U21(mark(z0))), x1), MARK(U21(U21(z0)))) MARK(U41(U21(U31(z0)), x1)) -> c38(A__U41(a__U21(a__U31(mark(z0))), x1), MARK(U21(U31(z0)))) MARK(U41(U21(U41(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U41(mark(z0), z1)), x1), MARK(U21(U41(z0, z1)))) MARK(U41(U21(U42(z0)), x1)) -> c38(A__U41(a__U21(a__U42(mark(z0))), x1), MARK(U21(U42(z0)))) MARK(U41(U21(isNatIList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatIList(z0)), x1), MARK(U21(isNatIList(z0)))) MARK(U41(U21(U51(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U51(mark(z0), z1)), x1), MARK(U21(U51(z0, z1)))) MARK(U41(U21(U52(z0)), x1)) -> c38(A__U41(a__U21(a__U52(mark(z0))), x1), MARK(U21(U52(z0)))) MARK(U41(U21(isNatList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatList(z0)), x1), MARK(U21(isNatList(z0)))) MARK(U41(U21(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U21(a__U61(mark(z0), z1, z2)), x1), MARK(U21(U61(z0, z1, z2)))) MARK(U41(U21(U62(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U62(mark(z0), z1)), x1), MARK(U21(U62(z0, z1)))) MARK(U41(U21(isNat(z0)), x1)) -> c38(A__U41(a__U21(a__isNat(z0)), x1), MARK(U21(isNat(z0)))) MARK(U41(U21(length(z0)), x1)) -> c38(A__U41(a__U21(a__length(mark(z0))), x1), MARK(U21(length(z0)))) MARK(U41(U21(cons(z0, z1)), x1)) -> c38(A__U41(a__U21(cons(mark(z0), z1)), x1), MARK(U21(cons(z0, z1)))) MARK(U41(U21(0), x1)) -> c38(A__U41(a__U21(0), x1), MARK(U21(0))) MARK(U41(U21(tt), x1)) -> c38(A__U41(a__U21(tt), x1), MARK(U21(tt))) MARK(U41(U21(s(z0)), x1)) -> c38(A__U41(a__U21(s(mark(z0))), x1), MARK(U21(s(z0)))) MARK(U41(U21(nil), x1)) -> c38(A__U41(a__U21(nil), x1), MARK(U21(nil))) MARK(U41(U21(x0), x1)) -> c38(MARK(U21(x0))) MARK(U41(U31(zeros), x1)) -> c38(A__U41(a__U31(a__zeros), x1), MARK(U31(zeros))) MARK(U41(U31(U11(z0)), x1)) -> c38(A__U41(a__U31(a__U11(mark(z0))), x1), MARK(U31(U11(z0)))) MARK(U41(U31(U21(z0)), x1)) -> c38(A__U41(a__U31(a__U21(mark(z0))), x1), MARK(U31(U21(z0)))) MARK(U41(U31(U31(z0)), x1)) -> c38(A__U41(a__U31(a__U31(mark(z0))), x1), MARK(U31(U31(z0)))) MARK(U41(U31(U41(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U41(mark(z0), z1)), x1), MARK(U31(U41(z0, z1)))) MARK(U41(U31(U42(z0)), x1)) -> c38(A__U41(a__U31(a__U42(mark(z0))), x1), MARK(U31(U42(z0)))) MARK(U41(U31(isNatIList(z0)), x1)) -> c38(A__U41(a__U31(a__isNatIList(z0)), x1), MARK(U31(isNatIList(z0)))) MARK(U41(U31(U51(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U51(mark(z0), z1)), x1), MARK(U31(U51(z0, z1)))) MARK(U41(U31(U52(z0)), x1)) -> c38(A__U41(a__U31(a__U52(mark(z0))), x1), MARK(U31(U52(z0)))) MARK(U41(U31(isNatList(z0)), x1)) -> c38(A__U41(a__U31(a__isNatList(z0)), x1), MARK(U31(isNatList(z0)))) MARK(U41(U31(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U31(a__U61(mark(z0), z1, z2)), x1), MARK(U31(U61(z0, z1, z2)))) MARK(U41(U31(U62(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U62(mark(z0), z1)), x1), MARK(U31(U62(z0, z1)))) MARK(U41(U31(isNat(z0)), x1)) -> c38(A__U41(a__U31(a__isNat(z0)), x1), MARK(U31(isNat(z0)))) MARK(U41(U31(length(z0)), x1)) -> c38(A__U41(a__U31(a__length(mark(z0))), x1), MARK(U31(length(z0)))) MARK(U41(U31(cons(z0, z1)), x1)) -> c38(A__U41(a__U31(cons(mark(z0), z1)), x1), MARK(U31(cons(z0, z1)))) MARK(U41(U31(0), x1)) -> c38(A__U41(a__U31(0), x1), MARK(U31(0))) MARK(U41(U31(tt), x1)) -> c38(A__U41(a__U31(tt), x1), MARK(U31(tt))) MARK(U41(U31(s(z0)), x1)) -> c38(A__U41(a__U31(s(mark(z0))), x1), MARK(U31(s(z0)))) MARK(U41(U31(nil), x1)) -> c38(A__U41(a__U31(nil), x1), MARK(U31(nil))) MARK(U41(U31(x0), x1)) -> c38(MARK(U31(x0))) MARK(U41(U41(zeros, x1), x2)) -> c38(A__U41(a__U41(a__zeros, x1), x2), MARK(U41(zeros, x1))) MARK(U41(U41(U11(z0), x1), x2)) -> c38(A__U41(a__U41(a__U11(mark(z0)), x1), x2), MARK(U41(U11(z0), x1))) MARK(U41(U41(U21(z0), x1), x2)) -> c38(A__U41(a__U41(a__U21(mark(z0)), x1), x2), MARK(U41(U21(z0), x1))) MARK(U41(U41(U31(z0), x1), x2)) -> c38(A__U41(a__U41(a__U31(mark(z0)), x1), x2), MARK(U41(U31(z0), x1))) MARK(U41(U41(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U41(mark(z0), z1), x1), x2), MARK(U41(U41(z0, z1), x1))) MARK(U41(U41(U42(z0), x1), x2)) -> c38(A__U41(a__U41(a__U42(mark(z0)), x1), x2), MARK(U41(U42(z0), x1))) MARK(U41(U41(isNatIList(z0), x1), x2)) -> c38(A__U41(a__U41(a__isNatIList(z0), x1), x2), MARK(U41(isNatIList(z0), x1))) MARK(U41(U41(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U51(mark(z0), z1), x1), x2), MARK(U41(U51(z0, z1), x1))) MARK(U41(U41(U52(z0), x1), x2)) -> c38(A__U41(a__U41(a__U52(mark(z0)), x1), x2), MARK(U41(U52(z0), x1))) MARK(U41(U41(isNatList(z0), x1), x2)) -> c38(A__U41(a__U41(a__isNatList(z0), x1), x2), MARK(U41(isNatList(z0), x1))) MARK(U41(U41(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U41(a__U61(mark(z0), z1, z2), x1), x2), MARK(U41(U61(z0, z1, z2), x1))) MARK(U41(U41(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U62(mark(z0), z1), x1), x2), MARK(U41(U62(z0, z1), x1))) MARK(U41(U41(isNat(z0), x1), x2)) -> c38(A__U41(a__U41(a__isNat(z0), x1), x2), MARK(U41(isNat(z0), x1))) MARK(U41(U41(length(z0), x1), x2)) -> c38(A__U41(a__U41(a__length(mark(z0)), x1), x2), MARK(U41(length(z0), x1))) MARK(U41(U41(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U41(cons(mark(z0), z1), x1), x2), MARK(U41(cons(z0, z1), x1))) MARK(U41(U41(tt, x1), x2)) -> c38(A__U41(a__U41(tt, x1), x2), MARK(U41(tt, x1))) MARK(U41(U41(s(z0), x1), x2)) -> c38(A__U41(a__U41(s(mark(z0)), x1), x2), MARK(U41(s(z0), x1))) MARK(U41(U41(x0, z1), x2)) -> c38(MARK(U41(x0, z1))) MARK(U41(U41(0, x1), x2)) -> c38(A__U41(a__U41(0, x1), x2)) MARK(U41(U41(nil, x1), x2)) -> c38(A__U41(a__U41(nil, x1), x2)) K tuples:none Defined Rule Symbols: a__zeros, a__U11_1, a__U21_1, a__U31_1, a__U41_2, a__U42_1, a__U51_2, a__U52_1, a__U61_3, a__U62_2, a__isNat_1, a__isNatIList_1, a__isNatList_1, a__length_1, mark_1 Defined Pair Symbols: MARK_1, A__U41_2, A__U51_2, A__ISNAT_1, A__ISNATILIST_1, A__U61_3, A__U62_2, A__ISNATLIST_1, A__LENGTH_1 Compound Symbols: c40_1, c43_1, c46_1, c48_1, c51_1, c8_1, c12_1, c21_1, c22_1, c24_1, c35_1, c36_1, c37_1, c39_1, c42_1, c16_1, c18_2, c18_1, c26_1, c29_1, c32_1, c38_2, c38_1, c_1, c41_2, c41_1, c1_1, c44_2, c44_1, c45_2, c45_1, c47_2, c47_1, c16_2, c26_2, c29_2, c32_2 ---------------------------------------- (185) CdtGraphSplitRhsProof (BOTH BOUNDS(ID, ID)) Split RHS of tuples not part of any SCC ---------------------------------------- (186) Obligation: Complexity Dependency Tuples Problem Rules: a__zeros -> cons(0, zeros) a__zeros -> zeros a__U11(tt) -> tt a__U11(z0) -> U11(z0) a__U21(tt) -> tt a__U21(z0) -> U21(z0) a__U31(tt) -> tt a__U31(z0) -> U31(z0) a__U41(tt, z0) -> a__U42(a__isNatIList(z0)) a__U41(z0, z1) -> U41(z0, z1) a__U42(tt) -> tt a__U42(z0) -> U42(z0) a__U51(tt, z0) -> a__U52(a__isNatList(z0)) a__U51(z0, z1) -> U51(z0, z1) a__U52(tt) -> tt a__U52(z0) -> U52(z0) a__U61(tt, z0, z1) -> a__U62(a__isNat(z1), z0) a__U61(z0, z1, z2) -> U61(z0, z1, z2) a__U62(tt, z0) -> s(a__length(mark(z0))) a__U62(z0, z1) -> U62(z0, z1) a__isNat(0) -> tt a__isNat(length(z0)) -> a__U11(a__isNatList(z0)) a__isNat(s(z0)) -> a__U21(a__isNat(z0)) a__isNat(z0) -> isNat(z0) a__isNatIList(z0) -> a__U31(a__isNatList(z0)) a__isNatIList(zeros) -> tt a__isNatIList(cons(z0, z1)) -> a__U41(a__isNat(z0), z1) a__isNatIList(z0) -> isNatIList(z0) a__isNatList(nil) -> tt a__isNatList(cons(z0, z1)) -> a__U51(a__isNat(z0), z1) a__isNatList(z0) -> isNatList(z0) a__length(nil) -> 0 a__length(cons(z0, z1)) -> a__U61(a__isNatList(z1), z1, z0) a__length(z0) -> length(z0) mark(zeros) -> a__zeros mark(U11(z0)) -> a__U11(mark(z0)) mark(U21(z0)) -> a__U21(mark(z0)) mark(U31(z0)) -> a__U31(mark(z0)) mark(U41(z0, z1)) -> a__U41(mark(z0), z1) mark(U42(z0)) -> a__U42(mark(z0)) mark(isNatIList(z0)) -> a__isNatIList(z0) mark(U51(z0, z1)) -> a__U51(mark(z0), z1) mark(U52(z0)) -> a__U52(mark(z0)) mark(isNatList(z0)) -> a__isNatList(z0) mark(U61(z0, z1, z2)) -> a__U61(mark(z0), z1, z2) mark(U62(z0, z1)) -> a__U62(mark(z0), z1) mark(isNat(z0)) -> a__isNat(z0) mark(length(z0)) -> a__length(mark(z0)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(0) -> 0 mark(tt) -> tt mark(s(z0)) -> s(mark(z0)) mark(nil) -> nil Tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) A__U62(tt, isNatList(cons(z0, z1))) -> c18(A__LENGTH(a__U51(a__isNat(z0), z1)), MARK(isNatList(cons(z0, z1)))) A__U62(tt, isNatList(nil)) -> c18(MARK(isNatList(nil))) A__U62(tt, isNatList(z0)) -> c18(MARK(isNatList(z0))) A__U62(tt, U61(zeros, x1, x2)) -> c18(A__LENGTH(a__U61(a__zeros, x1, x2)), MARK(U61(zeros, x1, x2))) A__U62(tt, U61(U11(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U11(mark(z0)), x1, x2)), MARK(U61(U11(z0), x1, x2))) A__U62(tt, U61(U21(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U21(mark(z0)), x1, x2)), MARK(U61(U21(z0), x1, x2))) A__U62(tt, U61(U31(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U31(mark(z0)), x1, x2)), MARK(U61(U31(z0), x1, x2))) A__U62(tt, U61(U41(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U41(mark(z0), z1), x1, x2)), MARK(U61(U41(z0, z1), x1, x2))) A__U62(tt, U61(U42(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U42(mark(z0)), x1, x2)), MARK(U61(U42(z0), x1, x2))) A__U62(tt, U61(isNatIList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatIList(z0), x1, x2)), MARK(U61(isNatIList(z0), x1, x2))) A__U62(tt, U61(U51(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U51(mark(z0), z1), x1, x2)), MARK(U61(U51(z0, z1), x1, x2))) A__U62(tt, U61(U52(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U52(mark(z0)), x1, x2)), MARK(U61(U52(z0), x1, x2))) A__U62(tt, U61(isNatList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatList(z0), x1, x2)), MARK(U61(isNatList(z0), x1, x2))) A__U62(tt, U61(U61(z0, z1, z2), x1, x2)) -> c18(A__LENGTH(a__U61(a__U61(mark(z0), z1, z2), x1, x2)), MARK(U61(U61(z0, z1, z2), x1, x2))) A__U62(tt, U61(U62(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U62(mark(z0), z1), x1, x2)), MARK(U61(U62(z0, z1), x1, x2))) A__U62(tt, U61(isNat(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNat(z0), x1, x2)), MARK(U61(isNat(z0), x1, x2))) A__U62(tt, U61(length(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__length(mark(z0)), x1, x2)), MARK(U61(length(z0), x1, x2))) A__U62(tt, U61(cons(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(cons(mark(z0), z1), x1, x2)), MARK(U61(cons(z0, z1), x1, x2))) A__U62(tt, U61(tt, x1, x2)) -> c18(A__LENGTH(a__U61(tt, x1, x2)), MARK(U61(tt, x1, x2))) A__U62(tt, U61(s(z0), x1, x2)) -> c18(A__LENGTH(a__U61(s(mark(z0)), x1, x2)), MARK(U61(s(z0), x1, x2))) A__U62(tt, U61(x0, z1, z2)) -> c18(MARK(U61(x0, z1, z2))) A__U62(tt, U61(0, x1, x2)) -> c18(A__LENGTH(a__U61(0, x1, x2))) A__U62(tt, U61(nil, x1, x2)) -> c18(A__LENGTH(a__U61(nil, x1, x2))) A__U62(tt, U62(zeros, x1)) -> c18(A__LENGTH(a__U62(a__zeros, x1)), MARK(U62(zeros, x1))) A__U62(tt, U62(U11(z0), x1)) -> c18(A__LENGTH(a__U62(a__U11(mark(z0)), x1)), MARK(U62(U11(z0), x1))) A__U62(tt, U62(U21(z0), x1)) -> c18(A__LENGTH(a__U62(a__U21(mark(z0)), x1)), MARK(U62(U21(z0), x1))) A__U62(tt, U62(U31(z0), x1)) -> c18(A__LENGTH(a__U62(a__U31(mark(z0)), x1)), MARK(U62(U31(z0), x1))) A__U62(tt, U62(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U41(mark(z0), z1), x1)), MARK(U62(U41(z0, z1), x1))) A__U62(tt, U62(U42(z0), x1)) -> c18(A__LENGTH(a__U62(a__U42(mark(z0)), x1)), MARK(U62(U42(z0), x1))) A__U62(tt, U62(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatIList(z0), x1)), MARK(U62(isNatIList(z0), x1))) A__U62(tt, U62(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U51(mark(z0), z1), x1)), MARK(U62(U51(z0, z1), x1))) A__U62(tt, U62(U52(z0), x1)) -> c18(A__LENGTH(a__U62(a__U52(mark(z0)), x1)), MARK(U62(U52(z0), x1))) A__U62(tt, U62(isNatList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatList(z0), x1)), MARK(U62(isNatList(z0), x1))) A__U62(tt, U62(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U62(a__U61(mark(z0), z1, z2), x1)), MARK(U62(U61(z0, z1, z2), x1))) A__U62(tt, U62(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U62(mark(z0), z1), x1)), MARK(U62(U62(z0, z1), x1))) A__U62(tt, U62(isNat(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNat(z0), x1)), MARK(U62(isNat(z0), x1))) A__U62(tt, U62(length(z0), x1)) -> c18(A__LENGTH(a__U62(a__length(mark(z0)), x1)), MARK(U62(length(z0), x1))) A__U62(tt, U62(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U62(cons(mark(z0), z1), x1)), MARK(U62(cons(z0, z1), x1))) A__U62(tt, U62(tt, x1)) -> c18(A__LENGTH(a__U62(tt, x1)), MARK(U62(tt, x1))) A__U62(tt, U62(s(z0), x1)) -> c18(A__LENGTH(a__U62(s(mark(z0)), x1)), MARK(U62(s(z0), x1))) A__U62(tt, U62(x0, z1)) -> c18(MARK(U62(x0, z1))) A__U62(tt, U62(0, x1)) -> c18(A__LENGTH(a__U62(0, x1))) A__U62(tt, U62(nil, x1)) -> c18(A__LENGTH(a__U62(nil, x1))) A__U62(tt, isNat(length(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(isNat(length(z0)))) A__U62(tt, isNat(s(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(isNat(s(z0)))) A__U62(tt, isNat(0)) -> c18(MARK(isNat(0))) A__U62(tt, isNat(z0)) -> c18(MARK(isNat(z0))) A__U62(tt, length(zeros)) -> c18(A__LENGTH(a__length(a__zeros)), MARK(length(zeros))) A__U62(tt, length(U11(z0))) -> c18(A__LENGTH(a__length(a__U11(mark(z0)))), MARK(length(U11(z0)))) A__U62(tt, length(U21(z0))) -> c18(A__LENGTH(a__length(a__U21(mark(z0)))), MARK(length(U21(z0)))) A__U62(tt, length(U31(z0))) -> c18(A__LENGTH(a__length(a__U31(mark(z0)))), MARK(length(U31(z0)))) A__U62(tt, length(U41(z0, z1))) -> c18(A__LENGTH(a__length(a__U41(mark(z0), z1))), MARK(length(U41(z0, z1)))) A__U62(tt, length(U42(z0))) -> c18(A__LENGTH(a__length(a__U42(mark(z0)))), MARK(length(U42(z0)))) A__U62(tt, length(isNatIList(z0))) -> c18(A__LENGTH(a__length(a__isNatIList(z0))), MARK(length(isNatIList(z0)))) A__U62(tt, length(U51(z0, z1))) -> c18(A__LENGTH(a__length(a__U51(mark(z0), z1))), MARK(length(U51(z0, z1)))) A__U62(tt, length(U52(z0))) -> c18(A__LENGTH(a__length(a__U52(mark(z0)))), MARK(length(U52(z0)))) A__U62(tt, length(isNatList(z0))) -> c18(A__LENGTH(a__length(a__isNatList(z0))), MARK(length(isNatList(z0)))) A__U62(tt, length(U61(z0, z1, z2))) -> c18(A__LENGTH(a__length(a__U61(mark(z0), z1, z2))), MARK(length(U61(z0, z1, z2)))) A__U62(tt, length(U62(z0, z1))) -> c18(A__LENGTH(a__length(a__U62(mark(z0), z1))), MARK(length(U62(z0, z1)))) A__U62(tt, length(isNat(z0))) -> c18(A__LENGTH(a__length(a__isNat(z0))), MARK(length(isNat(z0)))) A__U62(tt, length(length(z0))) -> c18(A__LENGTH(a__length(a__length(mark(z0)))), MARK(length(length(z0)))) A__U62(tt, length(cons(z0, z1))) -> c18(A__LENGTH(a__length(cons(mark(z0), z1))), MARK(length(cons(z0, z1)))) A__U62(tt, length(s(z0))) -> c18(A__LENGTH(a__length(s(mark(z0)))), MARK(length(s(z0)))) A__U62(tt, length(x0)) -> c18(MARK(length(x0))) A__U62(tt, length(0)) -> c18(A__LENGTH(a__length(0))) A__U62(tt, length(tt)) -> c18(A__LENGTH(a__length(tt))) A__U62(tt, length(nil)) -> c18(A__LENGTH(a__length(nil))) A__U62(tt, zeros) -> c18(A__LENGTH(cons(0, zeros))) A__ISNATILIST(cons(length(nil), x1)) -> c26(A__U41(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATILIST(cons(length(cons(z0, z1)), x1)) -> c26(A__U41(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(length(x0), x1)) -> c26(A__ISNAT(length(x0))) A__ISNATILIST(cons(s(0), x1)) -> c26(A__U41(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATILIST(cons(s(length(z0)), x1)) -> c26(A__U41(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATILIST(cons(s(s(z0)), x1)) -> c26(A__U41(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(s(x0), x1)) -> c26(A__ISNAT(s(x0))) A__ISNATLIST(cons(length(nil), x1)) -> c29(A__U51(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATLIST(cons(length(cons(z0, z1)), x1)) -> c29(A__U51(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(length(x0), x1)) -> c29(A__ISNAT(length(x0))) A__ISNATLIST(cons(s(0), x1)) -> c29(A__U51(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATLIST(cons(s(length(z0)), x1)) -> c29(A__U51(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATLIST(cons(s(s(z0)), x1)) -> c29(A__U51(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(s(x0), x1)) -> c29(A__ISNAT(s(x0))) A__LENGTH(cons(x0, cons(0, x2))) -> c32(A__U61(a__U51(tt, x2), cons(0, x2), x0), A__ISNATLIST(cons(0, x2))) A__LENGTH(cons(x0, cons(length(z0), x2))) -> c32(A__U61(a__U51(a__U11(a__isNatList(z0)), x2), cons(length(z0), x2), x0), A__ISNATLIST(cons(length(z0), x2))) A__LENGTH(cons(x0, cons(s(z0), x2))) -> c32(A__U61(a__U51(a__U21(a__isNat(z0)), x2), cons(s(z0), x2), x0), A__ISNATLIST(cons(s(z0), x2))) A__LENGTH(cons(x0, cons(z0, x2))) -> c32(A__U61(a__U51(isNat(z0), x2), cons(z0, x2), x0), A__ISNATLIST(cons(z0, x2))) A__LENGTH(cons(x0, cons(x1, z1))) -> c32(A__ISNATLIST(cons(x1, z1))) MARK(U41(U11(zeros), x1)) -> c38(A__U41(a__U11(a__zeros), x1), MARK(U11(zeros))) MARK(U41(U11(U11(z0)), x1)) -> c38(A__U41(a__U11(a__U11(mark(z0))), x1), MARK(U11(U11(z0)))) MARK(U41(U11(U21(z0)), x1)) -> c38(A__U41(a__U11(a__U21(mark(z0))), x1), MARK(U11(U21(z0)))) MARK(U41(U11(U31(z0)), x1)) -> c38(A__U41(a__U11(a__U31(mark(z0))), x1), MARK(U11(U31(z0)))) MARK(U41(U11(U41(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U41(mark(z0), z1)), x1), MARK(U11(U41(z0, z1)))) MARK(U41(U11(U42(z0)), x1)) -> c38(A__U41(a__U11(a__U42(mark(z0))), x1), MARK(U11(U42(z0)))) MARK(U41(U11(isNatIList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatIList(z0)), x1), MARK(U11(isNatIList(z0)))) MARK(U41(U11(U51(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U51(mark(z0), z1)), x1), MARK(U11(U51(z0, z1)))) MARK(U41(U11(U52(z0)), x1)) -> c38(A__U41(a__U11(a__U52(mark(z0))), x1), MARK(U11(U52(z0)))) MARK(U41(U11(isNatList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatList(z0)), x1), MARK(U11(isNatList(z0)))) MARK(U41(U11(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U11(a__U61(mark(z0), z1, z2)), x1), MARK(U11(U61(z0, z1, z2)))) MARK(U41(U11(U62(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U62(mark(z0), z1)), x1), MARK(U11(U62(z0, z1)))) MARK(U41(U11(isNat(z0)), x1)) -> c38(A__U41(a__U11(a__isNat(z0)), x1), MARK(U11(isNat(z0)))) MARK(U41(U11(length(z0)), x1)) -> c38(A__U41(a__U11(a__length(mark(z0))), x1), MARK(U11(length(z0)))) MARK(U41(U11(cons(z0, z1)), x1)) -> c38(A__U41(a__U11(cons(mark(z0), z1)), x1), MARK(U11(cons(z0, z1)))) MARK(U41(U11(0), x1)) -> c38(A__U41(a__U11(0), x1), MARK(U11(0))) MARK(U41(U11(tt), x1)) -> c38(A__U41(a__U11(tt), x1), MARK(U11(tt))) MARK(U41(U11(s(z0)), x1)) -> c38(A__U41(a__U11(s(mark(z0))), x1), MARK(U11(s(z0)))) MARK(U41(U11(nil), x1)) -> c38(A__U41(a__U11(nil), x1), MARK(U11(nil))) MARK(U41(U11(x0), x1)) -> c38(MARK(U11(x0))) MARK(U41(U21(zeros), x1)) -> c38(A__U41(a__U21(a__zeros), x1), MARK(U21(zeros))) MARK(U41(U21(U11(z0)), x1)) -> c38(A__U41(a__U21(a__U11(mark(z0))), x1), MARK(U21(U11(z0)))) MARK(U41(U21(U21(z0)), x1)) -> c38(A__U41(a__U21(a__U21(mark(z0))), x1), MARK(U21(U21(z0)))) MARK(U41(U21(U31(z0)), x1)) -> c38(A__U41(a__U21(a__U31(mark(z0))), x1), MARK(U21(U31(z0)))) MARK(U41(U21(U41(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U41(mark(z0), z1)), x1), MARK(U21(U41(z0, z1)))) MARK(U41(U21(U42(z0)), x1)) -> c38(A__U41(a__U21(a__U42(mark(z0))), x1), MARK(U21(U42(z0)))) MARK(U41(U21(isNatIList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatIList(z0)), x1), MARK(U21(isNatIList(z0)))) MARK(U41(U21(U51(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U51(mark(z0), z1)), x1), MARK(U21(U51(z0, z1)))) MARK(U41(U21(U52(z0)), x1)) -> c38(A__U41(a__U21(a__U52(mark(z0))), x1), MARK(U21(U52(z0)))) MARK(U41(U21(isNatList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatList(z0)), x1), MARK(U21(isNatList(z0)))) MARK(U41(U21(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U21(a__U61(mark(z0), z1, z2)), x1), MARK(U21(U61(z0, z1, z2)))) MARK(U41(U21(U62(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U62(mark(z0), z1)), x1), MARK(U21(U62(z0, z1)))) MARK(U41(U21(isNat(z0)), x1)) -> c38(A__U41(a__U21(a__isNat(z0)), x1), MARK(U21(isNat(z0)))) MARK(U41(U21(length(z0)), x1)) -> c38(A__U41(a__U21(a__length(mark(z0))), x1), MARK(U21(length(z0)))) MARK(U41(U21(cons(z0, z1)), x1)) -> c38(A__U41(a__U21(cons(mark(z0), z1)), x1), MARK(U21(cons(z0, z1)))) MARK(U41(U21(0), x1)) -> c38(A__U41(a__U21(0), x1), MARK(U21(0))) MARK(U41(U21(tt), x1)) -> c38(A__U41(a__U21(tt), x1), MARK(U21(tt))) MARK(U41(U21(s(z0)), x1)) -> c38(A__U41(a__U21(s(mark(z0))), x1), MARK(U21(s(z0)))) MARK(U41(U21(nil), x1)) -> c38(A__U41(a__U21(nil), x1), MARK(U21(nil))) MARK(U41(U21(x0), x1)) -> c38(MARK(U21(x0))) MARK(U41(U31(zeros), x1)) -> c38(A__U41(a__U31(a__zeros), x1), MARK(U31(zeros))) MARK(U41(U31(U11(z0)), x1)) -> c38(A__U41(a__U31(a__U11(mark(z0))), x1), MARK(U31(U11(z0)))) MARK(U41(U31(U21(z0)), x1)) -> c38(A__U41(a__U31(a__U21(mark(z0))), x1), MARK(U31(U21(z0)))) MARK(U41(U31(U31(z0)), x1)) -> c38(A__U41(a__U31(a__U31(mark(z0))), x1), MARK(U31(U31(z0)))) MARK(U41(U31(U41(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U41(mark(z0), z1)), x1), MARK(U31(U41(z0, z1)))) MARK(U41(U31(U42(z0)), x1)) -> c38(A__U41(a__U31(a__U42(mark(z0))), x1), MARK(U31(U42(z0)))) MARK(U41(U31(isNatIList(z0)), x1)) -> c38(A__U41(a__U31(a__isNatIList(z0)), x1), MARK(U31(isNatIList(z0)))) MARK(U41(U31(U51(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U51(mark(z0), z1)), x1), MARK(U31(U51(z0, z1)))) MARK(U41(U31(U52(z0)), x1)) -> c38(A__U41(a__U31(a__U52(mark(z0))), x1), MARK(U31(U52(z0)))) MARK(U41(U31(isNatList(z0)), x1)) -> c38(A__U41(a__U31(a__isNatList(z0)), x1), MARK(U31(isNatList(z0)))) MARK(U41(U31(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U31(a__U61(mark(z0), z1, z2)), x1), MARK(U31(U61(z0, z1, z2)))) MARK(U41(U31(U62(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U62(mark(z0), z1)), x1), MARK(U31(U62(z0, z1)))) MARK(U41(U31(isNat(z0)), x1)) -> c38(A__U41(a__U31(a__isNat(z0)), x1), MARK(U31(isNat(z0)))) MARK(U41(U31(length(z0)), x1)) -> c38(A__U41(a__U31(a__length(mark(z0))), x1), MARK(U31(length(z0)))) MARK(U41(U31(cons(z0, z1)), x1)) -> c38(A__U41(a__U31(cons(mark(z0), z1)), x1), MARK(U31(cons(z0, z1)))) MARK(U41(U31(0), x1)) -> c38(A__U41(a__U31(0), x1), MARK(U31(0))) MARK(U41(U31(tt), x1)) -> c38(A__U41(a__U31(tt), x1), MARK(U31(tt))) MARK(U41(U31(s(z0)), x1)) -> c38(A__U41(a__U31(s(mark(z0))), x1), MARK(U31(s(z0)))) MARK(U41(U31(nil), x1)) -> c38(A__U41(a__U31(nil), x1), MARK(U31(nil))) MARK(U41(U31(x0), x1)) -> c38(MARK(U31(x0))) MARK(U41(U41(U11(z0), x1), x2)) -> c38(A__U41(a__U41(a__U11(mark(z0)), x1), x2), MARK(U41(U11(z0), x1))) MARK(U41(U41(U21(z0), x1), x2)) -> c38(A__U41(a__U41(a__U21(mark(z0)), x1), x2), MARK(U41(U21(z0), x1))) MARK(U41(U41(U31(z0), x1), x2)) -> c38(A__U41(a__U41(a__U31(mark(z0)), x1), x2), MARK(U41(U31(z0), x1))) MARK(U41(U41(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U41(mark(z0), z1), x1), x2), MARK(U41(U41(z0, z1), x1))) MARK(U41(U41(U42(z0), x1), x2)) -> c38(A__U41(a__U41(a__U42(mark(z0)), x1), x2), MARK(U41(U42(z0), x1))) MARK(U41(U41(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U51(mark(z0), z1), x1), x2), MARK(U41(U51(z0, z1), x1))) MARK(U41(U41(U52(z0), x1), x2)) -> c38(A__U41(a__U41(a__U52(mark(z0)), x1), x2), MARK(U41(U52(z0), x1))) MARK(U41(U41(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U41(a__U61(mark(z0), z1, z2), x1), x2), MARK(U41(U61(z0, z1, z2), x1))) MARK(U41(U41(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U62(mark(z0), z1), x1), x2), MARK(U41(U62(z0, z1), x1))) MARK(U41(U41(length(z0), x1), x2)) -> c38(A__U41(a__U41(a__length(mark(z0)), x1), x2), MARK(U41(length(z0), x1))) MARK(U41(U41(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U41(cons(mark(z0), z1), x1), x2), MARK(U41(cons(z0, z1), x1))) MARK(U41(U41(s(z0), x1), x2)) -> c38(A__U41(a__U41(s(mark(z0)), x1), x2), MARK(U41(s(z0), x1))) MARK(U41(U41(x0, z1), x2)) -> c38(MARK(U41(x0, z1))) MARK(U41(U41(0, x1), x2)) -> c38(A__U41(a__U41(0, x1), x2)) MARK(U41(U41(nil, x1), x2)) -> c38(A__U41(a__U41(nil, x1), x2)) MARK(U41(U41(zeros, x1), x2)) -> c2(A__U41(a__U41(a__zeros, x1), x2)) MARK(U41(U41(zeros, x1), x2)) -> c2(MARK(U41(zeros, x1))) MARK(U41(U41(isNatIList(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNatIList(z0), x1), x2)) MARK(U41(U41(isNatIList(z0), x1), x2)) -> c2(MARK(U41(isNatIList(z0), x1))) MARK(U41(U41(isNatList(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNatList(z0), x1), x2)) MARK(U41(U41(isNatList(z0), x1), x2)) -> c2(MARK(U41(isNatList(z0), x1))) MARK(U41(U41(isNat(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNat(z0), x1), x2)) MARK(U41(U41(isNat(z0), x1), x2)) -> c2(MARK(U41(isNat(z0), x1))) MARK(U41(U41(tt, x1), x2)) -> c2(A__U41(a__U41(tt, x1), x2)) MARK(U41(U41(tt, x1), x2)) -> c2(MARK(U41(tt, x1))) S tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) A__U62(tt, isNatList(cons(z0, z1))) -> c18(A__LENGTH(a__U51(a__isNat(z0), z1)), MARK(isNatList(cons(z0, z1)))) A__U62(tt, isNatList(nil)) -> c18(MARK(isNatList(nil))) A__U62(tt, isNatList(z0)) -> c18(MARK(isNatList(z0))) A__U62(tt, U61(zeros, x1, x2)) -> c18(A__LENGTH(a__U61(a__zeros, x1, x2)), MARK(U61(zeros, x1, x2))) A__U62(tt, U61(U11(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U11(mark(z0)), x1, x2)), MARK(U61(U11(z0), x1, x2))) A__U62(tt, U61(U21(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U21(mark(z0)), x1, x2)), MARK(U61(U21(z0), x1, x2))) A__U62(tt, U61(U31(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U31(mark(z0)), x1, x2)), MARK(U61(U31(z0), x1, x2))) A__U62(tt, U61(U41(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U41(mark(z0), z1), x1, x2)), MARK(U61(U41(z0, z1), x1, x2))) A__U62(tt, U61(U42(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U42(mark(z0)), x1, x2)), MARK(U61(U42(z0), x1, x2))) A__U62(tt, U61(isNatIList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatIList(z0), x1, x2)), MARK(U61(isNatIList(z0), x1, x2))) A__U62(tt, U61(U51(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U51(mark(z0), z1), x1, x2)), MARK(U61(U51(z0, z1), x1, x2))) A__U62(tt, U61(U52(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U52(mark(z0)), x1, x2)), MARK(U61(U52(z0), x1, x2))) A__U62(tt, U61(isNatList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatList(z0), x1, x2)), MARK(U61(isNatList(z0), x1, x2))) A__U62(tt, U61(U61(z0, z1, z2), x1, x2)) -> c18(A__LENGTH(a__U61(a__U61(mark(z0), z1, z2), x1, x2)), MARK(U61(U61(z0, z1, z2), x1, x2))) A__U62(tt, U61(U62(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U62(mark(z0), z1), x1, x2)), MARK(U61(U62(z0, z1), x1, x2))) A__U62(tt, U61(isNat(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNat(z0), x1, x2)), MARK(U61(isNat(z0), x1, x2))) A__U62(tt, U61(length(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__length(mark(z0)), x1, x2)), MARK(U61(length(z0), x1, x2))) A__U62(tt, U61(cons(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(cons(mark(z0), z1), x1, x2)), MARK(U61(cons(z0, z1), x1, x2))) A__U62(tt, U61(tt, x1, x2)) -> c18(A__LENGTH(a__U61(tt, x1, x2)), MARK(U61(tt, x1, x2))) A__U62(tt, U61(s(z0), x1, x2)) -> c18(A__LENGTH(a__U61(s(mark(z0)), x1, x2)), MARK(U61(s(z0), x1, x2))) A__U62(tt, U61(x0, z1, z2)) -> c18(MARK(U61(x0, z1, z2))) A__U62(tt, U61(0, x1, x2)) -> c18(A__LENGTH(a__U61(0, x1, x2))) A__U62(tt, U61(nil, x1, x2)) -> c18(A__LENGTH(a__U61(nil, x1, x2))) A__U62(tt, U62(zeros, x1)) -> c18(A__LENGTH(a__U62(a__zeros, x1)), MARK(U62(zeros, x1))) A__U62(tt, U62(U11(z0), x1)) -> c18(A__LENGTH(a__U62(a__U11(mark(z0)), x1)), MARK(U62(U11(z0), x1))) A__U62(tt, U62(U21(z0), x1)) -> c18(A__LENGTH(a__U62(a__U21(mark(z0)), x1)), MARK(U62(U21(z0), x1))) A__U62(tt, U62(U31(z0), x1)) -> c18(A__LENGTH(a__U62(a__U31(mark(z0)), x1)), MARK(U62(U31(z0), x1))) A__U62(tt, U62(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U41(mark(z0), z1), x1)), MARK(U62(U41(z0, z1), x1))) A__U62(tt, U62(U42(z0), x1)) -> c18(A__LENGTH(a__U62(a__U42(mark(z0)), x1)), MARK(U62(U42(z0), x1))) A__U62(tt, U62(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatIList(z0), x1)), MARK(U62(isNatIList(z0), x1))) A__U62(tt, U62(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U51(mark(z0), z1), x1)), MARK(U62(U51(z0, z1), x1))) A__U62(tt, U62(U52(z0), x1)) -> c18(A__LENGTH(a__U62(a__U52(mark(z0)), x1)), MARK(U62(U52(z0), x1))) A__U62(tt, U62(isNatList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatList(z0), x1)), MARK(U62(isNatList(z0), x1))) A__U62(tt, U62(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U62(a__U61(mark(z0), z1, z2), x1)), MARK(U62(U61(z0, z1, z2), x1))) A__U62(tt, U62(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U62(mark(z0), z1), x1)), MARK(U62(U62(z0, z1), x1))) A__U62(tt, U62(isNat(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNat(z0), x1)), MARK(U62(isNat(z0), x1))) A__U62(tt, U62(length(z0), x1)) -> c18(A__LENGTH(a__U62(a__length(mark(z0)), x1)), MARK(U62(length(z0), x1))) A__U62(tt, U62(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U62(cons(mark(z0), z1), x1)), MARK(U62(cons(z0, z1), x1))) A__U62(tt, U62(tt, x1)) -> c18(A__LENGTH(a__U62(tt, x1)), MARK(U62(tt, x1))) A__U62(tt, U62(s(z0), x1)) -> c18(A__LENGTH(a__U62(s(mark(z0)), x1)), MARK(U62(s(z0), x1))) A__U62(tt, U62(x0, z1)) -> c18(MARK(U62(x0, z1))) A__U62(tt, U62(0, x1)) -> c18(A__LENGTH(a__U62(0, x1))) A__U62(tt, U62(nil, x1)) -> c18(A__LENGTH(a__U62(nil, x1))) A__U62(tt, isNat(length(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(isNat(length(z0)))) A__U62(tt, isNat(s(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(isNat(s(z0)))) A__U62(tt, isNat(0)) -> c18(MARK(isNat(0))) A__U62(tt, isNat(z0)) -> c18(MARK(isNat(z0))) A__U62(tt, length(zeros)) -> c18(A__LENGTH(a__length(a__zeros)), MARK(length(zeros))) A__U62(tt, length(U11(z0))) -> c18(A__LENGTH(a__length(a__U11(mark(z0)))), MARK(length(U11(z0)))) A__U62(tt, length(U21(z0))) -> c18(A__LENGTH(a__length(a__U21(mark(z0)))), MARK(length(U21(z0)))) A__U62(tt, length(U31(z0))) -> c18(A__LENGTH(a__length(a__U31(mark(z0)))), MARK(length(U31(z0)))) A__U62(tt, length(U41(z0, z1))) -> c18(A__LENGTH(a__length(a__U41(mark(z0), z1))), MARK(length(U41(z0, z1)))) A__U62(tt, length(U42(z0))) -> c18(A__LENGTH(a__length(a__U42(mark(z0)))), MARK(length(U42(z0)))) A__U62(tt, length(isNatIList(z0))) -> c18(A__LENGTH(a__length(a__isNatIList(z0))), MARK(length(isNatIList(z0)))) A__U62(tt, length(U51(z0, z1))) -> c18(A__LENGTH(a__length(a__U51(mark(z0), z1))), MARK(length(U51(z0, z1)))) A__U62(tt, length(U52(z0))) -> c18(A__LENGTH(a__length(a__U52(mark(z0)))), MARK(length(U52(z0)))) A__U62(tt, length(isNatList(z0))) -> c18(A__LENGTH(a__length(a__isNatList(z0))), MARK(length(isNatList(z0)))) A__U62(tt, length(U61(z0, z1, z2))) -> c18(A__LENGTH(a__length(a__U61(mark(z0), z1, z2))), MARK(length(U61(z0, z1, z2)))) A__U62(tt, length(U62(z0, z1))) -> c18(A__LENGTH(a__length(a__U62(mark(z0), z1))), MARK(length(U62(z0, z1)))) A__U62(tt, length(isNat(z0))) -> c18(A__LENGTH(a__length(a__isNat(z0))), MARK(length(isNat(z0)))) A__U62(tt, length(length(z0))) -> c18(A__LENGTH(a__length(a__length(mark(z0)))), MARK(length(length(z0)))) A__U62(tt, length(cons(z0, z1))) -> c18(A__LENGTH(a__length(cons(mark(z0), z1))), MARK(length(cons(z0, z1)))) A__U62(tt, length(s(z0))) -> c18(A__LENGTH(a__length(s(mark(z0)))), MARK(length(s(z0)))) A__U62(tt, length(x0)) -> c18(MARK(length(x0))) A__U62(tt, length(0)) -> c18(A__LENGTH(a__length(0))) A__U62(tt, length(tt)) -> c18(A__LENGTH(a__length(tt))) A__U62(tt, length(nil)) -> c18(A__LENGTH(a__length(nil))) A__U62(tt, zeros) -> c18(A__LENGTH(cons(0, zeros))) A__ISNATILIST(cons(length(nil), x1)) -> c26(A__U41(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATILIST(cons(length(cons(z0, z1)), x1)) -> c26(A__U41(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(length(x0), x1)) -> c26(A__ISNAT(length(x0))) A__ISNATILIST(cons(s(0), x1)) -> c26(A__U41(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATILIST(cons(s(length(z0)), x1)) -> c26(A__U41(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATILIST(cons(s(s(z0)), x1)) -> c26(A__U41(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(s(x0), x1)) -> c26(A__ISNAT(s(x0))) A__ISNATLIST(cons(length(nil), x1)) -> c29(A__U51(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATLIST(cons(length(cons(z0, z1)), x1)) -> c29(A__U51(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(length(x0), x1)) -> c29(A__ISNAT(length(x0))) A__ISNATLIST(cons(s(0), x1)) -> c29(A__U51(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATLIST(cons(s(length(z0)), x1)) -> c29(A__U51(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATLIST(cons(s(s(z0)), x1)) -> c29(A__U51(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(s(x0), x1)) -> c29(A__ISNAT(s(x0))) A__LENGTH(cons(x0, cons(0, x2))) -> c32(A__U61(a__U51(tt, x2), cons(0, x2), x0), A__ISNATLIST(cons(0, x2))) A__LENGTH(cons(x0, cons(length(z0), x2))) -> c32(A__U61(a__U51(a__U11(a__isNatList(z0)), x2), cons(length(z0), x2), x0), A__ISNATLIST(cons(length(z0), x2))) A__LENGTH(cons(x0, cons(s(z0), x2))) -> c32(A__U61(a__U51(a__U21(a__isNat(z0)), x2), cons(s(z0), x2), x0), A__ISNATLIST(cons(s(z0), x2))) A__LENGTH(cons(x0, cons(z0, x2))) -> c32(A__U61(a__U51(isNat(z0), x2), cons(z0, x2), x0), A__ISNATLIST(cons(z0, x2))) A__LENGTH(cons(x0, cons(x1, z1))) -> c32(A__ISNATLIST(cons(x1, z1))) MARK(U41(U11(zeros), x1)) -> c38(A__U41(a__U11(a__zeros), x1), MARK(U11(zeros))) MARK(U41(U11(U11(z0)), x1)) -> c38(A__U41(a__U11(a__U11(mark(z0))), x1), MARK(U11(U11(z0)))) MARK(U41(U11(U21(z0)), x1)) -> c38(A__U41(a__U11(a__U21(mark(z0))), x1), MARK(U11(U21(z0)))) MARK(U41(U11(U31(z0)), x1)) -> c38(A__U41(a__U11(a__U31(mark(z0))), x1), MARK(U11(U31(z0)))) MARK(U41(U11(U41(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U41(mark(z0), z1)), x1), MARK(U11(U41(z0, z1)))) MARK(U41(U11(U42(z0)), x1)) -> c38(A__U41(a__U11(a__U42(mark(z0))), x1), MARK(U11(U42(z0)))) MARK(U41(U11(isNatIList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatIList(z0)), x1), MARK(U11(isNatIList(z0)))) MARK(U41(U11(U51(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U51(mark(z0), z1)), x1), MARK(U11(U51(z0, z1)))) MARK(U41(U11(U52(z0)), x1)) -> c38(A__U41(a__U11(a__U52(mark(z0))), x1), MARK(U11(U52(z0)))) MARK(U41(U11(isNatList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatList(z0)), x1), MARK(U11(isNatList(z0)))) MARK(U41(U11(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U11(a__U61(mark(z0), z1, z2)), x1), MARK(U11(U61(z0, z1, z2)))) MARK(U41(U11(U62(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U62(mark(z0), z1)), x1), MARK(U11(U62(z0, z1)))) MARK(U41(U11(isNat(z0)), x1)) -> c38(A__U41(a__U11(a__isNat(z0)), x1), MARK(U11(isNat(z0)))) MARK(U41(U11(length(z0)), x1)) -> c38(A__U41(a__U11(a__length(mark(z0))), x1), MARK(U11(length(z0)))) MARK(U41(U11(cons(z0, z1)), x1)) -> c38(A__U41(a__U11(cons(mark(z0), z1)), x1), MARK(U11(cons(z0, z1)))) MARK(U41(U11(0), x1)) -> c38(A__U41(a__U11(0), x1), MARK(U11(0))) MARK(U41(U11(tt), x1)) -> c38(A__U41(a__U11(tt), x1), MARK(U11(tt))) MARK(U41(U11(s(z0)), x1)) -> c38(A__U41(a__U11(s(mark(z0))), x1), MARK(U11(s(z0)))) MARK(U41(U11(nil), x1)) -> c38(A__U41(a__U11(nil), x1), MARK(U11(nil))) MARK(U41(U11(x0), x1)) -> c38(MARK(U11(x0))) MARK(U41(U21(zeros), x1)) -> c38(A__U41(a__U21(a__zeros), x1), MARK(U21(zeros))) MARK(U41(U21(U11(z0)), x1)) -> c38(A__U41(a__U21(a__U11(mark(z0))), x1), MARK(U21(U11(z0)))) MARK(U41(U21(U21(z0)), x1)) -> c38(A__U41(a__U21(a__U21(mark(z0))), x1), MARK(U21(U21(z0)))) MARK(U41(U21(U31(z0)), x1)) -> c38(A__U41(a__U21(a__U31(mark(z0))), x1), MARK(U21(U31(z0)))) MARK(U41(U21(U41(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U41(mark(z0), z1)), x1), MARK(U21(U41(z0, z1)))) MARK(U41(U21(U42(z0)), x1)) -> c38(A__U41(a__U21(a__U42(mark(z0))), x1), MARK(U21(U42(z0)))) MARK(U41(U21(isNatIList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatIList(z0)), x1), MARK(U21(isNatIList(z0)))) MARK(U41(U21(U51(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U51(mark(z0), z1)), x1), MARK(U21(U51(z0, z1)))) MARK(U41(U21(U52(z0)), x1)) -> c38(A__U41(a__U21(a__U52(mark(z0))), x1), MARK(U21(U52(z0)))) MARK(U41(U21(isNatList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatList(z0)), x1), MARK(U21(isNatList(z0)))) MARK(U41(U21(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U21(a__U61(mark(z0), z1, z2)), x1), MARK(U21(U61(z0, z1, z2)))) MARK(U41(U21(U62(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U62(mark(z0), z1)), x1), MARK(U21(U62(z0, z1)))) MARK(U41(U21(isNat(z0)), x1)) -> c38(A__U41(a__U21(a__isNat(z0)), x1), MARK(U21(isNat(z0)))) MARK(U41(U21(length(z0)), x1)) -> c38(A__U41(a__U21(a__length(mark(z0))), x1), MARK(U21(length(z0)))) MARK(U41(U21(cons(z0, z1)), x1)) -> c38(A__U41(a__U21(cons(mark(z0), z1)), x1), MARK(U21(cons(z0, z1)))) MARK(U41(U21(0), x1)) -> c38(A__U41(a__U21(0), x1), MARK(U21(0))) MARK(U41(U21(tt), x1)) -> c38(A__U41(a__U21(tt), x1), MARK(U21(tt))) MARK(U41(U21(s(z0)), x1)) -> c38(A__U41(a__U21(s(mark(z0))), x1), MARK(U21(s(z0)))) MARK(U41(U21(nil), x1)) -> c38(A__U41(a__U21(nil), x1), MARK(U21(nil))) MARK(U41(U21(x0), x1)) -> c38(MARK(U21(x0))) MARK(U41(U31(zeros), x1)) -> c38(A__U41(a__U31(a__zeros), x1), MARK(U31(zeros))) MARK(U41(U31(U11(z0)), x1)) -> c38(A__U41(a__U31(a__U11(mark(z0))), x1), MARK(U31(U11(z0)))) MARK(U41(U31(U21(z0)), x1)) -> c38(A__U41(a__U31(a__U21(mark(z0))), x1), MARK(U31(U21(z0)))) MARK(U41(U31(U31(z0)), x1)) -> c38(A__U41(a__U31(a__U31(mark(z0))), x1), MARK(U31(U31(z0)))) MARK(U41(U31(U41(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U41(mark(z0), z1)), x1), MARK(U31(U41(z0, z1)))) MARK(U41(U31(U42(z0)), x1)) -> c38(A__U41(a__U31(a__U42(mark(z0))), x1), MARK(U31(U42(z0)))) MARK(U41(U31(isNatIList(z0)), x1)) -> c38(A__U41(a__U31(a__isNatIList(z0)), x1), MARK(U31(isNatIList(z0)))) MARK(U41(U31(U51(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U51(mark(z0), z1)), x1), MARK(U31(U51(z0, z1)))) MARK(U41(U31(U52(z0)), x1)) -> c38(A__U41(a__U31(a__U52(mark(z0))), x1), MARK(U31(U52(z0)))) MARK(U41(U31(isNatList(z0)), x1)) -> c38(A__U41(a__U31(a__isNatList(z0)), x1), MARK(U31(isNatList(z0)))) MARK(U41(U31(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U31(a__U61(mark(z0), z1, z2)), x1), MARK(U31(U61(z0, z1, z2)))) MARK(U41(U31(U62(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U62(mark(z0), z1)), x1), MARK(U31(U62(z0, z1)))) MARK(U41(U31(isNat(z0)), x1)) -> c38(A__U41(a__U31(a__isNat(z0)), x1), MARK(U31(isNat(z0)))) MARK(U41(U31(length(z0)), x1)) -> c38(A__U41(a__U31(a__length(mark(z0))), x1), MARK(U31(length(z0)))) MARK(U41(U31(cons(z0, z1)), x1)) -> c38(A__U41(a__U31(cons(mark(z0), z1)), x1), MARK(U31(cons(z0, z1)))) MARK(U41(U31(0), x1)) -> c38(A__U41(a__U31(0), x1), MARK(U31(0))) MARK(U41(U31(tt), x1)) -> c38(A__U41(a__U31(tt), x1), MARK(U31(tt))) MARK(U41(U31(s(z0)), x1)) -> c38(A__U41(a__U31(s(mark(z0))), x1), MARK(U31(s(z0)))) MARK(U41(U31(nil), x1)) -> c38(A__U41(a__U31(nil), x1), MARK(U31(nil))) MARK(U41(U31(x0), x1)) -> c38(MARK(U31(x0))) MARK(U41(U41(U11(z0), x1), x2)) -> c38(A__U41(a__U41(a__U11(mark(z0)), x1), x2), MARK(U41(U11(z0), x1))) MARK(U41(U41(U21(z0), x1), x2)) -> c38(A__U41(a__U41(a__U21(mark(z0)), x1), x2), MARK(U41(U21(z0), x1))) MARK(U41(U41(U31(z0), x1), x2)) -> c38(A__U41(a__U41(a__U31(mark(z0)), x1), x2), MARK(U41(U31(z0), x1))) MARK(U41(U41(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U41(mark(z0), z1), x1), x2), MARK(U41(U41(z0, z1), x1))) MARK(U41(U41(U42(z0), x1), x2)) -> c38(A__U41(a__U41(a__U42(mark(z0)), x1), x2), MARK(U41(U42(z0), x1))) MARK(U41(U41(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U51(mark(z0), z1), x1), x2), MARK(U41(U51(z0, z1), x1))) MARK(U41(U41(U52(z0), x1), x2)) -> c38(A__U41(a__U41(a__U52(mark(z0)), x1), x2), MARK(U41(U52(z0), x1))) MARK(U41(U41(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U41(a__U61(mark(z0), z1, z2), x1), x2), MARK(U41(U61(z0, z1, z2), x1))) MARK(U41(U41(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U62(mark(z0), z1), x1), x2), MARK(U41(U62(z0, z1), x1))) MARK(U41(U41(length(z0), x1), x2)) -> c38(A__U41(a__U41(a__length(mark(z0)), x1), x2), MARK(U41(length(z0), x1))) MARK(U41(U41(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U41(cons(mark(z0), z1), x1), x2), MARK(U41(cons(z0, z1), x1))) MARK(U41(U41(s(z0), x1), x2)) -> c38(A__U41(a__U41(s(mark(z0)), x1), x2), MARK(U41(s(z0), x1))) MARK(U41(U41(x0, z1), x2)) -> c38(MARK(U41(x0, z1))) MARK(U41(U41(0, x1), x2)) -> c38(A__U41(a__U41(0, x1), x2)) MARK(U41(U41(nil, x1), x2)) -> c38(A__U41(a__U41(nil, x1), x2)) MARK(U41(U41(zeros, x1), x2)) -> c2(A__U41(a__U41(a__zeros, x1), x2)) MARK(U41(U41(zeros, x1), x2)) -> c2(MARK(U41(zeros, x1))) MARK(U41(U41(isNatIList(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNatIList(z0), x1), x2)) MARK(U41(U41(isNatIList(z0), x1), x2)) -> c2(MARK(U41(isNatIList(z0), x1))) MARK(U41(U41(isNatList(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNatList(z0), x1), x2)) MARK(U41(U41(isNatList(z0), x1), x2)) -> c2(MARK(U41(isNatList(z0), x1))) MARK(U41(U41(isNat(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNat(z0), x1), x2)) MARK(U41(U41(isNat(z0), x1), x2)) -> c2(MARK(U41(isNat(z0), x1))) MARK(U41(U41(tt, x1), x2)) -> c2(A__U41(a__U41(tt, x1), x2)) MARK(U41(U41(tt, x1), x2)) -> c2(MARK(U41(tt, x1))) K tuples:none Defined Rule Symbols: a__zeros, a__U11_1, a__U21_1, a__U31_1, a__U41_2, a__U42_1, a__U51_2, a__U52_1, a__U61_3, a__U62_2, a__isNat_1, a__isNatIList_1, a__isNatList_1, a__length_1, mark_1 Defined Pair Symbols: MARK_1, A__U41_2, A__U51_2, A__ISNAT_1, A__ISNATILIST_1, A__U61_3, A__U62_2, A__ISNATLIST_1, A__LENGTH_1 Compound Symbols: c40_1, c43_1, c46_1, c48_1, c51_1, c8_1, c12_1, c21_1, c22_1, c24_1, c35_1, c36_1, c37_1, c39_1, c42_1, c16_1, c18_2, c18_1, c26_1, c29_1, c32_1, c38_2, c38_1, c_1, c41_2, c41_1, c1_1, c44_2, c44_1, c45_2, c45_1, c47_2, c47_1, c16_2, c26_2, c29_2, c32_2, c2_1 ---------------------------------------- (187) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace MARK(U41(U42(z0), x1)) -> c38(A__U41(a__U42(mark(z0)), x1), MARK(U42(z0))) by MARK(U41(U42(x0), x1)) -> c38(A__U41(U42(mark(x0)), x1), MARK(U42(x0))) MARK(U41(U42(zeros), x1)) -> c38(A__U41(a__U42(a__zeros), x1), MARK(U42(zeros))) MARK(U41(U42(U11(z0)), x1)) -> c38(A__U41(a__U42(a__U11(mark(z0))), x1), MARK(U42(U11(z0)))) MARK(U41(U42(U21(z0)), x1)) -> c38(A__U41(a__U42(a__U21(mark(z0))), x1), MARK(U42(U21(z0)))) MARK(U41(U42(U31(z0)), x1)) -> c38(A__U41(a__U42(a__U31(mark(z0))), x1), MARK(U42(U31(z0)))) MARK(U41(U42(U41(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U41(mark(z0), z1)), x1), MARK(U42(U41(z0, z1)))) MARK(U41(U42(U42(z0)), x1)) -> c38(A__U41(a__U42(a__U42(mark(z0))), x1), MARK(U42(U42(z0)))) MARK(U41(U42(isNatIList(z0)), x1)) -> c38(A__U41(a__U42(a__isNatIList(z0)), x1), MARK(U42(isNatIList(z0)))) MARK(U41(U42(U51(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U51(mark(z0), z1)), x1), MARK(U42(U51(z0, z1)))) MARK(U41(U42(U52(z0)), x1)) -> c38(A__U41(a__U42(a__U52(mark(z0))), x1), MARK(U42(U52(z0)))) MARK(U41(U42(isNatList(z0)), x1)) -> c38(A__U41(a__U42(a__isNatList(z0)), x1), MARK(U42(isNatList(z0)))) MARK(U41(U42(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U42(a__U61(mark(z0), z1, z2)), x1), MARK(U42(U61(z0, z1, z2)))) MARK(U41(U42(U62(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U62(mark(z0), z1)), x1), MARK(U42(U62(z0, z1)))) MARK(U41(U42(isNat(z0)), x1)) -> c38(A__U41(a__U42(a__isNat(z0)), x1), MARK(U42(isNat(z0)))) MARK(U41(U42(length(z0)), x1)) -> c38(A__U41(a__U42(a__length(mark(z0))), x1), MARK(U42(length(z0)))) MARK(U41(U42(cons(z0, z1)), x1)) -> c38(A__U41(a__U42(cons(mark(z0), z1)), x1), MARK(U42(cons(z0, z1)))) MARK(U41(U42(0), x1)) -> c38(A__U41(a__U42(0), x1), MARK(U42(0))) MARK(U41(U42(tt), x1)) -> c38(A__U41(a__U42(tt), x1), MARK(U42(tt))) MARK(U41(U42(s(z0)), x1)) -> c38(A__U41(a__U42(s(mark(z0))), x1), MARK(U42(s(z0)))) MARK(U41(U42(nil), x1)) -> c38(A__U41(a__U42(nil), x1), MARK(U42(nil))) MARK(U41(U42(x0), x1)) -> c38(MARK(U42(x0))) ---------------------------------------- (188) Obligation: Complexity Dependency Tuples Problem Rules: a__zeros -> cons(0, zeros) a__zeros -> zeros a__U11(tt) -> tt a__U11(z0) -> U11(z0) a__U21(tt) -> tt a__U21(z0) -> U21(z0) a__U31(tt) -> tt a__U31(z0) -> U31(z0) a__U41(tt, z0) -> a__U42(a__isNatIList(z0)) a__U41(z0, z1) -> U41(z0, z1) a__U42(tt) -> tt a__U42(z0) -> U42(z0) a__U51(tt, z0) -> a__U52(a__isNatList(z0)) a__U51(z0, z1) -> U51(z0, z1) a__U52(tt) -> tt a__U52(z0) -> U52(z0) a__U61(tt, z0, z1) -> a__U62(a__isNat(z1), z0) a__U61(z0, z1, z2) -> U61(z0, z1, z2) a__U62(tt, z0) -> s(a__length(mark(z0))) a__U62(z0, z1) -> U62(z0, z1) a__isNat(0) -> tt a__isNat(length(z0)) -> a__U11(a__isNatList(z0)) a__isNat(s(z0)) -> a__U21(a__isNat(z0)) a__isNat(z0) -> isNat(z0) a__isNatIList(z0) -> a__U31(a__isNatList(z0)) a__isNatIList(zeros) -> tt a__isNatIList(cons(z0, z1)) -> a__U41(a__isNat(z0), z1) a__isNatIList(z0) -> isNatIList(z0) a__isNatList(nil) -> tt a__isNatList(cons(z0, z1)) -> a__U51(a__isNat(z0), z1) a__isNatList(z0) -> isNatList(z0) a__length(nil) -> 0 a__length(cons(z0, z1)) -> a__U61(a__isNatList(z1), z1, z0) a__length(z0) -> length(z0) mark(zeros) -> a__zeros mark(U11(z0)) -> a__U11(mark(z0)) mark(U21(z0)) -> a__U21(mark(z0)) mark(U31(z0)) -> a__U31(mark(z0)) mark(U41(z0, z1)) -> a__U41(mark(z0), z1) mark(U42(z0)) -> a__U42(mark(z0)) mark(isNatIList(z0)) -> a__isNatIList(z0) mark(U51(z0, z1)) -> a__U51(mark(z0), z1) mark(U52(z0)) -> a__U52(mark(z0)) mark(isNatList(z0)) -> a__isNatList(z0) mark(U61(z0, z1, z2)) -> a__U61(mark(z0), z1, z2) mark(U62(z0, z1)) -> a__U62(mark(z0), z1) mark(isNat(z0)) -> a__isNat(z0) mark(length(z0)) -> a__length(mark(z0)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(0) -> 0 mark(tt) -> tt mark(s(z0)) -> s(mark(z0)) mark(nil) -> nil Tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) A__U62(tt, isNatList(cons(z0, z1))) -> c18(A__LENGTH(a__U51(a__isNat(z0), z1)), MARK(isNatList(cons(z0, z1)))) A__U62(tt, isNatList(nil)) -> c18(MARK(isNatList(nil))) A__U62(tt, isNatList(z0)) -> c18(MARK(isNatList(z0))) A__U62(tt, U61(zeros, x1, x2)) -> c18(A__LENGTH(a__U61(a__zeros, x1, x2)), MARK(U61(zeros, x1, x2))) A__U62(tt, U61(U11(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U11(mark(z0)), x1, x2)), MARK(U61(U11(z0), x1, x2))) A__U62(tt, U61(U21(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U21(mark(z0)), x1, x2)), MARK(U61(U21(z0), x1, x2))) A__U62(tt, U61(U31(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U31(mark(z0)), x1, x2)), MARK(U61(U31(z0), x1, x2))) A__U62(tt, U61(U41(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U41(mark(z0), z1), x1, x2)), MARK(U61(U41(z0, z1), x1, x2))) A__U62(tt, U61(U42(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U42(mark(z0)), x1, x2)), MARK(U61(U42(z0), x1, x2))) A__U62(tt, U61(isNatIList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatIList(z0), x1, x2)), MARK(U61(isNatIList(z0), x1, x2))) A__U62(tt, U61(U51(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U51(mark(z0), z1), x1, x2)), MARK(U61(U51(z0, z1), x1, x2))) A__U62(tt, U61(U52(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U52(mark(z0)), x1, x2)), MARK(U61(U52(z0), x1, x2))) A__U62(tt, U61(isNatList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatList(z0), x1, x2)), MARK(U61(isNatList(z0), x1, x2))) A__U62(tt, U61(U61(z0, z1, z2), x1, x2)) -> c18(A__LENGTH(a__U61(a__U61(mark(z0), z1, z2), x1, x2)), MARK(U61(U61(z0, z1, z2), x1, x2))) A__U62(tt, U61(U62(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U62(mark(z0), z1), x1, x2)), MARK(U61(U62(z0, z1), x1, x2))) A__U62(tt, U61(isNat(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNat(z0), x1, x2)), MARK(U61(isNat(z0), x1, x2))) A__U62(tt, U61(length(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__length(mark(z0)), x1, x2)), MARK(U61(length(z0), x1, x2))) A__U62(tt, U61(cons(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(cons(mark(z0), z1), x1, x2)), MARK(U61(cons(z0, z1), x1, x2))) A__U62(tt, U61(tt, x1, x2)) -> c18(A__LENGTH(a__U61(tt, x1, x2)), MARK(U61(tt, x1, x2))) A__U62(tt, U61(s(z0), x1, x2)) -> c18(A__LENGTH(a__U61(s(mark(z0)), x1, x2)), MARK(U61(s(z0), x1, x2))) A__U62(tt, U61(x0, z1, z2)) -> c18(MARK(U61(x0, z1, z2))) A__U62(tt, U61(0, x1, x2)) -> c18(A__LENGTH(a__U61(0, x1, x2))) A__U62(tt, U61(nil, x1, x2)) -> c18(A__LENGTH(a__U61(nil, x1, x2))) A__U62(tt, U62(zeros, x1)) -> c18(A__LENGTH(a__U62(a__zeros, x1)), MARK(U62(zeros, x1))) A__U62(tt, U62(U11(z0), x1)) -> c18(A__LENGTH(a__U62(a__U11(mark(z0)), x1)), MARK(U62(U11(z0), x1))) A__U62(tt, U62(U21(z0), x1)) -> c18(A__LENGTH(a__U62(a__U21(mark(z0)), x1)), MARK(U62(U21(z0), x1))) A__U62(tt, U62(U31(z0), x1)) -> c18(A__LENGTH(a__U62(a__U31(mark(z0)), x1)), MARK(U62(U31(z0), x1))) A__U62(tt, U62(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U41(mark(z0), z1), x1)), MARK(U62(U41(z0, z1), x1))) A__U62(tt, U62(U42(z0), x1)) -> c18(A__LENGTH(a__U62(a__U42(mark(z0)), x1)), MARK(U62(U42(z0), x1))) A__U62(tt, U62(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatIList(z0), x1)), MARK(U62(isNatIList(z0), x1))) A__U62(tt, U62(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U51(mark(z0), z1), x1)), MARK(U62(U51(z0, z1), x1))) A__U62(tt, U62(U52(z0), x1)) -> c18(A__LENGTH(a__U62(a__U52(mark(z0)), x1)), MARK(U62(U52(z0), x1))) A__U62(tt, U62(isNatList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatList(z0), x1)), MARK(U62(isNatList(z0), x1))) A__U62(tt, U62(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U62(a__U61(mark(z0), z1, z2), x1)), MARK(U62(U61(z0, z1, z2), x1))) A__U62(tt, U62(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U62(mark(z0), z1), x1)), MARK(U62(U62(z0, z1), x1))) A__U62(tt, U62(isNat(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNat(z0), x1)), MARK(U62(isNat(z0), x1))) A__U62(tt, U62(length(z0), x1)) -> c18(A__LENGTH(a__U62(a__length(mark(z0)), x1)), MARK(U62(length(z0), x1))) A__U62(tt, U62(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U62(cons(mark(z0), z1), x1)), MARK(U62(cons(z0, z1), x1))) A__U62(tt, U62(tt, x1)) -> c18(A__LENGTH(a__U62(tt, x1)), MARK(U62(tt, x1))) A__U62(tt, U62(s(z0), x1)) -> c18(A__LENGTH(a__U62(s(mark(z0)), x1)), MARK(U62(s(z0), x1))) A__U62(tt, U62(x0, z1)) -> c18(MARK(U62(x0, z1))) A__U62(tt, U62(0, x1)) -> c18(A__LENGTH(a__U62(0, x1))) A__U62(tt, U62(nil, x1)) -> c18(A__LENGTH(a__U62(nil, x1))) A__U62(tt, isNat(length(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(isNat(length(z0)))) A__U62(tt, isNat(s(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(isNat(s(z0)))) A__U62(tt, isNat(0)) -> c18(MARK(isNat(0))) A__U62(tt, isNat(z0)) -> c18(MARK(isNat(z0))) A__U62(tt, length(zeros)) -> c18(A__LENGTH(a__length(a__zeros)), MARK(length(zeros))) A__U62(tt, length(U11(z0))) -> c18(A__LENGTH(a__length(a__U11(mark(z0)))), MARK(length(U11(z0)))) A__U62(tt, length(U21(z0))) -> c18(A__LENGTH(a__length(a__U21(mark(z0)))), MARK(length(U21(z0)))) A__U62(tt, length(U31(z0))) -> c18(A__LENGTH(a__length(a__U31(mark(z0)))), MARK(length(U31(z0)))) A__U62(tt, length(U41(z0, z1))) -> c18(A__LENGTH(a__length(a__U41(mark(z0), z1))), MARK(length(U41(z0, z1)))) A__U62(tt, length(U42(z0))) -> c18(A__LENGTH(a__length(a__U42(mark(z0)))), MARK(length(U42(z0)))) A__U62(tt, length(isNatIList(z0))) -> c18(A__LENGTH(a__length(a__isNatIList(z0))), MARK(length(isNatIList(z0)))) A__U62(tt, length(U51(z0, z1))) -> c18(A__LENGTH(a__length(a__U51(mark(z0), z1))), MARK(length(U51(z0, z1)))) A__U62(tt, length(U52(z0))) -> c18(A__LENGTH(a__length(a__U52(mark(z0)))), MARK(length(U52(z0)))) A__U62(tt, length(isNatList(z0))) -> c18(A__LENGTH(a__length(a__isNatList(z0))), MARK(length(isNatList(z0)))) A__U62(tt, length(U61(z0, z1, z2))) -> c18(A__LENGTH(a__length(a__U61(mark(z0), z1, z2))), MARK(length(U61(z0, z1, z2)))) A__U62(tt, length(U62(z0, z1))) -> c18(A__LENGTH(a__length(a__U62(mark(z0), z1))), MARK(length(U62(z0, z1)))) A__U62(tt, length(isNat(z0))) -> c18(A__LENGTH(a__length(a__isNat(z0))), MARK(length(isNat(z0)))) A__U62(tt, length(length(z0))) -> c18(A__LENGTH(a__length(a__length(mark(z0)))), MARK(length(length(z0)))) A__U62(tt, length(cons(z0, z1))) -> c18(A__LENGTH(a__length(cons(mark(z0), z1))), MARK(length(cons(z0, z1)))) A__U62(tt, length(s(z0))) -> c18(A__LENGTH(a__length(s(mark(z0)))), MARK(length(s(z0)))) A__U62(tt, length(x0)) -> c18(MARK(length(x0))) A__U62(tt, length(0)) -> c18(A__LENGTH(a__length(0))) A__U62(tt, length(tt)) -> c18(A__LENGTH(a__length(tt))) A__U62(tt, length(nil)) -> c18(A__LENGTH(a__length(nil))) A__U62(tt, zeros) -> c18(A__LENGTH(cons(0, zeros))) A__ISNATILIST(cons(length(nil), x1)) -> c26(A__U41(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATILIST(cons(length(cons(z0, z1)), x1)) -> c26(A__U41(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(length(x0), x1)) -> c26(A__ISNAT(length(x0))) A__ISNATILIST(cons(s(0), x1)) -> c26(A__U41(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATILIST(cons(s(length(z0)), x1)) -> c26(A__U41(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATILIST(cons(s(s(z0)), x1)) -> c26(A__U41(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(s(x0), x1)) -> c26(A__ISNAT(s(x0))) A__ISNATLIST(cons(length(nil), x1)) -> c29(A__U51(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATLIST(cons(length(cons(z0, z1)), x1)) -> c29(A__U51(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(length(x0), x1)) -> c29(A__ISNAT(length(x0))) A__ISNATLIST(cons(s(0), x1)) -> c29(A__U51(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATLIST(cons(s(length(z0)), x1)) -> c29(A__U51(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATLIST(cons(s(s(z0)), x1)) -> c29(A__U51(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(s(x0), x1)) -> c29(A__ISNAT(s(x0))) A__LENGTH(cons(x0, cons(0, x2))) -> c32(A__U61(a__U51(tt, x2), cons(0, x2), x0), A__ISNATLIST(cons(0, x2))) A__LENGTH(cons(x0, cons(length(z0), x2))) -> c32(A__U61(a__U51(a__U11(a__isNatList(z0)), x2), cons(length(z0), x2), x0), A__ISNATLIST(cons(length(z0), x2))) A__LENGTH(cons(x0, cons(s(z0), x2))) -> c32(A__U61(a__U51(a__U21(a__isNat(z0)), x2), cons(s(z0), x2), x0), A__ISNATLIST(cons(s(z0), x2))) A__LENGTH(cons(x0, cons(z0, x2))) -> c32(A__U61(a__U51(isNat(z0), x2), cons(z0, x2), x0), A__ISNATLIST(cons(z0, x2))) A__LENGTH(cons(x0, cons(x1, z1))) -> c32(A__ISNATLIST(cons(x1, z1))) MARK(U41(U11(zeros), x1)) -> c38(A__U41(a__U11(a__zeros), x1), MARK(U11(zeros))) MARK(U41(U11(U11(z0)), x1)) -> c38(A__U41(a__U11(a__U11(mark(z0))), x1), MARK(U11(U11(z0)))) MARK(U41(U11(U21(z0)), x1)) -> c38(A__U41(a__U11(a__U21(mark(z0))), x1), MARK(U11(U21(z0)))) MARK(U41(U11(U31(z0)), x1)) -> c38(A__U41(a__U11(a__U31(mark(z0))), x1), MARK(U11(U31(z0)))) MARK(U41(U11(U41(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U41(mark(z0), z1)), x1), MARK(U11(U41(z0, z1)))) MARK(U41(U11(U42(z0)), x1)) -> c38(A__U41(a__U11(a__U42(mark(z0))), x1), MARK(U11(U42(z0)))) MARK(U41(U11(isNatIList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatIList(z0)), x1), MARK(U11(isNatIList(z0)))) MARK(U41(U11(U51(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U51(mark(z0), z1)), x1), MARK(U11(U51(z0, z1)))) MARK(U41(U11(U52(z0)), x1)) -> c38(A__U41(a__U11(a__U52(mark(z0))), x1), MARK(U11(U52(z0)))) MARK(U41(U11(isNatList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatList(z0)), x1), MARK(U11(isNatList(z0)))) MARK(U41(U11(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U11(a__U61(mark(z0), z1, z2)), x1), MARK(U11(U61(z0, z1, z2)))) MARK(U41(U11(U62(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U62(mark(z0), z1)), x1), MARK(U11(U62(z0, z1)))) MARK(U41(U11(isNat(z0)), x1)) -> c38(A__U41(a__U11(a__isNat(z0)), x1), MARK(U11(isNat(z0)))) MARK(U41(U11(length(z0)), x1)) -> c38(A__U41(a__U11(a__length(mark(z0))), x1), MARK(U11(length(z0)))) MARK(U41(U11(cons(z0, z1)), x1)) -> c38(A__U41(a__U11(cons(mark(z0), z1)), x1), MARK(U11(cons(z0, z1)))) MARK(U41(U11(0), x1)) -> c38(A__U41(a__U11(0), x1), MARK(U11(0))) MARK(U41(U11(tt), x1)) -> c38(A__U41(a__U11(tt), x1), MARK(U11(tt))) MARK(U41(U11(s(z0)), x1)) -> c38(A__U41(a__U11(s(mark(z0))), x1), MARK(U11(s(z0)))) MARK(U41(U11(nil), x1)) -> c38(A__U41(a__U11(nil), x1), MARK(U11(nil))) MARK(U41(U11(x0), x1)) -> c38(MARK(U11(x0))) MARK(U41(U21(zeros), x1)) -> c38(A__U41(a__U21(a__zeros), x1), MARK(U21(zeros))) MARK(U41(U21(U11(z0)), x1)) -> c38(A__U41(a__U21(a__U11(mark(z0))), x1), MARK(U21(U11(z0)))) MARK(U41(U21(U21(z0)), x1)) -> c38(A__U41(a__U21(a__U21(mark(z0))), x1), MARK(U21(U21(z0)))) MARK(U41(U21(U31(z0)), x1)) -> c38(A__U41(a__U21(a__U31(mark(z0))), x1), MARK(U21(U31(z0)))) MARK(U41(U21(U41(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U41(mark(z0), z1)), x1), MARK(U21(U41(z0, z1)))) MARK(U41(U21(U42(z0)), x1)) -> c38(A__U41(a__U21(a__U42(mark(z0))), x1), MARK(U21(U42(z0)))) MARK(U41(U21(isNatIList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatIList(z0)), x1), MARK(U21(isNatIList(z0)))) MARK(U41(U21(U51(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U51(mark(z0), z1)), x1), MARK(U21(U51(z0, z1)))) MARK(U41(U21(U52(z0)), x1)) -> c38(A__U41(a__U21(a__U52(mark(z0))), x1), MARK(U21(U52(z0)))) MARK(U41(U21(isNatList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatList(z0)), x1), MARK(U21(isNatList(z0)))) MARK(U41(U21(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U21(a__U61(mark(z0), z1, z2)), x1), MARK(U21(U61(z0, z1, z2)))) MARK(U41(U21(U62(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U62(mark(z0), z1)), x1), MARK(U21(U62(z0, z1)))) MARK(U41(U21(isNat(z0)), x1)) -> c38(A__U41(a__U21(a__isNat(z0)), x1), MARK(U21(isNat(z0)))) MARK(U41(U21(length(z0)), x1)) -> c38(A__U41(a__U21(a__length(mark(z0))), x1), MARK(U21(length(z0)))) MARK(U41(U21(cons(z0, z1)), x1)) -> c38(A__U41(a__U21(cons(mark(z0), z1)), x1), MARK(U21(cons(z0, z1)))) MARK(U41(U21(0), x1)) -> c38(A__U41(a__U21(0), x1), MARK(U21(0))) MARK(U41(U21(tt), x1)) -> c38(A__U41(a__U21(tt), x1), MARK(U21(tt))) MARK(U41(U21(s(z0)), x1)) -> c38(A__U41(a__U21(s(mark(z0))), x1), MARK(U21(s(z0)))) MARK(U41(U21(nil), x1)) -> c38(A__U41(a__U21(nil), x1), MARK(U21(nil))) MARK(U41(U21(x0), x1)) -> c38(MARK(U21(x0))) MARK(U41(U31(zeros), x1)) -> c38(A__U41(a__U31(a__zeros), x1), MARK(U31(zeros))) MARK(U41(U31(U11(z0)), x1)) -> c38(A__U41(a__U31(a__U11(mark(z0))), x1), MARK(U31(U11(z0)))) MARK(U41(U31(U21(z0)), x1)) -> c38(A__U41(a__U31(a__U21(mark(z0))), x1), MARK(U31(U21(z0)))) MARK(U41(U31(U31(z0)), x1)) -> c38(A__U41(a__U31(a__U31(mark(z0))), x1), MARK(U31(U31(z0)))) MARK(U41(U31(U41(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U41(mark(z0), z1)), x1), MARK(U31(U41(z0, z1)))) MARK(U41(U31(U42(z0)), x1)) -> c38(A__U41(a__U31(a__U42(mark(z0))), x1), MARK(U31(U42(z0)))) MARK(U41(U31(isNatIList(z0)), x1)) -> c38(A__U41(a__U31(a__isNatIList(z0)), x1), MARK(U31(isNatIList(z0)))) MARK(U41(U31(U51(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U51(mark(z0), z1)), x1), MARK(U31(U51(z0, z1)))) MARK(U41(U31(U52(z0)), x1)) -> c38(A__U41(a__U31(a__U52(mark(z0))), x1), MARK(U31(U52(z0)))) MARK(U41(U31(isNatList(z0)), x1)) -> c38(A__U41(a__U31(a__isNatList(z0)), x1), MARK(U31(isNatList(z0)))) MARK(U41(U31(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U31(a__U61(mark(z0), z1, z2)), x1), MARK(U31(U61(z0, z1, z2)))) MARK(U41(U31(U62(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U62(mark(z0), z1)), x1), MARK(U31(U62(z0, z1)))) MARK(U41(U31(isNat(z0)), x1)) -> c38(A__U41(a__U31(a__isNat(z0)), x1), MARK(U31(isNat(z0)))) MARK(U41(U31(length(z0)), x1)) -> c38(A__U41(a__U31(a__length(mark(z0))), x1), MARK(U31(length(z0)))) MARK(U41(U31(cons(z0, z1)), x1)) -> c38(A__U41(a__U31(cons(mark(z0), z1)), x1), MARK(U31(cons(z0, z1)))) MARK(U41(U31(0), x1)) -> c38(A__U41(a__U31(0), x1), MARK(U31(0))) MARK(U41(U31(tt), x1)) -> c38(A__U41(a__U31(tt), x1), MARK(U31(tt))) MARK(U41(U31(s(z0)), x1)) -> c38(A__U41(a__U31(s(mark(z0))), x1), MARK(U31(s(z0)))) MARK(U41(U31(nil), x1)) -> c38(A__U41(a__U31(nil), x1), MARK(U31(nil))) MARK(U41(U31(x0), x1)) -> c38(MARK(U31(x0))) MARK(U41(U41(U11(z0), x1), x2)) -> c38(A__U41(a__U41(a__U11(mark(z0)), x1), x2), MARK(U41(U11(z0), x1))) MARK(U41(U41(U21(z0), x1), x2)) -> c38(A__U41(a__U41(a__U21(mark(z0)), x1), x2), MARK(U41(U21(z0), x1))) MARK(U41(U41(U31(z0), x1), x2)) -> c38(A__U41(a__U41(a__U31(mark(z0)), x1), x2), MARK(U41(U31(z0), x1))) MARK(U41(U41(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U41(mark(z0), z1), x1), x2), MARK(U41(U41(z0, z1), x1))) MARK(U41(U41(U42(z0), x1), x2)) -> c38(A__U41(a__U41(a__U42(mark(z0)), x1), x2), MARK(U41(U42(z0), x1))) MARK(U41(U41(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U51(mark(z0), z1), x1), x2), MARK(U41(U51(z0, z1), x1))) MARK(U41(U41(U52(z0), x1), x2)) -> c38(A__U41(a__U41(a__U52(mark(z0)), x1), x2), MARK(U41(U52(z0), x1))) MARK(U41(U41(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U41(a__U61(mark(z0), z1, z2), x1), x2), MARK(U41(U61(z0, z1, z2), x1))) MARK(U41(U41(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U62(mark(z0), z1), x1), x2), MARK(U41(U62(z0, z1), x1))) MARK(U41(U41(length(z0), x1), x2)) -> c38(A__U41(a__U41(a__length(mark(z0)), x1), x2), MARK(U41(length(z0), x1))) MARK(U41(U41(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U41(cons(mark(z0), z1), x1), x2), MARK(U41(cons(z0, z1), x1))) MARK(U41(U41(s(z0), x1), x2)) -> c38(A__U41(a__U41(s(mark(z0)), x1), x2), MARK(U41(s(z0), x1))) MARK(U41(U41(x0, z1), x2)) -> c38(MARK(U41(x0, z1))) MARK(U41(U41(0, x1), x2)) -> c38(A__U41(a__U41(0, x1), x2)) MARK(U41(U41(nil, x1), x2)) -> c38(A__U41(a__U41(nil, x1), x2)) MARK(U41(U41(zeros, x1), x2)) -> c2(A__U41(a__U41(a__zeros, x1), x2)) MARK(U41(U41(zeros, x1), x2)) -> c2(MARK(U41(zeros, x1))) MARK(U41(U41(isNatIList(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNatIList(z0), x1), x2)) MARK(U41(U41(isNatIList(z0), x1), x2)) -> c2(MARK(U41(isNatIList(z0), x1))) MARK(U41(U41(isNatList(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNatList(z0), x1), x2)) MARK(U41(U41(isNatList(z0), x1), x2)) -> c2(MARK(U41(isNatList(z0), x1))) MARK(U41(U41(isNat(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNat(z0), x1), x2)) MARK(U41(U41(isNat(z0), x1), x2)) -> c2(MARK(U41(isNat(z0), x1))) MARK(U41(U41(tt, x1), x2)) -> c2(A__U41(a__U41(tt, x1), x2)) MARK(U41(U41(tt, x1), x2)) -> c2(MARK(U41(tt, x1))) MARK(U41(U42(x0), x1)) -> c38(A__U41(U42(mark(x0)), x1), MARK(U42(x0))) MARK(U41(U42(zeros), x1)) -> c38(A__U41(a__U42(a__zeros), x1), MARK(U42(zeros))) MARK(U41(U42(U11(z0)), x1)) -> c38(A__U41(a__U42(a__U11(mark(z0))), x1), MARK(U42(U11(z0)))) MARK(U41(U42(U21(z0)), x1)) -> c38(A__U41(a__U42(a__U21(mark(z0))), x1), MARK(U42(U21(z0)))) MARK(U41(U42(U31(z0)), x1)) -> c38(A__U41(a__U42(a__U31(mark(z0))), x1), MARK(U42(U31(z0)))) MARK(U41(U42(U41(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U41(mark(z0), z1)), x1), MARK(U42(U41(z0, z1)))) MARK(U41(U42(U42(z0)), x1)) -> c38(A__U41(a__U42(a__U42(mark(z0))), x1), MARK(U42(U42(z0)))) MARK(U41(U42(isNatIList(z0)), x1)) -> c38(A__U41(a__U42(a__isNatIList(z0)), x1), MARK(U42(isNatIList(z0)))) MARK(U41(U42(U51(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U51(mark(z0), z1)), x1), MARK(U42(U51(z0, z1)))) MARK(U41(U42(U52(z0)), x1)) -> c38(A__U41(a__U42(a__U52(mark(z0))), x1), MARK(U42(U52(z0)))) MARK(U41(U42(isNatList(z0)), x1)) -> c38(A__U41(a__U42(a__isNatList(z0)), x1), MARK(U42(isNatList(z0)))) MARK(U41(U42(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U42(a__U61(mark(z0), z1, z2)), x1), MARK(U42(U61(z0, z1, z2)))) MARK(U41(U42(U62(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U62(mark(z0), z1)), x1), MARK(U42(U62(z0, z1)))) MARK(U41(U42(isNat(z0)), x1)) -> c38(A__U41(a__U42(a__isNat(z0)), x1), MARK(U42(isNat(z0)))) MARK(U41(U42(length(z0)), x1)) -> c38(A__U41(a__U42(a__length(mark(z0))), x1), MARK(U42(length(z0)))) MARK(U41(U42(cons(z0, z1)), x1)) -> c38(A__U41(a__U42(cons(mark(z0), z1)), x1), MARK(U42(cons(z0, z1)))) MARK(U41(U42(0), x1)) -> c38(A__U41(a__U42(0), x1), MARK(U42(0))) MARK(U41(U42(tt), x1)) -> c38(A__U41(a__U42(tt), x1), MARK(U42(tt))) MARK(U41(U42(s(z0)), x1)) -> c38(A__U41(a__U42(s(mark(z0))), x1), MARK(U42(s(z0)))) MARK(U41(U42(nil), x1)) -> c38(A__U41(a__U42(nil), x1), MARK(U42(nil))) MARK(U41(U42(x0), x1)) -> c38(MARK(U42(x0))) S tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) A__U62(tt, isNatList(cons(z0, z1))) -> c18(A__LENGTH(a__U51(a__isNat(z0), z1)), MARK(isNatList(cons(z0, z1)))) A__U62(tt, isNatList(nil)) -> c18(MARK(isNatList(nil))) A__U62(tt, isNatList(z0)) -> c18(MARK(isNatList(z0))) A__U62(tt, U61(zeros, x1, x2)) -> c18(A__LENGTH(a__U61(a__zeros, x1, x2)), MARK(U61(zeros, x1, x2))) A__U62(tt, U61(U11(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U11(mark(z0)), x1, x2)), MARK(U61(U11(z0), x1, x2))) A__U62(tt, U61(U21(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U21(mark(z0)), x1, x2)), MARK(U61(U21(z0), x1, x2))) A__U62(tt, U61(U31(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U31(mark(z0)), x1, x2)), MARK(U61(U31(z0), x1, x2))) A__U62(tt, U61(U41(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U41(mark(z0), z1), x1, x2)), MARK(U61(U41(z0, z1), x1, x2))) A__U62(tt, U61(U42(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U42(mark(z0)), x1, x2)), MARK(U61(U42(z0), x1, x2))) A__U62(tt, U61(isNatIList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatIList(z0), x1, x2)), MARK(U61(isNatIList(z0), x1, x2))) A__U62(tt, U61(U51(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U51(mark(z0), z1), x1, x2)), MARK(U61(U51(z0, z1), x1, x2))) A__U62(tt, U61(U52(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U52(mark(z0)), x1, x2)), MARK(U61(U52(z0), x1, x2))) A__U62(tt, U61(isNatList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatList(z0), x1, x2)), MARK(U61(isNatList(z0), x1, x2))) A__U62(tt, U61(U61(z0, z1, z2), x1, x2)) -> c18(A__LENGTH(a__U61(a__U61(mark(z0), z1, z2), x1, x2)), MARK(U61(U61(z0, z1, z2), x1, x2))) A__U62(tt, U61(U62(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U62(mark(z0), z1), x1, x2)), MARK(U61(U62(z0, z1), x1, x2))) A__U62(tt, U61(isNat(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNat(z0), x1, x2)), MARK(U61(isNat(z0), x1, x2))) A__U62(tt, U61(length(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__length(mark(z0)), x1, x2)), MARK(U61(length(z0), x1, x2))) A__U62(tt, U61(cons(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(cons(mark(z0), z1), x1, x2)), MARK(U61(cons(z0, z1), x1, x2))) A__U62(tt, U61(tt, x1, x2)) -> c18(A__LENGTH(a__U61(tt, x1, x2)), MARK(U61(tt, x1, x2))) A__U62(tt, U61(s(z0), x1, x2)) -> c18(A__LENGTH(a__U61(s(mark(z0)), x1, x2)), MARK(U61(s(z0), x1, x2))) A__U62(tt, U61(x0, z1, z2)) -> c18(MARK(U61(x0, z1, z2))) A__U62(tt, U61(0, x1, x2)) -> c18(A__LENGTH(a__U61(0, x1, x2))) A__U62(tt, U61(nil, x1, x2)) -> c18(A__LENGTH(a__U61(nil, x1, x2))) A__U62(tt, U62(zeros, x1)) -> c18(A__LENGTH(a__U62(a__zeros, x1)), MARK(U62(zeros, x1))) A__U62(tt, U62(U11(z0), x1)) -> c18(A__LENGTH(a__U62(a__U11(mark(z0)), x1)), MARK(U62(U11(z0), x1))) A__U62(tt, U62(U21(z0), x1)) -> c18(A__LENGTH(a__U62(a__U21(mark(z0)), x1)), MARK(U62(U21(z0), x1))) A__U62(tt, U62(U31(z0), x1)) -> c18(A__LENGTH(a__U62(a__U31(mark(z0)), x1)), MARK(U62(U31(z0), x1))) A__U62(tt, U62(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U41(mark(z0), z1), x1)), MARK(U62(U41(z0, z1), x1))) A__U62(tt, U62(U42(z0), x1)) -> c18(A__LENGTH(a__U62(a__U42(mark(z0)), x1)), MARK(U62(U42(z0), x1))) A__U62(tt, U62(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatIList(z0), x1)), MARK(U62(isNatIList(z0), x1))) A__U62(tt, U62(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U51(mark(z0), z1), x1)), MARK(U62(U51(z0, z1), x1))) A__U62(tt, U62(U52(z0), x1)) -> c18(A__LENGTH(a__U62(a__U52(mark(z0)), x1)), MARK(U62(U52(z0), x1))) A__U62(tt, U62(isNatList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatList(z0), x1)), MARK(U62(isNatList(z0), x1))) A__U62(tt, U62(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U62(a__U61(mark(z0), z1, z2), x1)), MARK(U62(U61(z0, z1, z2), x1))) A__U62(tt, U62(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U62(mark(z0), z1), x1)), MARK(U62(U62(z0, z1), x1))) A__U62(tt, U62(isNat(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNat(z0), x1)), MARK(U62(isNat(z0), x1))) A__U62(tt, U62(length(z0), x1)) -> c18(A__LENGTH(a__U62(a__length(mark(z0)), x1)), MARK(U62(length(z0), x1))) A__U62(tt, U62(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U62(cons(mark(z0), z1), x1)), MARK(U62(cons(z0, z1), x1))) A__U62(tt, U62(tt, x1)) -> c18(A__LENGTH(a__U62(tt, x1)), MARK(U62(tt, x1))) A__U62(tt, U62(s(z0), x1)) -> c18(A__LENGTH(a__U62(s(mark(z0)), x1)), MARK(U62(s(z0), x1))) A__U62(tt, U62(x0, z1)) -> c18(MARK(U62(x0, z1))) A__U62(tt, U62(0, x1)) -> c18(A__LENGTH(a__U62(0, x1))) A__U62(tt, U62(nil, x1)) -> c18(A__LENGTH(a__U62(nil, x1))) A__U62(tt, isNat(length(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(isNat(length(z0)))) A__U62(tt, isNat(s(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(isNat(s(z0)))) A__U62(tt, isNat(0)) -> c18(MARK(isNat(0))) A__U62(tt, isNat(z0)) -> c18(MARK(isNat(z0))) A__U62(tt, length(zeros)) -> c18(A__LENGTH(a__length(a__zeros)), MARK(length(zeros))) A__U62(tt, length(U11(z0))) -> c18(A__LENGTH(a__length(a__U11(mark(z0)))), MARK(length(U11(z0)))) A__U62(tt, length(U21(z0))) -> c18(A__LENGTH(a__length(a__U21(mark(z0)))), MARK(length(U21(z0)))) A__U62(tt, length(U31(z0))) -> c18(A__LENGTH(a__length(a__U31(mark(z0)))), MARK(length(U31(z0)))) A__U62(tt, length(U41(z0, z1))) -> c18(A__LENGTH(a__length(a__U41(mark(z0), z1))), MARK(length(U41(z0, z1)))) A__U62(tt, length(U42(z0))) -> c18(A__LENGTH(a__length(a__U42(mark(z0)))), MARK(length(U42(z0)))) A__U62(tt, length(isNatIList(z0))) -> c18(A__LENGTH(a__length(a__isNatIList(z0))), MARK(length(isNatIList(z0)))) A__U62(tt, length(U51(z0, z1))) -> c18(A__LENGTH(a__length(a__U51(mark(z0), z1))), MARK(length(U51(z0, z1)))) A__U62(tt, length(U52(z0))) -> c18(A__LENGTH(a__length(a__U52(mark(z0)))), MARK(length(U52(z0)))) A__U62(tt, length(isNatList(z0))) -> c18(A__LENGTH(a__length(a__isNatList(z0))), MARK(length(isNatList(z0)))) A__U62(tt, length(U61(z0, z1, z2))) -> c18(A__LENGTH(a__length(a__U61(mark(z0), z1, z2))), MARK(length(U61(z0, z1, z2)))) A__U62(tt, length(U62(z0, z1))) -> c18(A__LENGTH(a__length(a__U62(mark(z0), z1))), MARK(length(U62(z0, z1)))) A__U62(tt, length(isNat(z0))) -> c18(A__LENGTH(a__length(a__isNat(z0))), MARK(length(isNat(z0)))) A__U62(tt, length(length(z0))) -> c18(A__LENGTH(a__length(a__length(mark(z0)))), MARK(length(length(z0)))) A__U62(tt, length(cons(z0, z1))) -> c18(A__LENGTH(a__length(cons(mark(z0), z1))), MARK(length(cons(z0, z1)))) A__U62(tt, length(s(z0))) -> c18(A__LENGTH(a__length(s(mark(z0)))), MARK(length(s(z0)))) A__U62(tt, length(x0)) -> c18(MARK(length(x0))) A__U62(tt, length(0)) -> c18(A__LENGTH(a__length(0))) A__U62(tt, length(tt)) -> c18(A__LENGTH(a__length(tt))) A__U62(tt, length(nil)) -> c18(A__LENGTH(a__length(nil))) A__U62(tt, zeros) -> c18(A__LENGTH(cons(0, zeros))) A__ISNATILIST(cons(length(nil), x1)) -> c26(A__U41(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATILIST(cons(length(cons(z0, z1)), x1)) -> c26(A__U41(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(length(x0), x1)) -> c26(A__ISNAT(length(x0))) A__ISNATILIST(cons(s(0), x1)) -> c26(A__U41(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATILIST(cons(s(length(z0)), x1)) -> c26(A__U41(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATILIST(cons(s(s(z0)), x1)) -> c26(A__U41(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(s(x0), x1)) -> c26(A__ISNAT(s(x0))) A__ISNATLIST(cons(length(nil), x1)) -> c29(A__U51(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATLIST(cons(length(cons(z0, z1)), x1)) -> c29(A__U51(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(length(x0), x1)) -> c29(A__ISNAT(length(x0))) A__ISNATLIST(cons(s(0), x1)) -> c29(A__U51(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATLIST(cons(s(length(z0)), x1)) -> c29(A__U51(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATLIST(cons(s(s(z0)), x1)) -> c29(A__U51(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(s(x0), x1)) -> c29(A__ISNAT(s(x0))) A__LENGTH(cons(x0, cons(0, x2))) -> c32(A__U61(a__U51(tt, x2), cons(0, x2), x0), A__ISNATLIST(cons(0, x2))) A__LENGTH(cons(x0, cons(length(z0), x2))) -> c32(A__U61(a__U51(a__U11(a__isNatList(z0)), x2), cons(length(z0), x2), x0), A__ISNATLIST(cons(length(z0), x2))) A__LENGTH(cons(x0, cons(s(z0), x2))) -> c32(A__U61(a__U51(a__U21(a__isNat(z0)), x2), cons(s(z0), x2), x0), A__ISNATLIST(cons(s(z0), x2))) A__LENGTH(cons(x0, cons(z0, x2))) -> c32(A__U61(a__U51(isNat(z0), x2), cons(z0, x2), x0), A__ISNATLIST(cons(z0, x2))) A__LENGTH(cons(x0, cons(x1, z1))) -> c32(A__ISNATLIST(cons(x1, z1))) MARK(U41(U11(zeros), x1)) -> c38(A__U41(a__U11(a__zeros), x1), MARK(U11(zeros))) MARK(U41(U11(U11(z0)), x1)) -> c38(A__U41(a__U11(a__U11(mark(z0))), x1), MARK(U11(U11(z0)))) MARK(U41(U11(U21(z0)), x1)) -> c38(A__U41(a__U11(a__U21(mark(z0))), x1), MARK(U11(U21(z0)))) MARK(U41(U11(U31(z0)), x1)) -> c38(A__U41(a__U11(a__U31(mark(z0))), x1), MARK(U11(U31(z0)))) MARK(U41(U11(U41(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U41(mark(z0), z1)), x1), MARK(U11(U41(z0, z1)))) MARK(U41(U11(U42(z0)), x1)) -> c38(A__U41(a__U11(a__U42(mark(z0))), x1), MARK(U11(U42(z0)))) MARK(U41(U11(isNatIList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatIList(z0)), x1), MARK(U11(isNatIList(z0)))) MARK(U41(U11(U51(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U51(mark(z0), z1)), x1), MARK(U11(U51(z0, z1)))) MARK(U41(U11(U52(z0)), x1)) -> c38(A__U41(a__U11(a__U52(mark(z0))), x1), MARK(U11(U52(z0)))) MARK(U41(U11(isNatList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatList(z0)), x1), MARK(U11(isNatList(z0)))) MARK(U41(U11(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U11(a__U61(mark(z0), z1, z2)), x1), MARK(U11(U61(z0, z1, z2)))) MARK(U41(U11(U62(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U62(mark(z0), z1)), x1), MARK(U11(U62(z0, z1)))) MARK(U41(U11(isNat(z0)), x1)) -> c38(A__U41(a__U11(a__isNat(z0)), x1), MARK(U11(isNat(z0)))) MARK(U41(U11(length(z0)), x1)) -> c38(A__U41(a__U11(a__length(mark(z0))), x1), MARK(U11(length(z0)))) MARK(U41(U11(cons(z0, z1)), x1)) -> c38(A__U41(a__U11(cons(mark(z0), z1)), x1), MARK(U11(cons(z0, z1)))) MARK(U41(U11(0), x1)) -> c38(A__U41(a__U11(0), x1), MARK(U11(0))) MARK(U41(U11(tt), x1)) -> c38(A__U41(a__U11(tt), x1), MARK(U11(tt))) MARK(U41(U11(s(z0)), x1)) -> c38(A__U41(a__U11(s(mark(z0))), x1), MARK(U11(s(z0)))) MARK(U41(U11(nil), x1)) -> c38(A__U41(a__U11(nil), x1), MARK(U11(nil))) MARK(U41(U11(x0), x1)) -> c38(MARK(U11(x0))) MARK(U41(U21(zeros), x1)) -> c38(A__U41(a__U21(a__zeros), x1), MARK(U21(zeros))) MARK(U41(U21(U11(z0)), x1)) -> c38(A__U41(a__U21(a__U11(mark(z0))), x1), MARK(U21(U11(z0)))) MARK(U41(U21(U21(z0)), x1)) -> c38(A__U41(a__U21(a__U21(mark(z0))), x1), MARK(U21(U21(z0)))) MARK(U41(U21(U31(z0)), x1)) -> c38(A__U41(a__U21(a__U31(mark(z0))), x1), MARK(U21(U31(z0)))) MARK(U41(U21(U41(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U41(mark(z0), z1)), x1), MARK(U21(U41(z0, z1)))) MARK(U41(U21(U42(z0)), x1)) -> c38(A__U41(a__U21(a__U42(mark(z0))), x1), MARK(U21(U42(z0)))) MARK(U41(U21(isNatIList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatIList(z0)), x1), MARK(U21(isNatIList(z0)))) MARK(U41(U21(U51(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U51(mark(z0), z1)), x1), MARK(U21(U51(z0, z1)))) MARK(U41(U21(U52(z0)), x1)) -> c38(A__U41(a__U21(a__U52(mark(z0))), x1), MARK(U21(U52(z0)))) MARK(U41(U21(isNatList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatList(z0)), x1), MARK(U21(isNatList(z0)))) MARK(U41(U21(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U21(a__U61(mark(z0), z1, z2)), x1), MARK(U21(U61(z0, z1, z2)))) MARK(U41(U21(U62(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U62(mark(z0), z1)), x1), MARK(U21(U62(z0, z1)))) MARK(U41(U21(isNat(z0)), x1)) -> c38(A__U41(a__U21(a__isNat(z0)), x1), MARK(U21(isNat(z0)))) MARK(U41(U21(length(z0)), x1)) -> c38(A__U41(a__U21(a__length(mark(z0))), x1), MARK(U21(length(z0)))) MARK(U41(U21(cons(z0, z1)), x1)) -> c38(A__U41(a__U21(cons(mark(z0), z1)), x1), MARK(U21(cons(z0, z1)))) MARK(U41(U21(0), x1)) -> c38(A__U41(a__U21(0), x1), MARK(U21(0))) MARK(U41(U21(tt), x1)) -> c38(A__U41(a__U21(tt), x1), MARK(U21(tt))) MARK(U41(U21(s(z0)), x1)) -> c38(A__U41(a__U21(s(mark(z0))), x1), MARK(U21(s(z0)))) MARK(U41(U21(nil), x1)) -> c38(A__U41(a__U21(nil), x1), MARK(U21(nil))) MARK(U41(U21(x0), x1)) -> c38(MARK(U21(x0))) MARK(U41(U31(zeros), x1)) -> c38(A__U41(a__U31(a__zeros), x1), MARK(U31(zeros))) MARK(U41(U31(U11(z0)), x1)) -> c38(A__U41(a__U31(a__U11(mark(z0))), x1), MARK(U31(U11(z0)))) MARK(U41(U31(U21(z0)), x1)) -> c38(A__U41(a__U31(a__U21(mark(z0))), x1), MARK(U31(U21(z0)))) MARK(U41(U31(U31(z0)), x1)) -> c38(A__U41(a__U31(a__U31(mark(z0))), x1), MARK(U31(U31(z0)))) MARK(U41(U31(U41(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U41(mark(z0), z1)), x1), MARK(U31(U41(z0, z1)))) MARK(U41(U31(U42(z0)), x1)) -> c38(A__U41(a__U31(a__U42(mark(z0))), x1), MARK(U31(U42(z0)))) MARK(U41(U31(isNatIList(z0)), x1)) -> c38(A__U41(a__U31(a__isNatIList(z0)), x1), MARK(U31(isNatIList(z0)))) MARK(U41(U31(U51(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U51(mark(z0), z1)), x1), MARK(U31(U51(z0, z1)))) MARK(U41(U31(U52(z0)), x1)) -> c38(A__U41(a__U31(a__U52(mark(z0))), x1), MARK(U31(U52(z0)))) MARK(U41(U31(isNatList(z0)), x1)) -> c38(A__U41(a__U31(a__isNatList(z0)), x1), MARK(U31(isNatList(z0)))) MARK(U41(U31(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U31(a__U61(mark(z0), z1, z2)), x1), MARK(U31(U61(z0, z1, z2)))) MARK(U41(U31(U62(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U62(mark(z0), z1)), x1), MARK(U31(U62(z0, z1)))) MARK(U41(U31(isNat(z0)), x1)) -> c38(A__U41(a__U31(a__isNat(z0)), x1), MARK(U31(isNat(z0)))) MARK(U41(U31(length(z0)), x1)) -> c38(A__U41(a__U31(a__length(mark(z0))), x1), MARK(U31(length(z0)))) MARK(U41(U31(cons(z0, z1)), x1)) -> c38(A__U41(a__U31(cons(mark(z0), z1)), x1), MARK(U31(cons(z0, z1)))) MARK(U41(U31(0), x1)) -> c38(A__U41(a__U31(0), x1), MARK(U31(0))) MARK(U41(U31(tt), x1)) -> c38(A__U41(a__U31(tt), x1), MARK(U31(tt))) MARK(U41(U31(s(z0)), x1)) -> c38(A__U41(a__U31(s(mark(z0))), x1), MARK(U31(s(z0)))) MARK(U41(U31(nil), x1)) -> c38(A__U41(a__U31(nil), x1), MARK(U31(nil))) MARK(U41(U31(x0), x1)) -> c38(MARK(U31(x0))) MARK(U41(U41(U11(z0), x1), x2)) -> c38(A__U41(a__U41(a__U11(mark(z0)), x1), x2), MARK(U41(U11(z0), x1))) MARK(U41(U41(U21(z0), x1), x2)) -> c38(A__U41(a__U41(a__U21(mark(z0)), x1), x2), MARK(U41(U21(z0), x1))) MARK(U41(U41(U31(z0), x1), x2)) -> c38(A__U41(a__U41(a__U31(mark(z0)), x1), x2), MARK(U41(U31(z0), x1))) MARK(U41(U41(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U41(mark(z0), z1), x1), x2), MARK(U41(U41(z0, z1), x1))) MARK(U41(U41(U42(z0), x1), x2)) -> c38(A__U41(a__U41(a__U42(mark(z0)), x1), x2), MARK(U41(U42(z0), x1))) MARK(U41(U41(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U51(mark(z0), z1), x1), x2), MARK(U41(U51(z0, z1), x1))) MARK(U41(U41(U52(z0), x1), x2)) -> c38(A__U41(a__U41(a__U52(mark(z0)), x1), x2), MARK(U41(U52(z0), x1))) MARK(U41(U41(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U41(a__U61(mark(z0), z1, z2), x1), x2), MARK(U41(U61(z0, z1, z2), x1))) MARK(U41(U41(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U62(mark(z0), z1), x1), x2), MARK(U41(U62(z0, z1), x1))) MARK(U41(U41(length(z0), x1), x2)) -> c38(A__U41(a__U41(a__length(mark(z0)), x1), x2), MARK(U41(length(z0), x1))) MARK(U41(U41(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U41(cons(mark(z0), z1), x1), x2), MARK(U41(cons(z0, z1), x1))) MARK(U41(U41(s(z0), x1), x2)) -> c38(A__U41(a__U41(s(mark(z0)), x1), x2), MARK(U41(s(z0), x1))) MARK(U41(U41(x0, z1), x2)) -> c38(MARK(U41(x0, z1))) MARK(U41(U41(0, x1), x2)) -> c38(A__U41(a__U41(0, x1), x2)) MARK(U41(U41(nil, x1), x2)) -> c38(A__U41(a__U41(nil, x1), x2)) MARK(U41(U41(zeros, x1), x2)) -> c2(A__U41(a__U41(a__zeros, x1), x2)) MARK(U41(U41(zeros, x1), x2)) -> c2(MARK(U41(zeros, x1))) MARK(U41(U41(isNatIList(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNatIList(z0), x1), x2)) MARK(U41(U41(isNatIList(z0), x1), x2)) -> c2(MARK(U41(isNatIList(z0), x1))) MARK(U41(U41(isNatList(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNatList(z0), x1), x2)) MARK(U41(U41(isNatList(z0), x1), x2)) -> c2(MARK(U41(isNatList(z0), x1))) MARK(U41(U41(isNat(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNat(z0), x1), x2)) MARK(U41(U41(isNat(z0), x1), x2)) -> c2(MARK(U41(isNat(z0), x1))) MARK(U41(U41(tt, x1), x2)) -> c2(A__U41(a__U41(tt, x1), x2)) MARK(U41(U41(tt, x1), x2)) -> c2(MARK(U41(tt, x1))) MARK(U41(U42(x0), x1)) -> c38(A__U41(U42(mark(x0)), x1), MARK(U42(x0))) MARK(U41(U42(zeros), x1)) -> c38(A__U41(a__U42(a__zeros), x1), MARK(U42(zeros))) MARK(U41(U42(U11(z0)), x1)) -> c38(A__U41(a__U42(a__U11(mark(z0))), x1), MARK(U42(U11(z0)))) MARK(U41(U42(U21(z0)), x1)) -> c38(A__U41(a__U42(a__U21(mark(z0))), x1), MARK(U42(U21(z0)))) MARK(U41(U42(U31(z0)), x1)) -> c38(A__U41(a__U42(a__U31(mark(z0))), x1), MARK(U42(U31(z0)))) MARK(U41(U42(U41(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U41(mark(z0), z1)), x1), MARK(U42(U41(z0, z1)))) MARK(U41(U42(U42(z0)), x1)) -> c38(A__U41(a__U42(a__U42(mark(z0))), x1), MARK(U42(U42(z0)))) MARK(U41(U42(isNatIList(z0)), x1)) -> c38(A__U41(a__U42(a__isNatIList(z0)), x1), MARK(U42(isNatIList(z0)))) MARK(U41(U42(U51(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U51(mark(z0), z1)), x1), MARK(U42(U51(z0, z1)))) MARK(U41(U42(U52(z0)), x1)) -> c38(A__U41(a__U42(a__U52(mark(z0))), x1), MARK(U42(U52(z0)))) MARK(U41(U42(isNatList(z0)), x1)) -> c38(A__U41(a__U42(a__isNatList(z0)), x1), MARK(U42(isNatList(z0)))) MARK(U41(U42(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U42(a__U61(mark(z0), z1, z2)), x1), MARK(U42(U61(z0, z1, z2)))) MARK(U41(U42(U62(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U62(mark(z0), z1)), x1), MARK(U42(U62(z0, z1)))) MARK(U41(U42(isNat(z0)), x1)) -> c38(A__U41(a__U42(a__isNat(z0)), x1), MARK(U42(isNat(z0)))) MARK(U41(U42(length(z0)), x1)) -> c38(A__U41(a__U42(a__length(mark(z0))), x1), MARK(U42(length(z0)))) MARK(U41(U42(cons(z0, z1)), x1)) -> c38(A__U41(a__U42(cons(mark(z0), z1)), x1), MARK(U42(cons(z0, z1)))) MARK(U41(U42(0), x1)) -> c38(A__U41(a__U42(0), x1), MARK(U42(0))) MARK(U41(U42(tt), x1)) -> c38(A__U41(a__U42(tt), x1), MARK(U42(tt))) MARK(U41(U42(s(z0)), x1)) -> c38(A__U41(a__U42(s(mark(z0))), x1), MARK(U42(s(z0)))) MARK(U41(U42(nil), x1)) -> c38(A__U41(a__U42(nil), x1), MARK(U42(nil))) MARK(U41(U42(x0), x1)) -> c38(MARK(U42(x0))) K tuples:none Defined Rule Symbols: a__zeros, a__U11_1, a__U21_1, a__U31_1, a__U41_2, a__U42_1, a__U51_2, a__U52_1, a__U61_3, a__U62_2, a__isNat_1, a__isNatIList_1, a__isNatList_1, a__length_1, mark_1 Defined Pair Symbols: MARK_1, A__U41_2, A__U51_2, A__ISNAT_1, A__ISNATILIST_1, A__U61_3, A__U62_2, A__ISNATLIST_1, A__LENGTH_1 Compound Symbols: c40_1, c43_1, c46_1, c48_1, c51_1, c8_1, c12_1, c21_1, c22_1, c24_1, c35_1, c36_1, c37_1, c39_1, c42_1, c16_1, c18_2, c18_1, c26_1, c29_1, c32_1, c38_2, c38_1, c_1, c41_2, c41_1, c1_1, c44_2, c44_1, c45_2, c45_1, c47_2, c47_1, c16_2, c26_2, c29_2, c32_2, c2_1 ---------------------------------------- (189) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 1 trailing tuple parts ---------------------------------------- (190) Obligation: Complexity Dependency Tuples Problem Rules: a__zeros -> cons(0, zeros) a__zeros -> zeros a__U11(tt) -> tt a__U11(z0) -> U11(z0) a__U21(tt) -> tt a__U21(z0) -> U21(z0) a__U31(tt) -> tt a__U31(z0) -> U31(z0) a__U41(tt, z0) -> a__U42(a__isNatIList(z0)) a__U41(z0, z1) -> U41(z0, z1) a__U42(tt) -> tt a__U42(z0) -> U42(z0) a__U51(tt, z0) -> a__U52(a__isNatList(z0)) a__U51(z0, z1) -> U51(z0, z1) a__U52(tt) -> tt a__U52(z0) -> U52(z0) a__U61(tt, z0, z1) -> a__U62(a__isNat(z1), z0) a__U61(z0, z1, z2) -> U61(z0, z1, z2) a__U62(tt, z0) -> s(a__length(mark(z0))) a__U62(z0, z1) -> U62(z0, z1) a__isNat(0) -> tt a__isNat(length(z0)) -> a__U11(a__isNatList(z0)) a__isNat(s(z0)) -> a__U21(a__isNat(z0)) a__isNat(z0) -> isNat(z0) a__isNatIList(z0) -> a__U31(a__isNatList(z0)) a__isNatIList(zeros) -> tt a__isNatIList(cons(z0, z1)) -> a__U41(a__isNat(z0), z1) a__isNatIList(z0) -> isNatIList(z0) a__isNatList(nil) -> tt a__isNatList(cons(z0, z1)) -> a__U51(a__isNat(z0), z1) a__isNatList(z0) -> isNatList(z0) a__length(nil) -> 0 a__length(cons(z0, z1)) -> a__U61(a__isNatList(z1), z1, z0) a__length(z0) -> length(z0) mark(zeros) -> a__zeros mark(U11(z0)) -> a__U11(mark(z0)) mark(U21(z0)) -> a__U21(mark(z0)) mark(U31(z0)) -> a__U31(mark(z0)) mark(U41(z0, z1)) -> a__U41(mark(z0), z1) mark(U42(z0)) -> a__U42(mark(z0)) mark(isNatIList(z0)) -> a__isNatIList(z0) mark(U51(z0, z1)) -> a__U51(mark(z0), z1) mark(U52(z0)) -> a__U52(mark(z0)) mark(isNatList(z0)) -> a__isNatList(z0) mark(U61(z0, z1, z2)) -> a__U61(mark(z0), z1, z2) mark(U62(z0, z1)) -> a__U62(mark(z0), z1) mark(isNat(z0)) -> a__isNat(z0) mark(length(z0)) -> a__length(mark(z0)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(0) -> 0 mark(tt) -> tt mark(s(z0)) -> s(mark(z0)) mark(nil) -> nil Tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) A__U62(tt, isNatList(cons(z0, z1))) -> c18(A__LENGTH(a__U51(a__isNat(z0), z1)), MARK(isNatList(cons(z0, z1)))) A__U62(tt, isNatList(nil)) -> c18(MARK(isNatList(nil))) A__U62(tt, isNatList(z0)) -> c18(MARK(isNatList(z0))) A__U62(tt, U61(zeros, x1, x2)) -> c18(A__LENGTH(a__U61(a__zeros, x1, x2)), MARK(U61(zeros, x1, x2))) A__U62(tt, U61(U11(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U11(mark(z0)), x1, x2)), MARK(U61(U11(z0), x1, x2))) A__U62(tt, U61(U21(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U21(mark(z0)), x1, x2)), MARK(U61(U21(z0), x1, x2))) A__U62(tt, U61(U31(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U31(mark(z0)), x1, x2)), MARK(U61(U31(z0), x1, x2))) A__U62(tt, U61(U41(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U41(mark(z0), z1), x1, x2)), MARK(U61(U41(z0, z1), x1, x2))) A__U62(tt, U61(U42(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U42(mark(z0)), x1, x2)), MARK(U61(U42(z0), x1, x2))) A__U62(tt, U61(isNatIList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatIList(z0), x1, x2)), MARK(U61(isNatIList(z0), x1, x2))) A__U62(tt, U61(U51(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U51(mark(z0), z1), x1, x2)), MARK(U61(U51(z0, z1), x1, x2))) A__U62(tt, U61(U52(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U52(mark(z0)), x1, x2)), MARK(U61(U52(z0), x1, x2))) A__U62(tt, U61(isNatList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatList(z0), x1, x2)), MARK(U61(isNatList(z0), x1, x2))) A__U62(tt, U61(U61(z0, z1, z2), x1, x2)) -> c18(A__LENGTH(a__U61(a__U61(mark(z0), z1, z2), x1, x2)), MARK(U61(U61(z0, z1, z2), x1, x2))) A__U62(tt, U61(U62(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U62(mark(z0), z1), x1, x2)), MARK(U61(U62(z0, z1), x1, x2))) A__U62(tt, U61(isNat(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNat(z0), x1, x2)), MARK(U61(isNat(z0), x1, x2))) A__U62(tt, U61(length(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__length(mark(z0)), x1, x2)), MARK(U61(length(z0), x1, x2))) A__U62(tt, U61(cons(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(cons(mark(z0), z1), x1, x2)), MARK(U61(cons(z0, z1), x1, x2))) A__U62(tt, U61(tt, x1, x2)) -> c18(A__LENGTH(a__U61(tt, x1, x2)), MARK(U61(tt, x1, x2))) A__U62(tt, U61(s(z0), x1, x2)) -> c18(A__LENGTH(a__U61(s(mark(z0)), x1, x2)), MARK(U61(s(z0), x1, x2))) A__U62(tt, U61(x0, z1, z2)) -> c18(MARK(U61(x0, z1, z2))) A__U62(tt, U61(0, x1, x2)) -> c18(A__LENGTH(a__U61(0, x1, x2))) A__U62(tt, U61(nil, x1, x2)) -> c18(A__LENGTH(a__U61(nil, x1, x2))) A__U62(tt, U62(zeros, x1)) -> c18(A__LENGTH(a__U62(a__zeros, x1)), MARK(U62(zeros, x1))) A__U62(tt, U62(U11(z0), x1)) -> c18(A__LENGTH(a__U62(a__U11(mark(z0)), x1)), MARK(U62(U11(z0), x1))) A__U62(tt, U62(U21(z0), x1)) -> c18(A__LENGTH(a__U62(a__U21(mark(z0)), x1)), MARK(U62(U21(z0), x1))) A__U62(tt, U62(U31(z0), x1)) -> c18(A__LENGTH(a__U62(a__U31(mark(z0)), x1)), MARK(U62(U31(z0), x1))) A__U62(tt, U62(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U41(mark(z0), z1), x1)), MARK(U62(U41(z0, z1), x1))) A__U62(tt, U62(U42(z0), x1)) -> c18(A__LENGTH(a__U62(a__U42(mark(z0)), x1)), MARK(U62(U42(z0), x1))) A__U62(tt, U62(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatIList(z0), x1)), MARK(U62(isNatIList(z0), x1))) A__U62(tt, U62(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U51(mark(z0), z1), x1)), MARK(U62(U51(z0, z1), x1))) A__U62(tt, U62(U52(z0), x1)) -> c18(A__LENGTH(a__U62(a__U52(mark(z0)), x1)), MARK(U62(U52(z0), x1))) A__U62(tt, U62(isNatList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatList(z0), x1)), MARK(U62(isNatList(z0), x1))) A__U62(tt, U62(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U62(a__U61(mark(z0), z1, z2), x1)), MARK(U62(U61(z0, z1, z2), x1))) A__U62(tt, U62(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U62(mark(z0), z1), x1)), MARK(U62(U62(z0, z1), x1))) A__U62(tt, U62(isNat(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNat(z0), x1)), MARK(U62(isNat(z0), x1))) A__U62(tt, U62(length(z0), x1)) -> c18(A__LENGTH(a__U62(a__length(mark(z0)), x1)), MARK(U62(length(z0), x1))) A__U62(tt, U62(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U62(cons(mark(z0), z1), x1)), MARK(U62(cons(z0, z1), x1))) A__U62(tt, U62(tt, x1)) -> c18(A__LENGTH(a__U62(tt, x1)), MARK(U62(tt, x1))) A__U62(tt, U62(s(z0), x1)) -> c18(A__LENGTH(a__U62(s(mark(z0)), x1)), MARK(U62(s(z0), x1))) A__U62(tt, U62(x0, z1)) -> c18(MARK(U62(x0, z1))) A__U62(tt, U62(0, x1)) -> c18(A__LENGTH(a__U62(0, x1))) A__U62(tt, U62(nil, x1)) -> c18(A__LENGTH(a__U62(nil, x1))) A__U62(tt, isNat(length(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(isNat(length(z0)))) A__U62(tt, isNat(s(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(isNat(s(z0)))) A__U62(tt, isNat(0)) -> c18(MARK(isNat(0))) A__U62(tt, isNat(z0)) -> c18(MARK(isNat(z0))) A__U62(tt, length(zeros)) -> c18(A__LENGTH(a__length(a__zeros)), MARK(length(zeros))) A__U62(tt, length(U11(z0))) -> c18(A__LENGTH(a__length(a__U11(mark(z0)))), MARK(length(U11(z0)))) A__U62(tt, length(U21(z0))) -> c18(A__LENGTH(a__length(a__U21(mark(z0)))), MARK(length(U21(z0)))) A__U62(tt, length(U31(z0))) -> c18(A__LENGTH(a__length(a__U31(mark(z0)))), MARK(length(U31(z0)))) A__U62(tt, length(U41(z0, z1))) -> c18(A__LENGTH(a__length(a__U41(mark(z0), z1))), MARK(length(U41(z0, z1)))) A__U62(tt, length(U42(z0))) -> c18(A__LENGTH(a__length(a__U42(mark(z0)))), MARK(length(U42(z0)))) A__U62(tt, length(isNatIList(z0))) -> c18(A__LENGTH(a__length(a__isNatIList(z0))), MARK(length(isNatIList(z0)))) A__U62(tt, length(U51(z0, z1))) -> c18(A__LENGTH(a__length(a__U51(mark(z0), z1))), MARK(length(U51(z0, z1)))) A__U62(tt, length(U52(z0))) -> c18(A__LENGTH(a__length(a__U52(mark(z0)))), MARK(length(U52(z0)))) A__U62(tt, length(isNatList(z0))) -> c18(A__LENGTH(a__length(a__isNatList(z0))), MARK(length(isNatList(z0)))) A__U62(tt, length(U61(z0, z1, z2))) -> c18(A__LENGTH(a__length(a__U61(mark(z0), z1, z2))), MARK(length(U61(z0, z1, z2)))) A__U62(tt, length(U62(z0, z1))) -> c18(A__LENGTH(a__length(a__U62(mark(z0), z1))), MARK(length(U62(z0, z1)))) A__U62(tt, length(isNat(z0))) -> c18(A__LENGTH(a__length(a__isNat(z0))), MARK(length(isNat(z0)))) A__U62(tt, length(length(z0))) -> c18(A__LENGTH(a__length(a__length(mark(z0)))), MARK(length(length(z0)))) A__U62(tt, length(cons(z0, z1))) -> c18(A__LENGTH(a__length(cons(mark(z0), z1))), MARK(length(cons(z0, z1)))) A__U62(tt, length(s(z0))) -> c18(A__LENGTH(a__length(s(mark(z0)))), MARK(length(s(z0)))) A__U62(tt, length(x0)) -> c18(MARK(length(x0))) A__U62(tt, length(0)) -> c18(A__LENGTH(a__length(0))) A__U62(tt, length(tt)) -> c18(A__LENGTH(a__length(tt))) A__U62(tt, length(nil)) -> c18(A__LENGTH(a__length(nil))) A__U62(tt, zeros) -> c18(A__LENGTH(cons(0, zeros))) A__ISNATILIST(cons(length(nil), x1)) -> c26(A__U41(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATILIST(cons(length(cons(z0, z1)), x1)) -> c26(A__U41(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(length(x0), x1)) -> c26(A__ISNAT(length(x0))) A__ISNATILIST(cons(s(0), x1)) -> c26(A__U41(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATILIST(cons(s(length(z0)), x1)) -> c26(A__U41(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATILIST(cons(s(s(z0)), x1)) -> c26(A__U41(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(s(x0), x1)) -> c26(A__ISNAT(s(x0))) A__ISNATLIST(cons(length(nil), x1)) -> c29(A__U51(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATLIST(cons(length(cons(z0, z1)), x1)) -> c29(A__U51(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(length(x0), x1)) -> c29(A__ISNAT(length(x0))) A__ISNATLIST(cons(s(0), x1)) -> c29(A__U51(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATLIST(cons(s(length(z0)), x1)) -> c29(A__U51(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATLIST(cons(s(s(z0)), x1)) -> c29(A__U51(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(s(x0), x1)) -> c29(A__ISNAT(s(x0))) A__LENGTH(cons(x0, cons(0, x2))) -> c32(A__U61(a__U51(tt, x2), cons(0, x2), x0), A__ISNATLIST(cons(0, x2))) A__LENGTH(cons(x0, cons(length(z0), x2))) -> c32(A__U61(a__U51(a__U11(a__isNatList(z0)), x2), cons(length(z0), x2), x0), A__ISNATLIST(cons(length(z0), x2))) A__LENGTH(cons(x0, cons(s(z0), x2))) -> c32(A__U61(a__U51(a__U21(a__isNat(z0)), x2), cons(s(z0), x2), x0), A__ISNATLIST(cons(s(z0), x2))) A__LENGTH(cons(x0, cons(z0, x2))) -> c32(A__U61(a__U51(isNat(z0), x2), cons(z0, x2), x0), A__ISNATLIST(cons(z0, x2))) A__LENGTH(cons(x0, cons(x1, z1))) -> c32(A__ISNATLIST(cons(x1, z1))) MARK(U41(U11(zeros), x1)) -> c38(A__U41(a__U11(a__zeros), x1), MARK(U11(zeros))) MARK(U41(U11(U11(z0)), x1)) -> c38(A__U41(a__U11(a__U11(mark(z0))), x1), MARK(U11(U11(z0)))) MARK(U41(U11(U21(z0)), x1)) -> c38(A__U41(a__U11(a__U21(mark(z0))), x1), MARK(U11(U21(z0)))) MARK(U41(U11(U31(z0)), x1)) -> c38(A__U41(a__U11(a__U31(mark(z0))), x1), MARK(U11(U31(z0)))) MARK(U41(U11(U41(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U41(mark(z0), z1)), x1), MARK(U11(U41(z0, z1)))) MARK(U41(U11(U42(z0)), x1)) -> c38(A__U41(a__U11(a__U42(mark(z0))), x1), MARK(U11(U42(z0)))) MARK(U41(U11(isNatIList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatIList(z0)), x1), MARK(U11(isNatIList(z0)))) MARK(U41(U11(U51(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U51(mark(z0), z1)), x1), MARK(U11(U51(z0, z1)))) MARK(U41(U11(U52(z0)), x1)) -> c38(A__U41(a__U11(a__U52(mark(z0))), x1), MARK(U11(U52(z0)))) MARK(U41(U11(isNatList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatList(z0)), x1), MARK(U11(isNatList(z0)))) MARK(U41(U11(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U11(a__U61(mark(z0), z1, z2)), x1), MARK(U11(U61(z0, z1, z2)))) MARK(U41(U11(U62(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U62(mark(z0), z1)), x1), MARK(U11(U62(z0, z1)))) MARK(U41(U11(isNat(z0)), x1)) -> c38(A__U41(a__U11(a__isNat(z0)), x1), MARK(U11(isNat(z0)))) MARK(U41(U11(length(z0)), x1)) -> c38(A__U41(a__U11(a__length(mark(z0))), x1), MARK(U11(length(z0)))) MARK(U41(U11(cons(z0, z1)), x1)) -> c38(A__U41(a__U11(cons(mark(z0), z1)), x1), MARK(U11(cons(z0, z1)))) MARK(U41(U11(0), x1)) -> c38(A__U41(a__U11(0), x1), MARK(U11(0))) MARK(U41(U11(tt), x1)) -> c38(A__U41(a__U11(tt), x1), MARK(U11(tt))) MARK(U41(U11(s(z0)), x1)) -> c38(A__U41(a__U11(s(mark(z0))), x1), MARK(U11(s(z0)))) MARK(U41(U11(nil), x1)) -> c38(A__U41(a__U11(nil), x1), MARK(U11(nil))) MARK(U41(U11(x0), x1)) -> c38(MARK(U11(x0))) MARK(U41(U21(zeros), x1)) -> c38(A__U41(a__U21(a__zeros), x1), MARK(U21(zeros))) MARK(U41(U21(U11(z0)), x1)) -> c38(A__U41(a__U21(a__U11(mark(z0))), x1), MARK(U21(U11(z0)))) MARK(U41(U21(U21(z0)), x1)) -> c38(A__U41(a__U21(a__U21(mark(z0))), x1), MARK(U21(U21(z0)))) MARK(U41(U21(U31(z0)), x1)) -> c38(A__U41(a__U21(a__U31(mark(z0))), x1), MARK(U21(U31(z0)))) MARK(U41(U21(U41(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U41(mark(z0), z1)), x1), MARK(U21(U41(z0, z1)))) MARK(U41(U21(U42(z0)), x1)) -> c38(A__U41(a__U21(a__U42(mark(z0))), x1), MARK(U21(U42(z0)))) MARK(U41(U21(isNatIList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatIList(z0)), x1), MARK(U21(isNatIList(z0)))) MARK(U41(U21(U51(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U51(mark(z0), z1)), x1), MARK(U21(U51(z0, z1)))) MARK(U41(U21(U52(z0)), x1)) -> c38(A__U41(a__U21(a__U52(mark(z0))), x1), MARK(U21(U52(z0)))) MARK(U41(U21(isNatList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatList(z0)), x1), MARK(U21(isNatList(z0)))) MARK(U41(U21(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U21(a__U61(mark(z0), z1, z2)), x1), MARK(U21(U61(z0, z1, z2)))) MARK(U41(U21(U62(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U62(mark(z0), z1)), x1), MARK(U21(U62(z0, z1)))) MARK(U41(U21(isNat(z0)), x1)) -> c38(A__U41(a__U21(a__isNat(z0)), x1), MARK(U21(isNat(z0)))) MARK(U41(U21(length(z0)), x1)) -> c38(A__U41(a__U21(a__length(mark(z0))), x1), MARK(U21(length(z0)))) MARK(U41(U21(cons(z0, z1)), x1)) -> c38(A__U41(a__U21(cons(mark(z0), z1)), x1), MARK(U21(cons(z0, z1)))) MARK(U41(U21(0), x1)) -> c38(A__U41(a__U21(0), x1), MARK(U21(0))) MARK(U41(U21(tt), x1)) -> c38(A__U41(a__U21(tt), x1), MARK(U21(tt))) MARK(U41(U21(s(z0)), x1)) -> c38(A__U41(a__U21(s(mark(z0))), x1), MARK(U21(s(z0)))) MARK(U41(U21(nil), x1)) -> c38(A__U41(a__U21(nil), x1), MARK(U21(nil))) MARK(U41(U21(x0), x1)) -> c38(MARK(U21(x0))) MARK(U41(U31(zeros), x1)) -> c38(A__U41(a__U31(a__zeros), x1), MARK(U31(zeros))) MARK(U41(U31(U11(z0)), x1)) -> c38(A__U41(a__U31(a__U11(mark(z0))), x1), MARK(U31(U11(z0)))) MARK(U41(U31(U21(z0)), x1)) -> c38(A__U41(a__U31(a__U21(mark(z0))), x1), MARK(U31(U21(z0)))) MARK(U41(U31(U31(z0)), x1)) -> c38(A__U41(a__U31(a__U31(mark(z0))), x1), MARK(U31(U31(z0)))) MARK(U41(U31(U41(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U41(mark(z0), z1)), x1), MARK(U31(U41(z0, z1)))) MARK(U41(U31(U42(z0)), x1)) -> c38(A__U41(a__U31(a__U42(mark(z0))), x1), MARK(U31(U42(z0)))) MARK(U41(U31(isNatIList(z0)), x1)) -> c38(A__U41(a__U31(a__isNatIList(z0)), x1), MARK(U31(isNatIList(z0)))) MARK(U41(U31(U51(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U51(mark(z0), z1)), x1), MARK(U31(U51(z0, z1)))) MARK(U41(U31(U52(z0)), x1)) -> c38(A__U41(a__U31(a__U52(mark(z0))), x1), MARK(U31(U52(z0)))) MARK(U41(U31(isNatList(z0)), x1)) -> c38(A__U41(a__U31(a__isNatList(z0)), x1), MARK(U31(isNatList(z0)))) MARK(U41(U31(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U31(a__U61(mark(z0), z1, z2)), x1), MARK(U31(U61(z0, z1, z2)))) MARK(U41(U31(U62(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U62(mark(z0), z1)), x1), MARK(U31(U62(z0, z1)))) MARK(U41(U31(isNat(z0)), x1)) -> c38(A__U41(a__U31(a__isNat(z0)), x1), MARK(U31(isNat(z0)))) MARK(U41(U31(length(z0)), x1)) -> c38(A__U41(a__U31(a__length(mark(z0))), x1), MARK(U31(length(z0)))) MARK(U41(U31(cons(z0, z1)), x1)) -> c38(A__U41(a__U31(cons(mark(z0), z1)), x1), MARK(U31(cons(z0, z1)))) MARK(U41(U31(0), x1)) -> c38(A__U41(a__U31(0), x1), MARK(U31(0))) MARK(U41(U31(tt), x1)) -> c38(A__U41(a__U31(tt), x1), MARK(U31(tt))) MARK(U41(U31(s(z0)), x1)) -> c38(A__U41(a__U31(s(mark(z0))), x1), MARK(U31(s(z0)))) MARK(U41(U31(nil), x1)) -> c38(A__U41(a__U31(nil), x1), MARK(U31(nil))) MARK(U41(U31(x0), x1)) -> c38(MARK(U31(x0))) MARK(U41(U41(U11(z0), x1), x2)) -> c38(A__U41(a__U41(a__U11(mark(z0)), x1), x2), MARK(U41(U11(z0), x1))) MARK(U41(U41(U21(z0), x1), x2)) -> c38(A__U41(a__U41(a__U21(mark(z0)), x1), x2), MARK(U41(U21(z0), x1))) MARK(U41(U41(U31(z0), x1), x2)) -> c38(A__U41(a__U41(a__U31(mark(z0)), x1), x2), MARK(U41(U31(z0), x1))) MARK(U41(U41(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U41(mark(z0), z1), x1), x2), MARK(U41(U41(z0, z1), x1))) MARK(U41(U41(U42(z0), x1), x2)) -> c38(A__U41(a__U41(a__U42(mark(z0)), x1), x2), MARK(U41(U42(z0), x1))) MARK(U41(U41(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U51(mark(z0), z1), x1), x2), MARK(U41(U51(z0, z1), x1))) MARK(U41(U41(U52(z0), x1), x2)) -> c38(A__U41(a__U41(a__U52(mark(z0)), x1), x2), MARK(U41(U52(z0), x1))) MARK(U41(U41(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U41(a__U61(mark(z0), z1, z2), x1), x2), MARK(U41(U61(z0, z1, z2), x1))) MARK(U41(U41(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U62(mark(z0), z1), x1), x2), MARK(U41(U62(z0, z1), x1))) MARK(U41(U41(length(z0), x1), x2)) -> c38(A__U41(a__U41(a__length(mark(z0)), x1), x2), MARK(U41(length(z0), x1))) MARK(U41(U41(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U41(cons(mark(z0), z1), x1), x2), MARK(U41(cons(z0, z1), x1))) MARK(U41(U41(s(z0), x1), x2)) -> c38(A__U41(a__U41(s(mark(z0)), x1), x2), MARK(U41(s(z0), x1))) MARK(U41(U41(x0, z1), x2)) -> c38(MARK(U41(x0, z1))) MARK(U41(U41(0, x1), x2)) -> c38(A__U41(a__U41(0, x1), x2)) MARK(U41(U41(nil, x1), x2)) -> c38(A__U41(a__U41(nil, x1), x2)) MARK(U41(U41(zeros, x1), x2)) -> c2(A__U41(a__U41(a__zeros, x1), x2)) MARK(U41(U41(zeros, x1), x2)) -> c2(MARK(U41(zeros, x1))) MARK(U41(U41(isNatIList(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNatIList(z0), x1), x2)) MARK(U41(U41(isNatIList(z0), x1), x2)) -> c2(MARK(U41(isNatIList(z0), x1))) MARK(U41(U41(isNatList(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNatList(z0), x1), x2)) MARK(U41(U41(isNatList(z0), x1), x2)) -> c2(MARK(U41(isNatList(z0), x1))) MARK(U41(U41(isNat(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNat(z0), x1), x2)) MARK(U41(U41(isNat(z0), x1), x2)) -> c2(MARK(U41(isNat(z0), x1))) MARK(U41(U41(tt, x1), x2)) -> c2(A__U41(a__U41(tt, x1), x2)) MARK(U41(U41(tt, x1), x2)) -> c2(MARK(U41(tt, x1))) MARK(U41(U42(zeros), x1)) -> c38(A__U41(a__U42(a__zeros), x1), MARK(U42(zeros))) MARK(U41(U42(U11(z0)), x1)) -> c38(A__U41(a__U42(a__U11(mark(z0))), x1), MARK(U42(U11(z0)))) MARK(U41(U42(U21(z0)), x1)) -> c38(A__U41(a__U42(a__U21(mark(z0))), x1), MARK(U42(U21(z0)))) MARK(U41(U42(U31(z0)), x1)) -> c38(A__U41(a__U42(a__U31(mark(z0))), x1), MARK(U42(U31(z0)))) MARK(U41(U42(U41(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U41(mark(z0), z1)), x1), MARK(U42(U41(z0, z1)))) MARK(U41(U42(U42(z0)), x1)) -> c38(A__U41(a__U42(a__U42(mark(z0))), x1), MARK(U42(U42(z0)))) MARK(U41(U42(isNatIList(z0)), x1)) -> c38(A__U41(a__U42(a__isNatIList(z0)), x1), MARK(U42(isNatIList(z0)))) MARK(U41(U42(U51(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U51(mark(z0), z1)), x1), MARK(U42(U51(z0, z1)))) MARK(U41(U42(U52(z0)), x1)) -> c38(A__U41(a__U42(a__U52(mark(z0))), x1), MARK(U42(U52(z0)))) MARK(U41(U42(isNatList(z0)), x1)) -> c38(A__U41(a__U42(a__isNatList(z0)), x1), MARK(U42(isNatList(z0)))) MARK(U41(U42(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U42(a__U61(mark(z0), z1, z2)), x1), MARK(U42(U61(z0, z1, z2)))) MARK(U41(U42(U62(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U62(mark(z0), z1)), x1), MARK(U42(U62(z0, z1)))) MARK(U41(U42(isNat(z0)), x1)) -> c38(A__U41(a__U42(a__isNat(z0)), x1), MARK(U42(isNat(z0)))) MARK(U41(U42(length(z0)), x1)) -> c38(A__U41(a__U42(a__length(mark(z0))), x1), MARK(U42(length(z0)))) MARK(U41(U42(cons(z0, z1)), x1)) -> c38(A__U41(a__U42(cons(mark(z0), z1)), x1), MARK(U42(cons(z0, z1)))) MARK(U41(U42(0), x1)) -> c38(A__U41(a__U42(0), x1), MARK(U42(0))) MARK(U41(U42(tt), x1)) -> c38(A__U41(a__U42(tt), x1), MARK(U42(tt))) MARK(U41(U42(s(z0)), x1)) -> c38(A__U41(a__U42(s(mark(z0))), x1), MARK(U42(s(z0)))) MARK(U41(U42(nil), x1)) -> c38(A__U41(a__U42(nil), x1), MARK(U42(nil))) MARK(U41(U42(x0), x1)) -> c38(MARK(U42(x0))) S tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) A__U62(tt, isNatList(cons(z0, z1))) -> c18(A__LENGTH(a__U51(a__isNat(z0), z1)), MARK(isNatList(cons(z0, z1)))) A__U62(tt, isNatList(nil)) -> c18(MARK(isNatList(nil))) A__U62(tt, isNatList(z0)) -> c18(MARK(isNatList(z0))) A__U62(tt, U61(zeros, x1, x2)) -> c18(A__LENGTH(a__U61(a__zeros, x1, x2)), MARK(U61(zeros, x1, x2))) A__U62(tt, U61(U11(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U11(mark(z0)), x1, x2)), MARK(U61(U11(z0), x1, x2))) A__U62(tt, U61(U21(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U21(mark(z0)), x1, x2)), MARK(U61(U21(z0), x1, x2))) A__U62(tt, U61(U31(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U31(mark(z0)), x1, x2)), MARK(U61(U31(z0), x1, x2))) A__U62(tt, U61(U41(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U41(mark(z0), z1), x1, x2)), MARK(U61(U41(z0, z1), x1, x2))) A__U62(tt, U61(U42(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U42(mark(z0)), x1, x2)), MARK(U61(U42(z0), x1, x2))) A__U62(tt, U61(isNatIList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatIList(z0), x1, x2)), MARK(U61(isNatIList(z0), x1, x2))) A__U62(tt, U61(U51(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U51(mark(z0), z1), x1, x2)), MARK(U61(U51(z0, z1), x1, x2))) A__U62(tt, U61(U52(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U52(mark(z0)), x1, x2)), MARK(U61(U52(z0), x1, x2))) A__U62(tt, U61(isNatList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatList(z0), x1, x2)), MARK(U61(isNatList(z0), x1, x2))) A__U62(tt, U61(U61(z0, z1, z2), x1, x2)) -> c18(A__LENGTH(a__U61(a__U61(mark(z0), z1, z2), x1, x2)), MARK(U61(U61(z0, z1, z2), x1, x2))) A__U62(tt, U61(U62(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U62(mark(z0), z1), x1, x2)), MARK(U61(U62(z0, z1), x1, x2))) A__U62(tt, U61(isNat(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNat(z0), x1, x2)), MARK(U61(isNat(z0), x1, x2))) A__U62(tt, U61(length(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__length(mark(z0)), x1, x2)), MARK(U61(length(z0), x1, x2))) A__U62(tt, U61(cons(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(cons(mark(z0), z1), x1, x2)), MARK(U61(cons(z0, z1), x1, x2))) A__U62(tt, U61(tt, x1, x2)) -> c18(A__LENGTH(a__U61(tt, x1, x2)), MARK(U61(tt, x1, x2))) A__U62(tt, U61(s(z0), x1, x2)) -> c18(A__LENGTH(a__U61(s(mark(z0)), x1, x2)), MARK(U61(s(z0), x1, x2))) A__U62(tt, U61(x0, z1, z2)) -> c18(MARK(U61(x0, z1, z2))) A__U62(tt, U61(0, x1, x2)) -> c18(A__LENGTH(a__U61(0, x1, x2))) A__U62(tt, U61(nil, x1, x2)) -> c18(A__LENGTH(a__U61(nil, x1, x2))) A__U62(tt, U62(zeros, x1)) -> c18(A__LENGTH(a__U62(a__zeros, x1)), MARK(U62(zeros, x1))) A__U62(tt, U62(U11(z0), x1)) -> c18(A__LENGTH(a__U62(a__U11(mark(z0)), x1)), MARK(U62(U11(z0), x1))) A__U62(tt, U62(U21(z0), x1)) -> c18(A__LENGTH(a__U62(a__U21(mark(z0)), x1)), MARK(U62(U21(z0), x1))) A__U62(tt, U62(U31(z0), x1)) -> c18(A__LENGTH(a__U62(a__U31(mark(z0)), x1)), MARK(U62(U31(z0), x1))) A__U62(tt, U62(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U41(mark(z0), z1), x1)), MARK(U62(U41(z0, z1), x1))) A__U62(tt, U62(U42(z0), x1)) -> c18(A__LENGTH(a__U62(a__U42(mark(z0)), x1)), MARK(U62(U42(z0), x1))) A__U62(tt, U62(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatIList(z0), x1)), MARK(U62(isNatIList(z0), x1))) A__U62(tt, U62(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U51(mark(z0), z1), x1)), MARK(U62(U51(z0, z1), x1))) A__U62(tt, U62(U52(z0), x1)) -> c18(A__LENGTH(a__U62(a__U52(mark(z0)), x1)), MARK(U62(U52(z0), x1))) A__U62(tt, U62(isNatList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatList(z0), x1)), MARK(U62(isNatList(z0), x1))) A__U62(tt, U62(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U62(a__U61(mark(z0), z1, z2), x1)), MARK(U62(U61(z0, z1, z2), x1))) A__U62(tt, U62(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U62(mark(z0), z1), x1)), MARK(U62(U62(z0, z1), x1))) A__U62(tt, U62(isNat(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNat(z0), x1)), MARK(U62(isNat(z0), x1))) A__U62(tt, U62(length(z0), x1)) -> c18(A__LENGTH(a__U62(a__length(mark(z0)), x1)), MARK(U62(length(z0), x1))) A__U62(tt, U62(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U62(cons(mark(z0), z1), x1)), MARK(U62(cons(z0, z1), x1))) A__U62(tt, U62(tt, x1)) -> c18(A__LENGTH(a__U62(tt, x1)), MARK(U62(tt, x1))) A__U62(tt, U62(s(z0), x1)) -> c18(A__LENGTH(a__U62(s(mark(z0)), x1)), MARK(U62(s(z0), x1))) A__U62(tt, U62(x0, z1)) -> c18(MARK(U62(x0, z1))) A__U62(tt, U62(0, x1)) -> c18(A__LENGTH(a__U62(0, x1))) A__U62(tt, U62(nil, x1)) -> c18(A__LENGTH(a__U62(nil, x1))) A__U62(tt, isNat(length(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(isNat(length(z0)))) A__U62(tt, isNat(s(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(isNat(s(z0)))) A__U62(tt, isNat(0)) -> c18(MARK(isNat(0))) A__U62(tt, isNat(z0)) -> c18(MARK(isNat(z0))) A__U62(tt, length(zeros)) -> c18(A__LENGTH(a__length(a__zeros)), MARK(length(zeros))) A__U62(tt, length(U11(z0))) -> c18(A__LENGTH(a__length(a__U11(mark(z0)))), MARK(length(U11(z0)))) A__U62(tt, length(U21(z0))) -> c18(A__LENGTH(a__length(a__U21(mark(z0)))), MARK(length(U21(z0)))) A__U62(tt, length(U31(z0))) -> c18(A__LENGTH(a__length(a__U31(mark(z0)))), MARK(length(U31(z0)))) A__U62(tt, length(U41(z0, z1))) -> c18(A__LENGTH(a__length(a__U41(mark(z0), z1))), MARK(length(U41(z0, z1)))) A__U62(tt, length(U42(z0))) -> c18(A__LENGTH(a__length(a__U42(mark(z0)))), MARK(length(U42(z0)))) A__U62(tt, length(isNatIList(z0))) -> c18(A__LENGTH(a__length(a__isNatIList(z0))), MARK(length(isNatIList(z0)))) A__U62(tt, length(U51(z0, z1))) -> c18(A__LENGTH(a__length(a__U51(mark(z0), z1))), MARK(length(U51(z0, z1)))) A__U62(tt, length(U52(z0))) -> c18(A__LENGTH(a__length(a__U52(mark(z0)))), MARK(length(U52(z0)))) A__U62(tt, length(isNatList(z0))) -> c18(A__LENGTH(a__length(a__isNatList(z0))), MARK(length(isNatList(z0)))) A__U62(tt, length(U61(z0, z1, z2))) -> c18(A__LENGTH(a__length(a__U61(mark(z0), z1, z2))), MARK(length(U61(z0, z1, z2)))) A__U62(tt, length(U62(z0, z1))) -> c18(A__LENGTH(a__length(a__U62(mark(z0), z1))), MARK(length(U62(z0, z1)))) A__U62(tt, length(isNat(z0))) -> c18(A__LENGTH(a__length(a__isNat(z0))), MARK(length(isNat(z0)))) A__U62(tt, length(length(z0))) -> c18(A__LENGTH(a__length(a__length(mark(z0)))), MARK(length(length(z0)))) A__U62(tt, length(cons(z0, z1))) -> c18(A__LENGTH(a__length(cons(mark(z0), z1))), MARK(length(cons(z0, z1)))) A__U62(tt, length(s(z0))) -> c18(A__LENGTH(a__length(s(mark(z0)))), MARK(length(s(z0)))) A__U62(tt, length(x0)) -> c18(MARK(length(x0))) A__U62(tt, length(0)) -> c18(A__LENGTH(a__length(0))) A__U62(tt, length(tt)) -> c18(A__LENGTH(a__length(tt))) A__U62(tt, length(nil)) -> c18(A__LENGTH(a__length(nil))) A__U62(tt, zeros) -> c18(A__LENGTH(cons(0, zeros))) A__ISNATILIST(cons(length(nil), x1)) -> c26(A__U41(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATILIST(cons(length(cons(z0, z1)), x1)) -> c26(A__U41(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(length(x0), x1)) -> c26(A__ISNAT(length(x0))) A__ISNATILIST(cons(s(0), x1)) -> c26(A__U41(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATILIST(cons(s(length(z0)), x1)) -> c26(A__U41(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATILIST(cons(s(s(z0)), x1)) -> c26(A__U41(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(s(x0), x1)) -> c26(A__ISNAT(s(x0))) A__ISNATLIST(cons(length(nil), x1)) -> c29(A__U51(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATLIST(cons(length(cons(z0, z1)), x1)) -> c29(A__U51(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(length(x0), x1)) -> c29(A__ISNAT(length(x0))) A__ISNATLIST(cons(s(0), x1)) -> c29(A__U51(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATLIST(cons(s(length(z0)), x1)) -> c29(A__U51(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATLIST(cons(s(s(z0)), x1)) -> c29(A__U51(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(s(x0), x1)) -> c29(A__ISNAT(s(x0))) A__LENGTH(cons(x0, cons(0, x2))) -> c32(A__U61(a__U51(tt, x2), cons(0, x2), x0), A__ISNATLIST(cons(0, x2))) A__LENGTH(cons(x0, cons(length(z0), x2))) -> c32(A__U61(a__U51(a__U11(a__isNatList(z0)), x2), cons(length(z0), x2), x0), A__ISNATLIST(cons(length(z0), x2))) A__LENGTH(cons(x0, cons(s(z0), x2))) -> c32(A__U61(a__U51(a__U21(a__isNat(z0)), x2), cons(s(z0), x2), x0), A__ISNATLIST(cons(s(z0), x2))) A__LENGTH(cons(x0, cons(z0, x2))) -> c32(A__U61(a__U51(isNat(z0), x2), cons(z0, x2), x0), A__ISNATLIST(cons(z0, x2))) A__LENGTH(cons(x0, cons(x1, z1))) -> c32(A__ISNATLIST(cons(x1, z1))) MARK(U41(U11(zeros), x1)) -> c38(A__U41(a__U11(a__zeros), x1), MARK(U11(zeros))) MARK(U41(U11(U11(z0)), x1)) -> c38(A__U41(a__U11(a__U11(mark(z0))), x1), MARK(U11(U11(z0)))) MARK(U41(U11(U21(z0)), x1)) -> c38(A__U41(a__U11(a__U21(mark(z0))), x1), MARK(U11(U21(z0)))) MARK(U41(U11(U31(z0)), x1)) -> c38(A__U41(a__U11(a__U31(mark(z0))), x1), MARK(U11(U31(z0)))) MARK(U41(U11(U41(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U41(mark(z0), z1)), x1), MARK(U11(U41(z0, z1)))) MARK(U41(U11(U42(z0)), x1)) -> c38(A__U41(a__U11(a__U42(mark(z0))), x1), MARK(U11(U42(z0)))) MARK(U41(U11(isNatIList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatIList(z0)), x1), MARK(U11(isNatIList(z0)))) MARK(U41(U11(U51(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U51(mark(z0), z1)), x1), MARK(U11(U51(z0, z1)))) MARK(U41(U11(U52(z0)), x1)) -> c38(A__U41(a__U11(a__U52(mark(z0))), x1), MARK(U11(U52(z0)))) MARK(U41(U11(isNatList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatList(z0)), x1), MARK(U11(isNatList(z0)))) MARK(U41(U11(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U11(a__U61(mark(z0), z1, z2)), x1), MARK(U11(U61(z0, z1, z2)))) MARK(U41(U11(U62(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U62(mark(z0), z1)), x1), MARK(U11(U62(z0, z1)))) MARK(U41(U11(isNat(z0)), x1)) -> c38(A__U41(a__U11(a__isNat(z0)), x1), MARK(U11(isNat(z0)))) MARK(U41(U11(length(z0)), x1)) -> c38(A__U41(a__U11(a__length(mark(z0))), x1), MARK(U11(length(z0)))) MARK(U41(U11(cons(z0, z1)), x1)) -> c38(A__U41(a__U11(cons(mark(z0), z1)), x1), MARK(U11(cons(z0, z1)))) MARK(U41(U11(0), x1)) -> c38(A__U41(a__U11(0), x1), MARK(U11(0))) MARK(U41(U11(tt), x1)) -> c38(A__U41(a__U11(tt), x1), MARK(U11(tt))) MARK(U41(U11(s(z0)), x1)) -> c38(A__U41(a__U11(s(mark(z0))), x1), MARK(U11(s(z0)))) MARK(U41(U11(nil), x1)) -> c38(A__U41(a__U11(nil), x1), MARK(U11(nil))) MARK(U41(U11(x0), x1)) -> c38(MARK(U11(x0))) MARK(U41(U21(zeros), x1)) -> c38(A__U41(a__U21(a__zeros), x1), MARK(U21(zeros))) MARK(U41(U21(U11(z0)), x1)) -> c38(A__U41(a__U21(a__U11(mark(z0))), x1), MARK(U21(U11(z0)))) MARK(U41(U21(U21(z0)), x1)) -> c38(A__U41(a__U21(a__U21(mark(z0))), x1), MARK(U21(U21(z0)))) MARK(U41(U21(U31(z0)), x1)) -> c38(A__U41(a__U21(a__U31(mark(z0))), x1), MARK(U21(U31(z0)))) MARK(U41(U21(U41(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U41(mark(z0), z1)), x1), MARK(U21(U41(z0, z1)))) MARK(U41(U21(U42(z0)), x1)) -> c38(A__U41(a__U21(a__U42(mark(z0))), x1), MARK(U21(U42(z0)))) MARK(U41(U21(isNatIList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatIList(z0)), x1), MARK(U21(isNatIList(z0)))) MARK(U41(U21(U51(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U51(mark(z0), z1)), x1), MARK(U21(U51(z0, z1)))) MARK(U41(U21(U52(z0)), x1)) -> c38(A__U41(a__U21(a__U52(mark(z0))), x1), MARK(U21(U52(z0)))) MARK(U41(U21(isNatList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatList(z0)), x1), MARK(U21(isNatList(z0)))) MARK(U41(U21(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U21(a__U61(mark(z0), z1, z2)), x1), MARK(U21(U61(z0, z1, z2)))) MARK(U41(U21(U62(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U62(mark(z0), z1)), x1), MARK(U21(U62(z0, z1)))) MARK(U41(U21(isNat(z0)), x1)) -> c38(A__U41(a__U21(a__isNat(z0)), x1), MARK(U21(isNat(z0)))) MARK(U41(U21(length(z0)), x1)) -> c38(A__U41(a__U21(a__length(mark(z0))), x1), MARK(U21(length(z0)))) MARK(U41(U21(cons(z0, z1)), x1)) -> c38(A__U41(a__U21(cons(mark(z0), z1)), x1), MARK(U21(cons(z0, z1)))) MARK(U41(U21(0), x1)) -> c38(A__U41(a__U21(0), x1), MARK(U21(0))) MARK(U41(U21(tt), x1)) -> c38(A__U41(a__U21(tt), x1), MARK(U21(tt))) MARK(U41(U21(s(z0)), x1)) -> c38(A__U41(a__U21(s(mark(z0))), x1), MARK(U21(s(z0)))) MARK(U41(U21(nil), x1)) -> c38(A__U41(a__U21(nil), x1), MARK(U21(nil))) MARK(U41(U21(x0), x1)) -> c38(MARK(U21(x0))) MARK(U41(U31(zeros), x1)) -> c38(A__U41(a__U31(a__zeros), x1), MARK(U31(zeros))) MARK(U41(U31(U11(z0)), x1)) -> c38(A__U41(a__U31(a__U11(mark(z0))), x1), MARK(U31(U11(z0)))) MARK(U41(U31(U21(z0)), x1)) -> c38(A__U41(a__U31(a__U21(mark(z0))), x1), MARK(U31(U21(z0)))) MARK(U41(U31(U31(z0)), x1)) -> c38(A__U41(a__U31(a__U31(mark(z0))), x1), MARK(U31(U31(z0)))) MARK(U41(U31(U41(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U41(mark(z0), z1)), x1), MARK(U31(U41(z0, z1)))) MARK(U41(U31(U42(z0)), x1)) -> c38(A__U41(a__U31(a__U42(mark(z0))), x1), MARK(U31(U42(z0)))) MARK(U41(U31(isNatIList(z0)), x1)) -> c38(A__U41(a__U31(a__isNatIList(z0)), x1), MARK(U31(isNatIList(z0)))) MARK(U41(U31(U51(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U51(mark(z0), z1)), x1), MARK(U31(U51(z0, z1)))) MARK(U41(U31(U52(z0)), x1)) -> c38(A__U41(a__U31(a__U52(mark(z0))), x1), MARK(U31(U52(z0)))) MARK(U41(U31(isNatList(z0)), x1)) -> c38(A__U41(a__U31(a__isNatList(z0)), x1), MARK(U31(isNatList(z0)))) MARK(U41(U31(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U31(a__U61(mark(z0), z1, z2)), x1), MARK(U31(U61(z0, z1, z2)))) MARK(U41(U31(U62(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U62(mark(z0), z1)), x1), MARK(U31(U62(z0, z1)))) MARK(U41(U31(isNat(z0)), x1)) -> c38(A__U41(a__U31(a__isNat(z0)), x1), MARK(U31(isNat(z0)))) MARK(U41(U31(length(z0)), x1)) -> c38(A__U41(a__U31(a__length(mark(z0))), x1), MARK(U31(length(z0)))) MARK(U41(U31(cons(z0, z1)), x1)) -> c38(A__U41(a__U31(cons(mark(z0), z1)), x1), MARK(U31(cons(z0, z1)))) MARK(U41(U31(0), x1)) -> c38(A__U41(a__U31(0), x1), MARK(U31(0))) MARK(U41(U31(tt), x1)) -> c38(A__U41(a__U31(tt), x1), MARK(U31(tt))) MARK(U41(U31(s(z0)), x1)) -> c38(A__U41(a__U31(s(mark(z0))), x1), MARK(U31(s(z0)))) MARK(U41(U31(nil), x1)) -> c38(A__U41(a__U31(nil), x1), MARK(U31(nil))) MARK(U41(U31(x0), x1)) -> c38(MARK(U31(x0))) MARK(U41(U41(U11(z0), x1), x2)) -> c38(A__U41(a__U41(a__U11(mark(z0)), x1), x2), MARK(U41(U11(z0), x1))) MARK(U41(U41(U21(z0), x1), x2)) -> c38(A__U41(a__U41(a__U21(mark(z0)), x1), x2), MARK(U41(U21(z0), x1))) MARK(U41(U41(U31(z0), x1), x2)) -> c38(A__U41(a__U41(a__U31(mark(z0)), x1), x2), MARK(U41(U31(z0), x1))) MARK(U41(U41(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U41(mark(z0), z1), x1), x2), MARK(U41(U41(z0, z1), x1))) MARK(U41(U41(U42(z0), x1), x2)) -> c38(A__U41(a__U41(a__U42(mark(z0)), x1), x2), MARK(U41(U42(z0), x1))) MARK(U41(U41(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U51(mark(z0), z1), x1), x2), MARK(U41(U51(z0, z1), x1))) MARK(U41(U41(U52(z0), x1), x2)) -> c38(A__U41(a__U41(a__U52(mark(z0)), x1), x2), MARK(U41(U52(z0), x1))) MARK(U41(U41(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U41(a__U61(mark(z0), z1, z2), x1), x2), MARK(U41(U61(z0, z1, z2), x1))) MARK(U41(U41(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U62(mark(z0), z1), x1), x2), MARK(U41(U62(z0, z1), x1))) MARK(U41(U41(length(z0), x1), x2)) -> c38(A__U41(a__U41(a__length(mark(z0)), x1), x2), MARK(U41(length(z0), x1))) MARK(U41(U41(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U41(cons(mark(z0), z1), x1), x2), MARK(U41(cons(z0, z1), x1))) MARK(U41(U41(s(z0), x1), x2)) -> c38(A__U41(a__U41(s(mark(z0)), x1), x2), MARK(U41(s(z0), x1))) MARK(U41(U41(x0, z1), x2)) -> c38(MARK(U41(x0, z1))) MARK(U41(U41(0, x1), x2)) -> c38(A__U41(a__U41(0, x1), x2)) MARK(U41(U41(nil, x1), x2)) -> c38(A__U41(a__U41(nil, x1), x2)) MARK(U41(U41(zeros, x1), x2)) -> c2(A__U41(a__U41(a__zeros, x1), x2)) MARK(U41(U41(zeros, x1), x2)) -> c2(MARK(U41(zeros, x1))) MARK(U41(U41(isNatIList(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNatIList(z0), x1), x2)) MARK(U41(U41(isNatIList(z0), x1), x2)) -> c2(MARK(U41(isNatIList(z0), x1))) MARK(U41(U41(isNatList(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNatList(z0), x1), x2)) MARK(U41(U41(isNatList(z0), x1), x2)) -> c2(MARK(U41(isNatList(z0), x1))) MARK(U41(U41(isNat(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNat(z0), x1), x2)) MARK(U41(U41(isNat(z0), x1), x2)) -> c2(MARK(U41(isNat(z0), x1))) MARK(U41(U41(tt, x1), x2)) -> c2(A__U41(a__U41(tt, x1), x2)) MARK(U41(U41(tt, x1), x2)) -> c2(MARK(U41(tt, x1))) MARK(U41(U42(zeros), x1)) -> c38(A__U41(a__U42(a__zeros), x1), MARK(U42(zeros))) MARK(U41(U42(U11(z0)), x1)) -> c38(A__U41(a__U42(a__U11(mark(z0))), x1), MARK(U42(U11(z0)))) MARK(U41(U42(U21(z0)), x1)) -> c38(A__U41(a__U42(a__U21(mark(z0))), x1), MARK(U42(U21(z0)))) MARK(U41(U42(U31(z0)), x1)) -> c38(A__U41(a__U42(a__U31(mark(z0))), x1), MARK(U42(U31(z0)))) MARK(U41(U42(U41(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U41(mark(z0), z1)), x1), MARK(U42(U41(z0, z1)))) MARK(U41(U42(U42(z0)), x1)) -> c38(A__U41(a__U42(a__U42(mark(z0))), x1), MARK(U42(U42(z0)))) MARK(U41(U42(isNatIList(z0)), x1)) -> c38(A__U41(a__U42(a__isNatIList(z0)), x1), MARK(U42(isNatIList(z0)))) MARK(U41(U42(U51(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U51(mark(z0), z1)), x1), MARK(U42(U51(z0, z1)))) MARK(U41(U42(U52(z0)), x1)) -> c38(A__U41(a__U42(a__U52(mark(z0))), x1), MARK(U42(U52(z0)))) MARK(U41(U42(isNatList(z0)), x1)) -> c38(A__U41(a__U42(a__isNatList(z0)), x1), MARK(U42(isNatList(z0)))) MARK(U41(U42(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U42(a__U61(mark(z0), z1, z2)), x1), MARK(U42(U61(z0, z1, z2)))) MARK(U41(U42(U62(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U62(mark(z0), z1)), x1), MARK(U42(U62(z0, z1)))) MARK(U41(U42(isNat(z0)), x1)) -> c38(A__U41(a__U42(a__isNat(z0)), x1), MARK(U42(isNat(z0)))) MARK(U41(U42(length(z0)), x1)) -> c38(A__U41(a__U42(a__length(mark(z0))), x1), MARK(U42(length(z0)))) MARK(U41(U42(cons(z0, z1)), x1)) -> c38(A__U41(a__U42(cons(mark(z0), z1)), x1), MARK(U42(cons(z0, z1)))) MARK(U41(U42(0), x1)) -> c38(A__U41(a__U42(0), x1), MARK(U42(0))) MARK(U41(U42(tt), x1)) -> c38(A__U41(a__U42(tt), x1), MARK(U42(tt))) MARK(U41(U42(s(z0)), x1)) -> c38(A__U41(a__U42(s(mark(z0))), x1), MARK(U42(s(z0)))) MARK(U41(U42(nil), x1)) -> c38(A__U41(a__U42(nil), x1), MARK(U42(nil))) MARK(U41(U42(x0), x1)) -> c38(MARK(U42(x0))) K tuples:none Defined Rule Symbols: a__zeros, a__U11_1, a__U21_1, a__U31_1, a__U41_2, a__U42_1, a__U51_2, a__U52_1, a__U61_3, a__U62_2, a__isNat_1, a__isNatIList_1, a__isNatList_1, a__length_1, mark_1 Defined Pair Symbols: MARK_1, A__U41_2, A__U51_2, A__ISNAT_1, A__ISNATILIST_1, A__U61_3, A__U62_2, A__ISNATLIST_1, A__LENGTH_1 Compound Symbols: c40_1, c43_1, c46_1, c48_1, c51_1, c8_1, c12_1, c21_1, c22_1, c24_1, c35_1, c36_1, c37_1, c39_1, c42_1, c16_1, c18_2, c18_1, c26_1, c29_1, c32_1, c38_2, c38_1, c_1, c41_2, c41_1, c1_1, c44_2, c44_1, c45_2, c45_1, c47_2, c47_1, c16_2, c26_2, c29_2, c32_2, c2_1 ---------------------------------------- (191) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace MARK(U41(U51(z0, z1), x1)) -> c38(A__U41(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) by MARK(U41(U51(x0, z1), x2)) -> c38(A__U41(U51(mark(x0), z1), x2), MARK(U51(x0, z1))) MARK(U41(U51(zeros, x1), x2)) -> c38(A__U41(a__U51(a__zeros, x1), x2), MARK(U51(zeros, x1))) MARK(U41(U51(U11(z0), x1), x2)) -> c38(A__U41(a__U51(a__U11(mark(z0)), x1), x2), MARK(U51(U11(z0), x1))) MARK(U41(U51(U21(z0), x1), x2)) -> c38(A__U41(a__U51(a__U21(mark(z0)), x1), x2), MARK(U51(U21(z0), x1))) MARK(U41(U51(U31(z0), x1), x2)) -> c38(A__U41(a__U51(a__U31(mark(z0)), x1), x2), MARK(U51(U31(z0), x1))) MARK(U41(U51(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U41(mark(z0), z1), x1), x2), MARK(U51(U41(z0, z1), x1))) MARK(U41(U51(U42(z0), x1), x2)) -> c38(A__U41(a__U51(a__U42(mark(z0)), x1), x2), MARK(U51(U42(z0), x1))) MARK(U41(U51(isNatIList(z0), x1), x2)) -> c38(A__U41(a__U51(a__isNatIList(z0), x1), x2), MARK(U51(isNatIList(z0), x1))) MARK(U41(U51(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U51(mark(z0), z1), x1), x2), MARK(U51(U51(z0, z1), x1))) MARK(U41(U51(U52(z0), x1), x2)) -> c38(A__U41(a__U51(a__U52(mark(z0)), x1), x2), MARK(U51(U52(z0), x1))) MARK(U41(U51(isNatList(z0), x1), x2)) -> c38(A__U41(a__U51(a__isNatList(z0), x1), x2), MARK(U51(isNatList(z0), x1))) MARK(U41(U51(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U51(a__U61(mark(z0), z1, z2), x1), x2), MARK(U51(U61(z0, z1, z2), x1))) MARK(U41(U51(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U62(mark(z0), z1), x1), x2), MARK(U51(U62(z0, z1), x1))) MARK(U41(U51(isNat(z0), x1), x2)) -> c38(A__U41(a__U51(a__isNat(z0), x1), x2), MARK(U51(isNat(z0), x1))) MARK(U41(U51(length(z0), x1), x2)) -> c38(A__U41(a__U51(a__length(mark(z0)), x1), x2), MARK(U51(length(z0), x1))) MARK(U41(U51(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U51(cons(mark(z0), z1), x1), x2), MARK(U51(cons(z0, z1), x1))) MARK(U41(U51(0, x1), x2)) -> c38(A__U41(a__U51(0, x1), x2), MARK(U51(0, x1))) MARK(U41(U51(tt, x1), x2)) -> c38(A__U41(a__U51(tt, x1), x2), MARK(U51(tt, x1))) MARK(U41(U51(s(z0), x1), x2)) -> c38(A__U41(a__U51(s(mark(z0)), x1), x2), MARK(U51(s(z0), x1))) MARK(U41(U51(nil, x1), x2)) -> c38(A__U41(a__U51(nil, x1), x2), MARK(U51(nil, x1))) ---------------------------------------- (192) Obligation: Complexity Dependency Tuples Problem Rules: a__zeros -> cons(0, zeros) a__zeros -> zeros a__U11(tt) -> tt a__U11(z0) -> U11(z0) a__U21(tt) -> tt a__U21(z0) -> U21(z0) a__U31(tt) -> tt a__U31(z0) -> U31(z0) a__U41(tt, z0) -> a__U42(a__isNatIList(z0)) a__U41(z0, z1) -> U41(z0, z1) a__U42(tt) -> tt a__U42(z0) -> U42(z0) a__U51(tt, z0) -> a__U52(a__isNatList(z0)) a__U51(z0, z1) -> U51(z0, z1) a__U52(tt) -> tt a__U52(z0) -> U52(z0) a__U61(tt, z0, z1) -> a__U62(a__isNat(z1), z0) a__U61(z0, z1, z2) -> U61(z0, z1, z2) a__U62(tt, z0) -> s(a__length(mark(z0))) a__U62(z0, z1) -> U62(z0, z1) a__isNat(0) -> tt a__isNat(length(z0)) -> a__U11(a__isNatList(z0)) a__isNat(s(z0)) -> a__U21(a__isNat(z0)) a__isNat(z0) -> isNat(z0) a__isNatIList(z0) -> a__U31(a__isNatList(z0)) a__isNatIList(zeros) -> tt a__isNatIList(cons(z0, z1)) -> a__U41(a__isNat(z0), z1) a__isNatIList(z0) -> isNatIList(z0) a__isNatList(nil) -> tt a__isNatList(cons(z0, z1)) -> a__U51(a__isNat(z0), z1) a__isNatList(z0) -> isNatList(z0) a__length(nil) -> 0 a__length(cons(z0, z1)) -> a__U61(a__isNatList(z1), z1, z0) a__length(z0) -> length(z0) mark(zeros) -> a__zeros mark(U11(z0)) -> a__U11(mark(z0)) mark(U21(z0)) -> a__U21(mark(z0)) mark(U31(z0)) -> a__U31(mark(z0)) mark(U41(z0, z1)) -> a__U41(mark(z0), z1) mark(U42(z0)) -> a__U42(mark(z0)) mark(isNatIList(z0)) -> a__isNatIList(z0) mark(U51(z0, z1)) -> a__U51(mark(z0), z1) mark(U52(z0)) -> a__U52(mark(z0)) mark(isNatList(z0)) -> a__isNatList(z0) mark(U61(z0, z1, z2)) -> a__U61(mark(z0), z1, z2) mark(U62(z0, z1)) -> a__U62(mark(z0), z1) mark(isNat(z0)) -> a__isNat(z0) mark(length(z0)) -> a__length(mark(z0)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(0) -> 0 mark(tt) -> tt mark(s(z0)) -> s(mark(z0)) mark(nil) -> nil Tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) A__U62(tt, isNatList(cons(z0, z1))) -> c18(A__LENGTH(a__U51(a__isNat(z0), z1)), MARK(isNatList(cons(z0, z1)))) A__U62(tt, isNatList(nil)) -> c18(MARK(isNatList(nil))) A__U62(tt, isNatList(z0)) -> c18(MARK(isNatList(z0))) A__U62(tt, U61(zeros, x1, x2)) -> c18(A__LENGTH(a__U61(a__zeros, x1, x2)), MARK(U61(zeros, x1, x2))) A__U62(tt, U61(U11(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U11(mark(z0)), x1, x2)), MARK(U61(U11(z0), x1, x2))) A__U62(tt, U61(U21(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U21(mark(z0)), x1, x2)), MARK(U61(U21(z0), x1, x2))) A__U62(tt, U61(U31(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U31(mark(z0)), x1, x2)), MARK(U61(U31(z0), x1, x2))) A__U62(tt, U61(U41(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U41(mark(z0), z1), x1, x2)), MARK(U61(U41(z0, z1), x1, x2))) A__U62(tt, U61(U42(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U42(mark(z0)), x1, x2)), MARK(U61(U42(z0), x1, x2))) A__U62(tt, U61(isNatIList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatIList(z0), x1, x2)), MARK(U61(isNatIList(z0), x1, x2))) A__U62(tt, U61(U51(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U51(mark(z0), z1), x1, x2)), MARK(U61(U51(z0, z1), x1, x2))) A__U62(tt, U61(U52(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U52(mark(z0)), x1, x2)), MARK(U61(U52(z0), x1, x2))) A__U62(tt, U61(isNatList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatList(z0), x1, x2)), MARK(U61(isNatList(z0), x1, x2))) A__U62(tt, U61(U61(z0, z1, z2), x1, x2)) -> c18(A__LENGTH(a__U61(a__U61(mark(z0), z1, z2), x1, x2)), MARK(U61(U61(z0, z1, z2), x1, x2))) A__U62(tt, U61(U62(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U62(mark(z0), z1), x1, x2)), MARK(U61(U62(z0, z1), x1, x2))) A__U62(tt, U61(isNat(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNat(z0), x1, x2)), MARK(U61(isNat(z0), x1, x2))) A__U62(tt, U61(length(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__length(mark(z0)), x1, x2)), MARK(U61(length(z0), x1, x2))) A__U62(tt, U61(cons(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(cons(mark(z0), z1), x1, x2)), MARK(U61(cons(z0, z1), x1, x2))) A__U62(tt, U61(tt, x1, x2)) -> c18(A__LENGTH(a__U61(tt, x1, x2)), MARK(U61(tt, x1, x2))) A__U62(tt, U61(s(z0), x1, x2)) -> c18(A__LENGTH(a__U61(s(mark(z0)), x1, x2)), MARK(U61(s(z0), x1, x2))) A__U62(tt, U61(x0, z1, z2)) -> c18(MARK(U61(x0, z1, z2))) A__U62(tt, U61(0, x1, x2)) -> c18(A__LENGTH(a__U61(0, x1, x2))) A__U62(tt, U61(nil, x1, x2)) -> c18(A__LENGTH(a__U61(nil, x1, x2))) A__U62(tt, U62(zeros, x1)) -> c18(A__LENGTH(a__U62(a__zeros, x1)), MARK(U62(zeros, x1))) A__U62(tt, U62(U11(z0), x1)) -> c18(A__LENGTH(a__U62(a__U11(mark(z0)), x1)), MARK(U62(U11(z0), x1))) A__U62(tt, U62(U21(z0), x1)) -> c18(A__LENGTH(a__U62(a__U21(mark(z0)), x1)), MARK(U62(U21(z0), x1))) A__U62(tt, U62(U31(z0), x1)) -> c18(A__LENGTH(a__U62(a__U31(mark(z0)), x1)), MARK(U62(U31(z0), x1))) A__U62(tt, U62(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U41(mark(z0), z1), x1)), MARK(U62(U41(z0, z1), x1))) A__U62(tt, U62(U42(z0), x1)) -> c18(A__LENGTH(a__U62(a__U42(mark(z0)), x1)), MARK(U62(U42(z0), x1))) A__U62(tt, U62(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatIList(z0), x1)), MARK(U62(isNatIList(z0), x1))) A__U62(tt, U62(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U51(mark(z0), z1), x1)), MARK(U62(U51(z0, z1), x1))) A__U62(tt, U62(U52(z0), x1)) -> c18(A__LENGTH(a__U62(a__U52(mark(z0)), x1)), MARK(U62(U52(z0), x1))) A__U62(tt, U62(isNatList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatList(z0), x1)), MARK(U62(isNatList(z0), x1))) A__U62(tt, U62(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U62(a__U61(mark(z0), z1, z2), x1)), MARK(U62(U61(z0, z1, z2), x1))) A__U62(tt, U62(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U62(mark(z0), z1), x1)), MARK(U62(U62(z0, z1), x1))) A__U62(tt, U62(isNat(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNat(z0), x1)), MARK(U62(isNat(z0), x1))) A__U62(tt, U62(length(z0), x1)) -> c18(A__LENGTH(a__U62(a__length(mark(z0)), x1)), MARK(U62(length(z0), x1))) A__U62(tt, U62(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U62(cons(mark(z0), z1), x1)), MARK(U62(cons(z0, z1), x1))) A__U62(tt, U62(tt, x1)) -> c18(A__LENGTH(a__U62(tt, x1)), MARK(U62(tt, x1))) A__U62(tt, U62(s(z0), x1)) -> c18(A__LENGTH(a__U62(s(mark(z0)), x1)), MARK(U62(s(z0), x1))) A__U62(tt, U62(x0, z1)) -> c18(MARK(U62(x0, z1))) A__U62(tt, U62(0, x1)) -> c18(A__LENGTH(a__U62(0, x1))) A__U62(tt, U62(nil, x1)) -> c18(A__LENGTH(a__U62(nil, x1))) A__U62(tt, isNat(length(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(isNat(length(z0)))) A__U62(tt, isNat(s(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(isNat(s(z0)))) A__U62(tt, isNat(0)) -> c18(MARK(isNat(0))) A__U62(tt, isNat(z0)) -> c18(MARK(isNat(z0))) A__U62(tt, length(zeros)) -> c18(A__LENGTH(a__length(a__zeros)), MARK(length(zeros))) A__U62(tt, length(U11(z0))) -> c18(A__LENGTH(a__length(a__U11(mark(z0)))), MARK(length(U11(z0)))) A__U62(tt, length(U21(z0))) -> c18(A__LENGTH(a__length(a__U21(mark(z0)))), MARK(length(U21(z0)))) A__U62(tt, length(U31(z0))) -> c18(A__LENGTH(a__length(a__U31(mark(z0)))), MARK(length(U31(z0)))) A__U62(tt, length(U41(z0, z1))) -> c18(A__LENGTH(a__length(a__U41(mark(z0), z1))), MARK(length(U41(z0, z1)))) A__U62(tt, length(U42(z0))) -> c18(A__LENGTH(a__length(a__U42(mark(z0)))), MARK(length(U42(z0)))) A__U62(tt, length(isNatIList(z0))) -> c18(A__LENGTH(a__length(a__isNatIList(z0))), MARK(length(isNatIList(z0)))) A__U62(tt, length(U51(z0, z1))) -> c18(A__LENGTH(a__length(a__U51(mark(z0), z1))), MARK(length(U51(z0, z1)))) A__U62(tt, length(U52(z0))) -> c18(A__LENGTH(a__length(a__U52(mark(z0)))), MARK(length(U52(z0)))) A__U62(tt, length(isNatList(z0))) -> c18(A__LENGTH(a__length(a__isNatList(z0))), MARK(length(isNatList(z0)))) A__U62(tt, length(U61(z0, z1, z2))) -> c18(A__LENGTH(a__length(a__U61(mark(z0), z1, z2))), MARK(length(U61(z0, z1, z2)))) A__U62(tt, length(U62(z0, z1))) -> c18(A__LENGTH(a__length(a__U62(mark(z0), z1))), MARK(length(U62(z0, z1)))) A__U62(tt, length(isNat(z0))) -> c18(A__LENGTH(a__length(a__isNat(z0))), MARK(length(isNat(z0)))) A__U62(tt, length(length(z0))) -> c18(A__LENGTH(a__length(a__length(mark(z0)))), MARK(length(length(z0)))) A__U62(tt, length(cons(z0, z1))) -> c18(A__LENGTH(a__length(cons(mark(z0), z1))), MARK(length(cons(z0, z1)))) A__U62(tt, length(s(z0))) -> c18(A__LENGTH(a__length(s(mark(z0)))), MARK(length(s(z0)))) A__U62(tt, length(x0)) -> c18(MARK(length(x0))) A__U62(tt, length(0)) -> c18(A__LENGTH(a__length(0))) A__U62(tt, length(tt)) -> c18(A__LENGTH(a__length(tt))) A__U62(tt, length(nil)) -> c18(A__LENGTH(a__length(nil))) A__U62(tt, zeros) -> c18(A__LENGTH(cons(0, zeros))) A__ISNATILIST(cons(length(nil), x1)) -> c26(A__U41(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATILIST(cons(length(cons(z0, z1)), x1)) -> c26(A__U41(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(length(x0), x1)) -> c26(A__ISNAT(length(x0))) A__ISNATILIST(cons(s(0), x1)) -> c26(A__U41(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATILIST(cons(s(length(z0)), x1)) -> c26(A__U41(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATILIST(cons(s(s(z0)), x1)) -> c26(A__U41(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(s(x0), x1)) -> c26(A__ISNAT(s(x0))) A__ISNATLIST(cons(length(nil), x1)) -> c29(A__U51(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATLIST(cons(length(cons(z0, z1)), x1)) -> c29(A__U51(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(length(x0), x1)) -> c29(A__ISNAT(length(x0))) A__ISNATLIST(cons(s(0), x1)) -> c29(A__U51(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATLIST(cons(s(length(z0)), x1)) -> c29(A__U51(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATLIST(cons(s(s(z0)), x1)) -> c29(A__U51(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(s(x0), x1)) -> c29(A__ISNAT(s(x0))) A__LENGTH(cons(x0, cons(0, x2))) -> c32(A__U61(a__U51(tt, x2), cons(0, x2), x0), A__ISNATLIST(cons(0, x2))) A__LENGTH(cons(x0, cons(length(z0), x2))) -> c32(A__U61(a__U51(a__U11(a__isNatList(z0)), x2), cons(length(z0), x2), x0), A__ISNATLIST(cons(length(z0), x2))) A__LENGTH(cons(x0, cons(s(z0), x2))) -> c32(A__U61(a__U51(a__U21(a__isNat(z0)), x2), cons(s(z0), x2), x0), A__ISNATLIST(cons(s(z0), x2))) A__LENGTH(cons(x0, cons(z0, x2))) -> c32(A__U61(a__U51(isNat(z0), x2), cons(z0, x2), x0), A__ISNATLIST(cons(z0, x2))) A__LENGTH(cons(x0, cons(x1, z1))) -> c32(A__ISNATLIST(cons(x1, z1))) MARK(U41(U11(zeros), x1)) -> c38(A__U41(a__U11(a__zeros), x1), MARK(U11(zeros))) MARK(U41(U11(U11(z0)), x1)) -> c38(A__U41(a__U11(a__U11(mark(z0))), x1), MARK(U11(U11(z0)))) MARK(U41(U11(U21(z0)), x1)) -> c38(A__U41(a__U11(a__U21(mark(z0))), x1), MARK(U11(U21(z0)))) MARK(U41(U11(U31(z0)), x1)) -> c38(A__U41(a__U11(a__U31(mark(z0))), x1), MARK(U11(U31(z0)))) MARK(U41(U11(U41(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U41(mark(z0), z1)), x1), MARK(U11(U41(z0, z1)))) MARK(U41(U11(U42(z0)), x1)) -> c38(A__U41(a__U11(a__U42(mark(z0))), x1), MARK(U11(U42(z0)))) MARK(U41(U11(isNatIList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatIList(z0)), x1), MARK(U11(isNatIList(z0)))) MARK(U41(U11(U51(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U51(mark(z0), z1)), x1), MARK(U11(U51(z0, z1)))) MARK(U41(U11(U52(z0)), x1)) -> c38(A__U41(a__U11(a__U52(mark(z0))), x1), MARK(U11(U52(z0)))) MARK(U41(U11(isNatList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatList(z0)), x1), MARK(U11(isNatList(z0)))) MARK(U41(U11(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U11(a__U61(mark(z0), z1, z2)), x1), MARK(U11(U61(z0, z1, z2)))) MARK(U41(U11(U62(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U62(mark(z0), z1)), x1), MARK(U11(U62(z0, z1)))) MARK(U41(U11(isNat(z0)), x1)) -> c38(A__U41(a__U11(a__isNat(z0)), x1), MARK(U11(isNat(z0)))) MARK(U41(U11(length(z0)), x1)) -> c38(A__U41(a__U11(a__length(mark(z0))), x1), MARK(U11(length(z0)))) MARK(U41(U11(cons(z0, z1)), x1)) -> c38(A__U41(a__U11(cons(mark(z0), z1)), x1), MARK(U11(cons(z0, z1)))) MARK(U41(U11(0), x1)) -> c38(A__U41(a__U11(0), x1), MARK(U11(0))) MARK(U41(U11(tt), x1)) -> c38(A__U41(a__U11(tt), x1), MARK(U11(tt))) MARK(U41(U11(s(z0)), x1)) -> c38(A__U41(a__U11(s(mark(z0))), x1), MARK(U11(s(z0)))) MARK(U41(U11(nil), x1)) -> c38(A__U41(a__U11(nil), x1), MARK(U11(nil))) MARK(U41(U11(x0), x1)) -> c38(MARK(U11(x0))) MARK(U41(U21(zeros), x1)) -> c38(A__U41(a__U21(a__zeros), x1), MARK(U21(zeros))) MARK(U41(U21(U11(z0)), x1)) -> c38(A__U41(a__U21(a__U11(mark(z0))), x1), MARK(U21(U11(z0)))) MARK(U41(U21(U21(z0)), x1)) -> c38(A__U41(a__U21(a__U21(mark(z0))), x1), MARK(U21(U21(z0)))) MARK(U41(U21(U31(z0)), x1)) -> c38(A__U41(a__U21(a__U31(mark(z0))), x1), MARK(U21(U31(z0)))) MARK(U41(U21(U41(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U41(mark(z0), z1)), x1), MARK(U21(U41(z0, z1)))) MARK(U41(U21(U42(z0)), x1)) -> c38(A__U41(a__U21(a__U42(mark(z0))), x1), MARK(U21(U42(z0)))) MARK(U41(U21(isNatIList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatIList(z0)), x1), MARK(U21(isNatIList(z0)))) MARK(U41(U21(U51(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U51(mark(z0), z1)), x1), MARK(U21(U51(z0, z1)))) MARK(U41(U21(U52(z0)), x1)) -> c38(A__U41(a__U21(a__U52(mark(z0))), x1), MARK(U21(U52(z0)))) MARK(U41(U21(isNatList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatList(z0)), x1), MARK(U21(isNatList(z0)))) MARK(U41(U21(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U21(a__U61(mark(z0), z1, z2)), x1), MARK(U21(U61(z0, z1, z2)))) MARK(U41(U21(U62(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U62(mark(z0), z1)), x1), MARK(U21(U62(z0, z1)))) MARK(U41(U21(isNat(z0)), x1)) -> c38(A__U41(a__U21(a__isNat(z0)), x1), MARK(U21(isNat(z0)))) MARK(U41(U21(length(z0)), x1)) -> c38(A__U41(a__U21(a__length(mark(z0))), x1), MARK(U21(length(z0)))) MARK(U41(U21(cons(z0, z1)), x1)) -> c38(A__U41(a__U21(cons(mark(z0), z1)), x1), MARK(U21(cons(z0, z1)))) MARK(U41(U21(0), x1)) -> c38(A__U41(a__U21(0), x1), MARK(U21(0))) MARK(U41(U21(tt), x1)) -> c38(A__U41(a__U21(tt), x1), MARK(U21(tt))) MARK(U41(U21(s(z0)), x1)) -> c38(A__U41(a__U21(s(mark(z0))), x1), MARK(U21(s(z0)))) MARK(U41(U21(nil), x1)) -> c38(A__U41(a__U21(nil), x1), MARK(U21(nil))) MARK(U41(U21(x0), x1)) -> c38(MARK(U21(x0))) MARK(U41(U31(zeros), x1)) -> c38(A__U41(a__U31(a__zeros), x1), MARK(U31(zeros))) MARK(U41(U31(U11(z0)), x1)) -> c38(A__U41(a__U31(a__U11(mark(z0))), x1), MARK(U31(U11(z0)))) MARK(U41(U31(U21(z0)), x1)) -> c38(A__U41(a__U31(a__U21(mark(z0))), x1), MARK(U31(U21(z0)))) MARK(U41(U31(U31(z0)), x1)) -> c38(A__U41(a__U31(a__U31(mark(z0))), x1), MARK(U31(U31(z0)))) MARK(U41(U31(U41(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U41(mark(z0), z1)), x1), MARK(U31(U41(z0, z1)))) MARK(U41(U31(U42(z0)), x1)) -> c38(A__U41(a__U31(a__U42(mark(z0))), x1), MARK(U31(U42(z0)))) MARK(U41(U31(isNatIList(z0)), x1)) -> c38(A__U41(a__U31(a__isNatIList(z0)), x1), MARK(U31(isNatIList(z0)))) MARK(U41(U31(U51(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U51(mark(z0), z1)), x1), MARK(U31(U51(z0, z1)))) MARK(U41(U31(U52(z0)), x1)) -> c38(A__U41(a__U31(a__U52(mark(z0))), x1), MARK(U31(U52(z0)))) MARK(U41(U31(isNatList(z0)), x1)) -> c38(A__U41(a__U31(a__isNatList(z0)), x1), MARK(U31(isNatList(z0)))) MARK(U41(U31(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U31(a__U61(mark(z0), z1, z2)), x1), MARK(U31(U61(z0, z1, z2)))) MARK(U41(U31(U62(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U62(mark(z0), z1)), x1), MARK(U31(U62(z0, z1)))) MARK(U41(U31(isNat(z0)), x1)) -> c38(A__U41(a__U31(a__isNat(z0)), x1), MARK(U31(isNat(z0)))) MARK(U41(U31(length(z0)), x1)) -> c38(A__U41(a__U31(a__length(mark(z0))), x1), MARK(U31(length(z0)))) MARK(U41(U31(cons(z0, z1)), x1)) -> c38(A__U41(a__U31(cons(mark(z0), z1)), x1), MARK(U31(cons(z0, z1)))) MARK(U41(U31(0), x1)) -> c38(A__U41(a__U31(0), x1), MARK(U31(0))) MARK(U41(U31(tt), x1)) -> c38(A__U41(a__U31(tt), x1), MARK(U31(tt))) MARK(U41(U31(s(z0)), x1)) -> c38(A__U41(a__U31(s(mark(z0))), x1), MARK(U31(s(z0)))) MARK(U41(U31(nil), x1)) -> c38(A__U41(a__U31(nil), x1), MARK(U31(nil))) MARK(U41(U31(x0), x1)) -> c38(MARK(U31(x0))) MARK(U41(U41(U11(z0), x1), x2)) -> c38(A__U41(a__U41(a__U11(mark(z0)), x1), x2), MARK(U41(U11(z0), x1))) MARK(U41(U41(U21(z0), x1), x2)) -> c38(A__U41(a__U41(a__U21(mark(z0)), x1), x2), MARK(U41(U21(z0), x1))) MARK(U41(U41(U31(z0), x1), x2)) -> c38(A__U41(a__U41(a__U31(mark(z0)), x1), x2), MARK(U41(U31(z0), x1))) MARK(U41(U41(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U41(mark(z0), z1), x1), x2), MARK(U41(U41(z0, z1), x1))) MARK(U41(U41(U42(z0), x1), x2)) -> c38(A__U41(a__U41(a__U42(mark(z0)), x1), x2), MARK(U41(U42(z0), x1))) MARK(U41(U41(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U51(mark(z0), z1), x1), x2), MARK(U41(U51(z0, z1), x1))) MARK(U41(U41(U52(z0), x1), x2)) -> c38(A__U41(a__U41(a__U52(mark(z0)), x1), x2), MARK(U41(U52(z0), x1))) MARK(U41(U41(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U41(a__U61(mark(z0), z1, z2), x1), x2), MARK(U41(U61(z0, z1, z2), x1))) MARK(U41(U41(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U62(mark(z0), z1), x1), x2), MARK(U41(U62(z0, z1), x1))) MARK(U41(U41(length(z0), x1), x2)) -> c38(A__U41(a__U41(a__length(mark(z0)), x1), x2), MARK(U41(length(z0), x1))) MARK(U41(U41(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U41(cons(mark(z0), z1), x1), x2), MARK(U41(cons(z0, z1), x1))) MARK(U41(U41(s(z0), x1), x2)) -> c38(A__U41(a__U41(s(mark(z0)), x1), x2), MARK(U41(s(z0), x1))) MARK(U41(U41(x0, z1), x2)) -> c38(MARK(U41(x0, z1))) MARK(U41(U41(0, x1), x2)) -> c38(A__U41(a__U41(0, x1), x2)) MARK(U41(U41(nil, x1), x2)) -> c38(A__U41(a__U41(nil, x1), x2)) MARK(U41(U41(zeros, x1), x2)) -> c2(A__U41(a__U41(a__zeros, x1), x2)) MARK(U41(U41(zeros, x1), x2)) -> c2(MARK(U41(zeros, x1))) MARK(U41(U41(isNatIList(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNatIList(z0), x1), x2)) MARK(U41(U41(isNatIList(z0), x1), x2)) -> c2(MARK(U41(isNatIList(z0), x1))) MARK(U41(U41(isNatList(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNatList(z0), x1), x2)) MARK(U41(U41(isNatList(z0), x1), x2)) -> c2(MARK(U41(isNatList(z0), x1))) MARK(U41(U41(isNat(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNat(z0), x1), x2)) MARK(U41(U41(isNat(z0), x1), x2)) -> c2(MARK(U41(isNat(z0), x1))) MARK(U41(U41(tt, x1), x2)) -> c2(A__U41(a__U41(tt, x1), x2)) MARK(U41(U41(tt, x1), x2)) -> c2(MARK(U41(tt, x1))) MARK(U41(U42(zeros), x1)) -> c38(A__U41(a__U42(a__zeros), x1), MARK(U42(zeros))) MARK(U41(U42(U11(z0)), x1)) -> c38(A__U41(a__U42(a__U11(mark(z0))), x1), MARK(U42(U11(z0)))) MARK(U41(U42(U21(z0)), x1)) -> c38(A__U41(a__U42(a__U21(mark(z0))), x1), MARK(U42(U21(z0)))) MARK(U41(U42(U31(z0)), x1)) -> c38(A__U41(a__U42(a__U31(mark(z0))), x1), MARK(U42(U31(z0)))) MARK(U41(U42(U41(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U41(mark(z0), z1)), x1), MARK(U42(U41(z0, z1)))) MARK(U41(U42(U42(z0)), x1)) -> c38(A__U41(a__U42(a__U42(mark(z0))), x1), MARK(U42(U42(z0)))) MARK(U41(U42(isNatIList(z0)), x1)) -> c38(A__U41(a__U42(a__isNatIList(z0)), x1), MARK(U42(isNatIList(z0)))) MARK(U41(U42(U51(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U51(mark(z0), z1)), x1), MARK(U42(U51(z0, z1)))) MARK(U41(U42(U52(z0)), x1)) -> c38(A__U41(a__U42(a__U52(mark(z0))), x1), MARK(U42(U52(z0)))) MARK(U41(U42(isNatList(z0)), x1)) -> c38(A__U41(a__U42(a__isNatList(z0)), x1), MARK(U42(isNatList(z0)))) MARK(U41(U42(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U42(a__U61(mark(z0), z1, z2)), x1), MARK(U42(U61(z0, z1, z2)))) MARK(U41(U42(U62(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U62(mark(z0), z1)), x1), MARK(U42(U62(z0, z1)))) MARK(U41(U42(isNat(z0)), x1)) -> c38(A__U41(a__U42(a__isNat(z0)), x1), MARK(U42(isNat(z0)))) MARK(U41(U42(length(z0)), x1)) -> c38(A__U41(a__U42(a__length(mark(z0))), x1), MARK(U42(length(z0)))) MARK(U41(U42(cons(z0, z1)), x1)) -> c38(A__U41(a__U42(cons(mark(z0), z1)), x1), MARK(U42(cons(z0, z1)))) MARK(U41(U42(0), x1)) -> c38(A__U41(a__U42(0), x1), MARK(U42(0))) MARK(U41(U42(tt), x1)) -> c38(A__U41(a__U42(tt), x1), MARK(U42(tt))) MARK(U41(U42(s(z0)), x1)) -> c38(A__U41(a__U42(s(mark(z0))), x1), MARK(U42(s(z0)))) MARK(U41(U42(nil), x1)) -> c38(A__U41(a__U42(nil), x1), MARK(U42(nil))) MARK(U41(U42(x0), x1)) -> c38(MARK(U42(x0))) MARK(U41(U51(x0, z1), x2)) -> c38(A__U41(U51(mark(x0), z1), x2), MARK(U51(x0, z1))) MARK(U41(U51(zeros, x1), x2)) -> c38(A__U41(a__U51(a__zeros, x1), x2), MARK(U51(zeros, x1))) MARK(U41(U51(U11(z0), x1), x2)) -> c38(A__U41(a__U51(a__U11(mark(z0)), x1), x2), MARK(U51(U11(z0), x1))) MARK(U41(U51(U21(z0), x1), x2)) -> c38(A__U41(a__U51(a__U21(mark(z0)), x1), x2), MARK(U51(U21(z0), x1))) MARK(U41(U51(U31(z0), x1), x2)) -> c38(A__U41(a__U51(a__U31(mark(z0)), x1), x2), MARK(U51(U31(z0), x1))) MARK(U41(U51(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U41(mark(z0), z1), x1), x2), MARK(U51(U41(z0, z1), x1))) MARK(U41(U51(U42(z0), x1), x2)) -> c38(A__U41(a__U51(a__U42(mark(z0)), x1), x2), MARK(U51(U42(z0), x1))) MARK(U41(U51(isNatIList(z0), x1), x2)) -> c38(A__U41(a__U51(a__isNatIList(z0), x1), x2), MARK(U51(isNatIList(z0), x1))) MARK(U41(U51(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U51(mark(z0), z1), x1), x2), MARK(U51(U51(z0, z1), x1))) MARK(U41(U51(U52(z0), x1), x2)) -> c38(A__U41(a__U51(a__U52(mark(z0)), x1), x2), MARK(U51(U52(z0), x1))) MARK(U41(U51(isNatList(z0), x1), x2)) -> c38(A__U41(a__U51(a__isNatList(z0), x1), x2), MARK(U51(isNatList(z0), x1))) MARK(U41(U51(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U51(a__U61(mark(z0), z1, z2), x1), x2), MARK(U51(U61(z0, z1, z2), x1))) MARK(U41(U51(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U62(mark(z0), z1), x1), x2), MARK(U51(U62(z0, z1), x1))) MARK(U41(U51(isNat(z0), x1), x2)) -> c38(A__U41(a__U51(a__isNat(z0), x1), x2), MARK(U51(isNat(z0), x1))) MARK(U41(U51(length(z0), x1), x2)) -> c38(A__U41(a__U51(a__length(mark(z0)), x1), x2), MARK(U51(length(z0), x1))) MARK(U41(U51(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U51(cons(mark(z0), z1), x1), x2), MARK(U51(cons(z0, z1), x1))) MARK(U41(U51(0, x1), x2)) -> c38(A__U41(a__U51(0, x1), x2), MARK(U51(0, x1))) MARK(U41(U51(tt, x1), x2)) -> c38(A__U41(a__U51(tt, x1), x2), MARK(U51(tt, x1))) MARK(U41(U51(s(z0), x1), x2)) -> c38(A__U41(a__U51(s(mark(z0)), x1), x2), MARK(U51(s(z0), x1))) MARK(U41(U51(nil, x1), x2)) -> c38(A__U41(a__U51(nil, x1), x2), MARK(U51(nil, x1))) S tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) A__U62(tt, isNatList(cons(z0, z1))) -> c18(A__LENGTH(a__U51(a__isNat(z0), z1)), MARK(isNatList(cons(z0, z1)))) A__U62(tt, isNatList(nil)) -> c18(MARK(isNatList(nil))) A__U62(tt, isNatList(z0)) -> c18(MARK(isNatList(z0))) A__U62(tt, U61(zeros, x1, x2)) -> c18(A__LENGTH(a__U61(a__zeros, x1, x2)), MARK(U61(zeros, x1, x2))) A__U62(tt, U61(U11(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U11(mark(z0)), x1, x2)), MARK(U61(U11(z0), x1, x2))) A__U62(tt, U61(U21(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U21(mark(z0)), x1, x2)), MARK(U61(U21(z0), x1, x2))) A__U62(tt, U61(U31(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U31(mark(z0)), x1, x2)), MARK(U61(U31(z0), x1, x2))) A__U62(tt, U61(U41(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U41(mark(z0), z1), x1, x2)), MARK(U61(U41(z0, z1), x1, x2))) A__U62(tt, U61(U42(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U42(mark(z0)), x1, x2)), MARK(U61(U42(z0), x1, x2))) A__U62(tt, U61(isNatIList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatIList(z0), x1, x2)), MARK(U61(isNatIList(z0), x1, x2))) A__U62(tt, U61(U51(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U51(mark(z0), z1), x1, x2)), MARK(U61(U51(z0, z1), x1, x2))) A__U62(tt, U61(U52(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U52(mark(z0)), x1, x2)), MARK(U61(U52(z0), x1, x2))) A__U62(tt, U61(isNatList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatList(z0), x1, x2)), MARK(U61(isNatList(z0), x1, x2))) A__U62(tt, U61(U61(z0, z1, z2), x1, x2)) -> c18(A__LENGTH(a__U61(a__U61(mark(z0), z1, z2), x1, x2)), MARK(U61(U61(z0, z1, z2), x1, x2))) A__U62(tt, U61(U62(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U62(mark(z0), z1), x1, x2)), MARK(U61(U62(z0, z1), x1, x2))) A__U62(tt, U61(isNat(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNat(z0), x1, x2)), MARK(U61(isNat(z0), x1, x2))) A__U62(tt, U61(length(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__length(mark(z0)), x1, x2)), MARK(U61(length(z0), x1, x2))) A__U62(tt, U61(cons(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(cons(mark(z0), z1), x1, x2)), MARK(U61(cons(z0, z1), x1, x2))) A__U62(tt, U61(tt, x1, x2)) -> c18(A__LENGTH(a__U61(tt, x1, x2)), MARK(U61(tt, x1, x2))) A__U62(tt, U61(s(z0), x1, x2)) -> c18(A__LENGTH(a__U61(s(mark(z0)), x1, x2)), MARK(U61(s(z0), x1, x2))) A__U62(tt, U61(x0, z1, z2)) -> c18(MARK(U61(x0, z1, z2))) A__U62(tt, U61(0, x1, x2)) -> c18(A__LENGTH(a__U61(0, x1, x2))) A__U62(tt, U61(nil, x1, x2)) -> c18(A__LENGTH(a__U61(nil, x1, x2))) A__U62(tt, U62(zeros, x1)) -> c18(A__LENGTH(a__U62(a__zeros, x1)), MARK(U62(zeros, x1))) A__U62(tt, U62(U11(z0), x1)) -> c18(A__LENGTH(a__U62(a__U11(mark(z0)), x1)), MARK(U62(U11(z0), x1))) A__U62(tt, U62(U21(z0), x1)) -> c18(A__LENGTH(a__U62(a__U21(mark(z0)), x1)), MARK(U62(U21(z0), x1))) A__U62(tt, U62(U31(z0), x1)) -> c18(A__LENGTH(a__U62(a__U31(mark(z0)), x1)), MARK(U62(U31(z0), x1))) A__U62(tt, U62(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U41(mark(z0), z1), x1)), MARK(U62(U41(z0, z1), x1))) A__U62(tt, U62(U42(z0), x1)) -> c18(A__LENGTH(a__U62(a__U42(mark(z0)), x1)), MARK(U62(U42(z0), x1))) A__U62(tt, U62(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatIList(z0), x1)), MARK(U62(isNatIList(z0), x1))) A__U62(tt, U62(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U51(mark(z0), z1), x1)), MARK(U62(U51(z0, z1), x1))) A__U62(tt, U62(U52(z0), x1)) -> c18(A__LENGTH(a__U62(a__U52(mark(z0)), x1)), MARK(U62(U52(z0), x1))) A__U62(tt, U62(isNatList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatList(z0), x1)), MARK(U62(isNatList(z0), x1))) A__U62(tt, U62(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U62(a__U61(mark(z0), z1, z2), x1)), MARK(U62(U61(z0, z1, z2), x1))) A__U62(tt, U62(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U62(mark(z0), z1), x1)), MARK(U62(U62(z0, z1), x1))) A__U62(tt, U62(isNat(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNat(z0), x1)), MARK(U62(isNat(z0), x1))) A__U62(tt, U62(length(z0), x1)) -> c18(A__LENGTH(a__U62(a__length(mark(z0)), x1)), MARK(U62(length(z0), x1))) A__U62(tt, U62(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U62(cons(mark(z0), z1), x1)), MARK(U62(cons(z0, z1), x1))) A__U62(tt, U62(tt, x1)) -> c18(A__LENGTH(a__U62(tt, x1)), MARK(U62(tt, x1))) A__U62(tt, U62(s(z0), x1)) -> c18(A__LENGTH(a__U62(s(mark(z0)), x1)), MARK(U62(s(z0), x1))) A__U62(tt, U62(x0, z1)) -> c18(MARK(U62(x0, z1))) A__U62(tt, U62(0, x1)) -> c18(A__LENGTH(a__U62(0, x1))) A__U62(tt, U62(nil, x1)) -> c18(A__LENGTH(a__U62(nil, x1))) A__U62(tt, isNat(length(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(isNat(length(z0)))) A__U62(tt, isNat(s(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(isNat(s(z0)))) A__U62(tt, isNat(0)) -> c18(MARK(isNat(0))) A__U62(tt, isNat(z0)) -> c18(MARK(isNat(z0))) A__U62(tt, length(zeros)) -> c18(A__LENGTH(a__length(a__zeros)), MARK(length(zeros))) A__U62(tt, length(U11(z0))) -> c18(A__LENGTH(a__length(a__U11(mark(z0)))), MARK(length(U11(z0)))) A__U62(tt, length(U21(z0))) -> c18(A__LENGTH(a__length(a__U21(mark(z0)))), MARK(length(U21(z0)))) A__U62(tt, length(U31(z0))) -> c18(A__LENGTH(a__length(a__U31(mark(z0)))), MARK(length(U31(z0)))) A__U62(tt, length(U41(z0, z1))) -> c18(A__LENGTH(a__length(a__U41(mark(z0), z1))), MARK(length(U41(z0, z1)))) A__U62(tt, length(U42(z0))) -> c18(A__LENGTH(a__length(a__U42(mark(z0)))), MARK(length(U42(z0)))) A__U62(tt, length(isNatIList(z0))) -> c18(A__LENGTH(a__length(a__isNatIList(z0))), MARK(length(isNatIList(z0)))) A__U62(tt, length(U51(z0, z1))) -> c18(A__LENGTH(a__length(a__U51(mark(z0), z1))), MARK(length(U51(z0, z1)))) A__U62(tt, length(U52(z0))) -> c18(A__LENGTH(a__length(a__U52(mark(z0)))), MARK(length(U52(z0)))) A__U62(tt, length(isNatList(z0))) -> c18(A__LENGTH(a__length(a__isNatList(z0))), MARK(length(isNatList(z0)))) A__U62(tt, length(U61(z0, z1, z2))) -> c18(A__LENGTH(a__length(a__U61(mark(z0), z1, z2))), MARK(length(U61(z0, z1, z2)))) A__U62(tt, length(U62(z0, z1))) -> c18(A__LENGTH(a__length(a__U62(mark(z0), z1))), MARK(length(U62(z0, z1)))) A__U62(tt, length(isNat(z0))) -> c18(A__LENGTH(a__length(a__isNat(z0))), MARK(length(isNat(z0)))) A__U62(tt, length(length(z0))) -> c18(A__LENGTH(a__length(a__length(mark(z0)))), MARK(length(length(z0)))) A__U62(tt, length(cons(z0, z1))) -> c18(A__LENGTH(a__length(cons(mark(z0), z1))), MARK(length(cons(z0, z1)))) A__U62(tt, length(s(z0))) -> c18(A__LENGTH(a__length(s(mark(z0)))), MARK(length(s(z0)))) A__U62(tt, length(x0)) -> c18(MARK(length(x0))) A__U62(tt, length(0)) -> c18(A__LENGTH(a__length(0))) A__U62(tt, length(tt)) -> c18(A__LENGTH(a__length(tt))) A__U62(tt, length(nil)) -> c18(A__LENGTH(a__length(nil))) A__U62(tt, zeros) -> c18(A__LENGTH(cons(0, zeros))) A__ISNATILIST(cons(length(nil), x1)) -> c26(A__U41(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATILIST(cons(length(cons(z0, z1)), x1)) -> c26(A__U41(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(length(x0), x1)) -> c26(A__ISNAT(length(x0))) A__ISNATILIST(cons(s(0), x1)) -> c26(A__U41(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATILIST(cons(s(length(z0)), x1)) -> c26(A__U41(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATILIST(cons(s(s(z0)), x1)) -> c26(A__U41(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(s(x0), x1)) -> c26(A__ISNAT(s(x0))) A__ISNATLIST(cons(length(nil), x1)) -> c29(A__U51(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATLIST(cons(length(cons(z0, z1)), x1)) -> c29(A__U51(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(length(x0), x1)) -> c29(A__ISNAT(length(x0))) A__ISNATLIST(cons(s(0), x1)) -> c29(A__U51(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATLIST(cons(s(length(z0)), x1)) -> c29(A__U51(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATLIST(cons(s(s(z0)), x1)) -> c29(A__U51(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(s(x0), x1)) -> c29(A__ISNAT(s(x0))) A__LENGTH(cons(x0, cons(0, x2))) -> c32(A__U61(a__U51(tt, x2), cons(0, x2), x0), A__ISNATLIST(cons(0, x2))) A__LENGTH(cons(x0, cons(length(z0), x2))) -> c32(A__U61(a__U51(a__U11(a__isNatList(z0)), x2), cons(length(z0), x2), x0), A__ISNATLIST(cons(length(z0), x2))) A__LENGTH(cons(x0, cons(s(z0), x2))) -> c32(A__U61(a__U51(a__U21(a__isNat(z0)), x2), cons(s(z0), x2), x0), A__ISNATLIST(cons(s(z0), x2))) A__LENGTH(cons(x0, cons(z0, x2))) -> c32(A__U61(a__U51(isNat(z0), x2), cons(z0, x2), x0), A__ISNATLIST(cons(z0, x2))) A__LENGTH(cons(x0, cons(x1, z1))) -> c32(A__ISNATLIST(cons(x1, z1))) MARK(U41(U11(zeros), x1)) -> c38(A__U41(a__U11(a__zeros), x1), MARK(U11(zeros))) MARK(U41(U11(U11(z0)), x1)) -> c38(A__U41(a__U11(a__U11(mark(z0))), x1), MARK(U11(U11(z0)))) MARK(U41(U11(U21(z0)), x1)) -> c38(A__U41(a__U11(a__U21(mark(z0))), x1), MARK(U11(U21(z0)))) MARK(U41(U11(U31(z0)), x1)) -> c38(A__U41(a__U11(a__U31(mark(z0))), x1), MARK(U11(U31(z0)))) MARK(U41(U11(U41(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U41(mark(z0), z1)), x1), MARK(U11(U41(z0, z1)))) MARK(U41(U11(U42(z0)), x1)) -> c38(A__U41(a__U11(a__U42(mark(z0))), x1), MARK(U11(U42(z0)))) MARK(U41(U11(isNatIList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatIList(z0)), x1), MARK(U11(isNatIList(z0)))) MARK(U41(U11(U51(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U51(mark(z0), z1)), x1), MARK(U11(U51(z0, z1)))) MARK(U41(U11(U52(z0)), x1)) -> c38(A__U41(a__U11(a__U52(mark(z0))), x1), MARK(U11(U52(z0)))) MARK(U41(U11(isNatList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatList(z0)), x1), MARK(U11(isNatList(z0)))) MARK(U41(U11(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U11(a__U61(mark(z0), z1, z2)), x1), MARK(U11(U61(z0, z1, z2)))) MARK(U41(U11(U62(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U62(mark(z0), z1)), x1), MARK(U11(U62(z0, z1)))) MARK(U41(U11(isNat(z0)), x1)) -> c38(A__U41(a__U11(a__isNat(z0)), x1), MARK(U11(isNat(z0)))) MARK(U41(U11(length(z0)), x1)) -> c38(A__U41(a__U11(a__length(mark(z0))), x1), MARK(U11(length(z0)))) MARK(U41(U11(cons(z0, z1)), x1)) -> c38(A__U41(a__U11(cons(mark(z0), z1)), x1), MARK(U11(cons(z0, z1)))) MARK(U41(U11(0), x1)) -> c38(A__U41(a__U11(0), x1), MARK(U11(0))) MARK(U41(U11(tt), x1)) -> c38(A__U41(a__U11(tt), x1), MARK(U11(tt))) MARK(U41(U11(s(z0)), x1)) -> c38(A__U41(a__U11(s(mark(z0))), x1), MARK(U11(s(z0)))) MARK(U41(U11(nil), x1)) -> c38(A__U41(a__U11(nil), x1), MARK(U11(nil))) MARK(U41(U11(x0), x1)) -> c38(MARK(U11(x0))) MARK(U41(U21(zeros), x1)) -> c38(A__U41(a__U21(a__zeros), x1), MARK(U21(zeros))) MARK(U41(U21(U11(z0)), x1)) -> c38(A__U41(a__U21(a__U11(mark(z0))), x1), MARK(U21(U11(z0)))) MARK(U41(U21(U21(z0)), x1)) -> c38(A__U41(a__U21(a__U21(mark(z0))), x1), MARK(U21(U21(z0)))) MARK(U41(U21(U31(z0)), x1)) -> c38(A__U41(a__U21(a__U31(mark(z0))), x1), MARK(U21(U31(z0)))) MARK(U41(U21(U41(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U41(mark(z0), z1)), x1), MARK(U21(U41(z0, z1)))) MARK(U41(U21(U42(z0)), x1)) -> c38(A__U41(a__U21(a__U42(mark(z0))), x1), MARK(U21(U42(z0)))) MARK(U41(U21(isNatIList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatIList(z0)), x1), MARK(U21(isNatIList(z0)))) MARK(U41(U21(U51(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U51(mark(z0), z1)), x1), MARK(U21(U51(z0, z1)))) MARK(U41(U21(U52(z0)), x1)) -> c38(A__U41(a__U21(a__U52(mark(z0))), x1), MARK(U21(U52(z0)))) MARK(U41(U21(isNatList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatList(z0)), x1), MARK(U21(isNatList(z0)))) MARK(U41(U21(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U21(a__U61(mark(z0), z1, z2)), x1), MARK(U21(U61(z0, z1, z2)))) MARK(U41(U21(U62(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U62(mark(z0), z1)), x1), MARK(U21(U62(z0, z1)))) MARK(U41(U21(isNat(z0)), x1)) -> c38(A__U41(a__U21(a__isNat(z0)), x1), MARK(U21(isNat(z0)))) MARK(U41(U21(length(z0)), x1)) -> c38(A__U41(a__U21(a__length(mark(z0))), x1), MARK(U21(length(z0)))) MARK(U41(U21(cons(z0, z1)), x1)) -> c38(A__U41(a__U21(cons(mark(z0), z1)), x1), MARK(U21(cons(z0, z1)))) MARK(U41(U21(0), x1)) -> c38(A__U41(a__U21(0), x1), MARK(U21(0))) MARK(U41(U21(tt), x1)) -> c38(A__U41(a__U21(tt), x1), MARK(U21(tt))) MARK(U41(U21(s(z0)), x1)) -> c38(A__U41(a__U21(s(mark(z0))), x1), MARK(U21(s(z0)))) MARK(U41(U21(nil), x1)) -> c38(A__U41(a__U21(nil), x1), MARK(U21(nil))) MARK(U41(U21(x0), x1)) -> c38(MARK(U21(x0))) MARK(U41(U31(zeros), x1)) -> c38(A__U41(a__U31(a__zeros), x1), MARK(U31(zeros))) MARK(U41(U31(U11(z0)), x1)) -> c38(A__U41(a__U31(a__U11(mark(z0))), x1), MARK(U31(U11(z0)))) MARK(U41(U31(U21(z0)), x1)) -> c38(A__U41(a__U31(a__U21(mark(z0))), x1), MARK(U31(U21(z0)))) MARK(U41(U31(U31(z0)), x1)) -> c38(A__U41(a__U31(a__U31(mark(z0))), x1), MARK(U31(U31(z0)))) MARK(U41(U31(U41(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U41(mark(z0), z1)), x1), MARK(U31(U41(z0, z1)))) MARK(U41(U31(U42(z0)), x1)) -> c38(A__U41(a__U31(a__U42(mark(z0))), x1), MARK(U31(U42(z0)))) MARK(U41(U31(isNatIList(z0)), x1)) -> c38(A__U41(a__U31(a__isNatIList(z0)), x1), MARK(U31(isNatIList(z0)))) MARK(U41(U31(U51(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U51(mark(z0), z1)), x1), MARK(U31(U51(z0, z1)))) MARK(U41(U31(U52(z0)), x1)) -> c38(A__U41(a__U31(a__U52(mark(z0))), x1), MARK(U31(U52(z0)))) MARK(U41(U31(isNatList(z0)), x1)) -> c38(A__U41(a__U31(a__isNatList(z0)), x1), MARK(U31(isNatList(z0)))) MARK(U41(U31(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U31(a__U61(mark(z0), z1, z2)), x1), MARK(U31(U61(z0, z1, z2)))) MARK(U41(U31(U62(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U62(mark(z0), z1)), x1), MARK(U31(U62(z0, z1)))) MARK(U41(U31(isNat(z0)), x1)) -> c38(A__U41(a__U31(a__isNat(z0)), x1), MARK(U31(isNat(z0)))) MARK(U41(U31(length(z0)), x1)) -> c38(A__U41(a__U31(a__length(mark(z0))), x1), MARK(U31(length(z0)))) MARK(U41(U31(cons(z0, z1)), x1)) -> c38(A__U41(a__U31(cons(mark(z0), z1)), x1), MARK(U31(cons(z0, z1)))) MARK(U41(U31(0), x1)) -> c38(A__U41(a__U31(0), x1), MARK(U31(0))) MARK(U41(U31(tt), x1)) -> c38(A__U41(a__U31(tt), x1), MARK(U31(tt))) MARK(U41(U31(s(z0)), x1)) -> c38(A__U41(a__U31(s(mark(z0))), x1), MARK(U31(s(z0)))) MARK(U41(U31(nil), x1)) -> c38(A__U41(a__U31(nil), x1), MARK(U31(nil))) MARK(U41(U31(x0), x1)) -> c38(MARK(U31(x0))) MARK(U41(U41(U11(z0), x1), x2)) -> c38(A__U41(a__U41(a__U11(mark(z0)), x1), x2), MARK(U41(U11(z0), x1))) MARK(U41(U41(U21(z0), x1), x2)) -> c38(A__U41(a__U41(a__U21(mark(z0)), x1), x2), MARK(U41(U21(z0), x1))) MARK(U41(U41(U31(z0), x1), x2)) -> c38(A__U41(a__U41(a__U31(mark(z0)), x1), x2), MARK(U41(U31(z0), x1))) MARK(U41(U41(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U41(mark(z0), z1), x1), x2), MARK(U41(U41(z0, z1), x1))) MARK(U41(U41(U42(z0), x1), x2)) -> c38(A__U41(a__U41(a__U42(mark(z0)), x1), x2), MARK(U41(U42(z0), x1))) MARK(U41(U41(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U51(mark(z0), z1), x1), x2), MARK(U41(U51(z0, z1), x1))) MARK(U41(U41(U52(z0), x1), x2)) -> c38(A__U41(a__U41(a__U52(mark(z0)), x1), x2), MARK(U41(U52(z0), x1))) MARK(U41(U41(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U41(a__U61(mark(z0), z1, z2), x1), x2), MARK(U41(U61(z0, z1, z2), x1))) MARK(U41(U41(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U62(mark(z0), z1), x1), x2), MARK(U41(U62(z0, z1), x1))) MARK(U41(U41(length(z0), x1), x2)) -> c38(A__U41(a__U41(a__length(mark(z0)), x1), x2), MARK(U41(length(z0), x1))) MARK(U41(U41(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U41(cons(mark(z0), z1), x1), x2), MARK(U41(cons(z0, z1), x1))) MARK(U41(U41(s(z0), x1), x2)) -> c38(A__U41(a__U41(s(mark(z0)), x1), x2), MARK(U41(s(z0), x1))) MARK(U41(U41(x0, z1), x2)) -> c38(MARK(U41(x0, z1))) MARK(U41(U41(0, x1), x2)) -> c38(A__U41(a__U41(0, x1), x2)) MARK(U41(U41(nil, x1), x2)) -> c38(A__U41(a__U41(nil, x1), x2)) MARK(U41(U41(zeros, x1), x2)) -> c2(A__U41(a__U41(a__zeros, x1), x2)) MARK(U41(U41(zeros, x1), x2)) -> c2(MARK(U41(zeros, x1))) MARK(U41(U41(isNatIList(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNatIList(z0), x1), x2)) MARK(U41(U41(isNatIList(z0), x1), x2)) -> c2(MARK(U41(isNatIList(z0), x1))) MARK(U41(U41(isNatList(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNatList(z0), x1), x2)) MARK(U41(U41(isNatList(z0), x1), x2)) -> c2(MARK(U41(isNatList(z0), x1))) MARK(U41(U41(isNat(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNat(z0), x1), x2)) MARK(U41(U41(isNat(z0), x1), x2)) -> c2(MARK(U41(isNat(z0), x1))) MARK(U41(U41(tt, x1), x2)) -> c2(A__U41(a__U41(tt, x1), x2)) MARK(U41(U41(tt, x1), x2)) -> c2(MARK(U41(tt, x1))) MARK(U41(U42(zeros), x1)) -> c38(A__U41(a__U42(a__zeros), x1), MARK(U42(zeros))) MARK(U41(U42(U11(z0)), x1)) -> c38(A__U41(a__U42(a__U11(mark(z0))), x1), MARK(U42(U11(z0)))) MARK(U41(U42(U21(z0)), x1)) -> c38(A__U41(a__U42(a__U21(mark(z0))), x1), MARK(U42(U21(z0)))) MARK(U41(U42(U31(z0)), x1)) -> c38(A__U41(a__U42(a__U31(mark(z0))), x1), MARK(U42(U31(z0)))) MARK(U41(U42(U41(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U41(mark(z0), z1)), x1), MARK(U42(U41(z0, z1)))) MARK(U41(U42(U42(z0)), x1)) -> c38(A__U41(a__U42(a__U42(mark(z0))), x1), MARK(U42(U42(z0)))) MARK(U41(U42(isNatIList(z0)), x1)) -> c38(A__U41(a__U42(a__isNatIList(z0)), x1), MARK(U42(isNatIList(z0)))) MARK(U41(U42(U51(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U51(mark(z0), z1)), x1), MARK(U42(U51(z0, z1)))) MARK(U41(U42(U52(z0)), x1)) -> c38(A__U41(a__U42(a__U52(mark(z0))), x1), MARK(U42(U52(z0)))) MARK(U41(U42(isNatList(z0)), x1)) -> c38(A__U41(a__U42(a__isNatList(z0)), x1), MARK(U42(isNatList(z0)))) MARK(U41(U42(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U42(a__U61(mark(z0), z1, z2)), x1), MARK(U42(U61(z0, z1, z2)))) MARK(U41(U42(U62(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U62(mark(z0), z1)), x1), MARK(U42(U62(z0, z1)))) MARK(U41(U42(isNat(z0)), x1)) -> c38(A__U41(a__U42(a__isNat(z0)), x1), MARK(U42(isNat(z0)))) MARK(U41(U42(length(z0)), x1)) -> c38(A__U41(a__U42(a__length(mark(z0))), x1), MARK(U42(length(z0)))) MARK(U41(U42(cons(z0, z1)), x1)) -> c38(A__U41(a__U42(cons(mark(z0), z1)), x1), MARK(U42(cons(z0, z1)))) MARK(U41(U42(0), x1)) -> c38(A__U41(a__U42(0), x1), MARK(U42(0))) MARK(U41(U42(tt), x1)) -> c38(A__U41(a__U42(tt), x1), MARK(U42(tt))) MARK(U41(U42(s(z0)), x1)) -> c38(A__U41(a__U42(s(mark(z0))), x1), MARK(U42(s(z0)))) MARK(U41(U42(nil), x1)) -> c38(A__U41(a__U42(nil), x1), MARK(U42(nil))) MARK(U41(U42(x0), x1)) -> c38(MARK(U42(x0))) MARK(U41(U51(x0, z1), x2)) -> c38(A__U41(U51(mark(x0), z1), x2), MARK(U51(x0, z1))) MARK(U41(U51(zeros, x1), x2)) -> c38(A__U41(a__U51(a__zeros, x1), x2), MARK(U51(zeros, x1))) MARK(U41(U51(U11(z0), x1), x2)) -> c38(A__U41(a__U51(a__U11(mark(z0)), x1), x2), MARK(U51(U11(z0), x1))) MARK(U41(U51(U21(z0), x1), x2)) -> c38(A__U41(a__U51(a__U21(mark(z0)), x1), x2), MARK(U51(U21(z0), x1))) MARK(U41(U51(U31(z0), x1), x2)) -> c38(A__U41(a__U51(a__U31(mark(z0)), x1), x2), MARK(U51(U31(z0), x1))) MARK(U41(U51(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U41(mark(z0), z1), x1), x2), MARK(U51(U41(z0, z1), x1))) MARK(U41(U51(U42(z0), x1), x2)) -> c38(A__U41(a__U51(a__U42(mark(z0)), x1), x2), MARK(U51(U42(z0), x1))) MARK(U41(U51(isNatIList(z0), x1), x2)) -> c38(A__U41(a__U51(a__isNatIList(z0), x1), x2), MARK(U51(isNatIList(z0), x1))) MARK(U41(U51(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U51(mark(z0), z1), x1), x2), MARK(U51(U51(z0, z1), x1))) MARK(U41(U51(U52(z0), x1), x2)) -> c38(A__U41(a__U51(a__U52(mark(z0)), x1), x2), MARK(U51(U52(z0), x1))) MARK(U41(U51(isNatList(z0), x1), x2)) -> c38(A__U41(a__U51(a__isNatList(z0), x1), x2), MARK(U51(isNatList(z0), x1))) MARK(U41(U51(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U51(a__U61(mark(z0), z1, z2), x1), x2), MARK(U51(U61(z0, z1, z2), x1))) MARK(U41(U51(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U62(mark(z0), z1), x1), x2), MARK(U51(U62(z0, z1), x1))) MARK(U41(U51(isNat(z0), x1), x2)) -> c38(A__U41(a__U51(a__isNat(z0), x1), x2), MARK(U51(isNat(z0), x1))) MARK(U41(U51(length(z0), x1), x2)) -> c38(A__U41(a__U51(a__length(mark(z0)), x1), x2), MARK(U51(length(z0), x1))) MARK(U41(U51(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U51(cons(mark(z0), z1), x1), x2), MARK(U51(cons(z0, z1), x1))) MARK(U41(U51(0, x1), x2)) -> c38(A__U41(a__U51(0, x1), x2), MARK(U51(0, x1))) MARK(U41(U51(tt, x1), x2)) -> c38(A__U41(a__U51(tt, x1), x2), MARK(U51(tt, x1))) MARK(U41(U51(s(z0), x1), x2)) -> c38(A__U41(a__U51(s(mark(z0)), x1), x2), MARK(U51(s(z0), x1))) MARK(U41(U51(nil, x1), x2)) -> c38(A__U41(a__U51(nil, x1), x2), MARK(U51(nil, x1))) K tuples:none Defined Rule Symbols: a__zeros, a__U11_1, a__U21_1, a__U31_1, a__U41_2, a__U42_1, a__U51_2, a__U52_1, a__U61_3, a__U62_2, a__isNat_1, a__isNatIList_1, a__isNatList_1, a__length_1, mark_1 Defined Pair Symbols: MARK_1, A__U41_2, A__U51_2, A__ISNAT_1, A__ISNATILIST_1, A__U61_3, A__U62_2, A__ISNATLIST_1, A__LENGTH_1 Compound Symbols: c40_1, c43_1, c46_1, c48_1, c51_1, c8_1, c12_1, c21_1, c22_1, c24_1, c35_1, c36_1, c37_1, c39_1, c42_1, c16_1, c18_2, c18_1, c26_1, c29_1, c32_1, c38_2, c38_1, c_1, c41_2, c41_1, c1_1, c44_2, c44_1, c45_2, c45_1, c47_2, c47_1, c16_2, c26_2, c29_2, c32_2, c2_1 ---------------------------------------- (193) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 3 trailing tuple parts ---------------------------------------- (194) Obligation: Complexity Dependency Tuples Problem Rules: a__zeros -> cons(0, zeros) a__zeros -> zeros a__U11(tt) -> tt a__U11(z0) -> U11(z0) a__U21(tt) -> tt a__U21(z0) -> U21(z0) a__U31(tt) -> tt a__U31(z0) -> U31(z0) a__U41(tt, z0) -> a__U42(a__isNatIList(z0)) a__U41(z0, z1) -> U41(z0, z1) a__U42(tt) -> tt a__U42(z0) -> U42(z0) a__U51(tt, z0) -> a__U52(a__isNatList(z0)) a__U51(z0, z1) -> U51(z0, z1) a__U52(tt) -> tt a__U52(z0) -> U52(z0) a__U61(tt, z0, z1) -> a__U62(a__isNat(z1), z0) a__U61(z0, z1, z2) -> U61(z0, z1, z2) a__U62(tt, z0) -> s(a__length(mark(z0))) a__U62(z0, z1) -> U62(z0, z1) a__isNat(0) -> tt a__isNat(length(z0)) -> a__U11(a__isNatList(z0)) a__isNat(s(z0)) -> a__U21(a__isNat(z0)) a__isNat(z0) -> isNat(z0) a__isNatIList(z0) -> a__U31(a__isNatList(z0)) a__isNatIList(zeros) -> tt a__isNatIList(cons(z0, z1)) -> a__U41(a__isNat(z0), z1) a__isNatIList(z0) -> isNatIList(z0) a__isNatList(nil) -> tt a__isNatList(cons(z0, z1)) -> a__U51(a__isNat(z0), z1) a__isNatList(z0) -> isNatList(z0) a__length(nil) -> 0 a__length(cons(z0, z1)) -> a__U61(a__isNatList(z1), z1, z0) a__length(z0) -> length(z0) mark(zeros) -> a__zeros mark(U11(z0)) -> a__U11(mark(z0)) mark(U21(z0)) -> a__U21(mark(z0)) mark(U31(z0)) -> a__U31(mark(z0)) mark(U41(z0, z1)) -> a__U41(mark(z0), z1) mark(U42(z0)) -> a__U42(mark(z0)) mark(isNatIList(z0)) -> a__isNatIList(z0) mark(U51(z0, z1)) -> a__U51(mark(z0), z1) mark(U52(z0)) -> a__U52(mark(z0)) mark(isNatList(z0)) -> a__isNatList(z0) mark(U61(z0, z1, z2)) -> a__U61(mark(z0), z1, z2) mark(U62(z0, z1)) -> a__U62(mark(z0), z1) mark(isNat(z0)) -> a__isNat(z0) mark(length(z0)) -> a__length(mark(z0)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(0) -> 0 mark(tt) -> tt mark(s(z0)) -> s(mark(z0)) mark(nil) -> nil Tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) A__U62(tt, isNatList(cons(z0, z1))) -> c18(A__LENGTH(a__U51(a__isNat(z0), z1)), MARK(isNatList(cons(z0, z1)))) A__U62(tt, isNatList(nil)) -> c18(MARK(isNatList(nil))) A__U62(tt, isNatList(z0)) -> c18(MARK(isNatList(z0))) A__U62(tt, U61(zeros, x1, x2)) -> c18(A__LENGTH(a__U61(a__zeros, x1, x2)), MARK(U61(zeros, x1, x2))) A__U62(tt, U61(U11(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U11(mark(z0)), x1, x2)), MARK(U61(U11(z0), x1, x2))) A__U62(tt, U61(U21(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U21(mark(z0)), x1, x2)), MARK(U61(U21(z0), x1, x2))) A__U62(tt, U61(U31(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U31(mark(z0)), x1, x2)), MARK(U61(U31(z0), x1, x2))) A__U62(tt, U61(U41(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U41(mark(z0), z1), x1, x2)), MARK(U61(U41(z0, z1), x1, x2))) A__U62(tt, U61(U42(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U42(mark(z0)), x1, x2)), MARK(U61(U42(z0), x1, x2))) A__U62(tt, U61(isNatIList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatIList(z0), x1, x2)), MARK(U61(isNatIList(z0), x1, x2))) A__U62(tt, U61(U51(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U51(mark(z0), z1), x1, x2)), MARK(U61(U51(z0, z1), x1, x2))) A__U62(tt, U61(U52(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U52(mark(z0)), x1, x2)), MARK(U61(U52(z0), x1, x2))) A__U62(tt, U61(isNatList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatList(z0), x1, x2)), MARK(U61(isNatList(z0), x1, x2))) A__U62(tt, U61(U61(z0, z1, z2), x1, x2)) -> c18(A__LENGTH(a__U61(a__U61(mark(z0), z1, z2), x1, x2)), MARK(U61(U61(z0, z1, z2), x1, x2))) A__U62(tt, U61(U62(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U62(mark(z0), z1), x1, x2)), MARK(U61(U62(z0, z1), x1, x2))) A__U62(tt, U61(isNat(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNat(z0), x1, x2)), MARK(U61(isNat(z0), x1, x2))) A__U62(tt, U61(length(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__length(mark(z0)), x1, x2)), MARK(U61(length(z0), x1, x2))) A__U62(tt, U61(cons(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(cons(mark(z0), z1), x1, x2)), MARK(U61(cons(z0, z1), x1, x2))) A__U62(tt, U61(tt, x1, x2)) -> c18(A__LENGTH(a__U61(tt, x1, x2)), MARK(U61(tt, x1, x2))) A__U62(tt, U61(s(z0), x1, x2)) -> c18(A__LENGTH(a__U61(s(mark(z0)), x1, x2)), MARK(U61(s(z0), x1, x2))) A__U62(tt, U61(x0, z1, z2)) -> c18(MARK(U61(x0, z1, z2))) A__U62(tt, U61(0, x1, x2)) -> c18(A__LENGTH(a__U61(0, x1, x2))) A__U62(tt, U61(nil, x1, x2)) -> c18(A__LENGTH(a__U61(nil, x1, x2))) A__U62(tt, U62(zeros, x1)) -> c18(A__LENGTH(a__U62(a__zeros, x1)), MARK(U62(zeros, x1))) A__U62(tt, U62(U11(z0), x1)) -> c18(A__LENGTH(a__U62(a__U11(mark(z0)), x1)), MARK(U62(U11(z0), x1))) A__U62(tt, U62(U21(z0), x1)) -> c18(A__LENGTH(a__U62(a__U21(mark(z0)), x1)), MARK(U62(U21(z0), x1))) A__U62(tt, U62(U31(z0), x1)) -> c18(A__LENGTH(a__U62(a__U31(mark(z0)), x1)), MARK(U62(U31(z0), x1))) A__U62(tt, U62(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U41(mark(z0), z1), x1)), MARK(U62(U41(z0, z1), x1))) A__U62(tt, U62(U42(z0), x1)) -> c18(A__LENGTH(a__U62(a__U42(mark(z0)), x1)), MARK(U62(U42(z0), x1))) A__U62(tt, U62(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatIList(z0), x1)), MARK(U62(isNatIList(z0), x1))) A__U62(tt, U62(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U51(mark(z0), z1), x1)), MARK(U62(U51(z0, z1), x1))) A__U62(tt, U62(U52(z0), x1)) -> c18(A__LENGTH(a__U62(a__U52(mark(z0)), x1)), MARK(U62(U52(z0), x1))) A__U62(tt, U62(isNatList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatList(z0), x1)), MARK(U62(isNatList(z0), x1))) A__U62(tt, U62(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U62(a__U61(mark(z0), z1, z2), x1)), MARK(U62(U61(z0, z1, z2), x1))) A__U62(tt, U62(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U62(mark(z0), z1), x1)), MARK(U62(U62(z0, z1), x1))) A__U62(tt, U62(isNat(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNat(z0), x1)), MARK(U62(isNat(z0), x1))) A__U62(tt, U62(length(z0), x1)) -> c18(A__LENGTH(a__U62(a__length(mark(z0)), x1)), MARK(U62(length(z0), x1))) A__U62(tt, U62(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U62(cons(mark(z0), z1), x1)), MARK(U62(cons(z0, z1), x1))) A__U62(tt, U62(tt, x1)) -> c18(A__LENGTH(a__U62(tt, x1)), MARK(U62(tt, x1))) A__U62(tt, U62(s(z0), x1)) -> c18(A__LENGTH(a__U62(s(mark(z0)), x1)), MARK(U62(s(z0), x1))) A__U62(tt, U62(x0, z1)) -> c18(MARK(U62(x0, z1))) A__U62(tt, U62(0, x1)) -> c18(A__LENGTH(a__U62(0, x1))) A__U62(tt, U62(nil, x1)) -> c18(A__LENGTH(a__U62(nil, x1))) A__U62(tt, isNat(length(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(isNat(length(z0)))) A__U62(tt, isNat(s(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(isNat(s(z0)))) A__U62(tt, isNat(0)) -> c18(MARK(isNat(0))) A__U62(tt, isNat(z0)) -> c18(MARK(isNat(z0))) A__U62(tt, length(zeros)) -> c18(A__LENGTH(a__length(a__zeros)), MARK(length(zeros))) A__U62(tt, length(U11(z0))) -> c18(A__LENGTH(a__length(a__U11(mark(z0)))), MARK(length(U11(z0)))) A__U62(tt, length(U21(z0))) -> c18(A__LENGTH(a__length(a__U21(mark(z0)))), MARK(length(U21(z0)))) A__U62(tt, length(U31(z0))) -> c18(A__LENGTH(a__length(a__U31(mark(z0)))), MARK(length(U31(z0)))) A__U62(tt, length(U41(z0, z1))) -> c18(A__LENGTH(a__length(a__U41(mark(z0), z1))), MARK(length(U41(z0, z1)))) A__U62(tt, length(U42(z0))) -> c18(A__LENGTH(a__length(a__U42(mark(z0)))), MARK(length(U42(z0)))) A__U62(tt, length(isNatIList(z0))) -> c18(A__LENGTH(a__length(a__isNatIList(z0))), MARK(length(isNatIList(z0)))) A__U62(tt, length(U51(z0, z1))) -> c18(A__LENGTH(a__length(a__U51(mark(z0), z1))), MARK(length(U51(z0, z1)))) A__U62(tt, length(U52(z0))) -> c18(A__LENGTH(a__length(a__U52(mark(z0)))), MARK(length(U52(z0)))) A__U62(tt, length(isNatList(z0))) -> c18(A__LENGTH(a__length(a__isNatList(z0))), MARK(length(isNatList(z0)))) A__U62(tt, length(U61(z0, z1, z2))) -> c18(A__LENGTH(a__length(a__U61(mark(z0), z1, z2))), MARK(length(U61(z0, z1, z2)))) A__U62(tt, length(U62(z0, z1))) -> c18(A__LENGTH(a__length(a__U62(mark(z0), z1))), MARK(length(U62(z0, z1)))) A__U62(tt, length(isNat(z0))) -> c18(A__LENGTH(a__length(a__isNat(z0))), MARK(length(isNat(z0)))) A__U62(tt, length(length(z0))) -> c18(A__LENGTH(a__length(a__length(mark(z0)))), MARK(length(length(z0)))) A__U62(tt, length(cons(z0, z1))) -> c18(A__LENGTH(a__length(cons(mark(z0), z1))), MARK(length(cons(z0, z1)))) A__U62(tt, length(s(z0))) -> c18(A__LENGTH(a__length(s(mark(z0)))), MARK(length(s(z0)))) A__U62(tt, length(x0)) -> c18(MARK(length(x0))) A__U62(tt, length(0)) -> c18(A__LENGTH(a__length(0))) A__U62(tt, length(tt)) -> c18(A__LENGTH(a__length(tt))) A__U62(tt, length(nil)) -> c18(A__LENGTH(a__length(nil))) A__U62(tt, zeros) -> c18(A__LENGTH(cons(0, zeros))) A__ISNATILIST(cons(length(nil), x1)) -> c26(A__U41(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATILIST(cons(length(cons(z0, z1)), x1)) -> c26(A__U41(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(length(x0), x1)) -> c26(A__ISNAT(length(x0))) A__ISNATILIST(cons(s(0), x1)) -> c26(A__U41(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATILIST(cons(s(length(z0)), x1)) -> c26(A__U41(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATILIST(cons(s(s(z0)), x1)) -> c26(A__U41(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(s(x0), x1)) -> c26(A__ISNAT(s(x0))) A__ISNATLIST(cons(length(nil), x1)) -> c29(A__U51(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATLIST(cons(length(cons(z0, z1)), x1)) -> c29(A__U51(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(length(x0), x1)) -> c29(A__ISNAT(length(x0))) A__ISNATLIST(cons(s(0), x1)) -> c29(A__U51(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATLIST(cons(s(length(z0)), x1)) -> c29(A__U51(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATLIST(cons(s(s(z0)), x1)) -> c29(A__U51(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(s(x0), x1)) -> c29(A__ISNAT(s(x0))) A__LENGTH(cons(x0, cons(0, x2))) -> c32(A__U61(a__U51(tt, x2), cons(0, x2), x0), A__ISNATLIST(cons(0, x2))) A__LENGTH(cons(x0, cons(length(z0), x2))) -> c32(A__U61(a__U51(a__U11(a__isNatList(z0)), x2), cons(length(z0), x2), x0), A__ISNATLIST(cons(length(z0), x2))) A__LENGTH(cons(x0, cons(s(z0), x2))) -> c32(A__U61(a__U51(a__U21(a__isNat(z0)), x2), cons(s(z0), x2), x0), A__ISNATLIST(cons(s(z0), x2))) A__LENGTH(cons(x0, cons(z0, x2))) -> c32(A__U61(a__U51(isNat(z0), x2), cons(z0, x2), x0), A__ISNATLIST(cons(z0, x2))) A__LENGTH(cons(x0, cons(x1, z1))) -> c32(A__ISNATLIST(cons(x1, z1))) MARK(U41(U11(zeros), x1)) -> c38(A__U41(a__U11(a__zeros), x1), MARK(U11(zeros))) MARK(U41(U11(U11(z0)), x1)) -> c38(A__U41(a__U11(a__U11(mark(z0))), x1), MARK(U11(U11(z0)))) MARK(U41(U11(U21(z0)), x1)) -> c38(A__U41(a__U11(a__U21(mark(z0))), x1), MARK(U11(U21(z0)))) MARK(U41(U11(U31(z0)), x1)) -> c38(A__U41(a__U11(a__U31(mark(z0))), x1), MARK(U11(U31(z0)))) MARK(U41(U11(U41(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U41(mark(z0), z1)), x1), MARK(U11(U41(z0, z1)))) MARK(U41(U11(U42(z0)), x1)) -> c38(A__U41(a__U11(a__U42(mark(z0))), x1), MARK(U11(U42(z0)))) MARK(U41(U11(isNatIList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatIList(z0)), x1), MARK(U11(isNatIList(z0)))) MARK(U41(U11(U51(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U51(mark(z0), z1)), x1), MARK(U11(U51(z0, z1)))) MARK(U41(U11(U52(z0)), x1)) -> c38(A__U41(a__U11(a__U52(mark(z0))), x1), MARK(U11(U52(z0)))) MARK(U41(U11(isNatList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatList(z0)), x1), MARK(U11(isNatList(z0)))) MARK(U41(U11(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U11(a__U61(mark(z0), z1, z2)), x1), MARK(U11(U61(z0, z1, z2)))) MARK(U41(U11(U62(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U62(mark(z0), z1)), x1), MARK(U11(U62(z0, z1)))) MARK(U41(U11(isNat(z0)), x1)) -> c38(A__U41(a__U11(a__isNat(z0)), x1), MARK(U11(isNat(z0)))) MARK(U41(U11(length(z0)), x1)) -> c38(A__U41(a__U11(a__length(mark(z0))), x1), MARK(U11(length(z0)))) MARK(U41(U11(cons(z0, z1)), x1)) -> c38(A__U41(a__U11(cons(mark(z0), z1)), x1), MARK(U11(cons(z0, z1)))) MARK(U41(U11(0), x1)) -> c38(A__U41(a__U11(0), x1), MARK(U11(0))) MARK(U41(U11(tt), x1)) -> c38(A__U41(a__U11(tt), x1), MARK(U11(tt))) MARK(U41(U11(s(z0)), x1)) -> c38(A__U41(a__U11(s(mark(z0))), x1), MARK(U11(s(z0)))) MARK(U41(U11(nil), x1)) -> c38(A__U41(a__U11(nil), x1), MARK(U11(nil))) MARK(U41(U11(x0), x1)) -> c38(MARK(U11(x0))) MARK(U41(U21(zeros), x1)) -> c38(A__U41(a__U21(a__zeros), x1), MARK(U21(zeros))) MARK(U41(U21(U11(z0)), x1)) -> c38(A__U41(a__U21(a__U11(mark(z0))), x1), MARK(U21(U11(z0)))) MARK(U41(U21(U21(z0)), x1)) -> c38(A__U41(a__U21(a__U21(mark(z0))), x1), MARK(U21(U21(z0)))) MARK(U41(U21(U31(z0)), x1)) -> c38(A__U41(a__U21(a__U31(mark(z0))), x1), MARK(U21(U31(z0)))) MARK(U41(U21(U41(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U41(mark(z0), z1)), x1), MARK(U21(U41(z0, z1)))) MARK(U41(U21(U42(z0)), x1)) -> c38(A__U41(a__U21(a__U42(mark(z0))), x1), MARK(U21(U42(z0)))) MARK(U41(U21(isNatIList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatIList(z0)), x1), MARK(U21(isNatIList(z0)))) MARK(U41(U21(U51(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U51(mark(z0), z1)), x1), MARK(U21(U51(z0, z1)))) MARK(U41(U21(U52(z0)), x1)) -> c38(A__U41(a__U21(a__U52(mark(z0))), x1), MARK(U21(U52(z0)))) MARK(U41(U21(isNatList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatList(z0)), x1), MARK(U21(isNatList(z0)))) MARK(U41(U21(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U21(a__U61(mark(z0), z1, z2)), x1), MARK(U21(U61(z0, z1, z2)))) MARK(U41(U21(U62(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U62(mark(z0), z1)), x1), MARK(U21(U62(z0, z1)))) MARK(U41(U21(isNat(z0)), x1)) -> c38(A__U41(a__U21(a__isNat(z0)), x1), MARK(U21(isNat(z0)))) MARK(U41(U21(length(z0)), x1)) -> c38(A__U41(a__U21(a__length(mark(z0))), x1), MARK(U21(length(z0)))) MARK(U41(U21(cons(z0, z1)), x1)) -> c38(A__U41(a__U21(cons(mark(z0), z1)), x1), MARK(U21(cons(z0, z1)))) MARK(U41(U21(0), x1)) -> c38(A__U41(a__U21(0), x1), MARK(U21(0))) MARK(U41(U21(tt), x1)) -> c38(A__U41(a__U21(tt), x1), MARK(U21(tt))) MARK(U41(U21(s(z0)), x1)) -> c38(A__U41(a__U21(s(mark(z0))), x1), MARK(U21(s(z0)))) MARK(U41(U21(nil), x1)) -> c38(A__U41(a__U21(nil), x1), MARK(U21(nil))) MARK(U41(U21(x0), x1)) -> c38(MARK(U21(x0))) MARK(U41(U31(zeros), x1)) -> c38(A__U41(a__U31(a__zeros), x1), MARK(U31(zeros))) MARK(U41(U31(U11(z0)), x1)) -> c38(A__U41(a__U31(a__U11(mark(z0))), x1), MARK(U31(U11(z0)))) MARK(U41(U31(U21(z0)), x1)) -> c38(A__U41(a__U31(a__U21(mark(z0))), x1), MARK(U31(U21(z0)))) MARK(U41(U31(U31(z0)), x1)) -> c38(A__U41(a__U31(a__U31(mark(z0))), x1), MARK(U31(U31(z0)))) MARK(U41(U31(U41(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U41(mark(z0), z1)), x1), MARK(U31(U41(z0, z1)))) MARK(U41(U31(U42(z0)), x1)) -> c38(A__U41(a__U31(a__U42(mark(z0))), x1), MARK(U31(U42(z0)))) MARK(U41(U31(isNatIList(z0)), x1)) -> c38(A__U41(a__U31(a__isNatIList(z0)), x1), MARK(U31(isNatIList(z0)))) MARK(U41(U31(U51(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U51(mark(z0), z1)), x1), MARK(U31(U51(z0, z1)))) MARK(U41(U31(U52(z0)), x1)) -> c38(A__U41(a__U31(a__U52(mark(z0))), x1), MARK(U31(U52(z0)))) MARK(U41(U31(isNatList(z0)), x1)) -> c38(A__U41(a__U31(a__isNatList(z0)), x1), MARK(U31(isNatList(z0)))) MARK(U41(U31(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U31(a__U61(mark(z0), z1, z2)), x1), MARK(U31(U61(z0, z1, z2)))) MARK(U41(U31(U62(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U62(mark(z0), z1)), x1), MARK(U31(U62(z0, z1)))) MARK(U41(U31(isNat(z0)), x1)) -> c38(A__U41(a__U31(a__isNat(z0)), x1), MARK(U31(isNat(z0)))) MARK(U41(U31(length(z0)), x1)) -> c38(A__U41(a__U31(a__length(mark(z0))), x1), MARK(U31(length(z0)))) MARK(U41(U31(cons(z0, z1)), x1)) -> c38(A__U41(a__U31(cons(mark(z0), z1)), x1), MARK(U31(cons(z0, z1)))) MARK(U41(U31(0), x1)) -> c38(A__U41(a__U31(0), x1), MARK(U31(0))) MARK(U41(U31(tt), x1)) -> c38(A__U41(a__U31(tt), x1), MARK(U31(tt))) MARK(U41(U31(s(z0)), x1)) -> c38(A__U41(a__U31(s(mark(z0))), x1), MARK(U31(s(z0)))) MARK(U41(U31(nil), x1)) -> c38(A__U41(a__U31(nil), x1), MARK(U31(nil))) MARK(U41(U31(x0), x1)) -> c38(MARK(U31(x0))) MARK(U41(U41(U11(z0), x1), x2)) -> c38(A__U41(a__U41(a__U11(mark(z0)), x1), x2), MARK(U41(U11(z0), x1))) MARK(U41(U41(U21(z0), x1), x2)) -> c38(A__U41(a__U41(a__U21(mark(z0)), x1), x2), MARK(U41(U21(z0), x1))) MARK(U41(U41(U31(z0), x1), x2)) -> c38(A__U41(a__U41(a__U31(mark(z0)), x1), x2), MARK(U41(U31(z0), x1))) MARK(U41(U41(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U41(mark(z0), z1), x1), x2), MARK(U41(U41(z0, z1), x1))) MARK(U41(U41(U42(z0), x1), x2)) -> c38(A__U41(a__U41(a__U42(mark(z0)), x1), x2), MARK(U41(U42(z0), x1))) MARK(U41(U41(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U51(mark(z0), z1), x1), x2), MARK(U41(U51(z0, z1), x1))) MARK(U41(U41(U52(z0), x1), x2)) -> c38(A__U41(a__U41(a__U52(mark(z0)), x1), x2), MARK(U41(U52(z0), x1))) MARK(U41(U41(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U41(a__U61(mark(z0), z1, z2), x1), x2), MARK(U41(U61(z0, z1, z2), x1))) MARK(U41(U41(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U62(mark(z0), z1), x1), x2), MARK(U41(U62(z0, z1), x1))) MARK(U41(U41(length(z0), x1), x2)) -> c38(A__U41(a__U41(a__length(mark(z0)), x1), x2), MARK(U41(length(z0), x1))) MARK(U41(U41(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U41(cons(mark(z0), z1), x1), x2), MARK(U41(cons(z0, z1), x1))) MARK(U41(U41(s(z0), x1), x2)) -> c38(A__U41(a__U41(s(mark(z0)), x1), x2), MARK(U41(s(z0), x1))) MARK(U41(U41(x0, z1), x2)) -> c38(MARK(U41(x0, z1))) MARK(U41(U41(0, x1), x2)) -> c38(A__U41(a__U41(0, x1), x2)) MARK(U41(U41(nil, x1), x2)) -> c38(A__U41(a__U41(nil, x1), x2)) MARK(U41(U41(zeros, x1), x2)) -> c2(A__U41(a__U41(a__zeros, x1), x2)) MARK(U41(U41(zeros, x1), x2)) -> c2(MARK(U41(zeros, x1))) MARK(U41(U41(isNatIList(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNatIList(z0), x1), x2)) MARK(U41(U41(isNatIList(z0), x1), x2)) -> c2(MARK(U41(isNatIList(z0), x1))) MARK(U41(U41(isNatList(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNatList(z0), x1), x2)) MARK(U41(U41(isNatList(z0), x1), x2)) -> c2(MARK(U41(isNatList(z0), x1))) MARK(U41(U41(isNat(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNat(z0), x1), x2)) MARK(U41(U41(isNat(z0), x1), x2)) -> c2(MARK(U41(isNat(z0), x1))) MARK(U41(U41(tt, x1), x2)) -> c2(A__U41(a__U41(tt, x1), x2)) MARK(U41(U41(tt, x1), x2)) -> c2(MARK(U41(tt, x1))) MARK(U41(U42(zeros), x1)) -> c38(A__U41(a__U42(a__zeros), x1), MARK(U42(zeros))) MARK(U41(U42(U11(z0)), x1)) -> c38(A__U41(a__U42(a__U11(mark(z0))), x1), MARK(U42(U11(z0)))) MARK(U41(U42(U21(z0)), x1)) -> c38(A__U41(a__U42(a__U21(mark(z0))), x1), MARK(U42(U21(z0)))) MARK(U41(U42(U31(z0)), x1)) -> c38(A__U41(a__U42(a__U31(mark(z0))), x1), MARK(U42(U31(z0)))) MARK(U41(U42(U41(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U41(mark(z0), z1)), x1), MARK(U42(U41(z0, z1)))) MARK(U41(U42(U42(z0)), x1)) -> c38(A__U41(a__U42(a__U42(mark(z0))), x1), MARK(U42(U42(z0)))) MARK(U41(U42(isNatIList(z0)), x1)) -> c38(A__U41(a__U42(a__isNatIList(z0)), x1), MARK(U42(isNatIList(z0)))) MARK(U41(U42(U51(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U51(mark(z0), z1)), x1), MARK(U42(U51(z0, z1)))) MARK(U41(U42(U52(z0)), x1)) -> c38(A__U41(a__U42(a__U52(mark(z0))), x1), MARK(U42(U52(z0)))) MARK(U41(U42(isNatList(z0)), x1)) -> c38(A__U41(a__U42(a__isNatList(z0)), x1), MARK(U42(isNatList(z0)))) MARK(U41(U42(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U42(a__U61(mark(z0), z1, z2)), x1), MARK(U42(U61(z0, z1, z2)))) MARK(U41(U42(U62(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U62(mark(z0), z1)), x1), MARK(U42(U62(z0, z1)))) MARK(U41(U42(isNat(z0)), x1)) -> c38(A__U41(a__U42(a__isNat(z0)), x1), MARK(U42(isNat(z0)))) MARK(U41(U42(length(z0)), x1)) -> c38(A__U41(a__U42(a__length(mark(z0))), x1), MARK(U42(length(z0)))) MARK(U41(U42(cons(z0, z1)), x1)) -> c38(A__U41(a__U42(cons(mark(z0), z1)), x1), MARK(U42(cons(z0, z1)))) MARK(U41(U42(0), x1)) -> c38(A__U41(a__U42(0), x1), MARK(U42(0))) MARK(U41(U42(tt), x1)) -> c38(A__U41(a__U42(tt), x1), MARK(U42(tt))) MARK(U41(U42(s(z0)), x1)) -> c38(A__U41(a__U42(s(mark(z0))), x1), MARK(U42(s(z0)))) MARK(U41(U42(nil), x1)) -> c38(A__U41(a__U42(nil), x1), MARK(U42(nil))) MARK(U41(U42(x0), x1)) -> c38(MARK(U42(x0))) MARK(U41(U51(zeros, x1), x2)) -> c38(A__U41(a__U51(a__zeros, x1), x2), MARK(U51(zeros, x1))) MARK(U41(U51(U11(z0), x1), x2)) -> c38(A__U41(a__U51(a__U11(mark(z0)), x1), x2), MARK(U51(U11(z0), x1))) MARK(U41(U51(U21(z0), x1), x2)) -> c38(A__U41(a__U51(a__U21(mark(z0)), x1), x2), MARK(U51(U21(z0), x1))) MARK(U41(U51(U31(z0), x1), x2)) -> c38(A__U41(a__U51(a__U31(mark(z0)), x1), x2), MARK(U51(U31(z0), x1))) MARK(U41(U51(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U41(mark(z0), z1), x1), x2), MARK(U51(U41(z0, z1), x1))) MARK(U41(U51(U42(z0), x1), x2)) -> c38(A__U41(a__U51(a__U42(mark(z0)), x1), x2), MARK(U51(U42(z0), x1))) MARK(U41(U51(isNatIList(z0), x1), x2)) -> c38(A__U41(a__U51(a__isNatIList(z0), x1), x2), MARK(U51(isNatIList(z0), x1))) MARK(U41(U51(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U51(mark(z0), z1), x1), x2), MARK(U51(U51(z0, z1), x1))) MARK(U41(U51(U52(z0), x1), x2)) -> c38(A__U41(a__U51(a__U52(mark(z0)), x1), x2), MARK(U51(U52(z0), x1))) MARK(U41(U51(isNatList(z0), x1), x2)) -> c38(A__U41(a__U51(a__isNatList(z0), x1), x2), MARK(U51(isNatList(z0), x1))) MARK(U41(U51(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U51(a__U61(mark(z0), z1, z2), x1), x2), MARK(U51(U61(z0, z1, z2), x1))) MARK(U41(U51(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U62(mark(z0), z1), x1), x2), MARK(U51(U62(z0, z1), x1))) MARK(U41(U51(isNat(z0), x1), x2)) -> c38(A__U41(a__U51(a__isNat(z0), x1), x2), MARK(U51(isNat(z0), x1))) MARK(U41(U51(length(z0), x1), x2)) -> c38(A__U41(a__U51(a__length(mark(z0)), x1), x2), MARK(U51(length(z0), x1))) MARK(U41(U51(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U51(cons(mark(z0), z1), x1), x2), MARK(U51(cons(z0, z1), x1))) MARK(U41(U51(tt, x1), x2)) -> c38(A__U41(a__U51(tt, x1), x2), MARK(U51(tt, x1))) MARK(U41(U51(s(z0), x1), x2)) -> c38(A__U41(a__U51(s(mark(z0)), x1), x2), MARK(U51(s(z0), x1))) MARK(U41(U51(x0, z1), x2)) -> c38(MARK(U51(x0, z1))) MARK(U41(U51(0, x1), x2)) -> c38(A__U41(a__U51(0, x1), x2)) MARK(U41(U51(nil, x1), x2)) -> c38(A__U41(a__U51(nil, x1), x2)) S tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) A__U62(tt, isNatList(cons(z0, z1))) -> c18(A__LENGTH(a__U51(a__isNat(z0), z1)), MARK(isNatList(cons(z0, z1)))) A__U62(tt, isNatList(nil)) -> c18(MARK(isNatList(nil))) A__U62(tt, isNatList(z0)) -> c18(MARK(isNatList(z0))) A__U62(tt, U61(zeros, x1, x2)) -> c18(A__LENGTH(a__U61(a__zeros, x1, x2)), MARK(U61(zeros, x1, x2))) A__U62(tt, U61(U11(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U11(mark(z0)), x1, x2)), MARK(U61(U11(z0), x1, x2))) A__U62(tt, U61(U21(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U21(mark(z0)), x1, x2)), MARK(U61(U21(z0), x1, x2))) A__U62(tt, U61(U31(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U31(mark(z0)), x1, x2)), MARK(U61(U31(z0), x1, x2))) A__U62(tt, U61(U41(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U41(mark(z0), z1), x1, x2)), MARK(U61(U41(z0, z1), x1, x2))) A__U62(tt, U61(U42(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U42(mark(z0)), x1, x2)), MARK(U61(U42(z0), x1, x2))) A__U62(tt, U61(isNatIList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatIList(z0), x1, x2)), MARK(U61(isNatIList(z0), x1, x2))) A__U62(tt, U61(U51(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U51(mark(z0), z1), x1, x2)), MARK(U61(U51(z0, z1), x1, x2))) A__U62(tt, U61(U52(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U52(mark(z0)), x1, x2)), MARK(U61(U52(z0), x1, x2))) A__U62(tt, U61(isNatList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatList(z0), x1, x2)), MARK(U61(isNatList(z0), x1, x2))) A__U62(tt, U61(U61(z0, z1, z2), x1, x2)) -> c18(A__LENGTH(a__U61(a__U61(mark(z0), z1, z2), x1, x2)), MARK(U61(U61(z0, z1, z2), x1, x2))) A__U62(tt, U61(U62(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U62(mark(z0), z1), x1, x2)), MARK(U61(U62(z0, z1), x1, x2))) A__U62(tt, U61(isNat(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNat(z0), x1, x2)), MARK(U61(isNat(z0), x1, x2))) A__U62(tt, U61(length(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__length(mark(z0)), x1, x2)), MARK(U61(length(z0), x1, x2))) A__U62(tt, U61(cons(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(cons(mark(z0), z1), x1, x2)), MARK(U61(cons(z0, z1), x1, x2))) A__U62(tt, U61(tt, x1, x2)) -> c18(A__LENGTH(a__U61(tt, x1, x2)), MARK(U61(tt, x1, x2))) A__U62(tt, U61(s(z0), x1, x2)) -> c18(A__LENGTH(a__U61(s(mark(z0)), x1, x2)), MARK(U61(s(z0), x1, x2))) A__U62(tt, U61(x0, z1, z2)) -> c18(MARK(U61(x0, z1, z2))) A__U62(tt, U61(0, x1, x2)) -> c18(A__LENGTH(a__U61(0, x1, x2))) A__U62(tt, U61(nil, x1, x2)) -> c18(A__LENGTH(a__U61(nil, x1, x2))) A__U62(tt, U62(zeros, x1)) -> c18(A__LENGTH(a__U62(a__zeros, x1)), MARK(U62(zeros, x1))) A__U62(tt, U62(U11(z0), x1)) -> c18(A__LENGTH(a__U62(a__U11(mark(z0)), x1)), MARK(U62(U11(z0), x1))) A__U62(tt, U62(U21(z0), x1)) -> c18(A__LENGTH(a__U62(a__U21(mark(z0)), x1)), MARK(U62(U21(z0), x1))) A__U62(tt, U62(U31(z0), x1)) -> c18(A__LENGTH(a__U62(a__U31(mark(z0)), x1)), MARK(U62(U31(z0), x1))) A__U62(tt, U62(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U41(mark(z0), z1), x1)), MARK(U62(U41(z0, z1), x1))) A__U62(tt, U62(U42(z0), x1)) -> c18(A__LENGTH(a__U62(a__U42(mark(z0)), x1)), MARK(U62(U42(z0), x1))) A__U62(tt, U62(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatIList(z0), x1)), MARK(U62(isNatIList(z0), x1))) A__U62(tt, U62(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U51(mark(z0), z1), x1)), MARK(U62(U51(z0, z1), x1))) A__U62(tt, U62(U52(z0), x1)) -> c18(A__LENGTH(a__U62(a__U52(mark(z0)), x1)), MARK(U62(U52(z0), x1))) A__U62(tt, U62(isNatList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatList(z0), x1)), MARK(U62(isNatList(z0), x1))) A__U62(tt, U62(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U62(a__U61(mark(z0), z1, z2), x1)), MARK(U62(U61(z0, z1, z2), x1))) A__U62(tt, U62(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U62(mark(z0), z1), x1)), MARK(U62(U62(z0, z1), x1))) A__U62(tt, U62(isNat(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNat(z0), x1)), MARK(U62(isNat(z0), x1))) A__U62(tt, U62(length(z0), x1)) -> c18(A__LENGTH(a__U62(a__length(mark(z0)), x1)), MARK(U62(length(z0), x1))) A__U62(tt, U62(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U62(cons(mark(z0), z1), x1)), MARK(U62(cons(z0, z1), x1))) A__U62(tt, U62(tt, x1)) -> c18(A__LENGTH(a__U62(tt, x1)), MARK(U62(tt, x1))) A__U62(tt, U62(s(z0), x1)) -> c18(A__LENGTH(a__U62(s(mark(z0)), x1)), MARK(U62(s(z0), x1))) A__U62(tt, U62(x0, z1)) -> c18(MARK(U62(x0, z1))) A__U62(tt, U62(0, x1)) -> c18(A__LENGTH(a__U62(0, x1))) A__U62(tt, U62(nil, x1)) -> c18(A__LENGTH(a__U62(nil, x1))) A__U62(tt, isNat(length(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(isNat(length(z0)))) A__U62(tt, isNat(s(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(isNat(s(z0)))) A__U62(tt, isNat(0)) -> c18(MARK(isNat(0))) A__U62(tt, isNat(z0)) -> c18(MARK(isNat(z0))) A__U62(tt, length(zeros)) -> c18(A__LENGTH(a__length(a__zeros)), MARK(length(zeros))) A__U62(tt, length(U11(z0))) -> c18(A__LENGTH(a__length(a__U11(mark(z0)))), MARK(length(U11(z0)))) A__U62(tt, length(U21(z0))) -> c18(A__LENGTH(a__length(a__U21(mark(z0)))), MARK(length(U21(z0)))) A__U62(tt, length(U31(z0))) -> c18(A__LENGTH(a__length(a__U31(mark(z0)))), MARK(length(U31(z0)))) A__U62(tt, length(U41(z0, z1))) -> c18(A__LENGTH(a__length(a__U41(mark(z0), z1))), MARK(length(U41(z0, z1)))) A__U62(tt, length(U42(z0))) -> c18(A__LENGTH(a__length(a__U42(mark(z0)))), MARK(length(U42(z0)))) A__U62(tt, length(isNatIList(z0))) -> c18(A__LENGTH(a__length(a__isNatIList(z0))), MARK(length(isNatIList(z0)))) A__U62(tt, length(U51(z0, z1))) -> c18(A__LENGTH(a__length(a__U51(mark(z0), z1))), MARK(length(U51(z0, z1)))) A__U62(tt, length(U52(z0))) -> c18(A__LENGTH(a__length(a__U52(mark(z0)))), MARK(length(U52(z0)))) A__U62(tt, length(isNatList(z0))) -> c18(A__LENGTH(a__length(a__isNatList(z0))), MARK(length(isNatList(z0)))) A__U62(tt, length(U61(z0, z1, z2))) -> c18(A__LENGTH(a__length(a__U61(mark(z0), z1, z2))), MARK(length(U61(z0, z1, z2)))) A__U62(tt, length(U62(z0, z1))) -> c18(A__LENGTH(a__length(a__U62(mark(z0), z1))), MARK(length(U62(z0, z1)))) A__U62(tt, length(isNat(z0))) -> c18(A__LENGTH(a__length(a__isNat(z0))), MARK(length(isNat(z0)))) A__U62(tt, length(length(z0))) -> c18(A__LENGTH(a__length(a__length(mark(z0)))), MARK(length(length(z0)))) A__U62(tt, length(cons(z0, z1))) -> c18(A__LENGTH(a__length(cons(mark(z0), z1))), MARK(length(cons(z0, z1)))) A__U62(tt, length(s(z0))) -> c18(A__LENGTH(a__length(s(mark(z0)))), MARK(length(s(z0)))) A__U62(tt, length(x0)) -> c18(MARK(length(x0))) A__U62(tt, length(0)) -> c18(A__LENGTH(a__length(0))) A__U62(tt, length(tt)) -> c18(A__LENGTH(a__length(tt))) A__U62(tt, length(nil)) -> c18(A__LENGTH(a__length(nil))) A__U62(tt, zeros) -> c18(A__LENGTH(cons(0, zeros))) A__ISNATILIST(cons(length(nil), x1)) -> c26(A__U41(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATILIST(cons(length(cons(z0, z1)), x1)) -> c26(A__U41(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(length(x0), x1)) -> c26(A__ISNAT(length(x0))) A__ISNATILIST(cons(s(0), x1)) -> c26(A__U41(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATILIST(cons(s(length(z0)), x1)) -> c26(A__U41(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATILIST(cons(s(s(z0)), x1)) -> c26(A__U41(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(s(x0), x1)) -> c26(A__ISNAT(s(x0))) A__ISNATLIST(cons(length(nil), x1)) -> c29(A__U51(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATLIST(cons(length(cons(z0, z1)), x1)) -> c29(A__U51(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(length(x0), x1)) -> c29(A__ISNAT(length(x0))) A__ISNATLIST(cons(s(0), x1)) -> c29(A__U51(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATLIST(cons(s(length(z0)), x1)) -> c29(A__U51(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATLIST(cons(s(s(z0)), x1)) -> c29(A__U51(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(s(x0), x1)) -> c29(A__ISNAT(s(x0))) A__LENGTH(cons(x0, cons(0, x2))) -> c32(A__U61(a__U51(tt, x2), cons(0, x2), x0), A__ISNATLIST(cons(0, x2))) A__LENGTH(cons(x0, cons(length(z0), x2))) -> c32(A__U61(a__U51(a__U11(a__isNatList(z0)), x2), cons(length(z0), x2), x0), A__ISNATLIST(cons(length(z0), x2))) A__LENGTH(cons(x0, cons(s(z0), x2))) -> c32(A__U61(a__U51(a__U21(a__isNat(z0)), x2), cons(s(z0), x2), x0), A__ISNATLIST(cons(s(z0), x2))) A__LENGTH(cons(x0, cons(z0, x2))) -> c32(A__U61(a__U51(isNat(z0), x2), cons(z0, x2), x0), A__ISNATLIST(cons(z0, x2))) A__LENGTH(cons(x0, cons(x1, z1))) -> c32(A__ISNATLIST(cons(x1, z1))) MARK(U41(U11(zeros), x1)) -> c38(A__U41(a__U11(a__zeros), x1), MARK(U11(zeros))) MARK(U41(U11(U11(z0)), x1)) -> c38(A__U41(a__U11(a__U11(mark(z0))), x1), MARK(U11(U11(z0)))) MARK(U41(U11(U21(z0)), x1)) -> c38(A__U41(a__U11(a__U21(mark(z0))), x1), MARK(U11(U21(z0)))) MARK(U41(U11(U31(z0)), x1)) -> c38(A__U41(a__U11(a__U31(mark(z0))), x1), MARK(U11(U31(z0)))) MARK(U41(U11(U41(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U41(mark(z0), z1)), x1), MARK(U11(U41(z0, z1)))) MARK(U41(U11(U42(z0)), x1)) -> c38(A__U41(a__U11(a__U42(mark(z0))), x1), MARK(U11(U42(z0)))) MARK(U41(U11(isNatIList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatIList(z0)), x1), MARK(U11(isNatIList(z0)))) MARK(U41(U11(U51(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U51(mark(z0), z1)), x1), MARK(U11(U51(z0, z1)))) MARK(U41(U11(U52(z0)), x1)) -> c38(A__U41(a__U11(a__U52(mark(z0))), x1), MARK(U11(U52(z0)))) MARK(U41(U11(isNatList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatList(z0)), x1), MARK(U11(isNatList(z0)))) MARK(U41(U11(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U11(a__U61(mark(z0), z1, z2)), x1), MARK(U11(U61(z0, z1, z2)))) MARK(U41(U11(U62(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U62(mark(z0), z1)), x1), MARK(U11(U62(z0, z1)))) MARK(U41(U11(isNat(z0)), x1)) -> c38(A__U41(a__U11(a__isNat(z0)), x1), MARK(U11(isNat(z0)))) MARK(U41(U11(length(z0)), x1)) -> c38(A__U41(a__U11(a__length(mark(z0))), x1), MARK(U11(length(z0)))) MARK(U41(U11(cons(z0, z1)), x1)) -> c38(A__U41(a__U11(cons(mark(z0), z1)), x1), MARK(U11(cons(z0, z1)))) MARK(U41(U11(0), x1)) -> c38(A__U41(a__U11(0), x1), MARK(U11(0))) MARK(U41(U11(tt), x1)) -> c38(A__U41(a__U11(tt), x1), MARK(U11(tt))) MARK(U41(U11(s(z0)), x1)) -> c38(A__U41(a__U11(s(mark(z0))), x1), MARK(U11(s(z0)))) MARK(U41(U11(nil), x1)) -> c38(A__U41(a__U11(nil), x1), MARK(U11(nil))) MARK(U41(U11(x0), x1)) -> c38(MARK(U11(x0))) MARK(U41(U21(zeros), x1)) -> c38(A__U41(a__U21(a__zeros), x1), MARK(U21(zeros))) MARK(U41(U21(U11(z0)), x1)) -> c38(A__U41(a__U21(a__U11(mark(z0))), x1), MARK(U21(U11(z0)))) MARK(U41(U21(U21(z0)), x1)) -> c38(A__U41(a__U21(a__U21(mark(z0))), x1), MARK(U21(U21(z0)))) MARK(U41(U21(U31(z0)), x1)) -> c38(A__U41(a__U21(a__U31(mark(z0))), x1), MARK(U21(U31(z0)))) MARK(U41(U21(U41(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U41(mark(z0), z1)), x1), MARK(U21(U41(z0, z1)))) MARK(U41(U21(U42(z0)), x1)) -> c38(A__U41(a__U21(a__U42(mark(z0))), x1), MARK(U21(U42(z0)))) MARK(U41(U21(isNatIList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatIList(z0)), x1), MARK(U21(isNatIList(z0)))) MARK(U41(U21(U51(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U51(mark(z0), z1)), x1), MARK(U21(U51(z0, z1)))) MARK(U41(U21(U52(z0)), x1)) -> c38(A__U41(a__U21(a__U52(mark(z0))), x1), MARK(U21(U52(z0)))) MARK(U41(U21(isNatList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatList(z0)), x1), MARK(U21(isNatList(z0)))) MARK(U41(U21(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U21(a__U61(mark(z0), z1, z2)), x1), MARK(U21(U61(z0, z1, z2)))) MARK(U41(U21(U62(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U62(mark(z0), z1)), x1), MARK(U21(U62(z0, z1)))) MARK(U41(U21(isNat(z0)), x1)) -> c38(A__U41(a__U21(a__isNat(z0)), x1), MARK(U21(isNat(z0)))) MARK(U41(U21(length(z0)), x1)) -> c38(A__U41(a__U21(a__length(mark(z0))), x1), MARK(U21(length(z0)))) MARK(U41(U21(cons(z0, z1)), x1)) -> c38(A__U41(a__U21(cons(mark(z0), z1)), x1), MARK(U21(cons(z0, z1)))) MARK(U41(U21(0), x1)) -> c38(A__U41(a__U21(0), x1), MARK(U21(0))) MARK(U41(U21(tt), x1)) -> c38(A__U41(a__U21(tt), x1), MARK(U21(tt))) MARK(U41(U21(s(z0)), x1)) -> c38(A__U41(a__U21(s(mark(z0))), x1), MARK(U21(s(z0)))) MARK(U41(U21(nil), x1)) -> c38(A__U41(a__U21(nil), x1), MARK(U21(nil))) MARK(U41(U21(x0), x1)) -> c38(MARK(U21(x0))) MARK(U41(U31(zeros), x1)) -> c38(A__U41(a__U31(a__zeros), x1), MARK(U31(zeros))) MARK(U41(U31(U11(z0)), x1)) -> c38(A__U41(a__U31(a__U11(mark(z0))), x1), MARK(U31(U11(z0)))) MARK(U41(U31(U21(z0)), x1)) -> c38(A__U41(a__U31(a__U21(mark(z0))), x1), MARK(U31(U21(z0)))) MARK(U41(U31(U31(z0)), x1)) -> c38(A__U41(a__U31(a__U31(mark(z0))), x1), MARK(U31(U31(z0)))) MARK(U41(U31(U41(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U41(mark(z0), z1)), x1), MARK(U31(U41(z0, z1)))) MARK(U41(U31(U42(z0)), x1)) -> c38(A__U41(a__U31(a__U42(mark(z0))), x1), MARK(U31(U42(z0)))) MARK(U41(U31(isNatIList(z0)), x1)) -> c38(A__U41(a__U31(a__isNatIList(z0)), x1), MARK(U31(isNatIList(z0)))) MARK(U41(U31(U51(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U51(mark(z0), z1)), x1), MARK(U31(U51(z0, z1)))) MARK(U41(U31(U52(z0)), x1)) -> c38(A__U41(a__U31(a__U52(mark(z0))), x1), MARK(U31(U52(z0)))) MARK(U41(U31(isNatList(z0)), x1)) -> c38(A__U41(a__U31(a__isNatList(z0)), x1), MARK(U31(isNatList(z0)))) MARK(U41(U31(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U31(a__U61(mark(z0), z1, z2)), x1), MARK(U31(U61(z0, z1, z2)))) MARK(U41(U31(U62(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U62(mark(z0), z1)), x1), MARK(U31(U62(z0, z1)))) MARK(U41(U31(isNat(z0)), x1)) -> c38(A__U41(a__U31(a__isNat(z0)), x1), MARK(U31(isNat(z0)))) MARK(U41(U31(length(z0)), x1)) -> c38(A__U41(a__U31(a__length(mark(z0))), x1), MARK(U31(length(z0)))) MARK(U41(U31(cons(z0, z1)), x1)) -> c38(A__U41(a__U31(cons(mark(z0), z1)), x1), MARK(U31(cons(z0, z1)))) MARK(U41(U31(0), x1)) -> c38(A__U41(a__U31(0), x1), MARK(U31(0))) MARK(U41(U31(tt), x1)) -> c38(A__U41(a__U31(tt), x1), MARK(U31(tt))) MARK(U41(U31(s(z0)), x1)) -> c38(A__U41(a__U31(s(mark(z0))), x1), MARK(U31(s(z0)))) MARK(U41(U31(nil), x1)) -> c38(A__U41(a__U31(nil), x1), MARK(U31(nil))) MARK(U41(U31(x0), x1)) -> c38(MARK(U31(x0))) MARK(U41(U41(U11(z0), x1), x2)) -> c38(A__U41(a__U41(a__U11(mark(z0)), x1), x2), MARK(U41(U11(z0), x1))) MARK(U41(U41(U21(z0), x1), x2)) -> c38(A__U41(a__U41(a__U21(mark(z0)), x1), x2), MARK(U41(U21(z0), x1))) MARK(U41(U41(U31(z0), x1), x2)) -> c38(A__U41(a__U41(a__U31(mark(z0)), x1), x2), MARK(U41(U31(z0), x1))) MARK(U41(U41(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U41(mark(z0), z1), x1), x2), MARK(U41(U41(z0, z1), x1))) MARK(U41(U41(U42(z0), x1), x2)) -> c38(A__U41(a__U41(a__U42(mark(z0)), x1), x2), MARK(U41(U42(z0), x1))) MARK(U41(U41(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U51(mark(z0), z1), x1), x2), MARK(U41(U51(z0, z1), x1))) MARK(U41(U41(U52(z0), x1), x2)) -> c38(A__U41(a__U41(a__U52(mark(z0)), x1), x2), MARK(U41(U52(z0), x1))) MARK(U41(U41(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U41(a__U61(mark(z0), z1, z2), x1), x2), MARK(U41(U61(z0, z1, z2), x1))) MARK(U41(U41(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U62(mark(z0), z1), x1), x2), MARK(U41(U62(z0, z1), x1))) MARK(U41(U41(length(z0), x1), x2)) -> c38(A__U41(a__U41(a__length(mark(z0)), x1), x2), MARK(U41(length(z0), x1))) MARK(U41(U41(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U41(cons(mark(z0), z1), x1), x2), MARK(U41(cons(z0, z1), x1))) MARK(U41(U41(s(z0), x1), x2)) -> c38(A__U41(a__U41(s(mark(z0)), x1), x2), MARK(U41(s(z0), x1))) MARK(U41(U41(x0, z1), x2)) -> c38(MARK(U41(x0, z1))) MARK(U41(U41(0, x1), x2)) -> c38(A__U41(a__U41(0, x1), x2)) MARK(U41(U41(nil, x1), x2)) -> c38(A__U41(a__U41(nil, x1), x2)) MARK(U41(U41(zeros, x1), x2)) -> c2(A__U41(a__U41(a__zeros, x1), x2)) MARK(U41(U41(zeros, x1), x2)) -> c2(MARK(U41(zeros, x1))) MARK(U41(U41(isNatIList(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNatIList(z0), x1), x2)) MARK(U41(U41(isNatIList(z0), x1), x2)) -> c2(MARK(U41(isNatIList(z0), x1))) MARK(U41(U41(isNatList(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNatList(z0), x1), x2)) MARK(U41(U41(isNatList(z0), x1), x2)) -> c2(MARK(U41(isNatList(z0), x1))) MARK(U41(U41(isNat(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNat(z0), x1), x2)) MARK(U41(U41(isNat(z0), x1), x2)) -> c2(MARK(U41(isNat(z0), x1))) MARK(U41(U41(tt, x1), x2)) -> c2(A__U41(a__U41(tt, x1), x2)) MARK(U41(U41(tt, x1), x2)) -> c2(MARK(U41(tt, x1))) MARK(U41(U42(zeros), x1)) -> c38(A__U41(a__U42(a__zeros), x1), MARK(U42(zeros))) MARK(U41(U42(U11(z0)), x1)) -> c38(A__U41(a__U42(a__U11(mark(z0))), x1), MARK(U42(U11(z0)))) MARK(U41(U42(U21(z0)), x1)) -> c38(A__U41(a__U42(a__U21(mark(z0))), x1), MARK(U42(U21(z0)))) MARK(U41(U42(U31(z0)), x1)) -> c38(A__U41(a__U42(a__U31(mark(z0))), x1), MARK(U42(U31(z0)))) MARK(U41(U42(U41(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U41(mark(z0), z1)), x1), MARK(U42(U41(z0, z1)))) MARK(U41(U42(U42(z0)), x1)) -> c38(A__U41(a__U42(a__U42(mark(z0))), x1), MARK(U42(U42(z0)))) MARK(U41(U42(isNatIList(z0)), x1)) -> c38(A__U41(a__U42(a__isNatIList(z0)), x1), MARK(U42(isNatIList(z0)))) MARK(U41(U42(U51(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U51(mark(z0), z1)), x1), MARK(U42(U51(z0, z1)))) MARK(U41(U42(U52(z0)), x1)) -> c38(A__U41(a__U42(a__U52(mark(z0))), x1), MARK(U42(U52(z0)))) MARK(U41(U42(isNatList(z0)), x1)) -> c38(A__U41(a__U42(a__isNatList(z0)), x1), MARK(U42(isNatList(z0)))) MARK(U41(U42(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U42(a__U61(mark(z0), z1, z2)), x1), MARK(U42(U61(z0, z1, z2)))) MARK(U41(U42(U62(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U62(mark(z0), z1)), x1), MARK(U42(U62(z0, z1)))) MARK(U41(U42(isNat(z0)), x1)) -> c38(A__U41(a__U42(a__isNat(z0)), x1), MARK(U42(isNat(z0)))) MARK(U41(U42(length(z0)), x1)) -> c38(A__U41(a__U42(a__length(mark(z0))), x1), MARK(U42(length(z0)))) MARK(U41(U42(cons(z0, z1)), x1)) -> c38(A__U41(a__U42(cons(mark(z0), z1)), x1), MARK(U42(cons(z0, z1)))) MARK(U41(U42(0), x1)) -> c38(A__U41(a__U42(0), x1), MARK(U42(0))) MARK(U41(U42(tt), x1)) -> c38(A__U41(a__U42(tt), x1), MARK(U42(tt))) MARK(U41(U42(s(z0)), x1)) -> c38(A__U41(a__U42(s(mark(z0))), x1), MARK(U42(s(z0)))) MARK(U41(U42(nil), x1)) -> c38(A__U41(a__U42(nil), x1), MARK(U42(nil))) MARK(U41(U42(x0), x1)) -> c38(MARK(U42(x0))) MARK(U41(U51(zeros, x1), x2)) -> c38(A__U41(a__U51(a__zeros, x1), x2), MARK(U51(zeros, x1))) MARK(U41(U51(U11(z0), x1), x2)) -> c38(A__U41(a__U51(a__U11(mark(z0)), x1), x2), MARK(U51(U11(z0), x1))) MARK(U41(U51(U21(z0), x1), x2)) -> c38(A__U41(a__U51(a__U21(mark(z0)), x1), x2), MARK(U51(U21(z0), x1))) MARK(U41(U51(U31(z0), x1), x2)) -> c38(A__U41(a__U51(a__U31(mark(z0)), x1), x2), MARK(U51(U31(z0), x1))) MARK(U41(U51(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U41(mark(z0), z1), x1), x2), MARK(U51(U41(z0, z1), x1))) MARK(U41(U51(U42(z0), x1), x2)) -> c38(A__U41(a__U51(a__U42(mark(z0)), x1), x2), MARK(U51(U42(z0), x1))) MARK(U41(U51(isNatIList(z0), x1), x2)) -> c38(A__U41(a__U51(a__isNatIList(z0), x1), x2), MARK(U51(isNatIList(z0), x1))) MARK(U41(U51(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U51(mark(z0), z1), x1), x2), MARK(U51(U51(z0, z1), x1))) MARK(U41(U51(U52(z0), x1), x2)) -> c38(A__U41(a__U51(a__U52(mark(z0)), x1), x2), MARK(U51(U52(z0), x1))) MARK(U41(U51(isNatList(z0), x1), x2)) -> c38(A__U41(a__U51(a__isNatList(z0), x1), x2), MARK(U51(isNatList(z0), x1))) MARK(U41(U51(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U51(a__U61(mark(z0), z1, z2), x1), x2), MARK(U51(U61(z0, z1, z2), x1))) MARK(U41(U51(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U62(mark(z0), z1), x1), x2), MARK(U51(U62(z0, z1), x1))) MARK(U41(U51(isNat(z0), x1), x2)) -> c38(A__U41(a__U51(a__isNat(z0), x1), x2), MARK(U51(isNat(z0), x1))) MARK(U41(U51(length(z0), x1), x2)) -> c38(A__U41(a__U51(a__length(mark(z0)), x1), x2), MARK(U51(length(z0), x1))) MARK(U41(U51(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U51(cons(mark(z0), z1), x1), x2), MARK(U51(cons(z0, z1), x1))) MARK(U41(U51(tt, x1), x2)) -> c38(A__U41(a__U51(tt, x1), x2), MARK(U51(tt, x1))) MARK(U41(U51(s(z0), x1), x2)) -> c38(A__U41(a__U51(s(mark(z0)), x1), x2), MARK(U51(s(z0), x1))) MARK(U41(U51(x0, z1), x2)) -> c38(MARK(U51(x0, z1))) MARK(U41(U51(0, x1), x2)) -> c38(A__U41(a__U51(0, x1), x2)) MARK(U41(U51(nil, x1), x2)) -> c38(A__U41(a__U51(nil, x1), x2)) K tuples:none Defined Rule Symbols: a__zeros, a__U11_1, a__U21_1, a__U31_1, a__U41_2, a__U42_1, a__U51_2, a__U52_1, a__U61_3, a__U62_2, a__isNat_1, a__isNatIList_1, a__isNatList_1, a__length_1, mark_1 Defined Pair Symbols: MARK_1, A__U41_2, A__U51_2, A__ISNAT_1, A__ISNATILIST_1, A__U61_3, A__U62_2, A__ISNATLIST_1, A__LENGTH_1 Compound Symbols: c40_1, c43_1, c46_1, c48_1, c51_1, c8_1, c12_1, c21_1, c22_1, c24_1, c35_1, c36_1, c37_1, c39_1, c42_1, c16_1, c18_2, c18_1, c26_1, c29_1, c32_1, c38_2, c38_1, c_1, c41_2, c41_1, c1_1, c44_2, c44_1, c45_2, c45_1, c47_2, c47_1, c16_2, c26_2, c29_2, c32_2, c2_1 ---------------------------------------- (195) CdtGraphSplitRhsProof (BOTH BOUNDS(ID, ID)) Split RHS of tuples not part of any SCC ---------------------------------------- (196) Obligation: Complexity Dependency Tuples Problem Rules: a__zeros -> cons(0, zeros) a__zeros -> zeros a__U11(tt) -> tt a__U11(z0) -> U11(z0) a__U21(tt) -> tt a__U21(z0) -> U21(z0) a__U31(tt) -> tt a__U31(z0) -> U31(z0) a__U41(tt, z0) -> a__U42(a__isNatIList(z0)) a__U41(z0, z1) -> U41(z0, z1) a__U42(tt) -> tt a__U42(z0) -> U42(z0) a__U51(tt, z0) -> a__U52(a__isNatList(z0)) a__U51(z0, z1) -> U51(z0, z1) a__U52(tt) -> tt a__U52(z0) -> U52(z0) a__U61(tt, z0, z1) -> a__U62(a__isNat(z1), z0) a__U61(z0, z1, z2) -> U61(z0, z1, z2) a__U62(tt, z0) -> s(a__length(mark(z0))) a__U62(z0, z1) -> U62(z0, z1) a__isNat(0) -> tt a__isNat(length(z0)) -> a__U11(a__isNatList(z0)) a__isNat(s(z0)) -> a__U21(a__isNat(z0)) a__isNat(z0) -> isNat(z0) a__isNatIList(z0) -> a__U31(a__isNatList(z0)) a__isNatIList(zeros) -> tt a__isNatIList(cons(z0, z1)) -> a__U41(a__isNat(z0), z1) a__isNatIList(z0) -> isNatIList(z0) a__isNatList(nil) -> tt a__isNatList(cons(z0, z1)) -> a__U51(a__isNat(z0), z1) a__isNatList(z0) -> isNatList(z0) a__length(nil) -> 0 a__length(cons(z0, z1)) -> a__U61(a__isNatList(z1), z1, z0) a__length(z0) -> length(z0) mark(zeros) -> a__zeros mark(U11(z0)) -> a__U11(mark(z0)) mark(U21(z0)) -> a__U21(mark(z0)) mark(U31(z0)) -> a__U31(mark(z0)) mark(U41(z0, z1)) -> a__U41(mark(z0), z1) mark(U42(z0)) -> a__U42(mark(z0)) mark(isNatIList(z0)) -> a__isNatIList(z0) mark(U51(z0, z1)) -> a__U51(mark(z0), z1) mark(U52(z0)) -> a__U52(mark(z0)) mark(isNatList(z0)) -> a__isNatList(z0) mark(U61(z0, z1, z2)) -> a__U61(mark(z0), z1, z2) mark(U62(z0, z1)) -> a__U62(mark(z0), z1) mark(isNat(z0)) -> a__isNat(z0) mark(length(z0)) -> a__length(mark(z0)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(0) -> 0 mark(tt) -> tt mark(s(z0)) -> s(mark(z0)) mark(nil) -> nil Tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) A__U62(tt, isNatList(cons(z0, z1))) -> c18(A__LENGTH(a__U51(a__isNat(z0), z1)), MARK(isNatList(cons(z0, z1)))) A__U62(tt, isNatList(nil)) -> c18(MARK(isNatList(nil))) A__U62(tt, isNatList(z0)) -> c18(MARK(isNatList(z0))) A__U62(tt, U61(zeros, x1, x2)) -> c18(A__LENGTH(a__U61(a__zeros, x1, x2)), MARK(U61(zeros, x1, x2))) A__U62(tt, U61(U11(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U11(mark(z0)), x1, x2)), MARK(U61(U11(z0), x1, x2))) A__U62(tt, U61(U21(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U21(mark(z0)), x1, x2)), MARK(U61(U21(z0), x1, x2))) A__U62(tt, U61(U31(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U31(mark(z0)), x1, x2)), MARK(U61(U31(z0), x1, x2))) A__U62(tt, U61(U41(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U41(mark(z0), z1), x1, x2)), MARK(U61(U41(z0, z1), x1, x2))) A__U62(tt, U61(U42(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U42(mark(z0)), x1, x2)), MARK(U61(U42(z0), x1, x2))) A__U62(tt, U61(isNatIList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatIList(z0), x1, x2)), MARK(U61(isNatIList(z0), x1, x2))) A__U62(tt, U61(U51(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U51(mark(z0), z1), x1, x2)), MARK(U61(U51(z0, z1), x1, x2))) A__U62(tt, U61(U52(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U52(mark(z0)), x1, x2)), MARK(U61(U52(z0), x1, x2))) A__U62(tt, U61(isNatList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatList(z0), x1, x2)), MARK(U61(isNatList(z0), x1, x2))) A__U62(tt, U61(U61(z0, z1, z2), x1, x2)) -> c18(A__LENGTH(a__U61(a__U61(mark(z0), z1, z2), x1, x2)), MARK(U61(U61(z0, z1, z2), x1, x2))) A__U62(tt, U61(U62(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U62(mark(z0), z1), x1, x2)), MARK(U61(U62(z0, z1), x1, x2))) A__U62(tt, U61(isNat(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNat(z0), x1, x2)), MARK(U61(isNat(z0), x1, x2))) A__U62(tt, U61(length(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__length(mark(z0)), x1, x2)), MARK(U61(length(z0), x1, x2))) A__U62(tt, U61(cons(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(cons(mark(z0), z1), x1, x2)), MARK(U61(cons(z0, z1), x1, x2))) A__U62(tt, U61(tt, x1, x2)) -> c18(A__LENGTH(a__U61(tt, x1, x2)), MARK(U61(tt, x1, x2))) A__U62(tt, U61(s(z0), x1, x2)) -> c18(A__LENGTH(a__U61(s(mark(z0)), x1, x2)), MARK(U61(s(z0), x1, x2))) A__U62(tt, U61(x0, z1, z2)) -> c18(MARK(U61(x0, z1, z2))) A__U62(tt, U61(0, x1, x2)) -> c18(A__LENGTH(a__U61(0, x1, x2))) A__U62(tt, U61(nil, x1, x2)) -> c18(A__LENGTH(a__U61(nil, x1, x2))) A__U62(tt, U62(zeros, x1)) -> c18(A__LENGTH(a__U62(a__zeros, x1)), MARK(U62(zeros, x1))) A__U62(tt, U62(U11(z0), x1)) -> c18(A__LENGTH(a__U62(a__U11(mark(z0)), x1)), MARK(U62(U11(z0), x1))) A__U62(tt, U62(U21(z0), x1)) -> c18(A__LENGTH(a__U62(a__U21(mark(z0)), x1)), MARK(U62(U21(z0), x1))) A__U62(tt, U62(U31(z0), x1)) -> c18(A__LENGTH(a__U62(a__U31(mark(z0)), x1)), MARK(U62(U31(z0), x1))) A__U62(tt, U62(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U41(mark(z0), z1), x1)), MARK(U62(U41(z0, z1), x1))) A__U62(tt, U62(U42(z0), x1)) -> c18(A__LENGTH(a__U62(a__U42(mark(z0)), x1)), MARK(U62(U42(z0), x1))) A__U62(tt, U62(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatIList(z0), x1)), MARK(U62(isNatIList(z0), x1))) A__U62(tt, U62(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U51(mark(z0), z1), x1)), MARK(U62(U51(z0, z1), x1))) A__U62(tt, U62(U52(z0), x1)) -> c18(A__LENGTH(a__U62(a__U52(mark(z0)), x1)), MARK(U62(U52(z0), x1))) A__U62(tt, U62(isNatList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatList(z0), x1)), MARK(U62(isNatList(z0), x1))) A__U62(tt, U62(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U62(a__U61(mark(z0), z1, z2), x1)), MARK(U62(U61(z0, z1, z2), x1))) A__U62(tt, U62(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U62(mark(z0), z1), x1)), MARK(U62(U62(z0, z1), x1))) A__U62(tt, U62(isNat(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNat(z0), x1)), MARK(U62(isNat(z0), x1))) A__U62(tt, U62(length(z0), x1)) -> c18(A__LENGTH(a__U62(a__length(mark(z0)), x1)), MARK(U62(length(z0), x1))) A__U62(tt, U62(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U62(cons(mark(z0), z1), x1)), MARK(U62(cons(z0, z1), x1))) A__U62(tt, U62(tt, x1)) -> c18(A__LENGTH(a__U62(tt, x1)), MARK(U62(tt, x1))) A__U62(tt, U62(s(z0), x1)) -> c18(A__LENGTH(a__U62(s(mark(z0)), x1)), MARK(U62(s(z0), x1))) A__U62(tt, U62(x0, z1)) -> c18(MARK(U62(x0, z1))) A__U62(tt, U62(0, x1)) -> c18(A__LENGTH(a__U62(0, x1))) A__U62(tt, U62(nil, x1)) -> c18(A__LENGTH(a__U62(nil, x1))) A__U62(tt, isNat(length(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(isNat(length(z0)))) A__U62(tt, isNat(s(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(isNat(s(z0)))) A__U62(tt, isNat(0)) -> c18(MARK(isNat(0))) A__U62(tt, isNat(z0)) -> c18(MARK(isNat(z0))) A__U62(tt, length(zeros)) -> c18(A__LENGTH(a__length(a__zeros)), MARK(length(zeros))) A__U62(tt, length(U11(z0))) -> c18(A__LENGTH(a__length(a__U11(mark(z0)))), MARK(length(U11(z0)))) A__U62(tt, length(U21(z0))) -> c18(A__LENGTH(a__length(a__U21(mark(z0)))), MARK(length(U21(z0)))) A__U62(tt, length(U31(z0))) -> c18(A__LENGTH(a__length(a__U31(mark(z0)))), MARK(length(U31(z0)))) A__U62(tt, length(U41(z0, z1))) -> c18(A__LENGTH(a__length(a__U41(mark(z0), z1))), MARK(length(U41(z0, z1)))) A__U62(tt, length(U42(z0))) -> c18(A__LENGTH(a__length(a__U42(mark(z0)))), MARK(length(U42(z0)))) A__U62(tt, length(isNatIList(z0))) -> c18(A__LENGTH(a__length(a__isNatIList(z0))), MARK(length(isNatIList(z0)))) A__U62(tt, length(U51(z0, z1))) -> c18(A__LENGTH(a__length(a__U51(mark(z0), z1))), MARK(length(U51(z0, z1)))) A__U62(tt, length(U52(z0))) -> c18(A__LENGTH(a__length(a__U52(mark(z0)))), MARK(length(U52(z0)))) A__U62(tt, length(isNatList(z0))) -> c18(A__LENGTH(a__length(a__isNatList(z0))), MARK(length(isNatList(z0)))) A__U62(tt, length(U61(z0, z1, z2))) -> c18(A__LENGTH(a__length(a__U61(mark(z0), z1, z2))), MARK(length(U61(z0, z1, z2)))) A__U62(tt, length(U62(z0, z1))) -> c18(A__LENGTH(a__length(a__U62(mark(z0), z1))), MARK(length(U62(z0, z1)))) A__U62(tt, length(isNat(z0))) -> c18(A__LENGTH(a__length(a__isNat(z0))), MARK(length(isNat(z0)))) A__U62(tt, length(length(z0))) -> c18(A__LENGTH(a__length(a__length(mark(z0)))), MARK(length(length(z0)))) A__U62(tt, length(cons(z0, z1))) -> c18(A__LENGTH(a__length(cons(mark(z0), z1))), MARK(length(cons(z0, z1)))) A__U62(tt, length(s(z0))) -> c18(A__LENGTH(a__length(s(mark(z0)))), MARK(length(s(z0)))) A__U62(tt, length(x0)) -> c18(MARK(length(x0))) A__U62(tt, length(0)) -> c18(A__LENGTH(a__length(0))) A__U62(tt, length(tt)) -> c18(A__LENGTH(a__length(tt))) A__U62(tt, length(nil)) -> c18(A__LENGTH(a__length(nil))) A__U62(tt, zeros) -> c18(A__LENGTH(cons(0, zeros))) A__ISNATILIST(cons(length(nil), x1)) -> c26(A__U41(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATILIST(cons(length(cons(z0, z1)), x1)) -> c26(A__U41(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(length(x0), x1)) -> c26(A__ISNAT(length(x0))) A__ISNATILIST(cons(s(0), x1)) -> c26(A__U41(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATILIST(cons(s(length(z0)), x1)) -> c26(A__U41(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATILIST(cons(s(s(z0)), x1)) -> c26(A__U41(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(s(x0), x1)) -> c26(A__ISNAT(s(x0))) A__ISNATLIST(cons(length(nil), x1)) -> c29(A__U51(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATLIST(cons(length(cons(z0, z1)), x1)) -> c29(A__U51(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(length(x0), x1)) -> c29(A__ISNAT(length(x0))) A__ISNATLIST(cons(s(0), x1)) -> c29(A__U51(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATLIST(cons(s(length(z0)), x1)) -> c29(A__U51(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATLIST(cons(s(s(z0)), x1)) -> c29(A__U51(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(s(x0), x1)) -> c29(A__ISNAT(s(x0))) A__LENGTH(cons(x0, cons(0, x2))) -> c32(A__U61(a__U51(tt, x2), cons(0, x2), x0), A__ISNATLIST(cons(0, x2))) A__LENGTH(cons(x0, cons(length(z0), x2))) -> c32(A__U61(a__U51(a__U11(a__isNatList(z0)), x2), cons(length(z0), x2), x0), A__ISNATLIST(cons(length(z0), x2))) A__LENGTH(cons(x0, cons(s(z0), x2))) -> c32(A__U61(a__U51(a__U21(a__isNat(z0)), x2), cons(s(z0), x2), x0), A__ISNATLIST(cons(s(z0), x2))) A__LENGTH(cons(x0, cons(z0, x2))) -> c32(A__U61(a__U51(isNat(z0), x2), cons(z0, x2), x0), A__ISNATLIST(cons(z0, x2))) A__LENGTH(cons(x0, cons(x1, z1))) -> c32(A__ISNATLIST(cons(x1, z1))) MARK(U41(U11(zeros), x1)) -> c38(A__U41(a__U11(a__zeros), x1), MARK(U11(zeros))) MARK(U41(U11(U11(z0)), x1)) -> c38(A__U41(a__U11(a__U11(mark(z0))), x1), MARK(U11(U11(z0)))) MARK(U41(U11(U21(z0)), x1)) -> c38(A__U41(a__U11(a__U21(mark(z0))), x1), MARK(U11(U21(z0)))) MARK(U41(U11(U31(z0)), x1)) -> c38(A__U41(a__U11(a__U31(mark(z0))), x1), MARK(U11(U31(z0)))) MARK(U41(U11(U41(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U41(mark(z0), z1)), x1), MARK(U11(U41(z0, z1)))) MARK(U41(U11(U42(z0)), x1)) -> c38(A__U41(a__U11(a__U42(mark(z0))), x1), MARK(U11(U42(z0)))) MARK(U41(U11(isNatIList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatIList(z0)), x1), MARK(U11(isNatIList(z0)))) MARK(U41(U11(U51(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U51(mark(z0), z1)), x1), MARK(U11(U51(z0, z1)))) MARK(U41(U11(U52(z0)), x1)) -> c38(A__U41(a__U11(a__U52(mark(z0))), x1), MARK(U11(U52(z0)))) MARK(U41(U11(isNatList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatList(z0)), x1), MARK(U11(isNatList(z0)))) MARK(U41(U11(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U11(a__U61(mark(z0), z1, z2)), x1), MARK(U11(U61(z0, z1, z2)))) MARK(U41(U11(U62(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U62(mark(z0), z1)), x1), MARK(U11(U62(z0, z1)))) MARK(U41(U11(isNat(z0)), x1)) -> c38(A__U41(a__U11(a__isNat(z0)), x1), MARK(U11(isNat(z0)))) MARK(U41(U11(length(z0)), x1)) -> c38(A__U41(a__U11(a__length(mark(z0))), x1), MARK(U11(length(z0)))) MARK(U41(U11(cons(z0, z1)), x1)) -> c38(A__U41(a__U11(cons(mark(z0), z1)), x1), MARK(U11(cons(z0, z1)))) MARK(U41(U11(0), x1)) -> c38(A__U41(a__U11(0), x1), MARK(U11(0))) MARK(U41(U11(tt), x1)) -> c38(A__U41(a__U11(tt), x1), MARK(U11(tt))) MARK(U41(U11(s(z0)), x1)) -> c38(A__U41(a__U11(s(mark(z0))), x1), MARK(U11(s(z0)))) MARK(U41(U11(nil), x1)) -> c38(A__U41(a__U11(nil), x1), MARK(U11(nil))) MARK(U41(U11(x0), x1)) -> c38(MARK(U11(x0))) MARK(U41(U21(zeros), x1)) -> c38(A__U41(a__U21(a__zeros), x1), MARK(U21(zeros))) MARK(U41(U21(U11(z0)), x1)) -> c38(A__U41(a__U21(a__U11(mark(z0))), x1), MARK(U21(U11(z0)))) MARK(U41(U21(U21(z0)), x1)) -> c38(A__U41(a__U21(a__U21(mark(z0))), x1), MARK(U21(U21(z0)))) MARK(U41(U21(U31(z0)), x1)) -> c38(A__U41(a__U21(a__U31(mark(z0))), x1), MARK(U21(U31(z0)))) MARK(U41(U21(U41(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U41(mark(z0), z1)), x1), MARK(U21(U41(z0, z1)))) MARK(U41(U21(U42(z0)), x1)) -> c38(A__U41(a__U21(a__U42(mark(z0))), x1), MARK(U21(U42(z0)))) MARK(U41(U21(isNatIList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatIList(z0)), x1), MARK(U21(isNatIList(z0)))) MARK(U41(U21(U51(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U51(mark(z0), z1)), x1), MARK(U21(U51(z0, z1)))) MARK(U41(U21(U52(z0)), x1)) -> c38(A__U41(a__U21(a__U52(mark(z0))), x1), MARK(U21(U52(z0)))) MARK(U41(U21(isNatList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatList(z0)), x1), MARK(U21(isNatList(z0)))) MARK(U41(U21(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U21(a__U61(mark(z0), z1, z2)), x1), MARK(U21(U61(z0, z1, z2)))) MARK(U41(U21(U62(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U62(mark(z0), z1)), x1), MARK(U21(U62(z0, z1)))) MARK(U41(U21(isNat(z0)), x1)) -> c38(A__U41(a__U21(a__isNat(z0)), x1), MARK(U21(isNat(z0)))) MARK(U41(U21(length(z0)), x1)) -> c38(A__U41(a__U21(a__length(mark(z0))), x1), MARK(U21(length(z0)))) MARK(U41(U21(cons(z0, z1)), x1)) -> c38(A__U41(a__U21(cons(mark(z0), z1)), x1), MARK(U21(cons(z0, z1)))) MARK(U41(U21(0), x1)) -> c38(A__U41(a__U21(0), x1), MARK(U21(0))) MARK(U41(U21(tt), x1)) -> c38(A__U41(a__U21(tt), x1), MARK(U21(tt))) MARK(U41(U21(s(z0)), x1)) -> c38(A__U41(a__U21(s(mark(z0))), x1), MARK(U21(s(z0)))) MARK(U41(U21(nil), x1)) -> c38(A__U41(a__U21(nil), x1), MARK(U21(nil))) MARK(U41(U21(x0), x1)) -> c38(MARK(U21(x0))) MARK(U41(U31(zeros), x1)) -> c38(A__U41(a__U31(a__zeros), x1), MARK(U31(zeros))) MARK(U41(U31(U11(z0)), x1)) -> c38(A__U41(a__U31(a__U11(mark(z0))), x1), MARK(U31(U11(z0)))) MARK(U41(U31(U21(z0)), x1)) -> c38(A__U41(a__U31(a__U21(mark(z0))), x1), MARK(U31(U21(z0)))) MARK(U41(U31(U31(z0)), x1)) -> c38(A__U41(a__U31(a__U31(mark(z0))), x1), MARK(U31(U31(z0)))) MARK(U41(U31(U41(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U41(mark(z0), z1)), x1), MARK(U31(U41(z0, z1)))) MARK(U41(U31(U42(z0)), x1)) -> c38(A__U41(a__U31(a__U42(mark(z0))), x1), MARK(U31(U42(z0)))) MARK(U41(U31(isNatIList(z0)), x1)) -> c38(A__U41(a__U31(a__isNatIList(z0)), x1), MARK(U31(isNatIList(z0)))) MARK(U41(U31(U51(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U51(mark(z0), z1)), x1), MARK(U31(U51(z0, z1)))) MARK(U41(U31(U52(z0)), x1)) -> c38(A__U41(a__U31(a__U52(mark(z0))), x1), MARK(U31(U52(z0)))) MARK(U41(U31(isNatList(z0)), x1)) -> c38(A__U41(a__U31(a__isNatList(z0)), x1), MARK(U31(isNatList(z0)))) MARK(U41(U31(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U31(a__U61(mark(z0), z1, z2)), x1), MARK(U31(U61(z0, z1, z2)))) MARK(U41(U31(U62(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U62(mark(z0), z1)), x1), MARK(U31(U62(z0, z1)))) MARK(U41(U31(isNat(z0)), x1)) -> c38(A__U41(a__U31(a__isNat(z0)), x1), MARK(U31(isNat(z0)))) MARK(U41(U31(length(z0)), x1)) -> c38(A__U41(a__U31(a__length(mark(z0))), x1), MARK(U31(length(z0)))) MARK(U41(U31(cons(z0, z1)), x1)) -> c38(A__U41(a__U31(cons(mark(z0), z1)), x1), MARK(U31(cons(z0, z1)))) MARK(U41(U31(0), x1)) -> c38(A__U41(a__U31(0), x1), MARK(U31(0))) MARK(U41(U31(tt), x1)) -> c38(A__U41(a__U31(tt), x1), MARK(U31(tt))) MARK(U41(U31(s(z0)), x1)) -> c38(A__U41(a__U31(s(mark(z0))), x1), MARK(U31(s(z0)))) MARK(U41(U31(nil), x1)) -> c38(A__U41(a__U31(nil), x1), MARK(U31(nil))) MARK(U41(U31(x0), x1)) -> c38(MARK(U31(x0))) MARK(U41(U41(U11(z0), x1), x2)) -> c38(A__U41(a__U41(a__U11(mark(z0)), x1), x2), MARK(U41(U11(z0), x1))) MARK(U41(U41(U21(z0), x1), x2)) -> c38(A__U41(a__U41(a__U21(mark(z0)), x1), x2), MARK(U41(U21(z0), x1))) MARK(U41(U41(U31(z0), x1), x2)) -> c38(A__U41(a__U41(a__U31(mark(z0)), x1), x2), MARK(U41(U31(z0), x1))) MARK(U41(U41(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U41(mark(z0), z1), x1), x2), MARK(U41(U41(z0, z1), x1))) MARK(U41(U41(U42(z0), x1), x2)) -> c38(A__U41(a__U41(a__U42(mark(z0)), x1), x2), MARK(U41(U42(z0), x1))) MARK(U41(U41(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U51(mark(z0), z1), x1), x2), MARK(U41(U51(z0, z1), x1))) MARK(U41(U41(U52(z0), x1), x2)) -> c38(A__U41(a__U41(a__U52(mark(z0)), x1), x2), MARK(U41(U52(z0), x1))) MARK(U41(U41(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U41(a__U61(mark(z0), z1, z2), x1), x2), MARK(U41(U61(z0, z1, z2), x1))) MARK(U41(U41(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U62(mark(z0), z1), x1), x2), MARK(U41(U62(z0, z1), x1))) MARK(U41(U41(length(z0), x1), x2)) -> c38(A__U41(a__U41(a__length(mark(z0)), x1), x2), MARK(U41(length(z0), x1))) MARK(U41(U41(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U41(cons(mark(z0), z1), x1), x2), MARK(U41(cons(z0, z1), x1))) MARK(U41(U41(s(z0), x1), x2)) -> c38(A__U41(a__U41(s(mark(z0)), x1), x2), MARK(U41(s(z0), x1))) MARK(U41(U41(x0, z1), x2)) -> c38(MARK(U41(x0, z1))) MARK(U41(U41(0, x1), x2)) -> c38(A__U41(a__U41(0, x1), x2)) MARK(U41(U41(nil, x1), x2)) -> c38(A__U41(a__U41(nil, x1), x2)) MARK(U41(U41(zeros, x1), x2)) -> c2(A__U41(a__U41(a__zeros, x1), x2)) MARK(U41(U41(zeros, x1), x2)) -> c2(MARK(U41(zeros, x1))) MARK(U41(U41(isNatIList(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNatIList(z0), x1), x2)) MARK(U41(U41(isNatIList(z0), x1), x2)) -> c2(MARK(U41(isNatIList(z0), x1))) MARK(U41(U41(isNatList(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNatList(z0), x1), x2)) MARK(U41(U41(isNatList(z0), x1), x2)) -> c2(MARK(U41(isNatList(z0), x1))) MARK(U41(U41(isNat(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNat(z0), x1), x2)) MARK(U41(U41(isNat(z0), x1), x2)) -> c2(MARK(U41(isNat(z0), x1))) MARK(U41(U41(tt, x1), x2)) -> c2(A__U41(a__U41(tt, x1), x2)) MARK(U41(U41(tt, x1), x2)) -> c2(MARK(U41(tt, x1))) MARK(U41(U42(zeros), x1)) -> c38(A__U41(a__U42(a__zeros), x1), MARK(U42(zeros))) MARK(U41(U42(U11(z0)), x1)) -> c38(A__U41(a__U42(a__U11(mark(z0))), x1), MARK(U42(U11(z0)))) MARK(U41(U42(U21(z0)), x1)) -> c38(A__U41(a__U42(a__U21(mark(z0))), x1), MARK(U42(U21(z0)))) MARK(U41(U42(U31(z0)), x1)) -> c38(A__U41(a__U42(a__U31(mark(z0))), x1), MARK(U42(U31(z0)))) MARK(U41(U42(U41(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U41(mark(z0), z1)), x1), MARK(U42(U41(z0, z1)))) MARK(U41(U42(U42(z0)), x1)) -> c38(A__U41(a__U42(a__U42(mark(z0))), x1), MARK(U42(U42(z0)))) MARK(U41(U42(isNatIList(z0)), x1)) -> c38(A__U41(a__U42(a__isNatIList(z0)), x1), MARK(U42(isNatIList(z0)))) MARK(U41(U42(U51(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U51(mark(z0), z1)), x1), MARK(U42(U51(z0, z1)))) MARK(U41(U42(U52(z0)), x1)) -> c38(A__U41(a__U42(a__U52(mark(z0))), x1), MARK(U42(U52(z0)))) MARK(U41(U42(isNatList(z0)), x1)) -> c38(A__U41(a__U42(a__isNatList(z0)), x1), MARK(U42(isNatList(z0)))) MARK(U41(U42(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U42(a__U61(mark(z0), z1, z2)), x1), MARK(U42(U61(z0, z1, z2)))) MARK(U41(U42(U62(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U62(mark(z0), z1)), x1), MARK(U42(U62(z0, z1)))) MARK(U41(U42(isNat(z0)), x1)) -> c38(A__U41(a__U42(a__isNat(z0)), x1), MARK(U42(isNat(z0)))) MARK(U41(U42(length(z0)), x1)) -> c38(A__U41(a__U42(a__length(mark(z0))), x1), MARK(U42(length(z0)))) MARK(U41(U42(cons(z0, z1)), x1)) -> c38(A__U41(a__U42(cons(mark(z0), z1)), x1), MARK(U42(cons(z0, z1)))) MARK(U41(U42(0), x1)) -> c38(A__U41(a__U42(0), x1), MARK(U42(0))) MARK(U41(U42(tt), x1)) -> c38(A__U41(a__U42(tt), x1), MARK(U42(tt))) MARK(U41(U42(s(z0)), x1)) -> c38(A__U41(a__U42(s(mark(z0))), x1), MARK(U42(s(z0)))) MARK(U41(U42(nil), x1)) -> c38(A__U41(a__U42(nil), x1), MARK(U42(nil))) MARK(U41(U42(x0), x1)) -> c38(MARK(U42(x0))) MARK(U41(U51(U11(z0), x1), x2)) -> c38(A__U41(a__U51(a__U11(mark(z0)), x1), x2), MARK(U51(U11(z0), x1))) MARK(U41(U51(U21(z0), x1), x2)) -> c38(A__U41(a__U51(a__U21(mark(z0)), x1), x2), MARK(U51(U21(z0), x1))) MARK(U41(U51(U31(z0), x1), x2)) -> c38(A__U41(a__U51(a__U31(mark(z0)), x1), x2), MARK(U51(U31(z0), x1))) MARK(U41(U51(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U41(mark(z0), z1), x1), x2), MARK(U51(U41(z0, z1), x1))) MARK(U41(U51(U42(z0), x1), x2)) -> c38(A__U41(a__U51(a__U42(mark(z0)), x1), x2), MARK(U51(U42(z0), x1))) MARK(U41(U51(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U51(mark(z0), z1), x1), x2), MARK(U51(U51(z0, z1), x1))) MARK(U41(U51(U52(z0), x1), x2)) -> c38(A__U41(a__U51(a__U52(mark(z0)), x1), x2), MARK(U51(U52(z0), x1))) MARK(U41(U51(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U51(a__U61(mark(z0), z1, z2), x1), x2), MARK(U51(U61(z0, z1, z2), x1))) MARK(U41(U51(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U62(mark(z0), z1), x1), x2), MARK(U51(U62(z0, z1), x1))) MARK(U41(U51(length(z0), x1), x2)) -> c38(A__U41(a__U51(a__length(mark(z0)), x1), x2), MARK(U51(length(z0), x1))) MARK(U41(U51(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U51(cons(mark(z0), z1), x1), x2), MARK(U51(cons(z0, z1), x1))) MARK(U41(U51(s(z0), x1), x2)) -> c38(A__U41(a__U51(s(mark(z0)), x1), x2), MARK(U51(s(z0), x1))) MARK(U41(U51(x0, z1), x2)) -> c38(MARK(U51(x0, z1))) MARK(U41(U51(0, x1), x2)) -> c38(A__U41(a__U51(0, x1), x2)) MARK(U41(U51(nil, x1), x2)) -> c38(A__U41(a__U51(nil, x1), x2)) MARK(U41(U51(zeros, x1), x2)) -> c3(A__U41(a__U51(a__zeros, x1), x2)) MARK(U41(U51(zeros, x1), x2)) -> c3(MARK(U51(zeros, x1))) MARK(U41(U51(isNatIList(z0), x1), x2)) -> c3(A__U41(a__U51(a__isNatIList(z0), x1), x2)) MARK(U41(U51(isNatIList(z0), x1), x2)) -> c3(MARK(U51(isNatIList(z0), x1))) MARK(U41(U51(isNatList(z0), x1), x2)) -> c3(A__U41(a__U51(a__isNatList(z0), x1), x2)) MARK(U41(U51(isNatList(z0), x1), x2)) -> c3(MARK(U51(isNatList(z0), x1))) MARK(U41(U51(isNat(z0), x1), x2)) -> c3(A__U41(a__U51(a__isNat(z0), x1), x2)) MARK(U41(U51(isNat(z0), x1), x2)) -> c3(MARK(U51(isNat(z0), x1))) MARK(U41(U51(tt, x1), x2)) -> c3(A__U41(a__U51(tt, x1), x2)) MARK(U41(U51(tt, x1), x2)) -> c3(MARK(U51(tt, x1))) S tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) A__U62(tt, isNatList(cons(z0, z1))) -> c18(A__LENGTH(a__U51(a__isNat(z0), z1)), MARK(isNatList(cons(z0, z1)))) A__U62(tt, isNatList(nil)) -> c18(MARK(isNatList(nil))) A__U62(tt, isNatList(z0)) -> c18(MARK(isNatList(z0))) A__U62(tt, U61(zeros, x1, x2)) -> c18(A__LENGTH(a__U61(a__zeros, x1, x2)), MARK(U61(zeros, x1, x2))) A__U62(tt, U61(U11(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U11(mark(z0)), x1, x2)), MARK(U61(U11(z0), x1, x2))) A__U62(tt, U61(U21(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U21(mark(z0)), x1, x2)), MARK(U61(U21(z0), x1, x2))) A__U62(tt, U61(U31(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U31(mark(z0)), x1, x2)), MARK(U61(U31(z0), x1, x2))) A__U62(tt, U61(U41(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U41(mark(z0), z1), x1, x2)), MARK(U61(U41(z0, z1), x1, x2))) A__U62(tt, U61(U42(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U42(mark(z0)), x1, x2)), MARK(U61(U42(z0), x1, x2))) A__U62(tt, U61(isNatIList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatIList(z0), x1, x2)), MARK(U61(isNatIList(z0), x1, x2))) A__U62(tt, U61(U51(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U51(mark(z0), z1), x1, x2)), MARK(U61(U51(z0, z1), x1, x2))) A__U62(tt, U61(U52(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U52(mark(z0)), x1, x2)), MARK(U61(U52(z0), x1, x2))) A__U62(tt, U61(isNatList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatList(z0), x1, x2)), MARK(U61(isNatList(z0), x1, x2))) A__U62(tt, U61(U61(z0, z1, z2), x1, x2)) -> c18(A__LENGTH(a__U61(a__U61(mark(z0), z1, z2), x1, x2)), MARK(U61(U61(z0, z1, z2), x1, x2))) A__U62(tt, U61(U62(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U62(mark(z0), z1), x1, x2)), MARK(U61(U62(z0, z1), x1, x2))) A__U62(tt, U61(isNat(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNat(z0), x1, x2)), MARK(U61(isNat(z0), x1, x2))) A__U62(tt, U61(length(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__length(mark(z0)), x1, x2)), MARK(U61(length(z0), x1, x2))) A__U62(tt, U61(cons(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(cons(mark(z0), z1), x1, x2)), MARK(U61(cons(z0, z1), x1, x2))) A__U62(tt, U61(tt, x1, x2)) -> c18(A__LENGTH(a__U61(tt, x1, x2)), MARK(U61(tt, x1, x2))) A__U62(tt, U61(s(z0), x1, x2)) -> c18(A__LENGTH(a__U61(s(mark(z0)), x1, x2)), MARK(U61(s(z0), x1, x2))) A__U62(tt, U61(x0, z1, z2)) -> c18(MARK(U61(x0, z1, z2))) A__U62(tt, U61(0, x1, x2)) -> c18(A__LENGTH(a__U61(0, x1, x2))) A__U62(tt, U61(nil, x1, x2)) -> c18(A__LENGTH(a__U61(nil, x1, x2))) A__U62(tt, U62(zeros, x1)) -> c18(A__LENGTH(a__U62(a__zeros, x1)), MARK(U62(zeros, x1))) A__U62(tt, U62(U11(z0), x1)) -> c18(A__LENGTH(a__U62(a__U11(mark(z0)), x1)), MARK(U62(U11(z0), x1))) A__U62(tt, U62(U21(z0), x1)) -> c18(A__LENGTH(a__U62(a__U21(mark(z0)), x1)), MARK(U62(U21(z0), x1))) A__U62(tt, U62(U31(z0), x1)) -> c18(A__LENGTH(a__U62(a__U31(mark(z0)), x1)), MARK(U62(U31(z0), x1))) A__U62(tt, U62(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U41(mark(z0), z1), x1)), MARK(U62(U41(z0, z1), x1))) A__U62(tt, U62(U42(z0), x1)) -> c18(A__LENGTH(a__U62(a__U42(mark(z0)), x1)), MARK(U62(U42(z0), x1))) A__U62(tt, U62(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatIList(z0), x1)), MARK(U62(isNatIList(z0), x1))) A__U62(tt, U62(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U51(mark(z0), z1), x1)), MARK(U62(U51(z0, z1), x1))) A__U62(tt, U62(U52(z0), x1)) -> c18(A__LENGTH(a__U62(a__U52(mark(z0)), x1)), MARK(U62(U52(z0), x1))) A__U62(tt, U62(isNatList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatList(z0), x1)), MARK(U62(isNatList(z0), x1))) A__U62(tt, U62(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U62(a__U61(mark(z0), z1, z2), x1)), MARK(U62(U61(z0, z1, z2), x1))) A__U62(tt, U62(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U62(mark(z0), z1), x1)), MARK(U62(U62(z0, z1), x1))) A__U62(tt, U62(isNat(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNat(z0), x1)), MARK(U62(isNat(z0), x1))) A__U62(tt, U62(length(z0), x1)) -> c18(A__LENGTH(a__U62(a__length(mark(z0)), x1)), MARK(U62(length(z0), x1))) A__U62(tt, U62(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U62(cons(mark(z0), z1), x1)), MARK(U62(cons(z0, z1), x1))) A__U62(tt, U62(tt, x1)) -> c18(A__LENGTH(a__U62(tt, x1)), MARK(U62(tt, x1))) A__U62(tt, U62(s(z0), x1)) -> c18(A__LENGTH(a__U62(s(mark(z0)), x1)), MARK(U62(s(z0), x1))) A__U62(tt, U62(x0, z1)) -> c18(MARK(U62(x0, z1))) A__U62(tt, U62(0, x1)) -> c18(A__LENGTH(a__U62(0, x1))) A__U62(tt, U62(nil, x1)) -> c18(A__LENGTH(a__U62(nil, x1))) A__U62(tt, isNat(length(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(isNat(length(z0)))) A__U62(tt, isNat(s(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(isNat(s(z0)))) A__U62(tt, isNat(0)) -> c18(MARK(isNat(0))) A__U62(tt, isNat(z0)) -> c18(MARK(isNat(z0))) A__U62(tt, length(zeros)) -> c18(A__LENGTH(a__length(a__zeros)), MARK(length(zeros))) A__U62(tt, length(U11(z0))) -> c18(A__LENGTH(a__length(a__U11(mark(z0)))), MARK(length(U11(z0)))) A__U62(tt, length(U21(z0))) -> c18(A__LENGTH(a__length(a__U21(mark(z0)))), MARK(length(U21(z0)))) A__U62(tt, length(U31(z0))) -> c18(A__LENGTH(a__length(a__U31(mark(z0)))), MARK(length(U31(z0)))) A__U62(tt, length(U41(z0, z1))) -> c18(A__LENGTH(a__length(a__U41(mark(z0), z1))), MARK(length(U41(z0, z1)))) A__U62(tt, length(U42(z0))) -> c18(A__LENGTH(a__length(a__U42(mark(z0)))), MARK(length(U42(z0)))) A__U62(tt, length(isNatIList(z0))) -> c18(A__LENGTH(a__length(a__isNatIList(z0))), MARK(length(isNatIList(z0)))) A__U62(tt, length(U51(z0, z1))) -> c18(A__LENGTH(a__length(a__U51(mark(z0), z1))), MARK(length(U51(z0, z1)))) A__U62(tt, length(U52(z0))) -> c18(A__LENGTH(a__length(a__U52(mark(z0)))), MARK(length(U52(z0)))) A__U62(tt, length(isNatList(z0))) -> c18(A__LENGTH(a__length(a__isNatList(z0))), MARK(length(isNatList(z0)))) A__U62(tt, length(U61(z0, z1, z2))) -> c18(A__LENGTH(a__length(a__U61(mark(z0), z1, z2))), MARK(length(U61(z0, z1, z2)))) A__U62(tt, length(U62(z0, z1))) -> c18(A__LENGTH(a__length(a__U62(mark(z0), z1))), MARK(length(U62(z0, z1)))) A__U62(tt, length(isNat(z0))) -> c18(A__LENGTH(a__length(a__isNat(z0))), MARK(length(isNat(z0)))) A__U62(tt, length(length(z0))) -> c18(A__LENGTH(a__length(a__length(mark(z0)))), MARK(length(length(z0)))) A__U62(tt, length(cons(z0, z1))) -> c18(A__LENGTH(a__length(cons(mark(z0), z1))), MARK(length(cons(z0, z1)))) A__U62(tt, length(s(z0))) -> c18(A__LENGTH(a__length(s(mark(z0)))), MARK(length(s(z0)))) A__U62(tt, length(x0)) -> c18(MARK(length(x0))) A__U62(tt, length(0)) -> c18(A__LENGTH(a__length(0))) A__U62(tt, length(tt)) -> c18(A__LENGTH(a__length(tt))) A__U62(tt, length(nil)) -> c18(A__LENGTH(a__length(nil))) A__U62(tt, zeros) -> c18(A__LENGTH(cons(0, zeros))) A__ISNATILIST(cons(length(nil), x1)) -> c26(A__U41(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATILIST(cons(length(cons(z0, z1)), x1)) -> c26(A__U41(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(length(x0), x1)) -> c26(A__ISNAT(length(x0))) A__ISNATILIST(cons(s(0), x1)) -> c26(A__U41(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATILIST(cons(s(length(z0)), x1)) -> c26(A__U41(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATILIST(cons(s(s(z0)), x1)) -> c26(A__U41(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(s(x0), x1)) -> c26(A__ISNAT(s(x0))) A__ISNATLIST(cons(length(nil), x1)) -> c29(A__U51(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATLIST(cons(length(cons(z0, z1)), x1)) -> c29(A__U51(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(length(x0), x1)) -> c29(A__ISNAT(length(x0))) A__ISNATLIST(cons(s(0), x1)) -> c29(A__U51(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATLIST(cons(s(length(z0)), x1)) -> c29(A__U51(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATLIST(cons(s(s(z0)), x1)) -> c29(A__U51(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(s(x0), x1)) -> c29(A__ISNAT(s(x0))) A__LENGTH(cons(x0, cons(0, x2))) -> c32(A__U61(a__U51(tt, x2), cons(0, x2), x0), A__ISNATLIST(cons(0, x2))) A__LENGTH(cons(x0, cons(length(z0), x2))) -> c32(A__U61(a__U51(a__U11(a__isNatList(z0)), x2), cons(length(z0), x2), x0), A__ISNATLIST(cons(length(z0), x2))) A__LENGTH(cons(x0, cons(s(z0), x2))) -> c32(A__U61(a__U51(a__U21(a__isNat(z0)), x2), cons(s(z0), x2), x0), A__ISNATLIST(cons(s(z0), x2))) A__LENGTH(cons(x0, cons(z0, x2))) -> c32(A__U61(a__U51(isNat(z0), x2), cons(z0, x2), x0), A__ISNATLIST(cons(z0, x2))) A__LENGTH(cons(x0, cons(x1, z1))) -> c32(A__ISNATLIST(cons(x1, z1))) MARK(U41(U11(zeros), x1)) -> c38(A__U41(a__U11(a__zeros), x1), MARK(U11(zeros))) MARK(U41(U11(U11(z0)), x1)) -> c38(A__U41(a__U11(a__U11(mark(z0))), x1), MARK(U11(U11(z0)))) MARK(U41(U11(U21(z0)), x1)) -> c38(A__U41(a__U11(a__U21(mark(z0))), x1), MARK(U11(U21(z0)))) MARK(U41(U11(U31(z0)), x1)) -> c38(A__U41(a__U11(a__U31(mark(z0))), x1), MARK(U11(U31(z0)))) MARK(U41(U11(U41(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U41(mark(z0), z1)), x1), MARK(U11(U41(z0, z1)))) MARK(U41(U11(U42(z0)), x1)) -> c38(A__U41(a__U11(a__U42(mark(z0))), x1), MARK(U11(U42(z0)))) MARK(U41(U11(isNatIList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatIList(z0)), x1), MARK(U11(isNatIList(z0)))) MARK(U41(U11(U51(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U51(mark(z0), z1)), x1), MARK(U11(U51(z0, z1)))) MARK(U41(U11(U52(z0)), x1)) -> c38(A__U41(a__U11(a__U52(mark(z0))), x1), MARK(U11(U52(z0)))) MARK(U41(U11(isNatList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatList(z0)), x1), MARK(U11(isNatList(z0)))) MARK(U41(U11(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U11(a__U61(mark(z0), z1, z2)), x1), MARK(U11(U61(z0, z1, z2)))) MARK(U41(U11(U62(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U62(mark(z0), z1)), x1), MARK(U11(U62(z0, z1)))) MARK(U41(U11(isNat(z0)), x1)) -> c38(A__U41(a__U11(a__isNat(z0)), x1), MARK(U11(isNat(z0)))) MARK(U41(U11(length(z0)), x1)) -> c38(A__U41(a__U11(a__length(mark(z0))), x1), MARK(U11(length(z0)))) MARK(U41(U11(cons(z0, z1)), x1)) -> c38(A__U41(a__U11(cons(mark(z0), z1)), x1), MARK(U11(cons(z0, z1)))) MARK(U41(U11(0), x1)) -> c38(A__U41(a__U11(0), x1), MARK(U11(0))) MARK(U41(U11(tt), x1)) -> c38(A__U41(a__U11(tt), x1), MARK(U11(tt))) MARK(U41(U11(s(z0)), x1)) -> c38(A__U41(a__U11(s(mark(z0))), x1), MARK(U11(s(z0)))) MARK(U41(U11(nil), x1)) -> c38(A__U41(a__U11(nil), x1), MARK(U11(nil))) MARK(U41(U11(x0), x1)) -> c38(MARK(U11(x0))) MARK(U41(U21(zeros), x1)) -> c38(A__U41(a__U21(a__zeros), x1), MARK(U21(zeros))) MARK(U41(U21(U11(z0)), x1)) -> c38(A__U41(a__U21(a__U11(mark(z0))), x1), MARK(U21(U11(z0)))) MARK(U41(U21(U21(z0)), x1)) -> c38(A__U41(a__U21(a__U21(mark(z0))), x1), MARK(U21(U21(z0)))) MARK(U41(U21(U31(z0)), x1)) -> c38(A__U41(a__U21(a__U31(mark(z0))), x1), MARK(U21(U31(z0)))) MARK(U41(U21(U41(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U41(mark(z0), z1)), x1), MARK(U21(U41(z0, z1)))) MARK(U41(U21(U42(z0)), x1)) -> c38(A__U41(a__U21(a__U42(mark(z0))), x1), MARK(U21(U42(z0)))) MARK(U41(U21(isNatIList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatIList(z0)), x1), MARK(U21(isNatIList(z0)))) MARK(U41(U21(U51(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U51(mark(z0), z1)), x1), MARK(U21(U51(z0, z1)))) MARK(U41(U21(U52(z0)), x1)) -> c38(A__U41(a__U21(a__U52(mark(z0))), x1), MARK(U21(U52(z0)))) MARK(U41(U21(isNatList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatList(z0)), x1), MARK(U21(isNatList(z0)))) MARK(U41(U21(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U21(a__U61(mark(z0), z1, z2)), x1), MARK(U21(U61(z0, z1, z2)))) MARK(U41(U21(U62(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U62(mark(z0), z1)), x1), MARK(U21(U62(z0, z1)))) MARK(U41(U21(isNat(z0)), x1)) -> c38(A__U41(a__U21(a__isNat(z0)), x1), MARK(U21(isNat(z0)))) MARK(U41(U21(length(z0)), x1)) -> c38(A__U41(a__U21(a__length(mark(z0))), x1), MARK(U21(length(z0)))) MARK(U41(U21(cons(z0, z1)), x1)) -> c38(A__U41(a__U21(cons(mark(z0), z1)), x1), MARK(U21(cons(z0, z1)))) MARK(U41(U21(0), x1)) -> c38(A__U41(a__U21(0), x1), MARK(U21(0))) MARK(U41(U21(tt), x1)) -> c38(A__U41(a__U21(tt), x1), MARK(U21(tt))) MARK(U41(U21(s(z0)), x1)) -> c38(A__U41(a__U21(s(mark(z0))), x1), MARK(U21(s(z0)))) MARK(U41(U21(nil), x1)) -> c38(A__U41(a__U21(nil), x1), MARK(U21(nil))) MARK(U41(U21(x0), x1)) -> c38(MARK(U21(x0))) MARK(U41(U31(zeros), x1)) -> c38(A__U41(a__U31(a__zeros), x1), MARK(U31(zeros))) MARK(U41(U31(U11(z0)), x1)) -> c38(A__U41(a__U31(a__U11(mark(z0))), x1), MARK(U31(U11(z0)))) MARK(U41(U31(U21(z0)), x1)) -> c38(A__U41(a__U31(a__U21(mark(z0))), x1), MARK(U31(U21(z0)))) MARK(U41(U31(U31(z0)), x1)) -> c38(A__U41(a__U31(a__U31(mark(z0))), x1), MARK(U31(U31(z0)))) MARK(U41(U31(U41(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U41(mark(z0), z1)), x1), MARK(U31(U41(z0, z1)))) MARK(U41(U31(U42(z0)), x1)) -> c38(A__U41(a__U31(a__U42(mark(z0))), x1), MARK(U31(U42(z0)))) MARK(U41(U31(isNatIList(z0)), x1)) -> c38(A__U41(a__U31(a__isNatIList(z0)), x1), MARK(U31(isNatIList(z0)))) MARK(U41(U31(U51(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U51(mark(z0), z1)), x1), MARK(U31(U51(z0, z1)))) MARK(U41(U31(U52(z0)), x1)) -> c38(A__U41(a__U31(a__U52(mark(z0))), x1), MARK(U31(U52(z0)))) MARK(U41(U31(isNatList(z0)), x1)) -> c38(A__U41(a__U31(a__isNatList(z0)), x1), MARK(U31(isNatList(z0)))) MARK(U41(U31(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U31(a__U61(mark(z0), z1, z2)), x1), MARK(U31(U61(z0, z1, z2)))) MARK(U41(U31(U62(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U62(mark(z0), z1)), x1), MARK(U31(U62(z0, z1)))) MARK(U41(U31(isNat(z0)), x1)) -> c38(A__U41(a__U31(a__isNat(z0)), x1), MARK(U31(isNat(z0)))) MARK(U41(U31(length(z0)), x1)) -> c38(A__U41(a__U31(a__length(mark(z0))), x1), MARK(U31(length(z0)))) MARK(U41(U31(cons(z0, z1)), x1)) -> c38(A__U41(a__U31(cons(mark(z0), z1)), x1), MARK(U31(cons(z0, z1)))) MARK(U41(U31(0), x1)) -> c38(A__U41(a__U31(0), x1), MARK(U31(0))) MARK(U41(U31(tt), x1)) -> c38(A__U41(a__U31(tt), x1), MARK(U31(tt))) MARK(U41(U31(s(z0)), x1)) -> c38(A__U41(a__U31(s(mark(z0))), x1), MARK(U31(s(z0)))) MARK(U41(U31(nil), x1)) -> c38(A__U41(a__U31(nil), x1), MARK(U31(nil))) MARK(U41(U31(x0), x1)) -> c38(MARK(U31(x0))) MARK(U41(U41(U11(z0), x1), x2)) -> c38(A__U41(a__U41(a__U11(mark(z0)), x1), x2), MARK(U41(U11(z0), x1))) MARK(U41(U41(U21(z0), x1), x2)) -> c38(A__U41(a__U41(a__U21(mark(z0)), x1), x2), MARK(U41(U21(z0), x1))) MARK(U41(U41(U31(z0), x1), x2)) -> c38(A__U41(a__U41(a__U31(mark(z0)), x1), x2), MARK(U41(U31(z0), x1))) MARK(U41(U41(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U41(mark(z0), z1), x1), x2), MARK(U41(U41(z0, z1), x1))) MARK(U41(U41(U42(z0), x1), x2)) -> c38(A__U41(a__U41(a__U42(mark(z0)), x1), x2), MARK(U41(U42(z0), x1))) MARK(U41(U41(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U51(mark(z0), z1), x1), x2), MARK(U41(U51(z0, z1), x1))) MARK(U41(U41(U52(z0), x1), x2)) -> c38(A__U41(a__U41(a__U52(mark(z0)), x1), x2), MARK(U41(U52(z0), x1))) MARK(U41(U41(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U41(a__U61(mark(z0), z1, z2), x1), x2), MARK(U41(U61(z0, z1, z2), x1))) MARK(U41(U41(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U62(mark(z0), z1), x1), x2), MARK(U41(U62(z0, z1), x1))) MARK(U41(U41(length(z0), x1), x2)) -> c38(A__U41(a__U41(a__length(mark(z0)), x1), x2), MARK(U41(length(z0), x1))) MARK(U41(U41(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U41(cons(mark(z0), z1), x1), x2), MARK(U41(cons(z0, z1), x1))) MARK(U41(U41(s(z0), x1), x2)) -> c38(A__U41(a__U41(s(mark(z0)), x1), x2), MARK(U41(s(z0), x1))) MARK(U41(U41(x0, z1), x2)) -> c38(MARK(U41(x0, z1))) MARK(U41(U41(0, x1), x2)) -> c38(A__U41(a__U41(0, x1), x2)) MARK(U41(U41(nil, x1), x2)) -> c38(A__U41(a__U41(nil, x1), x2)) MARK(U41(U41(zeros, x1), x2)) -> c2(A__U41(a__U41(a__zeros, x1), x2)) MARK(U41(U41(zeros, x1), x2)) -> c2(MARK(U41(zeros, x1))) MARK(U41(U41(isNatIList(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNatIList(z0), x1), x2)) MARK(U41(U41(isNatIList(z0), x1), x2)) -> c2(MARK(U41(isNatIList(z0), x1))) MARK(U41(U41(isNatList(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNatList(z0), x1), x2)) MARK(U41(U41(isNatList(z0), x1), x2)) -> c2(MARK(U41(isNatList(z0), x1))) MARK(U41(U41(isNat(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNat(z0), x1), x2)) MARK(U41(U41(isNat(z0), x1), x2)) -> c2(MARK(U41(isNat(z0), x1))) MARK(U41(U41(tt, x1), x2)) -> c2(A__U41(a__U41(tt, x1), x2)) MARK(U41(U41(tt, x1), x2)) -> c2(MARK(U41(tt, x1))) MARK(U41(U42(zeros), x1)) -> c38(A__U41(a__U42(a__zeros), x1), MARK(U42(zeros))) MARK(U41(U42(U11(z0)), x1)) -> c38(A__U41(a__U42(a__U11(mark(z0))), x1), MARK(U42(U11(z0)))) MARK(U41(U42(U21(z0)), x1)) -> c38(A__U41(a__U42(a__U21(mark(z0))), x1), MARK(U42(U21(z0)))) MARK(U41(U42(U31(z0)), x1)) -> c38(A__U41(a__U42(a__U31(mark(z0))), x1), MARK(U42(U31(z0)))) MARK(U41(U42(U41(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U41(mark(z0), z1)), x1), MARK(U42(U41(z0, z1)))) MARK(U41(U42(U42(z0)), x1)) -> c38(A__U41(a__U42(a__U42(mark(z0))), x1), MARK(U42(U42(z0)))) MARK(U41(U42(isNatIList(z0)), x1)) -> c38(A__U41(a__U42(a__isNatIList(z0)), x1), MARK(U42(isNatIList(z0)))) MARK(U41(U42(U51(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U51(mark(z0), z1)), x1), MARK(U42(U51(z0, z1)))) MARK(U41(U42(U52(z0)), x1)) -> c38(A__U41(a__U42(a__U52(mark(z0))), x1), MARK(U42(U52(z0)))) MARK(U41(U42(isNatList(z0)), x1)) -> c38(A__U41(a__U42(a__isNatList(z0)), x1), MARK(U42(isNatList(z0)))) MARK(U41(U42(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U42(a__U61(mark(z0), z1, z2)), x1), MARK(U42(U61(z0, z1, z2)))) MARK(U41(U42(U62(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U62(mark(z0), z1)), x1), MARK(U42(U62(z0, z1)))) MARK(U41(U42(isNat(z0)), x1)) -> c38(A__U41(a__U42(a__isNat(z0)), x1), MARK(U42(isNat(z0)))) MARK(U41(U42(length(z0)), x1)) -> c38(A__U41(a__U42(a__length(mark(z0))), x1), MARK(U42(length(z0)))) MARK(U41(U42(cons(z0, z1)), x1)) -> c38(A__U41(a__U42(cons(mark(z0), z1)), x1), MARK(U42(cons(z0, z1)))) MARK(U41(U42(0), x1)) -> c38(A__U41(a__U42(0), x1), MARK(U42(0))) MARK(U41(U42(tt), x1)) -> c38(A__U41(a__U42(tt), x1), MARK(U42(tt))) MARK(U41(U42(s(z0)), x1)) -> c38(A__U41(a__U42(s(mark(z0))), x1), MARK(U42(s(z0)))) MARK(U41(U42(nil), x1)) -> c38(A__U41(a__U42(nil), x1), MARK(U42(nil))) MARK(U41(U42(x0), x1)) -> c38(MARK(U42(x0))) MARK(U41(U51(U11(z0), x1), x2)) -> c38(A__U41(a__U51(a__U11(mark(z0)), x1), x2), MARK(U51(U11(z0), x1))) MARK(U41(U51(U21(z0), x1), x2)) -> c38(A__U41(a__U51(a__U21(mark(z0)), x1), x2), MARK(U51(U21(z0), x1))) MARK(U41(U51(U31(z0), x1), x2)) -> c38(A__U41(a__U51(a__U31(mark(z0)), x1), x2), MARK(U51(U31(z0), x1))) MARK(U41(U51(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U41(mark(z0), z1), x1), x2), MARK(U51(U41(z0, z1), x1))) MARK(U41(U51(U42(z0), x1), x2)) -> c38(A__U41(a__U51(a__U42(mark(z0)), x1), x2), MARK(U51(U42(z0), x1))) MARK(U41(U51(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U51(mark(z0), z1), x1), x2), MARK(U51(U51(z0, z1), x1))) MARK(U41(U51(U52(z0), x1), x2)) -> c38(A__U41(a__U51(a__U52(mark(z0)), x1), x2), MARK(U51(U52(z0), x1))) MARK(U41(U51(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U51(a__U61(mark(z0), z1, z2), x1), x2), MARK(U51(U61(z0, z1, z2), x1))) MARK(U41(U51(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U62(mark(z0), z1), x1), x2), MARK(U51(U62(z0, z1), x1))) MARK(U41(U51(length(z0), x1), x2)) -> c38(A__U41(a__U51(a__length(mark(z0)), x1), x2), MARK(U51(length(z0), x1))) MARK(U41(U51(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U51(cons(mark(z0), z1), x1), x2), MARK(U51(cons(z0, z1), x1))) MARK(U41(U51(s(z0), x1), x2)) -> c38(A__U41(a__U51(s(mark(z0)), x1), x2), MARK(U51(s(z0), x1))) MARK(U41(U51(x0, z1), x2)) -> c38(MARK(U51(x0, z1))) MARK(U41(U51(0, x1), x2)) -> c38(A__U41(a__U51(0, x1), x2)) MARK(U41(U51(nil, x1), x2)) -> c38(A__U41(a__U51(nil, x1), x2)) MARK(U41(U51(zeros, x1), x2)) -> c3(A__U41(a__U51(a__zeros, x1), x2)) MARK(U41(U51(zeros, x1), x2)) -> c3(MARK(U51(zeros, x1))) MARK(U41(U51(isNatIList(z0), x1), x2)) -> c3(A__U41(a__U51(a__isNatIList(z0), x1), x2)) MARK(U41(U51(isNatIList(z0), x1), x2)) -> c3(MARK(U51(isNatIList(z0), x1))) MARK(U41(U51(isNatList(z0), x1), x2)) -> c3(A__U41(a__U51(a__isNatList(z0), x1), x2)) MARK(U41(U51(isNatList(z0), x1), x2)) -> c3(MARK(U51(isNatList(z0), x1))) MARK(U41(U51(isNat(z0), x1), x2)) -> c3(A__U41(a__U51(a__isNat(z0), x1), x2)) MARK(U41(U51(isNat(z0), x1), x2)) -> c3(MARK(U51(isNat(z0), x1))) MARK(U41(U51(tt, x1), x2)) -> c3(A__U41(a__U51(tt, x1), x2)) MARK(U41(U51(tt, x1), x2)) -> c3(MARK(U51(tt, x1))) K tuples:none Defined Rule Symbols: a__zeros, a__U11_1, a__U21_1, a__U31_1, a__U41_2, a__U42_1, a__U51_2, a__U52_1, a__U61_3, a__U62_2, a__isNat_1, a__isNatIList_1, a__isNatList_1, a__length_1, mark_1 Defined Pair Symbols: MARK_1, A__U41_2, A__U51_2, A__ISNAT_1, A__ISNATILIST_1, A__U61_3, A__U62_2, A__ISNATLIST_1, A__LENGTH_1 Compound Symbols: c40_1, c43_1, c46_1, c48_1, c51_1, c8_1, c12_1, c21_1, c22_1, c24_1, c35_1, c36_1, c37_1, c39_1, c42_1, c16_1, c18_2, c18_1, c26_1, c29_1, c32_1, c38_2, c38_1, c_1, c41_2, c41_1, c1_1, c44_2, c44_1, c45_2, c45_1, c47_2, c47_1, c16_2, c26_2, c29_2, c32_2, c2_1, c3_1 ---------------------------------------- (197) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace MARK(U41(U52(z0), x1)) -> c38(A__U41(a__U52(mark(z0)), x1), MARK(U52(z0))) by MARK(U41(U52(x0), x1)) -> c38(A__U41(U52(mark(x0)), x1), MARK(U52(x0))) MARK(U41(U52(zeros), x1)) -> c38(A__U41(a__U52(a__zeros), x1), MARK(U52(zeros))) MARK(U41(U52(U11(z0)), x1)) -> c38(A__U41(a__U52(a__U11(mark(z0))), x1), MARK(U52(U11(z0)))) MARK(U41(U52(U21(z0)), x1)) -> c38(A__U41(a__U52(a__U21(mark(z0))), x1), MARK(U52(U21(z0)))) MARK(U41(U52(U31(z0)), x1)) -> c38(A__U41(a__U52(a__U31(mark(z0))), x1), MARK(U52(U31(z0)))) MARK(U41(U52(U41(z0, z1)), x1)) -> c38(A__U41(a__U52(a__U41(mark(z0), z1)), x1), MARK(U52(U41(z0, z1)))) MARK(U41(U52(U42(z0)), x1)) -> c38(A__U41(a__U52(a__U42(mark(z0))), x1), MARK(U52(U42(z0)))) MARK(U41(U52(isNatIList(z0)), x1)) -> c38(A__U41(a__U52(a__isNatIList(z0)), x1), MARK(U52(isNatIList(z0)))) MARK(U41(U52(U51(z0, z1)), x1)) -> c38(A__U41(a__U52(a__U51(mark(z0), z1)), x1), MARK(U52(U51(z0, z1)))) MARK(U41(U52(U52(z0)), x1)) -> c38(A__U41(a__U52(a__U52(mark(z0))), x1), MARK(U52(U52(z0)))) MARK(U41(U52(isNatList(z0)), x1)) -> c38(A__U41(a__U52(a__isNatList(z0)), x1), MARK(U52(isNatList(z0)))) MARK(U41(U52(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U52(a__U61(mark(z0), z1, z2)), x1), MARK(U52(U61(z0, z1, z2)))) MARK(U41(U52(U62(z0, z1)), x1)) -> c38(A__U41(a__U52(a__U62(mark(z0), z1)), x1), MARK(U52(U62(z0, z1)))) MARK(U41(U52(isNat(z0)), x1)) -> c38(A__U41(a__U52(a__isNat(z0)), x1), MARK(U52(isNat(z0)))) MARK(U41(U52(length(z0)), x1)) -> c38(A__U41(a__U52(a__length(mark(z0))), x1), MARK(U52(length(z0)))) MARK(U41(U52(cons(z0, z1)), x1)) -> c38(A__U41(a__U52(cons(mark(z0), z1)), x1), MARK(U52(cons(z0, z1)))) MARK(U41(U52(0), x1)) -> c38(A__U41(a__U52(0), x1), MARK(U52(0))) MARK(U41(U52(tt), x1)) -> c38(A__U41(a__U52(tt), x1), MARK(U52(tt))) MARK(U41(U52(s(z0)), x1)) -> c38(A__U41(a__U52(s(mark(z0))), x1), MARK(U52(s(z0)))) MARK(U41(U52(nil), x1)) -> c38(A__U41(a__U52(nil), x1), MARK(U52(nil))) MARK(U41(U52(x0), x1)) -> c38(MARK(U52(x0))) ---------------------------------------- (198) Obligation: Complexity Dependency Tuples Problem Rules: a__zeros -> cons(0, zeros) a__zeros -> zeros a__U11(tt) -> tt a__U11(z0) -> U11(z0) a__U21(tt) -> tt a__U21(z0) -> U21(z0) a__U31(tt) -> tt a__U31(z0) -> U31(z0) a__U41(tt, z0) -> a__U42(a__isNatIList(z0)) a__U41(z0, z1) -> U41(z0, z1) a__U42(tt) -> tt a__U42(z0) -> U42(z0) a__U51(tt, z0) -> a__U52(a__isNatList(z0)) a__U51(z0, z1) -> U51(z0, z1) a__U52(tt) -> tt a__U52(z0) -> U52(z0) a__U61(tt, z0, z1) -> a__U62(a__isNat(z1), z0) a__U61(z0, z1, z2) -> U61(z0, z1, z2) a__U62(tt, z0) -> s(a__length(mark(z0))) a__U62(z0, z1) -> U62(z0, z1) a__isNat(0) -> tt a__isNat(length(z0)) -> a__U11(a__isNatList(z0)) a__isNat(s(z0)) -> a__U21(a__isNat(z0)) a__isNat(z0) -> isNat(z0) a__isNatIList(z0) -> a__U31(a__isNatList(z0)) a__isNatIList(zeros) -> tt a__isNatIList(cons(z0, z1)) -> a__U41(a__isNat(z0), z1) a__isNatIList(z0) -> isNatIList(z0) a__isNatList(nil) -> tt a__isNatList(cons(z0, z1)) -> a__U51(a__isNat(z0), z1) a__isNatList(z0) -> isNatList(z0) a__length(nil) -> 0 a__length(cons(z0, z1)) -> a__U61(a__isNatList(z1), z1, z0) a__length(z0) -> length(z0) mark(zeros) -> a__zeros mark(U11(z0)) -> a__U11(mark(z0)) mark(U21(z0)) -> a__U21(mark(z0)) mark(U31(z0)) -> a__U31(mark(z0)) mark(U41(z0, z1)) -> a__U41(mark(z0), z1) mark(U42(z0)) -> a__U42(mark(z0)) mark(isNatIList(z0)) -> a__isNatIList(z0) mark(U51(z0, z1)) -> a__U51(mark(z0), z1) mark(U52(z0)) -> a__U52(mark(z0)) mark(isNatList(z0)) -> a__isNatList(z0) mark(U61(z0, z1, z2)) -> a__U61(mark(z0), z1, z2) mark(U62(z0, z1)) -> a__U62(mark(z0), z1) mark(isNat(z0)) -> a__isNat(z0) mark(length(z0)) -> a__length(mark(z0)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(0) -> 0 mark(tt) -> tt mark(s(z0)) -> s(mark(z0)) mark(nil) -> nil Tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) A__U62(tt, isNatList(cons(z0, z1))) -> c18(A__LENGTH(a__U51(a__isNat(z0), z1)), MARK(isNatList(cons(z0, z1)))) A__U62(tt, isNatList(nil)) -> c18(MARK(isNatList(nil))) A__U62(tt, isNatList(z0)) -> c18(MARK(isNatList(z0))) A__U62(tt, U61(zeros, x1, x2)) -> c18(A__LENGTH(a__U61(a__zeros, x1, x2)), MARK(U61(zeros, x1, x2))) A__U62(tt, U61(U11(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U11(mark(z0)), x1, x2)), MARK(U61(U11(z0), x1, x2))) A__U62(tt, U61(U21(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U21(mark(z0)), x1, x2)), MARK(U61(U21(z0), x1, x2))) A__U62(tt, U61(U31(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U31(mark(z0)), x1, x2)), MARK(U61(U31(z0), x1, x2))) A__U62(tt, U61(U41(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U41(mark(z0), z1), x1, x2)), MARK(U61(U41(z0, z1), x1, x2))) A__U62(tt, U61(U42(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U42(mark(z0)), x1, x2)), MARK(U61(U42(z0), x1, x2))) A__U62(tt, U61(isNatIList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatIList(z0), x1, x2)), MARK(U61(isNatIList(z0), x1, x2))) A__U62(tt, U61(U51(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U51(mark(z0), z1), x1, x2)), MARK(U61(U51(z0, z1), x1, x2))) A__U62(tt, U61(U52(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U52(mark(z0)), x1, x2)), MARK(U61(U52(z0), x1, x2))) A__U62(tt, U61(isNatList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatList(z0), x1, x2)), MARK(U61(isNatList(z0), x1, x2))) A__U62(tt, U61(U61(z0, z1, z2), x1, x2)) -> c18(A__LENGTH(a__U61(a__U61(mark(z0), z1, z2), x1, x2)), MARK(U61(U61(z0, z1, z2), x1, x2))) A__U62(tt, U61(U62(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U62(mark(z0), z1), x1, x2)), MARK(U61(U62(z0, z1), x1, x2))) A__U62(tt, U61(isNat(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNat(z0), x1, x2)), MARK(U61(isNat(z0), x1, x2))) A__U62(tt, U61(length(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__length(mark(z0)), x1, x2)), MARK(U61(length(z0), x1, x2))) A__U62(tt, U61(cons(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(cons(mark(z0), z1), x1, x2)), MARK(U61(cons(z0, z1), x1, x2))) A__U62(tt, U61(tt, x1, x2)) -> c18(A__LENGTH(a__U61(tt, x1, x2)), MARK(U61(tt, x1, x2))) A__U62(tt, U61(s(z0), x1, x2)) -> c18(A__LENGTH(a__U61(s(mark(z0)), x1, x2)), MARK(U61(s(z0), x1, x2))) A__U62(tt, U61(x0, z1, z2)) -> c18(MARK(U61(x0, z1, z2))) A__U62(tt, U61(0, x1, x2)) -> c18(A__LENGTH(a__U61(0, x1, x2))) A__U62(tt, U61(nil, x1, x2)) -> c18(A__LENGTH(a__U61(nil, x1, x2))) A__U62(tt, U62(zeros, x1)) -> c18(A__LENGTH(a__U62(a__zeros, x1)), MARK(U62(zeros, x1))) A__U62(tt, U62(U11(z0), x1)) -> c18(A__LENGTH(a__U62(a__U11(mark(z0)), x1)), MARK(U62(U11(z0), x1))) A__U62(tt, U62(U21(z0), x1)) -> c18(A__LENGTH(a__U62(a__U21(mark(z0)), x1)), MARK(U62(U21(z0), x1))) A__U62(tt, U62(U31(z0), x1)) -> c18(A__LENGTH(a__U62(a__U31(mark(z0)), x1)), MARK(U62(U31(z0), x1))) A__U62(tt, U62(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U41(mark(z0), z1), x1)), MARK(U62(U41(z0, z1), x1))) A__U62(tt, U62(U42(z0), x1)) -> c18(A__LENGTH(a__U62(a__U42(mark(z0)), x1)), MARK(U62(U42(z0), x1))) A__U62(tt, U62(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatIList(z0), x1)), MARK(U62(isNatIList(z0), x1))) A__U62(tt, U62(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U51(mark(z0), z1), x1)), MARK(U62(U51(z0, z1), x1))) A__U62(tt, U62(U52(z0), x1)) -> c18(A__LENGTH(a__U62(a__U52(mark(z0)), x1)), MARK(U62(U52(z0), x1))) A__U62(tt, U62(isNatList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatList(z0), x1)), MARK(U62(isNatList(z0), x1))) A__U62(tt, U62(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U62(a__U61(mark(z0), z1, z2), x1)), MARK(U62(U61(z0, z1, z2), x1))) A__U62(tt, U62(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U62(mark(z0), z1), x1)), MARK(U62(U62(z0, z1), x1))) A__U62(tt, U62(isNat(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNat(z0), x1)), MARK(U62(isNat(z0), x1))) A__U62(tt, U62(length(z0), x1)) -> c18(A__LENGTH(a__U62(a__length(mark(z0)), x1)), MARK(U62(length(z0), x1))) A__U62(tt, U62(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U62(cons(mark(z0), z1), x1)), MARK(U62(cons(z0, z1), x1))) A__U62(tt, U62(tt, x1)) -> c18(A__LENGTH(a__U62(tt, x1)), MARK(U62(tt, x1))) A__U62(tt, U62(s(z0), x1)) -> c18(A__LENGTH(a__U62(s(mark(z0)), x1)), MARK(U62(s(z0), x1))) A__U62(tt, U62(x0, z1)) -> c18(MARK(U62(x0, z1))) A__U62(tt, U62(0, x1)) -> c18(A__LENGTH(a__U62(0, x1))) A__U62(tt, U62(nil, x1)) -> c18(A__LENGTH(a__U62(nil, x1))) A__U62(tt, isNat(length(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(isNat(length(z0)))) A__U62(tt, isNat(s(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(isNat(s(z0)))) A__U62(tt, isNat(0)) -> c18(MARK(isNat(0))) A__U62(tt, isNat(z0)) -> c18(MARK(isNat(z0))) A__U62(tt, length(zeros)) -> c18(A__LENGTH(a__length(a__zeros)), MARK(length(zeros))) A__U62(tt, length(U11(z0))) -> c18(A__LENGTH(a__length(a__U11(mark(z0)))), MARK(length(U11(z0)))) A__U62(tt, length(U21(z0))) -> c18(A__LENGTH(a__length(a__U21(mark(z0)))), MARK(length(U21(z0)))) A__U62(tt, length(U31(z0))) -> c18(A__LENGTH(a__length(a__U31(mark(z0)))), MARK(length(U31(z0)))) A__U62(tt, length(U41(z0, z1))) -> c18(A__LENGTH(a__length(a__U41(mark(z0), z1))), MARK(length(U41(z0, z1)))) A__U62(tt, length(U42(z0))) -> c18(A__LENGTH(a__length(a__U42(mark(z0)))), MARK(length(U42(z0)))) A__U62(tt, length(isNatIList(z0))) -> c18(A__LENGTH(a__length(a__isNatIList(z0))), MARK(length(isNatIList(z0)))) A__U62(tt, length(U51(z0, z1))) -> c18(A__LENGTH(a__length(a__U51(mark(z0), z1))), MARK(length(U51(z0, z1)))) A__U62(tt, length(U52(z0))) -> c18(A__LENGTH(a__length(a__U52(mark(z0)))), MARK(length(U52(z0)))) A__U62(tt, length(isNatList(z0))) -> c18(A__LENGTH(a__length(a__isNatList(z0))), MARK(length(isNatList(z0)))) A__U62(tt, length(U61(z0, z1, z2))) -> c18(A__LENGTH(a__length(a__U61(mark(z0), z1, z2))), MARK(length(U61(z0, z1, z2)))) A__U62(tt, length(U62(z0, z1))) -> c18(A__LENGTH(a__length(a__U62(mark(z0), z1))), MARK(length(U62(z0, z1)))) A__U62(tt, length(isNat(z0))) -> c18(A__LENGTH(a__length(a__isNat(z0))), MARK(length(isNat(z0)))) A__U62(tt, length(length(z0))) -> c18(A__LENGTH(a__length(a__length(mark(z0)))), MARK(length(length(z0)))) A__U62(tt, length(cons(z0, z1))) -> c18(A__LENGTH(a__length(cons(mark(z0), z1))), MARK(length(cons(z0, z1)))) A__U62(tt, length(s(z0))) -> c18(A__LENGTH(a__length(s(mark(z0)))), MARK(length(s(z0)))) A__U62(tt, length(x0)) -> c18(MARK(length(x0))) A__U62(tt, length(0)) -> c18(A__LENGTH(a__length(0))) A__U62(tt, length(tt)) -> c18(A__LENGTH(a__length(tt))) A__U62(tt, length(nil)) -> c18(A__LENGTH(a__length(nil))) A__U62(tt, zeros) -> c18(A__LENGTH(cons(0, zeros))) A__ISNATILIST(cons(length(nil), x1)) -> c26(A__U41(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATILIST(cons(length(cons(z0, z1)), x1)) -> c26(A__U41(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(length(x0), x1)) -> c26(A__ISNAT(length(x0))) A__ISNATILIST(cons(s(0), x1)) -> c26(A__U41(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATILIST(cons(s(length(z0)), x1)) -> c26(A__U41(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATILIST(cons(s(s(z0)), x1)) -> c26(A__U41(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(s(x0), x1)) -> c26(A__ISNAT(s(x0))) A__ISNATLIST(cons(length(nil), x1)) -> c29(A__U51(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATLIST(cons(length(cons(z0, z1)), x1)) -> c29(A__U51(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(length(x0), x1)) -> c29(A__ISNAT(length(x0))) A__ISNATLIST(cons(s(0), x1)) -> c29(A__U51(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATLIST(cons(s(length(z0)), x1)) -> c29(A__U51(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATLIST(cons(s(s(z0)), x1)) -> c29(A__U51(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(s(x0), x1)) -> c29(A__ISNAT(s(x0))) A__LENGTH(cons(x0, cons(0, x2))) -> c32(A__U61(a__U51(tt, x2), cons(0, x2), x0), A__ISNATLIST(cons(0, x2))) A__LENGTH(cons(x0, cons(length(z0), x2))) -> c32(A__U61(a__U51(a__U11(a__isNatList(z0)), x2), cons(length(z0), x2), x0), A__ISNATLIST(cons(length(z0), x2))) A__LENGTH(cons(x0, cons(s(z0), x2))) -> c32(A__U61(a__U51(a__U21(a__isNat(z0)), x2), cons(s(z0), x2), x0), A__ISNATLIST(cons(s(z0), x2))) A__LENGTH(cons(x0, cons(z0, x2))) -> c32(A__U61(a__U51(isNat(z0), x2), cons(z0, x2), x0), A__ISNATLIST(cons(z0, x2))) A__LENGTH(cons(x0, cons(x1, z1))) -> c32(A__ISNATLIST(cons(x1, z1))) MARK(U41(U11(zeros), x1)) -> c38(A__U41(a__U11(a__zeros), x1), MARK(U11(zeros))) MARK(U41(U11(U11(z0)), x1)) -> c38(A__U41(a__U11(a__U11(mark(z0))), x1), MARK(U11(U11(z0)))) MARK(U41(U11(U21(z0)), x1)) -> c38(A__U41(a__U11(a__U21(mark(z0))), x1), MARK(U11(U21(z0)))) MARK(U41(U11(U31(z0)), x1)) -> c38(A__U41(a__U11(a__U31(mark(z0))), x1), MARK(U11(U31(z0)))) MARK(U41(U11(U41(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U41(mark(z0), z1)), x1), MARK(U11(U41(z0, z1)))) MARK(U41(U11(U42(z0)), x1)) -> c38(A__U41(a__U11(a__U42(mark(z0))), x1), MARK(U11(U42(z0)))) MARK(U41(U11(isNatIList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatIList(z0)), x1), MARK(U11(isNatIList(z0)))) MARK(U41(U11(U51(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U51(mark(z0), z1)), x1), MARK(U11(U51(z0, z1)))) MARK(U41(U11(U52(z0)), x1)) -> c38(A__U41(a__U11(a__U52(mark(z0))), x1), MARK(U11(U52(z0)))) MARK(U41(U11(isNatList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatList(z0)), x1), MARK(U11(isNatList(z0)))) MARK(U41(U11(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U11(a__U61(mark(z0), z1, z2)), x1), MARK(U11(U61(z0, z1, z2)))) MARK(U41(U11(U62(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U62(mark(z0), z1)), x1), MARK(U11(U62(z0, z1)))) MARK(U41(U11(isNat(z0)), x1)) -> c38(A__U41(a__U11(a__isNat(z0)), x1), MARK(U11(isNat(z0)))) MARK(U41(U11(length(z0)), x1)) -> c38(A__U41(a__U11(a__length(mark(z0))), x1), MARK(U11(length(z0)))) MARK(U41(U11(cons(z0, z1)), x1)) -> c38(A__U41(a__U11(cons(mark(z0), z1)), x1), MARK(U11(cons(z0, z1)))) MARK(U41(U11(0), x1)) -> c38(A__U41(a__U11(0), x1), MARK(U11(0))) MARK(U41(U11(tt), x1)) -> c38(A__U41(a__U11(tt), x1), MARK(U11(tt))) MARK(U41(U11(s(z0)), x1)) -> c38(A__U41(a__U11(s(mark(z0))), x1), MARK(U11(s(z0)))) MARK(U41(U11(nil), x1)) -> c38(A__U41(a__U11(nil), x1), MARK(U11(nil))) MARK(U41(U11(x0), x1)) -> c38(MARK(U11(x0))) MARK(U41(U21(zeros), x1)) -> c38(A__U41(a__U21(a__zeros), x1), MARK(U21(zeros))) MARK(U41(U21(U11(z0)), x1)) -> c38(A__U41(a__U21(a__U11(mark(z0))), x1), MARK(U21(U11(z0)))) MARK(U41(U21(U21(z0)), x1)) -> c38(A__U41(a__U21(a__U21(mark(z0))), x1), MARK(U21(U21(z0)))) MARK(U41(U21(U31(z0)), x1)) -> c38(A__U41(a__U21(a__U31(mark(z0))), x1), MARK(U21(U31(z0)))) MARK(U41(U21(U41(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U41(mark(z0), z1)), x1), MARK(U21(U41(z0, z1)))) MARK(U41(U21(U42(z0)), x1)) -> c38(A__U41(a__U21(a__U42(mark(z0))), x1), MARK(U21(U42(z0)))) MARK(U41(U21(isNatIList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatIList(z0)), x1), MARK(U21(isNatIList(z0)))) MARK(U41(U21(U51(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U51(mark(z0), z1)), x1), MARK(U21(U51(z0, z1)))) MARK(U41(U21(U52(z0)), x1)) -> c38(A__U41(a__U21(a__U52(mark(z0))), x1), MARK(U21(U52(z0)))) MARK(U41(U21(isNatList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatList(z0)), x1), MARK(U21(isNatList(z0)))) MARK(U41(U21(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U21(a__U61(mark(z0), z1, z2)), x1), MARK(U21(U61(z0, z1, z2)))) MARK(U41(U21(U62(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U62(mark(z0), z1)), x1), MARK(U21(U62(z0, z1)))) MARK(U41(U21(isNat(z0)), x1)) -> c38(A__U41(a__U21(a__isNat(z0)), x1), MARK(U21(isNat(z0)))) MARK(U41(U21(length(z0)), x1)) -> c38(A__U41(a__U21(a__length(mark(z0))), x1), MARK(U21(length(z0)))) MARK(U41(U21(cons(z0, z1)), x1)) -> c38(A__U41(a__U21(cons(mark(z0), z1)), x1), MARK(U21(cons(z0, z1)))) MARK(U41(U21(0), x1)) -> c38(A__U41(a__U21(0), x1), MARK(U21(0))) MARK(U41(U21(tt), x1)) -> c38(A__U41(a__U21(tt), x1), MARK(U21(tt))) MARK(U41(U21(s(z0)), x1)) -> c38(A__U41(a__U21(s(mark(z0))), x1), MARK(U21(s(z0)))) MARK(U41(U21(nil), x1)) -> c38(A__U41(a__U21(nil), x1), MARK(U21(nil))) MARK(U41(U21(x0), x1)) -> c38(MARK(U21(x0))) MARK(U41(U31(zeros), x1)) -> c38(A__U41(a__U31(a__zeros), x1), MARK(U31(zeros))) MARK(U41(U31(U11(z0)), x1)) -> c38(A__U41(a__U31(a__U11(mark(z0))), x1), MARK(U31(U11(z0)))) MARK(U41(U31(U21(z0)), x1)) -> c38(A__U41(a__U31(a__U21(mark(z0))), x1), MARK(U31(U21(z0)))) MARK(U41(U31(U31(z0)), x1)) -> c38(A__U41(a__U31(a__U31(mark(z0))), x1), MARK(U31(U31(z0)))) MARK(U41(U31(U41(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U41(mark(z0), z1)), x1), MARK(U31(U41(z0, z1)))) MARK(U41(U31(U42(z0)), x1)) -> c38(A__U41(a__U31(a__U42(mark(z0))), x1), MARK(U31(U42(z0)))) MARK(U41(U31(isNatIList(z0)), x1)) -> c38(A__U41(a__U31(a__isNatIList(z0)), x1), MARK(U31(isNatIList(z0)))) MARK(U41(U31(U51(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U51(mark(z0), z1)), x1), MARK(U31(U51(z0, z1)))) MARK(U41(U31(U52(z0)), x1)) -> c38(A__U41(a__U31(a__U52(mark(z0))), x1), MARK(U31(U52(z0)))) MARK(U41(U31(isNatList(z0)), x1)) -> c38(A__U41(a__U31(a__isNatList(z0)), x1), MARK(U31(isNatList(z0)))) MARK(U41(U31(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U31(a__U61(mark(z0), z1, z2)), x1), MARK(U31(U61(z0, z1, z2)))) MARK(U41(U31(U62(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U62(mark(z0), z1)), x1), MARK(U31(U62(z0, z1)))) MARK(U41(U31(isNat(z0)), x1)) -> c38(A__U41(a__U31(a__isNat(z0)), x1), MARK(U31(isNat(z0)))) MARK(U41(U31(length(z0)), x1)) -> c38(A__U41(a__U31(a__length(mark(z0))), x1), MARK(U31(length(z0)))) MARK(U41(U31(cons(z0, z1)), x1)) -> c38(A__U41(a__U31(cons(mark(z0), z1)), x1), MARK(U31(cons(z0, z1)))) MARK(U41(U31(0), x1)) -> c38(A__U41(a__U31(0), x1), MARK(U31(0))) MARK(U41(U31(tt), x1)) -> c38(A__U41(a__U31(tt), x1), MARK(U31(tt))) MARK(U41(U31(s(z0)), x1)) -> c38(A__U41(a__U31(s(mark(z0))), x1), MARK(U31(s(z0)))) MARK(U41(U31(nil), x1)) -> c38(A__U41(a__U31(nil), x1), MARK(U31(nil))) MARK(U41(U31(x0), x1)) -> c38(MARK(U31(x0))) MARK(U41(U41(U11(z0), x1), x2)) -> c38(A__U41(a__U41(a__U11(mark(z0)), x1), x2), MARK(U41(U11(z0), x1))) MARK(U41(U41(U21(z0), x1), x2)) -> c38(A__U41(a__U41(a__U21(mark(z0)), x1), x2), MARK(U41(U21(z0), x1))) MARK(U41(U41(U31(z0), x1), x2)) -> c38(A__U41(a__U41(a__U31(mark(z0)), x1), x2), MARK(U41(U31(z0), x1))) MARK(U41(U41(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U41(mark(z0), z1), x1), x2), MARK(U41(U41(z0, z1), x1))) MARK(U41(U41(U42(z0), x1), x2)) -> c38(A__U41(a__U41(a__U42(mark(z0)), x1), x2), MARK(U41(U42(z0), x1))) MARK(U41(U41(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U51(mark(z0), z1), x1), x2), MARK(U41(U51(z0, z1), x1))) MARK(U41(U41(U52(z0), x1), x2)) -> c38(A__U41(a__U41(a__U52(mark(z0)), x1), x2), MARK(U41(U52(z0), x1))) MARK(U41(U41(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U41(a__U61(mark(z0), z1, z2), x1), x2), MARK(U41(U61(z0, z1, z2), x1))) MARK(U41(U41(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U62(mark(z0), z1), x1), x2), MARK(U41(U62(z0, z1), x1))) MARK(U41(U41(length(z0), x1), x2)) -> c38(A__U41(a__U41(a__length(mark(z0)), x1), x2), MARK(U41(length(z0), x1))) MARK(U41(U41(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U41(cons(mark(z0), z1), x1), x2), MARK(U41(cons(z0, z1), x1))) MARK(U41(U41(s(z0), x1), x2)) -> c38(A__U41(a__U41(s(mark(z0)), x1), x2), MARK(U41(s(z0), x1))) MARK(U41(U41(x0, z1), x2)) -> c38(MARK(U41(x0, z1))) MARK(U41(U41(0, x1), x2)) -> c38(A__U41(a__U41(0, x1), x2)) MARK(U41(U41(nil, x1), x2)) -> c38(A__U41(a__U41(nil, x1), x2)) MARK(U41(U41(zeros, x1), x2)) -> c2(A__U41(a__U41(a__zeros, x1), x2)) MARK(U41(U41(zeros, x1), x2)) -> c2(MARK(U41(zeros, x1))) MARK(U41(U41(isNatIList(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNatIList(z0), x1), x2)) MARK(U41(U41(isNatIList(z0), x1), x2)) -> c2(MARK(U41(isNatIList(z0), x1))) MARK(U41(U41(isNatList(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNatList(z0), x1), x2)) MARK(U41(U41(isNatList(z0), x1), x2)) -> c2(MARK(U41(isNatList(z0), x1))) MARK(U41(U41(isNat(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNat(z0), x1), x2)) MARK(U41(U41(isNat(z0), x1), x2)) -> c2(MARK(U41(isNat(z0), x1))) MARK(U41(U41(tt, x1), x2)) -> c2(A__U41(a__U41(tt, x1), x2)) MARK(U41(U41(tt, x1), x2)) -> c2(MARK(U41(tt, x1))) MARK(U41(U42(zeros), x1)) -> c38(A__U41(a__U42(a__zeros), x1), MARK(U42(zeros))) MARK(U41(U42(U11(z0)), x1)) -> c38(A__U41(a__U42(a__U11(mark(z0))), x1), MARK(U42(U11(z0)))) MARK(U41(U42(U21(z0)), x1)) -> c38(A__U41(a__U42(a__U21(mark(z0))), x1), MARK(U42(U21(z0)))) MARK(U41(U42(U31(z0)), x1)) -> c38(A__U41(a__U42(a__U31(mark(z0))), x1), MARK(U42(U31(z0)))) MARK(U41(U42(U41(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U41(mark(z0), z1)), x1), MARK(U42(U41(z0, z1)))) MARK(U41(U42(U42(z0)), x1)) -> c38(A__U41(a__U42(a__U42(mark(z0))), x1), MARK(U42(U42(z0)))) MARK(U41(U42(isNatIList(z0)), x1)) -> c38(A__U41(a__U42(a__isNatIList(z0)), x1), MARK(U42(isNatIList(z0)))) MARK(U41(U42(U51(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U51(mark(z0), z1)), x1), MARK(U42(U51(z0, z1)))) MARK(U41(U42(U52(z0)), x1)) -> c38(A__U41(a__U42(a__U52(mark(z0))), x1), MARK(U42(U52(z0)))) MARK(U41(U42(isNatList(z0)), x1)) -> c38(A__U41(a__U42(a__isNatList(z0)), x1), MARK(U42(isNatList(z0)))) MARK(U41(U42(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U42(a__U61(mark(z0), z1, z2)), x1), MARK(U42(U61(z0, z1, z2)))) MARK(U41(U42(U62(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U62(mark(z0), z1)), x1), MARK(U42(U62(z0, z1)))) MARK(U41(U42(isNat(z0)), x1)) -> c38(A__U41(a__U42(a__isNat(z0)), x1), MARK(U42(isNat(z0)))) MARK(U41(U42(length(z0)), x1)) -> c38(A__U41(a__U42(a__length(mark(z0))), x1), MARK(U42(length(z0)))) MARK(U41(U42(cons(z0, z1)), x1)) -> c38(A__U41(a__U42(cons(mark(z0), z1)), x1), MARK(U42(cons(z0, z1)))) MARK(U41(U42(0), x1)) -> c38(A__U41(a__U42(0), x1), MARK(U42(0))) MARK(U41(U42(tt), x1)) -> c38(A__U41(a__U42(tt), x1), MARK(U42(tt))) MARK(U41(U42(s(z0)), x1)) -> c38(A__U41(a__U42(s(mark(z0))), x1), MARK(U42(s(z0)))) MARK(U41(U42(nil), x1)) -> c38(A__U41(a__U42(nil), x1), MARK(U42(nil))) MARK(U41(U42(x0), x1)) -> c38(MARK(U42(x0))) MARK(U41(U51(U11(z0), x1), x2)) -> c38(A__U41(a__U51(a__U11(mark(z0)), x1), x2), MARK(U51(U11(z0), x1))) MARK(U41(U51(U21(z0), x1), x2)) -> c38(A__U41(a__U51(a__U21(mark(z0)), x1), x2), MARK(U51(U21(z0), x1))) MARK(U41(U51(U31(z0), x1), x2)) -> c38(A__U41(a__U51(a__U31(mark(z0)), x1), x2), MARK(U51(U31(z0), x1))) MARK(U41(U51(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U41(mark(z0), z1), x1), x2), MARK(U51(U41(z0, z1), x1))) MARK(U41(U51(U42(z0), x1), x2)) -> c38(A__U41(a__U51(a__U42(mark(z0)), x1), x2), MARK(U51(U42(z0), x1))) MARK(U41(U51(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U51(mark(z0), z1), x1), x2), MARK(U51(U51(z0, z1), x1))) MARK(U41(U51(U52(z0), x1), x2)) -> c38(A__U41(a__U51(a__U52(mark(z0)), x1), x2), MARK(U51(U52(z0), x1))) MARK(U41(U51(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U51(a__U61(mark(z0), z1, z2), x1), x2), MARK(U51(U61(z0, z1, z2), x1))) MARK(U41(U51(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U62(mark(z0), z1), x1), x2), MARK(U51(U62(z0, z1), x1))) MARK(U41(U51(length(z0), x1), x2)) -> c38(A__U41(a__U51(a__length(mark(z0)), x1), x2), MARK(U51(length(z0), x1))) MARK(U41(U51(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U51(cons(mark(z0), z1), x1), x2), MARK(U51(cons(z0, z1), x1))) MARK(U41(U51(s(z0), x1), x2)) -> c38(A__U41(a__U51(s(mark(z0)), x1), x2), MARK(U51(s(z0), x1))) MARK(U41(U51(x0, z1), x2)) -> c38(MARK(U51(x0, z1))) MARK(U41(U51(0, x1), x2)) -> c38(A__U41(a__U51(0, x1), x2)) MARK(U41(U51(nil, x1), x2)) -> c38(A__U41(a__U51(nil, x1), x2)) MARK(U41(U51(zeros, x1), x2)) -> c3(A__U41(a__U51(a__zeros, x1), x2)) MARK(U41(U51(zeros, x1), x2)) -> c3(MARK(U51(zeros, x1))) MARK(U41(U51(isNatIList(z0), x1), x2)) -> c3(A__U41(a__U51(a__isNatIList(z0), x1), x2)) MARK(U41(U51(isNatIList(z0), x1), x2)) -> c3(MARK(U51(isNatIList(z0), x1))) MARK(U41(U51(isNatList(z0), x1), x2)) -> c3(A__U41(a__U51(a__isNatList(z0), x1), x2)) MARK(U41(U51(isNatList(z0), x1), x2)) -> c3(MARK(U51(isNatList(z0), x1))) MARK(U41(U51(isNat(z0), x1), x2)) -> c3(A__U41(a__U51(a__isNat(z0), x1), x2)) MARK(U41(U51(isNat(z0), x1), x2)) -> c3(MARK(U51(isNat(z0), x1))) MARK(U41(U51(tt, x1), x2)) -> c3(A__U41(a__U51(tt, x1), x2)) MARK(U41(U51(tt, x1), x2)) -> c3(MARK(U51(tt, x1))) MARK(U41(U52(x0), x1)) -> c38(A__U41(U52(mark(x0)), x1), MARK(U52(x0))) MARK(U41(U52(zeros), x1)) -> c38(A__U41(a__U52(a__zeros), x1), MARK(U52(zeros))) MARK(U41(U52(U11(z0)), x1)) -> c38(A__U41(a__U52(a__U11(mark(z0))), x1), MARK(U52(U11(z0)))) MARK(U41(U52(U21(z0)), x1)) -> c38(A__U41(a__U52(a__U21(mark(z0))), x1), MARK(U52(U21(z0)))) MARK(U41(U52(U31(z0)), x1)) -> c38(A__U41(a__U52(a__U31(mark(z0))), x1), MARK(U52(U31(z0)))) MARK(U41(U52(U41(z0, z1)), x1)) -> c38(A__U41(a__U52(a__U41(mark(z0), z1)), x1), MARK(U52(U41(z0, z1)))) MARK(U41(U52(U42(z0)), x1)) -> c38(A__U41(a__U52(a__U42(mark(z0))), x1), MARK(U52(U42(z0)))) MARK(U41(U52(isNatIList(z0)), x1)) -> c38(A__U41(a__U52(a__isNatIList(z0)), x1), MARK(U52(isNatIList(z0)))) MARK(U41(U52(U51(z0, z1)), x1)) -> c38(A__U41(a__U52(a__U51(mark(z0), z1)), x1), MARK(U52(U51(z0, z1)))) MARK(U41(U52(U52(z0)), x1)) -> c38(A__U41(a__U52(a__U52(mark(z0))), x1), MARK(U52(U52(z0)))) MARK(U41(U52(isNatList(z0)), x1)) -> c38(A__U41(a__U52(a__isNatList(z0)), x1), MARK(U52(isNatList(z0)))) MARK(U41(U52(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U52(a__U61(mark(z0), z1, z2)), x1), MARK(U52(U61(z0, z1, z2)))) MARK(U41(U52(U62(z0, z1)), x1)) -> c38(A__U41(a__U52(a__U62(mark(z0), z1)), x1), MARK(U52(U62(z0, z1)))) MARK(U41(U52(isNat(z0)), x1)) -> c38(A__U41(a__U52(a__isNat(z0)), x1), MARK(U52(isNat(z0)))) MARK(U41(U52(length(z0)), x1)) -> c38(A__U41(a__U52(a__length(mark(z0))), x1), MARK(U52(length(z0)))) MARK(U41(U52(cons(z0, z1)), x1)) -> c38(A__U41(a__U52(cons(mark(z0), z1)), x1), MARK(U52(cons(z0, z1)))) MARK(U41(U52(0), x1)) -> c38(A__U41(a__U52(0), x1), MARK(U52(0))) MARK(U41(U52(tt), x1)) -> c38(A__U41(a__U52(tt), x1), MARK(U52(tt))) MARK(U41(U52(s(z0)), x1)) -> c38(A__U41(a__U52(s(mark(z0))), x1), MARK(U52(s(z0)))) MARK(U41(U52(nil), x1)) -> c38(A__U41(a__U52(nil), x1), MARK(U52(nil))) MARK(U41(U52(x0), x1)) -> c38(MARK(U52(x0))) S tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) A__U62(tt, isNatList(cons(z0, z1))) -> c18(A__LENGTH(a__U51(a__isNat(z0), z1)), MARK(isNatList(cons(z0, z1)))) A__U62(tt, isNatList(nil)) -> c18(MARK(isNatList(nil))) A__U62(tt, isNatList(z0)) -> c18(MARK(isNatList(z0))) A__U62(tt, U61(zeros, x1, x2)) -> c18(A__LENGTH(a__U61(a__zeros, x1, x2)), MARK(U61(zeros, x1, x2))) A__U62(tt, U61(U11(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U11(mark(z0)), x1, x2)), MARK(U61(U11(z0), x1, x2))) A__U62(tt, U61(U21(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U21(mark(z0)), x1, x2)), MARK(U61(U21(z0), x1, x2))) A__U62(tt, U61(U31(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U31(mark(z0)), x1, x2)), MARK(U61(U31(z0), x1, x2))) A__U62(tt, U61(U41(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U41(mark(z0), z1), x1, x2)), MARK(U61(U41(z0, z1), x1, x2))) A__U62(tt, U61(U42(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U42(mark(z0)), x1, x2)), MARK(U61(U42(z0), x1, x2))) A__U62(tt, U61(isNatIList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatIList(z0), x1, x2)), MARK(U61(isNatIList(z0), x1, x2))) A__U62(tt, U61(U51(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U51(mark(z0), z1), x1, x2)), MARK(U61(U51(z0, z1), x1, x2))) A__U62(tt, U61(U52(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U52(mark(z0)), x1, x2)), MARK(U61(U52(z0), x1, x2))) A__U62(tt, U61(isNatList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatList(z0), x1, x2)), MARK(U61(isNatList(z0), x1, x2))) A__U62(tt, U61(U61(z0, z1, z2), x1, x2)) -> c18(A__LENGTH(a__U61(a__U61(mark(z0), z1, z2), x1, x2)), MARK(U61(U61(z0, z1, z2), x1, x2))) A__U62(tt, U61(U62(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U62(mark(z0), z1), x1, x2)), MARK(U61(U62(z0, z1), x1, x2))) A__U62(tt, U61(isNat(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNat(z0), x1, x2)), MARK(U61(isNat(z0), x1, x2))) A__U62(tt, U61(length(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__length(mark(z0)), x1, x2)), MARK(U61(length(z0), x1, x2))) A__U62(tt, U61(cons(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(cons(mark(z0), z1), x1, x2)), MARK(U61(cons(z0, z1), x1, x2))) A__U62(tt, U61(tt, x1, x2)) -> c18(A__LENGTH(a__U61(tt, x1, x2)), MARK(U61(tt, x1, x2))) A__U62(tt, U61(s(z0), x1, x2)) -> c18(A__LENGTH(a__U61(s(mark(z0)), x1, x2)), MARK(U61(s(z0), x1, x2))) A__U62(tt, U61(x0, z1, z2)) -> c18(MARK(U61(x0, z1, z2))) A__U62(tt, U61(0, x1, x2)) -> c18(A__LENGTH(a__U61(0, x1, x2))) A__U62(tt, U61(nil, x1, x2)) -> c18(A__LENGTH(a__U61(nil, x1, x2))) A__U62(tt, U62(zeros, x1)) -> c18(A__LENGTH(a__U62(a__zeros, x1)), MARK(U62(zeros, x1))) A__U62(tt, U62(U11(z0), x1)) -> c18(A__LENGTH(a__U62(a__U11(mark(z0)), x1)), MARK(U62(U11(z0), x1))) A__U62(tt, U62(U21(z0), x1)) -> c18(A__LENGTH(a__U62(a__U21(mark(z0)), x1)), MARK(U62(U21(z0), x1))) A__U62(tt, U62(U31(z0), x1)) -> c18(A__LENGTH(a__U62(a__U31(mark(z0)), x1)), MARK(U62(U31(z0), x1))) A__U62(tt, U62(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U41(mark(z0), z1), x1)), MARK(U62(U41(z0, z1), x1))) A__U62(tt, U62(U42(z0), x1)) -> c18(A__LENGTH(a__U62(a__U42(mark(z0)), x1)), MARK(U62(U42(z0), x1))) A__U62(tt, U62(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatIList(z0), x1)), MARK(U62(isNatIList(z0), x1))) A__U62(tt, U62(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U51(mark(z0), z1), x1)), MARK(U62(U51(z0, z1), x1))) A__U62(tt, U62(U52(z0), x1)) -> c18(A__LENGTH(a__U62(a__U52(mark(z0)), x1)), MARK(U62(U52(z0), x1))) A__U62(tt, U62(isNatList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatList(z0), x1)), MARK(U62(isNatList(z0), x1))) A__U62(tt, U62(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U62(a__U61(mark(z0), z1, z2), x1)), MARK(U62(U61(z0, z1, z2), x1))) A__U62(tt, U62(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U62(mark(z0), z1), x1)), MARK(U62(U62(z0, z1), x1))) A__U62(tt, U62(isNat(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNat(z0), x1)), MARK(U62(isNat(z0), x1))) A__U62(tt, U62(length(z0), x1)) -> c18(A__LENGTH(a__U62(a__length(mark(z0)), x1)), MARK(U62(length(z0), x1))) A__U62(tt, U62(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U62(cons(mark(z0), z1), x1)), MARK(U62(cons(z0, z1), x1))) A__U62(tt, U62(tt, x1)) -> c18(A__LENGTH(a__U62(tt, x1)), MARK(U62(tt, x1))) A__U62(tt, U62(s(z0), x1)) -> c18(A__LENGTH(a__U62(s(mark(z0)), x1)), MARK(U62(s(z0), x1))) A__U62(tt, U62(x0, z1)) -> c18(MARK(U62(x0, z1))) A__U62(tt, U62(0, x1)) -> c18(A__LENGTH(a__U62(0, x1))) A__U62(tt, U62(nil, x1)) -> c18(A__LENGTH(a__U62(nil, x1))) A__U62(tt, isNat(length(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(isNat(length(z0)))) A__U62(tt, isNat(s(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(isNat(s(z0)))) A__U62(tt, isNat(0)) -> c18(MARK(isNat(0))) A__U62(tt, isNat(z0)) -> c18(MARK(isNat(z0))) A__U62(tt, length(zeros)) -> c18(A__LENGTH(a__length(a__zeros)), MARK(length(zeros))) A__U62(tt, length(U11(z0))) -> c18(A__LENGTH(a__length(a__U11(mark(z0)))), MARK(length(U11(z0)))) A__U62(tt, length(U21(z0))) -> c18(A__LENGTH(a__length(a__U21(mark(z0)))), MARK(length(U21(z0)))) A__U62(tt, length(U31(z0))) -> c18(A__LENGTH(a__length(a__U31(mark(z0)))), MARK(length(U31(z0)))) A__U62(tt, length(U41(z0, z1))) -> c18(A__LENGTH(a__length(a__U41(mark(z0), z1))), MARK(length(U41(z0, z1)))) A__U62(tt, length(U42(z0))) -> c18(A__LENGTH(a__length(a__U42(mark(z0)))), MARK(length(U42(z0)))) A__U62(tt, length(isNatIList(z0))) -> c18(A__LENGTH(a__length(a__isNatIList(z0))), MARK(length(isNatIList(z0)))) A__U62(tt, length(U51(z0, z1))) -> c18(A__LENGTH(a__length(a__U51(mark(z0), z1))), MARK(length(U51(z0, z1)))) A__U62(tt, length(U52(z0))) -> c18(A__LENGTH(a__length(a__U52(mark(z0)))), MARK(length(U52(z0)))) A__U62(tt, length(isNatList(z0))) -> c18(A__LENGTH(a__length(a__isNatList(z0))), MARK(length(isNatList(z0)))) A__U62(tt, length(U61(z0, z1, z2))) -> c18(A__LENGTH(a__length(a__U61(mark(z0), z1, z2))), MARK(length(U61(z0, z1, z2)))) A__U62(tt, length(U62(z0, z1))) -> c18(A__LENGTH(a__length(a__U62(mark(z0), z1))), MARK(length(U62(z0, z1)))) A__U62(tt, length(isNat(z0))) -> c18(A__LENGTH(a__length(a__isNat(z0))), MARK(length(isNat(z0)))) A__U62(tt, length(length(z0))) -> c18(A__LENGTH(a__length(a__length(mark(z0)))), MARK(length(length(z0)))) A__U62(tt, length(cons(z0, z1))) -> c18(A__LENGTH(a__length(cons(mark(z0), z1))), MARK(length(cons(z0, z1)))) A__U62(tt, length(s(z0))) -> c18(A__LENGTH(a__length(s(mark(z0)))), MARK(length(s(z0)))) A__U62(tt, length(x0)) -> c18(MARK(length(x0))) A__U62(tt, length(0)) -> c18(A__LENGTH(a__length(0))) A__U62(tt, length(tt)) -> c18(A__LENGTH(a__length(tt))) A__U62(tt, length(nil)) -> c18(A__LENGTH(a__length(nil))) A__U62(tt, zeros) -> c18(A__LENGTH(cons(0, zeros))) A__ISNATILIST(cons(length(nil), x1)) -> c26(A__U41(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATILIST(cons(length(cons(z0, z1)), x1)) -> c26(A__U41(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(length(x0), x1)) -> c26(A__ISNAT(length(x0))) A__ISNATILIST(cons(s(0), x1)) -> c26(A__U41(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATILIST(cons(s(length(z0)), x1)) -> c26(A__U41(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATILIST(cons(s(s(z0)), x1)) -> c26(A__U41(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(s(x0), x1)) -> c26(A__ISNAT(s(x0))) A__ISNATLIST(cons(length(nil), x1)) -> c29(A__U51(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATLIST(cons(length(cons(z0, z1)), x1)) -> c29(A__U51(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(length(x0), x1)) -> c29(A__ISNAT(length(x0))) A__ISNATLIST(cons(s(0), x1)) -> c29(A__U51(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATLIST(cons(s(length(z0)), x1)) -> c29(A__U51(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATLIST(cons(s(s(z0)), x1)) -> c29(A__U51(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(s(x0), x1)) -> c29(A__ISNAT(s(x0))) A__LENGTH(cons(x0, cons(0, x2))) -> c32(A__U61(a__U51(tt, x2), cons(0, x2), x0), A__ISNATLIST(cons(0, x2))) A__LENGTH(cons(x0, cons(length(z0), x2))) -> c32(A__U61(a__U51(a__U11(a__isNatList(z0)), x2), cons(length(z0), x2), x0), A__ISNATLIST(cons(length(z0), x2))) A__LENGTH(cons(x0, cons(s(z0), x2))) -> c32(A__U61(a__U51(a__U21(a__isNat(z0)), x2), cons(s(z0), x2), x0), A__ISNATLIST(cons(s(z0), x2))) A__LENGTH(cons(x0, cons(z0, x2))) -> c32(A__U61(a__U51(isNat(z0), x2), cons(z0, x2), x0), A__ISNATLIST(cons(z0, x2))) A__LENGTH(cons(x0, cons(x1, z1))) -> c32(A__ISNATLIST(cons(x1, z1))) MARK(U41(U11(zeros), x1)) -> c38(A__U41(a__U11(a__zeros), x1), MARK(U11(zeros))) MARK(U41(U11(U11(z0)), x1)) -> c38(A__U41(a__U11(a__U11(mark(z0))), x1), MARK(U11(U11(z0)))) MARK(U41(U11(U21(z0)), x1)) -> c38(A__U41(a__U11(a__U21(mark(z0))), x1), MARK(U11(U21(z0)))) MARK(U41(U11(U31(z0)), x1)) -> c38(A__U41(a__U11(a__U31(mark(z0))), x1), MARK(U11(U31(z0)))) MARK(U41(U11(U41(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U41(mark(z0), z1)), x1), MARK(U11(U41(z0, z1)))) MARK(U41(U11(U42(z0)), x1)) -> c38(A__U41(a__U11(a__U42(mark(z0))), x1), MARK(U11(U42(z0)))) MARK(U41(U11(isNatIList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatIList(z0)), x1), MARK(U11(isNatIList(z0)))) MARK(U41(U11(U51(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U51(mark(z0), z1)), x1), MARK(U11(U51(z0, z1)))) MARK(U41(U11(U52(z0)), x1)) -> c38(A__U41(a__U11(a__U52(mark(z0))), x1), MARK(U11(U52(z0)))) MARK(U41(U11(isNatList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatList(z0)), x1), MARK(U11(isNatList(z0)))) MARK(U41(U11(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U11(a__U61(mark(z0), z1, z2)), x1), MARK(U11(U61(z0, z1, z2)))) MARK(U41(U11(U62(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U62(mark(z0), z1)), x1), MARK(U11(U62(z0, z1)))) MARK(U41(U11(isNat(z0)), x1)) -> c38(A__U41(a__U11(a__isNat(z0)), x1), MARK(U11(isNat(z0)))) MARK(U41(U11(length(z0)), x1)) -> c38(A__U41(a__U11(a__length(mark(z0))), x1), MARK(U11(length(z0)))) MARK(U41(U11(cons(z0, z1)), x1)) -> c38(A__U41(a__U11(cons(mark(z0), z1)), x1), MARK(U11(cons(z0, z1)))) MARK(U41(U11(0), x1)) -> c38(A__U41(a__U11(0), x1), MARK(U11(0))) MARK(U41(U11(tt), x1)) -> c38(A__U41(a__U11(tt), x1), MARK(U11(tt))) MARK(U41(U11(s(z0)), x1)) -> c38(A__U41(a__U11(s(mark(z0))), x1), MARK(U11(s(z0)))) MARK(U41(U11(nil), x1)) -> c38(A__U41(a__U11(nil), x1), MARK(U11(nil))) MARK(U41(U11(x0), x1)) -> c38(MARK(U11(x0))) MARK(U41(U21(zeros), x1)) -> c38(A__U41(a__U21(a__zeros), x1), MARK(U21(zeros))) MARK(U41(U21(U11(z0)), x1)) -> c38(A__U41(a__U21(a__U11(mark(z0))), x1), MARK(U21(U11(z0)))) MARK(U41(U21(U21(z0)), x1)) -> c38(A__U41(a__U21(a__U21(mark(z0))), x1), MARK(U21(U21(z0)))) MARK(U41(U21(U31(z0)), x1)) -> c38(A__U41(a__U21(a__U31(mark(z0))), x1), MARK(U21(U31(z0)))) MARK(U41(U21(U41(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U41(mark(z0), z1)), x1), MARK(U21(U41(z0, z1)))) MARK(U41(U21(U42(z0)), x1)) -> c38(A__U41(a__U21(a__U42(mark(z0))), x1), MARK(U21(U42(z0)))) MARK(U41(U21(isNatIList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatIList(z0)), x1), MARK(U21(isNatIList(z0)))) MARK(U41(U21(U51(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U51(mark(z0), z1)), x1), MARK(U21(U51(z0, z1)))) MARK(U41(U21(U52(z0)), x1)) -> c38(A__U41(a__U21(a__U52(mark(z0))), x1), MARK(U21(U52(z0)))) MARK(U41(U21(isNatList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatList(z0)), x1), MARK(U21(isNatList(z0)))) MARK(U41(U21(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U21(a__U61(mark(z0), z1, z2)), x1), MARK(U21(U61(z0, z1, z2)))) MARK(U41(U21(U62(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U62(mark(z0), z1)), x1), MARK(U21(U62(z0, z1)))) MARK(U41(U21(isNat(z0)), x1)) -> c38(A__U41(a__U21(a__isNat(z0)), x1), MARK(U21(isNat(z0)))) MARK(U41(U21(length(z0)), x1)) -> c38(A__U41(a__U21(a__length(mark(z0))), x1), MARK(U21(length(z0)))) MARK(U41(U21(cons(z0, z1)), x1)) -> c38(A__U41(a__U21(cons(mark(z0), z1)), x1), MARK(U21(cons(z0, z1)))) MARK(U41(U21(0), x1)) -> c38(A__U41(a__U21(0), x1), MARK(U21(0))) MARK(U41(U21(tt), x1)) -> c38(A__U41(a__U21(tt), x1), MARK(U21(tt))) MARK(U41(U21(s(z0)), x1)) -> c38(A__U41(a__U21(s(mark(z0))), x1), MARK(U21(s(z0)))) MARK(U41(U21(nil), x1)) -> c38(A__U41(a__U21(nil), x1), MARK(U21(nil))) MARK(U41(U21(x0), x1)) -> c38(MARK(U21(x0))) MARK(U41(U31(zeros), x1)) -> c38(A__U41(a__U31(a__zeros), x1), MARK(U31(zeros))) MARK(U41(U31(U11(z0)), x1)) -> c38(A__U41(a__U31(a__U11(mark(z0))), x1), MARK(U31(U11(z0)))) MARK(U41(U31(U21(z0)), x1)) -> c38(A__U41(a__U31(a__U21(mark(z0))), x1), MARK(U31(U21(z0)))) MARK(U41(U31(U31(z0)), x1)) -> c38(A__U41(a__U31(a__U31(mark(z0))), x1), MARK(U31(U31(z0)))) MARK(U41(U31(U41(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U41(mark(z0), z1)), x1), MARK(U31(U41(z0, z1)))) MARK(U41(U31(U42(z0)), x1)) -> c38(A__U41(a__U31(a__U42(mark(z0))), x1), MARK(U31(U42(z0)))) MARK(U41(U31(isNatIList(z0)), x1)) -> c38(A__U41(a__U31(a__isNatIList(z0)), x1), MARK(U31(isNatIList(z0)))) MARK(U41(U31(U51(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U51(mark(z0), z1)), x1), MARK(U31(U51(z0, z1)))) MARK(U41(U31(U52(z0)), x1)) -> c38(A__U41(a__U31(a__U52(mark(z0))), x1), MARK(U31(U52(z0)))) MARK(U41(U31(isNatList(z0)), x1)) -> c38(A__U41(a__U31(a__isNatList(z0)), x1), MARK(U31(isNatList(z0)))) MARK(U41(U31(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U31(a__U61(mark(z0), z1, z2)), x1), MARK(U31(U61(z0, z1, z2)))) MARK(U41(U31(U62(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U62(mark(z0), z1)), x1), MARK(U31(U62(z0, z1)))) MARK(U41(U31(isNat(z0)), x1)) -> c38(A__U41(a__U31(a__isNat(z0)), x1), MARK(U31(isNat(z0)))) MARK(U41(U31(length(z0)), x1)) -> c38(A__U41(a__U31(a__length(mark(z0))), x1), MARK(U31(length(z0)))) MARK(U41(U31(cons(z0, z1)), x1)) -> c38(A__U41(a__U31(cons(mark(z0), z1)), x1), MARK(U31(cons(z0, z1)))) MARK(U41(U31(0), x1)) -> c38(A__U41(a__U31(0), x1), MARK(U31(0))) MARK(U41(U31(tt), x1)) -> c38(A__U41(a__U31(tt), x1), MARK(U31(tt))) MARK(U41(U31(s(z0)), x1)) -> c38(A__U41(a__U31(s(mark(z0))), x1), MARK(U31(s(z0)))) MARK(U41(U31(nil), x1)) -> c38(A__U41(a__U31(nil), x1), MARK(U31(nil))) MARK(U41(U31(x0), x1)) -> c38(MARK(U31(x0))) MARK(U41(U41(U11(z0), x1), x2)) -> c38(A__U41(a__U41(a__U11(mark(z0)), x1), x2), MARK(U41(U11(z0), x1))) MARK(U41(U41(U21(z0), x1), x2)) -> c38(A__U41(a__U41(a__U21(mark(z0)), x1), x2), MARK(U41(U21(z0), x1))) MARK(U41(U41(U31(z0), x1), x2)) -> c38(A__U41(a__U41(a__U31(mark(z0)), x1), x2), MARK(U41(U31(z0), x1))) MARK(U41(U41(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U41(mark(z0), z1), x1), x2), MARK(U41(U41(z0, z1), x1))) MARK(U41(U41(U42(z0), x1), x2)) -> c38(A__U41(a__U41(a__U42(mark(z0)), x1), x2), MARK(U41(U42(z0), x1))) MARK(U41(U41(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U51(mark(z0), z1), x1), x2), MARK(U41(U51(z0, z1), x1))) MARK(U41(U41(U52(z0), x1), x2)) -> c38(A__U41(a__U41(a__U52(mark(z0)), x1), x2), MARK(U41(U52(z0), x1))) MARK(U41(U41(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U41(a__U61(mark(z0), z1, z2), x1), x2), MARK(U41(U61(z0, z1, z2), x1))) MARK(U41(U41(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U62(mark(z0), z1), x1), x2), MARK(U41(U62(z0, z1), x1))) MARK(U41(U41(length(z0), x1), x2)) -> c38(A__U41(a__U41(a__length(mark(z0)), x1), x2), MARK(U41(length(z0), x1))) MARK(U41(U41(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U41(cons(mark(z0), z1), x1), x2), MARK(U41(cons(z0, z1), x1))) MARK(U41(U41(s(z0), x1), x2)) -> c38(A__U41(a__U41(s(mark(z0)), x1), x2), MARK(U41(s(z0), x1))) MARK(U41(U41(x0, z1), x2)) -> c38(MARK(U41(x0, z1))) MARK(U41(U41(0, x1), x2)) -> c38(A__U41(a__U41(0, x1), x2)) MARK(U41(U41(nil, x1), x2)) -> c38(A__U41(a__U41(nil, x1), x2)) MARK(U41(U41(zeros, x1), x2)) -> c2(A__U41(a__U41(a__zeros, x1), x2)) MARK(U41(U41(zeros, x1), x2)) -> c2(MARK(U41(zeros, x1))) MARK(U41(U41(isNatIList(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNatIList(z0), x1), x2)) MARK(U41(U41(isNatIList(z0), x1), x2)) -> c2(MARK(U41(isNatIList(z0), x1))) MARK(U41(U41(isNatList(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNatList(z0), x1), x2)) MARK(U41(U41(isNatList(z0), x1), x2)) -> c2(MARK(U41(isNatList(z0), x1))) MARK(U41(U41(isNat(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNat(z0), x1), x2)) MARK(U41(U41(isNat(z0), x1), x2)) -> c2(MARK(U41(isNat(z0), x1))) MARK(U41(U41(tt, x1), x2)) -> c2(A__U41(a__U41(tt, x1), x2)) MARK(U41(U41(tt, x1), x2)) -> c2(MARK(U41(tt, x1))) MARK(U41(U42(zeros), x1)) -> c38(A__U41(a__U42(a__zeros), x1), MARK(U42(zeros))) MARK(U41(U42(U11(z0)), x1)) -> c38(A__U41(a__U42(a__U11(mark(z0))), x1), MARK(U42(U11(z0)))) MARK(U41(U42(U21(z0)), x1)) -> c38(A__U41(a__U42(a__U21(mark(z0))), x1), MARK(U42(U21(z0)))) MARK(U41(U42(U31(z0)), x1)) -> c38(A__U41(a__U42(a__U31(mark(z0))), x1), MARK(U42(U31(z0)))) MARK(U41(U42(U41(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U41(mark(z0), z1)), x1), MARK(U42(U41(z0, z1)))) MARK(U41(U42(U42(z0)), x1)) -> c38(A__U41(a__U42(a__U42(mark(z0))), x1), MARK(U42(U42(z0)))) MARK(U41(U42(isNatIList(z0)), x1)) -> c38(A__U41(a__U42(a__isNatIList(z0)), x1), MARK(U42(isNatIList(z0)))) MARK(U41(U42(U51(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U51(mark(z0), z1)), x1), MARK(U42(U51(z0, z1)))) MARK(U41(U42(U52(z0)), x1)) -> c38(A__U41(a__U42(a__U52(mark(z0))), x1), MARK(U42(U52(z0)))) MARK(U41(U42(isNatList(z0)), x1)) -> c38(A__U41(a__U42(a__isNatList(z0)), x1), MARK(U42(isNatList(z0)))) MARK(U41(U42(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U42(a__U61(mark(z0), z1, z2)), x1), MARK(U42(U61(z0, z1, z2)))) MARK(U41(U42(U62(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U62(mark(z0), z1)), x1), MARK(U42(U62(z0, z1)))) MARK(U41(U42(isNat(z0)), x1)) -> c38(A__U41(a__U42(a__isNat(z0)), x1), MARK(U42(isNat(z0)))) MARK(U41(U42(length(z0)), x1)) -> c38(A__U41(a__U42(a__length(mark(z0))), x1), MARK(U42(length(z0)))) MARK(U41(U42(cons(z0, z1)), x1)) -> c38(A__U41(a__U42(cons(mark(z0), z1)), x1), MARK(U42(cons(z0, z1)))) MARK(U41(U42(0), x1)) -> c38(A__U41(a__U42(0), x1), MARK(U42(0))) MARK(U41(U42(tt), x1)) -> c38(A__U41(a__U42(tt), x1), MARK(U42(tt))) MARK(U41(U42(s(z0)), x1)) -> c38(A__U41(a__U42(s(mark(z0))), x1), MARK(U42(s(z0)))) MARK(U41(U42(nil), x1)) -> c38(A__U41(a__U42(nil), x1), MARK(U42(nil))) MARK(U41(U42(x0), x1)) -> c38(MARK(U42(x0))) MARK(U41(U51(U11(z0), x1), x2)) -> c38(A__U41(a__U51(a__U11(mark(z0)), x1), x2), MARK(U51(U11(z0), x1))) MARK(U41(U51(U21(z0), x1), x2)) -> c38(A__U41(a__U51(a__U21(mark(z0)), x1), x2), MARK(U51(U21(z0), x1))) MARK(U41(U51(U31(z0), x1), x2)) -> c38(A__U41(a__U51(a__U31(mark(z0)), x1), x2), MARK(U51(U31(z0), x1))) MARK(U41(U51(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U41(mark(z0), z1), x1), x2), MARK(U51(U41(z0, z1), x1))) MARK(U41(U51(U42(z0), x1), x2)) -> c38(A__U41(a__U51(a__U42(mark(z0)), x1), x2), MARK(U51(U42(z0), x1))) MARK(U41(U51(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U51(mark(z0), z1), x1), x2), MARK(U51(U51(z0, z1), x1))) MARK(U41(U51(U52(z0), x1), x2)) -> c38(A__U41(a__U51(a__U52(mark(z0)), x1), x2), MARK(U51(U52(z0), x1))) MARK(U41(U51(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U51(a__U61(mark(z0), z1, z2), x1), x2), MARK(U51(U61(z0, z1, z2), x1))) MARK(U41(U51(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U62(mark(z0), z1), x1), x2), MARK(U51(U62(z0, z1), x1))) MARK(U41(U51(length(z0), x1), x2)) -> c38(A__U41(a__U51(a__length(mark(z0)), x1), x2), MARK(U51(length(z0), x1))) MARK(U41(U51(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U51(cons(mark(z0), z1), x1), x2), MARK(U51(cons(z0, z1), x1))) MARK(U41(U51(s(z0), x1), x2)) -> c38(A__U41(a__U51(s(mark(z0)), x1), x2), MARK(U51(s(z0), x1))) MARK(U41(U51(x0, z1), x2)) -> c38(MARK(U51(x0, z1))) MARK(U41(U51(0, x1), x2)) -> c38(A__U41(a__U51(0, x1), x2)) MARK(U41(U51(nil, x1), x2)) -> c38(A__U41(a__U51(nil, x1), x2)) MARK(U41(U51(zeros, x1), x2)) -> c3(A__U41(a__U51(a__zeros, x1), x2)) MARK(U41(U51(zeros, x1), x2)) -> c3(MARK(U51(zeros, x1))) MARK(U41(U51(isNatIList(z0), x1), x2)) -> c3(A__U41(a__U51(a__isNatIList(z0), x1), x2)) MARK(U41(U51(isNatIList(z0), x1), x2)) -> c3(MARK(U51(isNatIList(z0), x1))) MARK(U41(U51(isNatList(z0), x1), x2)) -> c3(A__U41(a__U51(a__isNatList(z0), x1), x2)) MARK(U41(U51(isNatList(z0), x1), x2)) -> c3(MARK(U51(isNatList(z0), x1))) MARK(U41(U51(isNat(z0), x1), x2)) -> c3(A__U41(a__U51(a__isNat(z0), x1), x2)) MARK(U41(U51(isNat(z0), x1), x2)) -> c3(MARK(U51(isNat(z0), x1))) MARK(U41(U51(tt, x1), x2)) -> c3(A__U41(a__U51(tt, x1), x2)) MARK(U41(U51(tt, x1), x2)) -> c3(MARK(U51(tt, x1))) MARK(U41(U52(x0), x1)) -> c38(A__U41(U52(mark(x0)), x1), MARK(U52(x0))) MARK(U41(U52(zeros), x1)) -> c38(A__U41(a__U52(a__zeros), x1), MARK(U52(zeros))) MARK(U41(U52(U11(z0)), x1)) -> c38(A__U41(a__U52(a__U11(mark(z0))), x1), MARK(U52(U11(z0)))) MARK(U41(U52(U21(z0)), x1)) -> c38(A__U41(a__U52(a__U21(mark(z0))), x1), MARK(U52(U21(z0)))) MARK(U41(U52(U31(z0)), x1)) -> c38(A__U41(a__U52(a__U31(mark(z0))), x1), MARK(U52(U31(z0)))) MARK(U41(U52(U41(z0, z1)), x1)) -> c38(A__U41(a__U52(a__U41(mark(z0), z1)), x1), MARK(U52(U41(z0, z1)))) MARK(U41(U52(U42(z0)), x1)) -> c38(A__U41(a__U52(a__U42(mark(z0))), x1), MARK(U52(U42(z0)))) MARK(U41(U52(isNatIList(z0)), x1)) -> c38(A__U41(a__U52(a__isNatIList(z0)), x1), MARK(U52(isNatIList(z0)))) MARK(U41(U52(U51(z0, z1)), x1)) -> c38(A__U41(a__U52(a__U51(mark(z0), z1)), x1), MARK(U52(U51(z0, z1)))) MARK(U41(U52(U52(z0)), x1)) -> c38(A__U41(a__U52(a__U52(mark(z0))), x1), MARK(U52(U52(z0)))) MARK(U41(U52(isNatList(z0)), x1)) -> c38(A__U41(a__U52(a__isNatList(z0)), x1), MARK(U52(isNatList(z0)))) MARK(U41(U52(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U52(a__U61(mark(z0), z1, z2)), x1), MARK(U52(U61(z0, z1, z2)))) MARK(U41(U52(U62(z0, z1)), x1)) -> c38(A__U41(a__U52(a__U62(mark(z0), z1)), x1), MARK(U52(U62(z0, z1)))) MARK(U41(U52(isNat(z0)), x1)) -> c38(A__U41(a__U52(a__isNat(z0)), x1), MARK(U52(isNat(z0)))) MARK(U41(U52(length(z0)), x1)) -> c38(A__U41(a__U52(a__length(mark(z0))), x1), MARK(U52(length(z0)))) MARK(U41(U52(cons(z0, z1)), x1)) -> c38(A__U41(a__U52(cons(mark(z0), z1)), x1), MARK(U52(cons(z0, z1)))) MARK(U41(U52(0), x1)) -> c38(A__U41(a__U52(0), x1), MARK(U52(0))) MARK(U41(U52(tt), x1)) -> c38(A__U41(a__U52(tt), x1), MARK(U52(tt))) MARK(U41(U52(s(z0)), x1)) -> c38(A__U41(a__U52(s(mark(z0))), x1), MARK(U52(s(z0)))) MARK(U41(U52(nil), x1)) -> c38(A__U41(a__U52(nil), x1), MARK(U52(nil))) MARK(U41(U52(x0), x1)) -> c38(MARK(U52(x0))) K tuples:none Defined Rule Symbols: a__zeros, a__U11_1, a__U21_1, a__U31_1, a__U41_2, a__U42_1, a__U51_2, a__U52_1, a__U61_3, a__U62_2, a__isNat_1, a__isNatIList_1, a__isNatList_1, a__length_1, mark_1 Defined Pair Symbols: MARK_1, A__U41_2, A__U51_2, A__ISNAT_1, A__ISNATILIST_1, A__U61_3, A__U62_2, A__ISNATLIST_1, A__LENGTH_1 Compound Symbols: c40_1, c43_1, c46_1, c48_1, c51_1, c8_1, c12_1, c21_1, c22_1, c24_1, c35_1, c36_1, c37_1, c39_1, c42_1, c16_1, c18_2, c18_1, c26_1, c29_1, c32_1, c38_2, c38_1, c_1, c41_2, c41_1, c1_1, c44_2, c44_1, c45_2, c45_1, c47_2, c47_1, c16_2, c26_2, c29_2, c32_2, c2_1, c3_1 ---------------------------------------- (199) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 1 trailing tuple parts ---------------------------------------- (200) Obligation: Complexity Dependency Tuples Problem Rules: a__zeros -> cons(0, zeros) a__zeros -> zeros a__U11(tt) -> tt a__U11(z0) -> U11(z0) a__U21(tt) -> tt a__U21(z0) -> U21(z0) a__U31(tt) -> tt a__U31(z0) -> U31(z0) a__U41(tt, z0) -> a__U42(a__isNatIList(z0)) a__U41(z0, z1) -> U41(z0, z1) a__U42(tt) -> tt a__U42(z0) -> U42(z0) a__U51(tt, z0) -> a__U52(a__isNatList(z0)) a__U51(z0, z1) -> U51(z0, z1) a__U52(tt) -> tt a__U52(z0) -> U52(z0) a__U61(tt, z0, z1) -> a__U62(a__isNat(z1), z0) a__U61(z0, z1, z2) -> U61(z0, z1, z2) a__U62(tt, z0) -> s(a__length(mark(z0))) a__U62(z0, z1) -> U62(z0, z1) a__isNat(0) -> tt a__isNat(length(z0)) -> a__U11(a__isNatList(z0)) a__isNat(s(z0)) -> a__U21(a__isNat(z0)) a__isNat(z0) -> isNat(z0) a__isNatIList(z0) -> a__U31(a__isNatList(z0)) a__isNatIList(zeros) -> tt a__isNatIList(cons(z0, z1)) -> a__U41(a__isNat(z0), z1) a__isNatIList(z0) -> isNatIList(z0) a__isNatList(nil) -> tt a__isNatList(cons(z0, z1)) -> a__U51(a__isNat(z0), z1) a__isNatList(z0) -> isNatList(z0) a__length(nil) -> 0 a__length(cons(z0, z1)) -> a__U61(a__isNatList(z1), z1, z0) a__length(z0) -> length(z0) mark(zeros) -> a__zeros mark(U11(z0)) -> a__U11(mark(z0)) mark(U21(z0)) -> a__U21(mark(z0)) mark(U31(z0)) -> a__U31(mark(z0)) mark(U41(z0, z1)) -> a__U41(mark(z0), z1) mark(U42(z0)) -> a__U42(mark(z0)) mark(isNatIList(z0)) -> a__isNatIList(z0) mark(U51(z0, z1)) -> a__U51(mark(z0), z1) mark(U52(z0)) -> a__U52(mark(z0)) mark(isNatList(z0)) -> a__isNatList(z0) mark(U61(z0, z1, z2)) -> a__U61(mark(z0), z1, z2) mark(U62(z0, z1)) -> a__U62(mark(z0), z1) mark(isNat(z0)) -> a__isNat(z0) mark(length(z0)) -> a__length(mark(z0)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(0) -> 0 mark(tt) -> tt mark(s(z0)) -> s(mark(z0)) mark(nil) -> nil Tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) A__U62(tt, isNatList(cons(z0, z1))) -> c18(A__LENGTH(a__U51(a__isNat(z0), z1)), MARK(isNatList(cons(z0, z1)))) A__U62(tt, isNatList(nil)) -> c18(MARK(isNatList(nil))) A__U62(tt, isNatList(z0)) -> c18(MARK(isNatList(z0))) A__U62(tt, U61(zeros, x1, x2)) -> c18(A__LENGTH(a__U61(a__zeros, x1, x2)), MARK(U61(zeros, x1, x2))) A__U62(tt, U61(U11(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U11(mark(z0)), x1, x2)), MARK(U61(U11(z0), x1, x2))) A__U62(tt, U61(U21(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U21(mark(z0)), x1, x2)), MARK(U61(U21(z0), x1, x2))) A__U62(tt, U61(U31(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U31(mark(z0)), x1, x2)), MARK(U61(U31(z0), x1, x2))) A__U62(tt, U61(U41(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U41(mark(z0), z1), x1, x2)), MARK(U61(U41(z0, z1), x1, x2))) A__U62(tt, U61(U42(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U42(mark(z0)), x1, x2)), MARK(U61(U42(z0), x1, x2))) A__U62(tt, U61(isNatIList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatIList(z0), x1, x2)), MARK(U61(isNatIList(z0), x1, x2))) A__U62(tt, U61(U51(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U51(mark(z0), z1), x1, x2)), MARK(U61(U51(z0, z1), x1, x2))) A__U62(tt, U61(U52(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U52(mark(z0)), x1, x2)), MARK(U61(U52(z0), x1, x2))) A__U62(tt, U61(isNatList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatList(z0), x1, x2)), MARK(U61(isNatList(z0), x1, x2))) A__U62(tt, U61(U61(z0, z1, z2), x1, x2)) -> c18(A__LENGTH(a__U61(a__U61(mark(z0), z1, z2), x1, x2)), MARK(U61(U61(z0, z1, z2), x1, x2))) A__U62(tt, U61(U62(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U62(mark(z0), z1), x1, x2)), MARK(U61(U62(z0, z1), x1, x2))) A__U62(tt, U61(isNat(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNat(z0), x1, x2)), MARK(U61(isNat(z0), x1, x2))) A__U62(tt, U61(length(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__length(mark(z0)), x1, x2)), MARK(U61(length(z0), x1, x2))) A__U62(tt, U61(cons(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(cons(mark(z0), z1), x1, x2)), MARK(U61(cons(z0, z1), x1, x2))) A__U62(tt, U61(tt, x1, x2)) -> c18(A__LENGTH(a__U61(tt, x1, x2)), MARK(U61(tt, x1, x2))) A__U62(tt, U61(s(z0), x1, x2)) -> c18(A__LENGTH(a__U61(s(mark(z0)), x1, x2)), MARK(U61(s(z0), x1, x2))) A__U62(tt, U61(x0, z1, z2)) -> c18(MARK(U61(x0, z1, z2))) A__U62(tt, U61(0, x1, x2)) -> c18(A__LENGTH(a__U61(0, x1, x2))) A__U62(tt, U61(nil, x1, x2)) -> c18(A__LENGTH(a__U61(nil, x1, x2))) A__U62(tt, U62(zeros, x1)) -> c18(A__LENGTH(a__U62(a__zeros, x1)), MARK(U62(zeros, x1))) A__U62(tt, U62(U11(z0), x1)) -> c18(A__LENGTH(a__U62(a__U11(mark(z0)), x1)), MARK(U62(U11(z0), x1))) A__U62(tt, U62(U21(z0), x1)) -> c18(A__LENGTH(a__U62(a__U21(mark(z0)), x1)), MARK(U62(U21(z0), x1))) A__U62(tt, U62(U31(z0), x1)) -> c18(A__LENGTH(a__U62(a__U31(mark(z0)), x1)), MARK(U62(U31(z0), x1))) A__U62(tt, U62(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U41(mark(z0), z1), x1)), MARK(U62(U41(z0, z1), x1))) A__U62(tt, U62(U42(z0), x1)) -> c18(A__LENGTH(a__U62(a__U42(mark(z0)), x1)), MARK(U62(U42(z0), x1))) A__U62(tt, U62(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatIList(z0), x1)), MARK(U62(isNatIList(z0), x1))) A__U62(tt, U62(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U51(mark(z0), z1), x1)), MARK(U62(U51(z0, z1), x1))) A__U62(tt, U62(U52(z0), x1)) -> c18(A__LENGTH(a__U62(a__U52(mark(z0)), x1)), MARK(U62(U52(z0), x1))) A__U62(tt, U62(isNatList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatList(z0), x1)), MARK(U62(isNatList(z0), x1))) A__U62(tt, U62(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U62(a__U61(mark(z0), z1, z2), x1)), MARK(U62(U61(z0, z1, z2), x1))) A__U62(tt, U62(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U62(mark(z0), z1), x1)), MARK(U62(U62(z0, z1), x1))) A__U62(tt, U62(isNat(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNat(z0), x1)), MARK(U62(isNat(z0), x1))) A__U62(tt, U62(length(z0), x1)) -> c18(A__LENGTH(a__U62(a__length(mark(z0)), x1)), MARK(U62(length(z0), x1))) A__U62(tt, U62(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U62(cons(mark(z0), z1), x1)), MARK(U62(cons(z0, z1), x1))) A__U62(tt, U62(tt, x1)) -> c18(A__LENGTH(a__U62(tt, x1)), MARK(U62(tt, x1))) A__U62(tt, U62(s(z0), x1)) -> c18(A__LENGTH(a__U62(s(mark(z0)), x1)), MARK(U62(s(z0), x1))) A__U62(tt, U62(x0, z1)) -> c18(MARK(U62(x0, z1))) A__U62(tt, U62(0, x1)) -> c18(A__LENGTH(a__U62(0, x1))) A__U62(tt, U62(nil, x1)) -> c18(A__LENGTH(a__U62(nil, x1))) A__U62(tt, isNat(length(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(isNat(length(z0)))) A__U62(tt, isNat(s(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(isNat(s(z0)))) A__U62(tt, isNat(0)) -> c18(MARK(isNat(0))) A__U62(tt, isNat(z0)) -> c18(MARK(isNat(z0))) A__U62(tt, length(zeros)) -> c18(A__LENGTH(a__length(a__zeros)), MARK(length(zeros))) A__U62(tt, length(U11(z0))) -> c18(A__LENGTH(a__length(a__U11(mark(z0)))), MARK(length(U11(z0)))) A__U62(tt, length(U21(z0))) -> c18(A__LENGTH(a__length(a__U21(mark(z0)))), MARK(length(U21(z0)))) A__U62(tt, length(U31(z0))) -> c18(A__LENGTH(a__length(a__U31(mark(z0)))), MARK(length(U31(z0)))) A__U62(tt, length(U41(z0, z1))) -> c18(A__LENGTH(a__length(a__U41(mark(z0), z1))), MARK(length(U41(z0, z1)))) A__U62(tt, length(U42(z0))) -> c18(A__LENGTH(a__length(a__U42(mark(z0)))), MARK(length(U42(z0)))) A__U62(tt, length(isNatIList(z0))) -> c18(A__LENGTH(a__length(a__isNatIList(z0))), MARK(length(isNatIList(z0)))) A__U62(tt, length(U51(z0, z1))) -> c18(A__LENGTH(a__length(a__U51(mark(z0), z1))), MARK(length(U51(z0, z1)))) A__U62(tt, length(U52(z0))) -> c18(A__LENGTH(a__length(a__U52(mark(z0)))), MARK(length(U52(z0)))) A__U62(tt, length(isNatList(z0))) -> c18(A__LENGTH(a__length(a__isNatList(z0))), MARK(length(isNatList(z0)))) A__U62(tt, length(U61(z0, z1, z2))) -> c18(A__LENGTH(a__length(a__U61(mark(z0), z1, z2))), MARK(length(U61(z0, z1, z2)))) A__U62(tt, length(U62(z0, z1))) -> c18(A__LENGTH(a__length(a__U62(mark(z0), z1))), MARK(length(U62(z0, z1)))) A__U62(tt, length(isNat(z0))) -> c18(A__LENGTH(a__length(a__isNat(z0))), MARK(length(isNat(z0)))) A__U62(tt, length(length(z0))) -> c18(A__LENGTH(a__length(a__length(mark(z0)))), MARK(length(length(z0)))) A__U62(tt, length(cons(z0, z1))) -> c18(A__LENGTH(a__length(cons(mark(z0), z1))), MARK(length(cons(z0, z1)))) A__U62(tt, length(s(z0))) -> c18(A__LENGTH(a__length(s(mark(z0)))), MARK(length(s(z0)))) A__U62(tt, length(x0)) -> c18(MARK(length(x0))) A__U62(tt, length(0)) -> c18(A__LENGTH(a__length(0))) A__U62(tt, length(tt)) -> c18(A__LENGTH(a__length(tt))) A__U62(tt, length(nil)) -> c18(A__LENGTH(a__length(nil))) A__U62(tt, zeros) -> c18(A__LENGTH(cons(0, zeros))) A__ISNATILIST(cons(length(nil), x1)) -> c26(A__U41(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATILIST(cons(length(cons(z0, z1)), x1)) -> c26(A__U41(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(length(x0), x1)) -> c26(A__ISNAT(length(x0))) A__ISNATILIST(cons(s(0), x1)) -> c26(A__U41(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATILIST(cons(s(length(z0)), x1)) -> c26(A__U41(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATILIST(cons(s(s(z0)), x1)) -> c26(A__U41(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(s(x0), x1)) -> c26(A__ISNAT(s(x0))) A__ISNATLIST(cons(length(nil), x1)) -> c29(A__U51(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATLIST(cons(length(cons(z0, z1)), x1)) -> c29(A__U51(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(length(x0), x1)) -> c29(A__ISNAT(length(x0))) A__ISNATLIST(cons(s(0), x1)) -> c29(A__U51(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATLIST(cons(s(length(z0)), x1)) -> c29(A__U51(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATLIST(cons(s(s(z0)), x1)) -> c29(A__U51(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(s(x0), x1)) -> c29(A__ISNAT(s(x0))) A__LENGTH(cons(x0, cons(0, x2))) -> c32(A__U61(a__U51(tt, x2), cons(0, x2), x0), A__ISNATLIST(cons(0, x2))) A__LENGTH(cons(x0, cons(length(z0), x2))) -> c32(A__U61(a__U51(a__U11(a__isNatList(z0)), x2), cons(length(z0), x2), x0), A__ISNATLIST(cons(length(z0), x2))) A__LENGTH(cons(x0, cons(s(z0), x2))) -> c32(A__U61(a__U51(a__U21(a__isNat(z0)), x2), cons(s(z0), x2), x0), A__ISNATLIST(cons(s(z0), x2))) A__LENGTH(cons(x0, cons(z0, x2))) -> c32(A__U61(a__U51(isNat(z0), x2), cons(z0, x2), x0), A__ISNATLIST(cons(z0, x2))) A__LENGTH(cons(x0, cons(x1, z1))) -> c32(A__ISNATLIST(cons(x1, z1))) MARK(U41(U11(zeros), x1)) -> c38(A__U41(a__U11(a__zeros), x1), MARK(U11(zeros))) MARK(U41(U11(U11(z0)), x1)) -> c38(A__U41(a__U11(a__U11(mark(z0))), x1), MARK(U11(U11(z0)))) MARK(U41(U11(U21(z0)), x1)) -> c38(A__U41(a__U11(a__U21(mark(z0))), x1), MARK(U11(U21(z0)))) MARK(U41(U11(U31(z0)), x1)) -> c38(A__U41(a__U11(a__U31(mark(z0))), x1), MARK(U11(U31(z0)))) MARK(U41(U11(U41(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U41(mark(z0), z1)), x1), MARK(U11(U41(z0, z1)))) MARK(U41(U11(U42(z0)), x1)) -> c38(A__U41(a__U11(a__U42(mark(z0))), x1), MARK(U11(U42(z0)))) MARK(U41(U11(isNatIList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatIList(z0)), x1), MARK(U11(isNatIList(z0)))) MARK(U41(U11(U51(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U51(mark(z0), z1)), x1), MARK(U11(U51(z0, z1)))) MARK(U41(U11(U52(z0)), x1)) -> c38(A__U41(a__U11(a__U52(mark(z0))), x1), MARK(U11(U52(z0)))) MARK(U41(U11(isNatList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatList(z0)), x1), MARK(U11(isNatList(z0)))) MARK(U41(U11(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U11(a__U61(mark(z0), z1, z2)), x1), MARK(U11(U61(z0, z1, z2)))) MARK(U41(U11(U62(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U62(mark(z0), z1)), x1), MARK(U11(U62(z0, z1)))) MARK(U41(U11(isNat(z0)), x1)) -> c38(A__U41(a__U11(a__isNat(z0)), x1), MARK(U11(isNat(z0)))) MARK(U41(U11(length(z0)), x1)) -> c38(A__U41(a__U11(a__length(mark(z0))), x1), MARK(U11(length(z0)))) MARK(U41(U11(cons(z0, z1)), x1)) -> c38(A__U41(a__U11(cons(mark(z0), z1)), x1), MARK(U11(cons(z0, z1)))) MARK(U41(U11(0), x1)) -> c38(A__U41(a__U11(0), x1), MARK(U11(0))) MARK(U41(U11(tt), x1)) -> c38(A__U41(a__U11(tt), x1), MARK(U11(tt))) MARK(U41(U11(s(z0)), x1)) -> c38(A__U41(a__U11(s(mark(z0))), x1), MARK(U11(s(z0)))) MARK(U41(U11(nil), x1)) -> c38(A__U41(a__U11(nil), x1), MARK(U11(nil))) MARK(U41(U11(x0), x1)) -> c38(MARK(U11(x0))) MARK(U41(U21(zeros), x1)) -> c38(A__U41(a__U21(a__zeros), x1), MARK(U21(zeros))) MARK(U41(U21(U11(z0)), x1)) -> c38(A__U41(a__U21(a__U11(mark(z0))), x1), MARK(U21(U11(z0)))) MARK(U41(U21(U21(z0)), x1)) -> c38(A__U41(a__U21(a__U21(mark(z0))), x1), MARK(U21(U21(z0)))) MARK(U41(U21(U31(z0)), x1)) -> c38(A__U41(a__U21(a__U31(mark(z0))), x1), MARK(U21(U31(z0)))) MARK(U41(U21(U41(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U41(mark(z0), z1)), x1), MARK(U21(U41(z0, z1)))) MARK(U41(U21(U42(z0)), x1)) -> c38(A__U41(a__U21(a__U42(mark(z0))), x1), MARK(U21(U42(z0)))) MARK(U41(U21(isNatIList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatIList(z0)), x1), MARK(U21(isNatIList(z0)))) MARK(U41(U21(U51(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U51(mark(z0), z1)), x1), MARK(U21(U51(z0, z1)))) MARK(U41(U21(U52(z0)), x1)) -> c38(A__U41(a__U21(a__U52(mark(z0))), x1), MARK(U21(U52(z0)))) MARK(U41(U21(isNatList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatList(z0)), x1), MARK(U21(isNatList(z0)))) MARK(U41(U21(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U21(a__U61(mark(z0), z1, z2)), x1), MARK(U21(U61(z0, z1, z2)))) MARK(U41(U21(U62(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U62(mark(z0), z1)), x1), MARK(U21(U62(z0, z1)))) MARK(U41(U21(isNat(z0)), x1)) -> c38(A__U41(a__U21(a__isNat(z0)), x1), MARK(U21(isNat(z0)))) MARK(U41(U21(length(z0)), x1)) -> c38(A__U41(a__U21(a__length(mark(z0))), x1), MARK(U21(length(z0)))) MARK(U41(U21(cons(z0, z1)), x1)) -> c38(A__U41(a__U21(cons(mark(z0), z1)), x1), MARK(U21(cons(z0, z1)))) MARK(U41(U21(0), x1)) -> c38(A__U41(a__U21(0), x1), MARK(U21(0))) MARK(U41(U21(tt), x1)) -> c38(A__U41(a__U21(tt), x1), MARK(U21(tt))) MARK(U41(U21(s(z0)), x1)) -> c38(A__U41(a__U21(s(mark(z0))), x1), MARK(U21(s(z0)))) MARK(U41(U21(nil), x1)) -> c38(A__U41(a__U21(nil), x1), MARK(U21(nil))) MARK(U41(U21(x0), x1)) -> c38(MARK(U21(x0))) MARK(U41(U31(zeros), x1)) -> c38(A__U41(a__U31(a__zeros), x1), MARK(U31(zeros))) MARK(U41(U31(U11(z0)), x1)) -> c38(A__U41(a__U31(a__U11(mark(z0))), x1), MARK(U31(U11(z0)))) MARK(U41(U31(U21(z0)), x1)) -> c38(A__U41(a__U31(a__U21(mark(z0))), x1), MARK(U31(U21(z0)))) MARK(U41(U31(U31(z0)), x1)) -> c38(A__U41(a__U31(a__U31(mark(z0))), x1), MARK(U31(U31(z0)))) MARK(U41(U31(U41(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U41(mark(z0), z1)), x1), MARK(U31(U41(z0, z1)))) MARK(U41(U31(U42(z0)), x1)) -> c38(A__U41(a__U31(a__U42(mark(z0))), x1), MARK(U31(U42(z0)))) MARK(U41(U31(isNatIList(z0)), x1)) -> c38(A__U41(a__U31(a__isNatIList(z0)), x1), MARK(U31(isNatIList(z0)))) MARK(U41(U31(U51(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U51(mark(z0), z1)), x1), MARK(U31(U51(z0, z1)))) MARK(U41(U31(U52(z0)), x1)) -> c38(A__U41(a__U31(a__U52(mark(z0))), x1), MARK(U31(U52(z0)))) MARK(U41(U31(isNatList(z0)), x1)) -> c38(A__U41(a__U31(a__isNatList(z0)), x1), MARK(U31(isNatList(z0)))) MARK(U41(U31(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U31(a__U61(mark(z0), z1, z2)), x1), MARK(U31(U61(z0, z1, z2)))) MARK(U41(U31(U62(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U62(mark(z0), z1)), x1), MARK(U31(U62(z0, z1)))) MARK(U41(U31(isNat(z0)), x1)) -> c38(A__U41(a__U31(a__isNat(z0)), x1), MARK(U31(isNat(z0)))) MARK(U41(U31(length(z0)), x1)) -> c38(A__U41(a__U31(a__length(mark(z0))), x1), MARK(U31(length(z0)))) MARK(U41(U31(cons(z0, z1)), x1)) -> c38(A__U41(a__U31(cons(mark(z0), z1)), x1), MARK(U31(cons(z0, z1)))) MARK(U41(U31(0), x1)) -> c38(A__U41(a__U31(0), x1), MARK(U31(0))) MARK(U41(U31(tt), x1)) -> c38(A__U41(a__U31(tt), x1), MARK(U31(tt))) MARK(U41(U31(s(z0)), x1)) -> c38(A__U41(a__U31(s(mark(z0))), x1), MARK(U31(s(z0)))) MARK(U41(U31(nil), x1)) -> c38(A__U41(a__U31(nil), x1), MARK(U31(nil))) MARK(U41(U31(x0), x1)) -> c38(MARK(U31(x0))) MARK(U41(U41(U11(z0), x1), x2)) -> c38(A__U41(a__U41(a__U11(mark(z0)), x1), x2), MARK(U41(U11(z0), x1))) MARK(U41(U41(U21(z0), x1), x2)) -> c38(A__U41(a__U41(a__U21(mark(z0)), x1), x2), MARK(U41(U21(z0), x1))) MARK(U41(U41(U31(z0), x1), x2)) -> c38(A__U41(a__U41(a__U31(mark(z0)), x1), x2), MARK(U41(U31(z0), x1))) MARK(U41(U41(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U41(mark(z0), z1), x1), x2), MARK(U41(U41(z0, z1), x1))) MARK(U41(U41(U42(z0), x1), x2)) -> c38(A__U41(a__U41(a__U42(mark(z0)), x1), x2), MARK(U41(U42(z0), x1))) MARK(U41(U41(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U51(mark(z0), z1), x1), x2), MARK(U41(U51(z0, z1), x1))) MARK(U41(U41(U52(z0), x1), x2)) -> c38(A__U41(a__U41(a__U52(mark(z0)), x1), x2), MARK(U41(U52(z0), x1))) MARK(U41(U41(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U41(a__U61(mark(z0), z1, z2), x1), x2), MARK(U41(U61(z0, z1, z2), x1))) MARK(U41(U41(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U62(mark(z0), z1), x1), x2), MARK(U41(U62(z0, z1), x1))) MARK(U41(U41(length(z0), x1), x2)) -> c38(A__U41(a__U41(a__length(mark(z0)), x1), x2), MARK(U41(length(z0), x1))) MARK(U41(U41(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U41(cons(mark(z0), z1), x1), x2), MARK(U41(cons(z0, z1), x1))) MARK(U41(U41(s(z0), x1), x2)) -> c38(A__U41(a__U41(s(mark(z0)), x1), x2), MARK(U41(s(z0), x1))) MARK(U41(U41(x0, z1), x2)) -> c38(MARK(U41(x0, z1))) MARK(U41(U41(0, x1), x2)) -> c38(A__U41(a__U41(0, x1), x2)) MARK(U41(U41(nil, x1), x2)) -> c38(A__U41(a__U41(nil, x1), x2)) MARK(U41(U41(zeros, x1), x2)) -> c2(A__U41(a__U41(a__zeros, x1), x2)) MARK(U41(U41(zeros, x1), x2)) -> c2(MARK(U41(zeros, x1))) MARK(U41(U41(isNatIList(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNatIList(z0), x1), x2)) MARK(U41(U41(isNatIList(z0), x1), x2)) -> c2(MARK(U41(isNatIList(z0), x1))) MARK(U41(U41(isNatList(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNatList(z0), x1), x2)) MARK(U41(U41(isNatList(z0), x1), x2)) -> c2(MARK(U41(isNatList(z0), x1))) MARK(U41(U41(isNat(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNat(z0), x1), x2)) MARK(U41(U41(isNat(z0), x1), x2)) -> c2(MARK(U41(isNat(z0), x1))) MARK(U41(U41(tt, x1), x2)) -> c2(A__U41(a__U41(tt, x1), x2)) MARK(U41(U41(tt, x1), x2)) -> c2(MARK(U41(tt, x1))) MARK(U41(U42(zeros), x1)) -> c38(A__U41(a__U42(a__zeros), x1), MARK(U42(zeros))) MARK(U41(U42(U11(z0)), x1)) -> c38(A__U41(a__U42(a__U11(mark(z0))), x1), MARK(U42(U11(z0)))) MARK(U41(U42(U21(z0)), x1)) -> c38(A__U41(a__U42(a__U21(mark(z0))), x1), MARK(U42(U21(z0)))) MARK(U41(U42(U31(z0)), x1)) -> c38(A__U41(a__U42(a__U31(mark(z0))), x1), MARK(U42(U31(z0)))) MARK(U41(U42(U41(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U41(mark(z0), z1)), x1), MARK(U42(U41(z0, z1)))) MARK(U41(U42(U42(z0)), x1)) -> c38(A__U41(a__U42(a__U42(mark(z0))), x1), MARK(U42(U42(z0)))) MARK(U41(U42(isNatIList(z0)), x1)) -> c38(A__U41(a__U42(a__isNatIList(z0)), x1), MARK(U42(isNatIList(z0)))) MARK(U41(U42(U51(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U51(mark(z0), z1)), x1), MARK(U42(U51(z0, z1)))) MARK(U41(U42(U52(z0)), x1)) -> c38(A__U41(a__U42(a__U52(mark(z0))), x1), MARK(U42(U52(z0)))) MARK(U41(U42(isNatList(z0)), x1)) -> c38(A__U41(a__U42(a__isNatList(z0)), x1), MARK(U42(isNatList(z0)))) MARK(U41(U42(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U42(a__U61(mark(z0), z1, z2)), x1), MARK(U42(U61(z0, z1, z2)))) MARK(U41(U42(U62(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U62(mark(z0), z1)), x1), MARK(U42(U62(z0, z1)))) MARK(U41(U42(isNat(z0)), x1)) -> c38(A__U41(a__U42(a__isNat(z0)), x1), MARK(U42(isNat(z0)))) MARK(U41(U42(length(z0)), x1)) -> c38(A__U41(a__U42(a__length(mark(z0))), x1), MARK(U42(length(z0)))) MARK(U41(U42(cons(z0, z1)), x1)) -> c38(A__U41(a__U42(cons(mark(z0), z1)), x1), MARK(U42(cons(z0, z1)))) MARK(U41(U42(0), x1)) -> c38(A__U41(a__U42(0), x1), MARK(U42(0))) MARK(U41(U42(tt), x1)) -> c38(A__U41(a__U42(tt), x1), MARK(U42(tt))) MARK(U41(U42(s(z0)), x1)) -> c38(A__U41(a__U42(s(mark(z0))), x1), MARK(U42(s(z0)))) MARK(U41(U42(nil), x1)) -> c38(A__U41(a__U42(nil), x1), MARK(U42(nil))) MARK(U41(U42(x0), x1)) -> c38(MARK(U42(x0))) MARK(U41(U51(U11(z0), x1), x2)) -> c38(A__U41(a__U51(a__U11(mark(z0)), x1), x2), MARK(U51(U11(z0), x1))) MARK(U41(U51(U21(z0), x1), x2)) -> c38(A__U41(a__U51(a__U21(mark(z0)), x1), x2), MARK(U51(U21(z0), x1))) MARK(U41(U51(U31(z0), x1), x2)) -> c38(A__U41(a__U51(a__U31(mark(z0)), x1), x2), MARK(U51(U31(z0), x1))) MARK(U41(U51(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U41(mark(z0), z1), x1), x2), MARK(U51(U41(z0, z1), x1))) MARK(U41(U51(U42(z0), x1), x2)) -> c38(A__U41(a__U51(a__U42(mark(z0)), x1), x2), MARK(U51(U42(z0), x1))) MARK(U41(U51(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U51(mark(z0), z1), x1), x2), MARK(U51(U51(z0, z1), x1))) MARK(U41(U51(U52(z0), x1), x2)) -> c38(A__U41(a__U51(a__U52(mark(z0)), x1), x2), MARK(U51(U52(z0), x1))) MARK(U41(U51(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U51(a__U61(mark(z0), z1, z2), x1), x2), MARK(U51(U61(z0, z1, z2), x1))) MARK(U41(U51(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U62(mark(z0), z1), x1), x2), MARK(U51(U62(z0, z1), x1))) MARK(U41(U51(length(z0), x1), x2)) -> c38(A__U41(a__U51(a__length(mark(z0)), x1), x2), MARK(U51(length(z0), x1))) MARK(U41(U51(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U51(cons(mark(z0), z1), x1), x2), MARK(U51(cons(z0, z1), x1))) MARK(U41(U51(s(z0), x1), x2)) -> c38(A__U41(a__U51(s(mark(z0)), x1), x2), MARK(U51(s(z0), x1))) MARK(U41(U51(x0, z1), x2)) -> c38(MARK(U51(x0, z1))) MARK(U41(U51(0, x1), x2)) -> c38(A__U41(a__U51(0, x1), x2)) MARK(U41(U51(nil, x1), x2)) -> c38(A__U41(a__U51(nil, x1), x2)) MARK(U41(U51(zeros, x1), x2)) -> c3(A__U41(a__U51(a__zeros, x1), x2)) MARK(U41(U51(zeros, x1), x2)) -> c3(MARK(U51(zeros, x1))) MARK(U41(U51(isNatIList(z0), x1), x2)) -> c3(A__U41(a__U51(a__isNatIList(z0), x1), x2)) MARK(U41(U51(isNatIList(z0), x1), x2)) -> c3(MARK(U51(isNatIList(z0), x1))) MARK(U41(U51(isNatList(z0), x1), x2)) -> c3(A__U41(a__U51(a__isNatList(z0), x1), x2)) MARK(U41(U51(isNatList(z0), x1), x2)) -> c3(MARK(U51(isNatList(z0), x1))) MARK(U41(U51(isNat(z0), x1), x2)) -> c3(A__U41(a__U51(a__isNat(z0), x1), x2)) MARK(U41(U51(isNat(z0), x1), x2)) -> c3(MARK(U51(isNat(z0), x1))) MARK(U41(U51(tt, x1), x2)) -> c3(A__U41(a__U51(tt, x1), x2)) MARK(U41(U51(tt, x1), x2)) -> c3(MARK(U51(tt, x1))) MARK(U41(U52(zeros), x1)) -> c38(A__U41(a__U52(a__zeros), x1), MARK(U52(zeros))) MARK(U41(U52(U11(z0)), x1)) -> c38(A__U41(a__U52(a__U11(mark(z0))), x1), MARK(U52(U11(z0)))) MARK(U41(U52(U21(z0)), x1)) -> c38(A__U41(a__U52(a__U21(mark(z0))), x1), MARK(U52(U21(z0)))) MARK(U41(U52(U31(z0)), x1)) -> c38(A__U41(a__U52(a__U31(mark(z0))), x1), MARK(U52(U31(z0)))) MARK(U41(U52(U41(z0, z1)), x1)) -> c38(A__U41(a__U52(a__U41(mark(z0), z1)), x1), MARK(U52(U41(z0, z1)))) MARK(U41(U52(U42(z0)), x1)) -> c38(A__U41(a__U52(a__U42(mark(z0))), x1), MARK(U52(U42(z0)))) MARK(U41(U52(isNatIList(z0)), x1)) -> c38(A__U41(a__U52(a__isNatIList(z0)), x1), MARK(U52(isNatIList(z0)))) MARK(U41(U52(U51(z0, z1)), x1)) -> c38(A__U41(a__U52(a__U51(mark(z0), z1)), x1), MARK(U52(U51(z0, z1)))) MARK(U41(U52(U52(z0)), x1)) -> c38(A__U41(a__U52(a__U52(mark(z0))), x1), MARK(U52(U52(z0)))) MARK(U41(U52(isNatList(z0)), x1)) -> c38(A__U41(a__U52(a__isNatList(z0)), x1), MARK(U52(isNatList(z0)))) MARK(U41(U52(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U52(a__U61(mark(z0), z1, z2)), x1), MARK(U52(U61(z0, z1, z2)))) MARK(U41(U52(U62(z0, z1)), x1)) -> c38(A__U41(a__U52(a__U62(mark(z0), z1)), x1), MARK(U52(U62(z0, z1)))) MARK(U41(U52(isNat(z0)), x1)) -> c38(A__U41(a__U52(a__isNat(z0)), x1), MARK(U52(isNat(z0)))) MARK(U41(U52(length(z0)), x1)) -> c38(A__U41(a__U52(a__length(mark(z0))), x1), MARK(U52(length(z0)))) MARK(U41(U52(cons(z0, z1)), x1)) -> c38(A__U41(a__U52(cons(mark(z0), z1)), x1), MARK(U52(cons(z0, z1)))) MARK(U41(U52(0), x1)) -> c38(A__U41(a__U52(0), x1), MARK(U52(0))) MARK(U41(U52(tt), x1)) -> c38(A__U41(a__U52(tt), x1), MARK(U52(tt))) MARK(U41(U52(s(z0)), x1)) -> c38(A__U41(a__U52(s(mark(z0))), x1), MARK(U52(s(z0)))) MARK(U41(U52(nil), x1)) -> c38(A__U41(a__U52(nil), x1), MARK(U52(nil))) MARK(U41(U52(x0), x1)) -> c38(MARK(U52(x0))) S tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) A__U62(tt, isNatList(cons(z0, z1))) -> c18(A__LENGTH(a__U51(a__isNat(z0), z1)), MARK(isNatList(cons(z0, z1)))) A__U62(tt, isNatList(nil)) -> c18(MARK(isNatList(nil))) A__U62(tt, isNatList(z0)) -> c18(MARK(isNatList(z0))) A__U62(tt, U61(zeros, x1, x2)) -> c18(A__LENGTH(a__U61(a__zeros, x1, x2)), MARK(U61(zeros, x1, x2))) A__U62(tt, U61(U11(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U11(mark(z0)), x1, x2)), MARK(U61(U11(z0), x1, x2))) A__U62(tt, U61(U21(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U21(mark(z0)), x1, x2)), MARK(U61(U21(z0), x1, x2))) A__U62(tt, U61(U31(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U31(mark(z0)), x1, x2)), MARK(U61(U31(z0), x1, x2))) A__U62(tt, U61(U41(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U41(mark(z0), z1), x1, x2)), MARK(U61(U41(z0, z1), x1, x2))) A__U62(tt, U61(U42(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U42(mark(z0)), x1, x2)), MARK(U61(U42(z0), x1, x2))) A__U62(tt, U61(isNatIList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatIList(z0), x1, x2)), MARK(U61(isNatIList(z0), x1, x2))) A__U62(tt, U61(U51(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U51(mark(z0), z1), x1, x2)), MARK(U61(U51(z0, z1), x1, x2))) A__U62(tt, U61(U52(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U52(mark(z0)), x1, x2)), MARK(U61(U52(z0), x1, x2))) A__U62(tt, U61(isNatList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatList(z0), x1, x2)), MARK(U61(isNatList(z0), x1, x2))) A__U62(tt, U61(U61(z0, z1, z2), x1, x2)) -> c18(A__LENGTH(a__U61(a__U61(mark(z0), z1, z2), x1, x2)), MARK(U61(U61(z0, z1, z2), x1, x2))) A__U62(tt, U61(U62(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U62(mark(z0), z1), x1, x2)), MARK(U61(U62(z0, z1), x1, x2))) A__U62(tt, U61(isNat(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNat(z0), x1, x2)), MARK(U61(isNat(z0), x1, x2))) A__U62(tt, U61(length(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__length(mark(z0)), x1, x2)), MARK(U61(length(z0), x1, x2))) A__U62(tt, U61(cons(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(cons(mark(z0), z1), x1, x2)), MARK(U61(cons(z0, z1), x1, x2))) A__U62(tt, U61(tt, x1, x2)) -> c18(A__LENGTH(a__U61(tt, x1, x2)), MARK(U61(tt, x1, x2))) A__U62(tt, U61(s(z0), x1, x2)) -> c18(A__LENGTH(a__U61(s(mark(z0)), x1, x2)), MARK(U61(s(z0), x1, x2))) A__U62(tt, U61(x0, z1, z2)) -> c18(MARK(U61(x0, z1, z2))) A__U62(tt, U61(0, x1, x2)) -> c18(A__LENGTH(a__U61(0, x1, x2))) A__U62(tt, U61(nil, x1, x2)) -> c18(A__LENGTH(a__U61(nil, x1, x2))) A__U62(tt, U62(zeros, x1)) -> c18(A__LENGTH(a__U62(a__zeros, x1)), MARK(U62(zeros, x1))) A__U62(tt, U62(U11(z0), x1)) -> c18(A__LENGTH(a__U62(a__U11(mark(z0)), x1)), MARK(U62(U11(z0), x1))) A__U62(tt, U62(U21(z0), x1)) -> c18(A__LENGTH(a__U62(a__U21(mark(z0)), x1)), MARK(U62(U21(z0), x1))) A__U62(tt, U62(U31(z0), x1)) -> c18(A__LENGTH(a__U62(a__U31(mark(z0)), x1)), MARK(U62(U31(z0), x1))) A__U62(tt, U62(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U41(mark(z0), z1), x1)), MARK(U62(U41(z0, z1), x1))) A__U62(tt, U62(U42(z0), x1)) -> c18(A__LENGTH(a__U62(a__U42(mark(z0)), x1)), MARK(U62(U42(z0), x1))) A__U62(tt, U62(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatIList(z0), x1)), MARK(U62(isNatIList(z0), x1))) A__U62(tt, U62(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U51(mark(z0), z1), x1)), MARK(U62(U51(z0, z1), x1))) A__U62(tt, U62(U52(z0), x1)) -> c18(A__LENGTH(a__U62(a__U52(mark(z0)), x1)), MARK(U62(U52(z0), x1))) A__U62(tt, U62(isNatList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatList(z0), x1)), MARK(U62(isNatList(z0), x1))) A__U62(tt, U62(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U62(a__U61(mark(z0), z1, z2), x1)), MARK(U62(U61(z0, z1, z2), x1))) A__U62(tt, U62(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U62(mark(z0), z1), x1)), MARK(U62(U62(z0, z1), x1))) A__U62(tt, U62(isNat(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNat(z0), x1)), MARK(U62(isNat(z0), x1))) A__U62(tt, U62(length(z0), x1)) -> c18(A__LENGTH(a__U62(a__length(mark(z0)), x1)), MARK(U62(length(z0), x1))) A__U62(tt, U62(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U62(cons(mark(z0), z1), x1)), MARK(U62(cons(z0, z1), x1))) A__U62(tt, U62(tt, x1)) -> c18(A__LENGTH(a__U62(tt, x1)), MARK(U62(tt, x1))) A__U62(tt, U62(s(z0), x1)) -> c18(A__LENGTH(a__U62(s(mark(z0)), x1)), MARK(U62(s(z0), x1))) A__U62(tt, U62(x0, z1)) -> c18(MARK(U62(x0, z1))) A__U62(tt, U62(0, x1)) -> c18(A__LENGTH(a__U62(0, x1))) A__U62(tt, U62(nil, x1)) -> c18(A__LENGTH(a__U62(nil, x1))) A__U62(tt, isNat(length(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(isNat(length(z0)))) A__U62(tt, isNat(s(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(isNat(s(z0)))) A__U62(tt, isNat(0)) -> c18(MARK(isNat(0))) A__U62(tt, isNat(z0)) -> c18(MARK(isNat(z0))) A__U62(tt, length(zeros)) -> c18(A__LENGTH(a__length(a__zeros)), MARK(length(zeros))) A__U62(tt, length(U11(z0))) -> c18(A__LENGTH(a__length(a__U11(mark(z0)))), MARK(length(U11(z0)))) A__U62(tt, length(U21(z0))) -> c18(A__LENGTH(a__length(a__U21(mark(z0)))), MARK(length(U21(z0)))) A__U62(tt, length(U31(z0))) -> c18(A__LENGTH(a__length(a__U31(mark(z0)))), MARK(length(U31(z0)))) A__U62(tt, length(U41(z0, z1))) -> c18(A__LENGTH(a__length(a__U41(mark(z0), z1))), MARK(length(U41(z0, z1)))) A__U62(tt, length(U42(z0))) -> c18(A__LENGTH(a__length(a__U42(mark(z0)))), MARK(length(U42(z0)))) A__U62(tt, length(isNatIList(z0))) -> c18(A__LENGTH(a__length(a__isNatIList(z0))), MARK(length(isNatIList(z0)))) A__U62(tt, length(U51(z0, z1))) -> c18(A__LENGTH(a__length(a__U51(mark(z0), z1))), MARK(length(U51(z0, z1)))) A__U62(tt, length(U52(z0))) -> c18(A__LENGTH(a__length(a__U52(mark(z0)))), MARK(length(U52(z0)))) A__U62(tt, length(isNatList(z0))) -> c18(A__LENGTH(a__length(a__isNatList(z0))), MARK(length(isNatList(z0)))) A__U62(tt, length(U61(z0, z1, z2))) -> c18(A__LENGTH(a__length(a__U61(mark(z0), z1, z2))), MARK(length(U61(z0, z1, z2)))) A__U62(tt, length(U62(z0, z1))) -> c18(A__LENGTH(a__length(a__U62(mark(z0), z1))), MARK(length(U62(z0, z1)))) A__U62(tt, length(isNat(z0))) -> c18(A__LENGTH(a__length(a__isNat(z0))), MARK(length(isNat(z0)))) A__U62(tt, length(length(z0))) -> c18(A__LENGTH(a__length(a__length(mark(z0)))), MARK(length(length(z0)))) A__U62(tt, length(cons(z0, z1))) -> c18(A__LENGTH(a__length(cons(mark(z0), z1))), MARK(length(cons(z0, z1)))) A__U62(tt, length(s(z0))) -> c18(A__LENGTH(a__length(s(mark(z0)))), MARK(length(s(z0)))) A__U62(tt, length(x0)) -> c18(MARK(length(x0))) A__U62(tt, length(0)) -> c18(A__LENGTH(a__length(0))) A__U62(tt, length(tt)) -> c18(A__LENGTH(a__length(tt))) A__U62(tt, length(nil)) -> c18(A__LENGTH(a__length(nil))) A__U62(tt, zeros) -> c18(A__LENGTH(cons(0, zeros))) A__ISNATILIST(cons(length(nil), x1)) -> c26(A__U41(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATILIST(cons(length(cons(z0, z1)), x1)) -> c26(A__U41(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(length(x0), x1)) -> c26(A__ISNAT(length(x0))) A__ISNATILIST(cons(s(0), x1)) -> c26(A__U41(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATILIST(cons(s(length(z0)), x1)) -> c26(A__U41(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATILIST(cons(s(s(z0)), x1)) -> c26(A__U41(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(s(x0), x1)) -> c26(A__ISNAT(s(x0))) A__ISNATLIST(cons(length(nil), x1)) -> c29(A__U51(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATLIST(cons(length(cons(z0, z1)), x1)) -> c29(A__U51(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(length(x0), x1)) -> c29(A__ISNAT(length(x0))) A__ISNATLIST(cons(s(0), x1)) -> c29(A__U51(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATLIST(cons(s(length(z0)), x1)) -> c29(A__U51(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATLIST(cons(s(s(z0)), x1)) -> c29(A__U51(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(s(x0), x1)) -> c29(A__ISNAT(s(x0))) A__LENGTH(cons(x0, cons(0, x2))) -> c32(A__U61(a__U51(tt, x2), cons(0, x2), x0), A__ISNATLIST(cons(0, x2))) A__LENGTH(cons(x0, cons(length(z0), x2))) -> c32(A__U61(a__U51(a__U11(a__isNatList(z0)), x2), cons(length(z0), x2), x0), A__ISNATLIST(cons(length(z0), x2))) A__LENGTH(cons(x0, cons(s(z0), x2))) -> c32(A__U61(a__U51(a__U21(a__isNat(z0)), x2), cons(s(z0), x2), x0), A__ISNATLIST(cons(s(z0), x2))) A__LENGTH(cons(x0, cons(z0, x2))) -> c32(A__U61(a__U51(isNat(z0), x2), cons(z0, x2), x0), A__ISNATLIST(cons(z0, x2))) A__LENGTH(cons(x0, cons(x1, z1))) -> c32(A__ISNATLIST(cons(x1, z1))) MARK(U41(U11(zeros), x1)) -> c38(A__U41(a__U11(a__zeros), x1), MARK(U11(zeros))) MARK(U41(U11(U11(z0)), x1)) -> c38(A__U41(a__U11(a__U11(mark(z0))), x1), MARK(U11(U11(z0)))) MARK(U41(U11(U21(z0)), x1)) -> c38(A__U41(a__U11(a__U21(mark(z0))), x1), MARK(U11(U21(z0)))) MARK(U41(U11(U31(z0)), x1)) -> c38(A__U41(a__U11(a__U31(mark(z0))), x1), MARK(U11(U31(z0)))) MARK(U41(U11(U41(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U41(mark(z0), z1)), x1), MARK(U11(U41(z0, z1)))) MARK(U41(U11(U42(z0)), x1)) -> c38(A__U41(a__U11(a__U42(mark(z0))), x1), MARK(U11(U42(z0)))) MARK(U41(U11(isNatIList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatIList(z0)), x1), MARK(U11(isNatIList(z0)))) MARK(U41(U11(U51(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U51(mark(z0), z1)), x1), MARK(U11(U51(z0, z1)))) MARK(U41(U11(U52(z0)), x1)) -> c38(A__U41(a__U11(a__U52(mark(z0))), x1), MARK(U11(U52(z0)))) MARK(U41(U11(isNatList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatList(z0)), x1), MARK(U11(isNatList(z0)))) MARK(U41(U11(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U11(a__U61(mark(z0), z1, z2)), x1), MARK(U11(U61(z0, z1, z2)))) MARK(U41(U11(U62(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U62(mark(z0), z1)), x1), MARK(U11(U62(z0, z1)))) MARK(U41(U11(isNat(z0)), x1)) -> c38(A__U41(a__U11(a__isNat(z0)), x1), MARK(U11(isNat(z0)))) MARK(U41(U11(length(z0)), x1)) -> c38(A__U41(a__U11(a__length(mark(z0))), x1), MARK(U11(length(z0)))) MARK(U41(U11(cons(z0, z1)), x1)) -> c38(A__U41(a__U11(cons(mark(z0), z1)), x1), MARK(U11(cons(z0, z1)))) MARK(U41(U11(0), x1)) -> c38(A__U41(a__U11(0), x1), MARK(U11(0))) MARK(U41(U11(tt), x1)) -> c38(A__U41(a__U11(tt), x1), MARK(U11(tt))) MARK(U41(U11(s(z0)), x1)) -> c38(A__U41(a__U11(s(mark(z0))), x1), MARK(U11(s(z0)))) MARK(U41(U11(nil), x1)) -> c38(A__U41(a__U11(nil), x1), MARK(U11(nil))) MARK(U41(U11(x0), x1)) -> c38(MARK(U11(x0))) MARK(U41(U21(zeros), x1)) -> c38(A__U41(a__U21(a__zeros), x1), MARK(U21(zeros))) MARK(U41(U21(U11(z0)), x1)) -> c38(A__U41(a__U21(a__U11(mark(z0))), x1), MARK(U21(U11(z0)))) MARK(U41(U21(U21(z0)), x1)) -> c38(A__U41(a__U21(a__U21(mark(z0))), x1), MARK(U21(U21(z0)))) MARK(U41(U21(U31(z0)), x1)) -> c38(A__U41(a__U21(a__U31(mark(z0))), x1), MARK(U21(U31(z0)))) MARK(U41(U21(U41(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U41(mark(z0), z1)), x1), MARK(U21(U41(z0, z1)))) MARK(U41(U21(U42(z0)), x1)) -> c38(A__U41(a__U21(a__U42(mark(z0))), x1), MARK(U21(U42(z0)))) MARK(U41(U21(isNatIList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatIList(z0)), x1), MARK(U21(isNatIList(z0)))) MARK(U41(U21(U51(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U51(mark(z0), z1)), x1), MARK(U21(U51(z0, z1)))) MARK(U41(U21(U52(z0)), x1)) -> c38(A__U41(a__U21(a__U52(mark(z0))), x1), MARK(U21(U52(z0)))) MARK(U41(U21(isNatList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatList(z0)), x1), MARK(U21(isNatList(z0)))) MARK(U41(U21(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U21(a__U61(mark(z0), z1, z2)), x1), MARK(U21(U61(z0, z1, z2)))) MARK(U41(U21(U62(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U62(mark(z0), z1)), x1), MARK(U21(U62(z0, z1)))) MARK(U41(U21(isNat(z0)), x1)) -> c38(A__U41(a__U21(a__isNat(z0)), x1), MARK(U21(isNat(z0)))) MARK(U41(U21(length(z0)), x1)) -> c38(A__U41(a__U21(a__length(mark(z0))), x1), MARK(U21(length(z0)))) MARK(U41(U21(cons(z0, z1)), x1)) -> c38(A__U41(a__U21(cons(mark(z0), z1)), x1), MARK(U21(cons(z0, z1)))) MARK(U41(U21(0), x1)) -> c38(A__U41(a__U21(0), x1), MARK(U21(0))) MARK(U41(U21(tt), x1)) -> c38(A__U41(a__U21(tt), x1), MARK(U21(tt))) MARK(U41(U21(s(z0)), x1)) -> c38(A__U41(a__U21(s(mark(z0))), x1), MARK(U21(s(z0)))) MARK(U41(U21(nil), x1)) -> c38(A__U41(a__U21(nil), x1), MARK(U21(nil))) MARK(U41(U21(x0), x1)) -> c38(MARK(U21(x0))) MARK(U41(U31(zeros), x1)) -> c38(A__U41(a__U31(a__zeros), x1), MARK(U31(zeros))) MARK(U41(U31(U11(z0)), x1)) -> c38(A__U41(a__U31(a__U11(mark(z0))), x1), MARK(U31(U11(z0)))) MARK(U41(U31(U21(z0)), x1)) -> c38(A__U41(a__U31(a__U21(mark(z0))), x1), MARK(U31(U21(z0)))) MARK(U41(U31(U31(z0)), x1)) -> c38(A__U41(a__U31(a__U31(mark(z0))), x1), MARK(U31(U31(z0)))) MARK(U41(U31(U41(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U41(mark(z0), z1)), x1), MARK(U31(U41(z0, z1)))) MARK(U41(U31(U42(z0)), x1)) -> c38(A__U41(a__U31(a__U42(mark(z0))), x1), MARK(U31(U42(z0)))) MARK(U41(U31(isNatIList(z0)), x1)) -> c38(A__U41(a__U31(a__isNatIList(z0)), x1), MARK(U31(isNatIList(z0)))) MARK(U41(U31(U51(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U51(mark(z0), z1)), x1), MARK(U31(U51(z0, z1)))) MARK(U41(U31(U52(z0)), x1)) -> c38(A__U41(a__U31(a__U52(mark(z0))), x1), MARK(U31(U52(z0)))) MARK(U41(U31(isNatList(z0)), x1)) -> c38(A__U41(a__U31(a__isNatList(z0)), x1), MARK(U31(isNatList(z0)))) MARK(U41(U31(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U31(a__U61(mark(z0), z1, z2)), x1), MARK(U31(U61(z0, z1, z2)))) MARK(U41(U31(U62(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U62(mark(z0), z1)), x1), MARK(U31(U62(z0, z1)))) MARK(U41(U31(isNat(z0)), x1)) -> c38(A__U41(a__U31(a__isNat(z0)), x1), MARK(U31(isNat(z0)))) MARK(U41(U31(length(z0)), x1)) -> c38(A__U41(a__U31(a__length(mark(z0))), x1), MARK(U31(length(z0)))) MARK(U41(U31(cons(z0, z1)), x1)) -> c38(A__U41(a__U31(cons(mark(z0), z1)), x1), MARK(U31(cons(z0, z1)))) MARK(U41(U31(0), x1)) -> c38(A__U41(a__U31(0), x1), MARK(U31(0))) MARK(U41(U31(tt), x1)) -> c38(A__U41(a__U31(tt), x1), MARK(U31(tt))) MARK(U41(U31(s(z0)), x1)) -> c38(A__U41(a__U31(s(mark(z0))), x1), MARK(U31(s(z0)))) MARK(U41(U31(nil), x1)) -> c38(A__U41(a__U31(nil), x1), MARK(U31(nil))) MARK(U41(U31(x0), x1)) -> c38(MARK(U31(x0))) MARK(U41(U41(U11(z0), x1), x2)) -> c38(A__U41(a__U41(a__U11(mark(z0)), x1), x2), MARK(U41(U11(z0), x1))) MARK(U41(U41(U21(z0), x1), x2)) -> c38(A__U41(a__U41(a__U21(mark(z0)), x1), x2), MARK(U41(U21(z0), x1))) MARK(U41(U41(U31(z0), x1), x2)) -> c38(A__U41(a__U41(a__U31(mark(z0)), x1), x2), MARK(U41(U31(z0), x1))) MARK(U41(U41(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U41(mark(z0), z1), x1), x2), MARK(U41(U41(z0, z1), x1))) MARK(U41(U41(U42(z0), x1), x2)) -> c38(A__U41(a__U41(a__U42(mark(z0)), x1), x2), MARK(U41(U42(z0), x1))) MARK(U41(U41(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U51(mark(z0), z1), x1), x2), MARK(U41(U51(z0, z1), x1))) MARK(U41(U41(U52(z0), x1), x2)) -> c38(A__U41(a__U41(a__U52(mark(z0)), x1), x2), MARK(U41(U52(z0), x1))) MARK(U41(U41(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U41(a__U61(mark(z0), z1, z2), x1), x2), MARK(U41(U61(z0, z1, z2), x1))) MARK(U41(U41(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U62(mark(z0), z1), x1), x2), MARK(U41(U62(z0, z1), x1))) MARK(U41(U41(length(z0), x1), x2)) -> c38(A__U41(a__U41(a__length(mark(z0)), x1), x2), MARK(U41(length(z0), x1))) MARK(U41(U41(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U41(cons(mark(z0), z1), x1), x2), MARK(U41(cons(z0, z1), x1))) MARK(U41(U41(s(z0), x1), x2)) -> c38(A__U41(a__U41(s(mark(z0)), x1), x2), MARK(U41(s(z0), x1))) MARK(U41(U41(x0, z1), x2)) -> c38(MARK(U41(x0, z1))) MARK(U41(U41(0, x1), x2)) -> c38(A__U41(a__U41(0, x1), x2)) MARK(U41(U41(nil, x1), x2)) -> c38(A__U41(a__U41(nil, x1), x2)) MARK(U41(U41(zeros, x1), x2)) -> c2(A__U41(a__U41(a__zeros, x1), x2)) MARK(U41(U41(zeros, x1), x2)) -> c2(MARK(U41(zeros, x1))) MARK(U41(U41(isNatIList(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNatIList(z0), x1), x2)) MARK(U41(U41(isNatIList(z0), x1), x2)) -> c2(MARK(U41(isNatIList(z0), x1))) MARK(U41(U41(isNatList(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNatList(z0), x1), x2)) MARK(U41(U41(isNatList(z0), x1), x2)) -> c2(MARK(U41(isNatList(z0), x1))) MARK(U41(U41(isNat(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNat(z0), x1), x2)) MARK(U41(U41(isNat(z0), x1), x2)) -> c2(MARK(U41(isNat(z0), x1))) MARK(U41(U41(tt, x1), x2)) -> c2(A__U41(a__U41(tt, x1), x2)) MARK(U41(U41(tt, x1), x2)) -> c2(MARK(U41(tt, x1))) MARK(U41(U42(zeros), x1)) -> c38(A__U41(a__U42(a__zeros), x1), MARK(U42(zeros))) MARK(U41(U42(U11(z0)), x1)) -> c38(A__U41(a__U42(a__U11(mark(z0))), x1), MARK(U42(U11(z0)))) MARK(U41(U42(U21(z0)), x1)) -> c38(A__U41(a__U42(a__U21(mark(z0))), x1), MARK(U42(U21(z0)))) MARK(U41(U42(U31(z0)), x1)) -> c38(A__U41(a__U42(a__U31(mark(z0))), x1), MARK(U42(U31(z0)))) MARK(U41(U42(U41(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U41(mark(z0), z1)), x1), MARK(U42(U41(z0, z1)))) MARK(U41(U42(U42(z0)), x1)) -> c38(A__U41(a__U42(a__U42(mark(z0))), x1), MARK(U42(U42(z0)))) MARK(U41(U42(isNatIList(z0)), x1)) -> c38(A__U41(a__U42(a__isNatIList(z0)), x1), MARK(U42(isNatIList(z0)))) MARK(U41(U42(U51(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U51(mark(z0), z1)), x1), MARK(U42(U51(z0, z1)))) MARK(U41(U42(U52(z0)), x1)) -> c38(A__U41(a__U42(a__U52(mark(z0))), x1), MARK(U42(U52(z0)))) MARK(U41(U42(isNatList(z0)), x1)) -> c38(A__U41(a__U42(a__isNatList(z0)), x1), MARK(U42(isNatList(z0)))) MARK(U41(U42(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U42(a__U61(mark(z0), z1, z2)), x1), MARK(U42(U61(z0, z1, z2)))) MARK(U41(U42(U62(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U62(mark(z0), z1)), x1), MARK(U42(U62(z0, z1)))) MARK(U41(U42(isNat(z0)), x1)) -> c38(A__U41(a__U42(a__isNat(z0)), x1), MARK(U42(isNat(z0)))) MARK(U41(U42(length(z0)), x1)) -> c38(A__U41(a__U42(a__length(mark(z0))), x1), MARK(U42(length(z0)))) MARK(U41(U42(cons(z0, z1)), x1)) -> c38(A__U41(a__U42(cons(mark(z0), z1)), x1), MARK(U42(cons(z0, z1)))) MARK(U41(U42(0), x1)) -> c38(A__U41(a__U42(0), x1), MARK(U42(0))) MARK(U41(U42(tt), x1)) -> c38(A__U41(a__U42(tt), x1), MARK(U42(tt))) MARK(U41(U42(s(z0)), x1)) -> c38(A__U41(a__U42(s(mark(z0))), x1), MARK(U42(s(z0)))) MARK(U41(U42(nil), x1)) -> c38(A__U41(a__U42(nil), x1), MARK(U42(nil))) MARK(U41(U42(x0), x1)) -> c38(MARK(U42(x0))) MARK(U41(U51(U11(z0), x1), x2)) -> c38(A__U41(a__U51(a__U11(mark(z0)), x1), x2), MARK(U51(U11(z0), x1))) MARK(U41(U51(U21(z0), x1), x2)) -> c38(A__U41(a__U51(a__U21(mark(z0)), x1), x2), MARK(U51(U21(z0), x1))) MARK(U41(U51(U31(z0), x1), x2)) -> c38(A__U41(a__U51(a__U31(mark(z0)), x1), x2), MARK(U51(U31(z0), x1))) MARK(U41(U51(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U41(mark(z0), z1), x1), x2), MARK(U51(U41(z0, z1), x1))) MARK(U41(U51(U42(z0), x1), x2)) -> c38(A__U41(a__U51(a__U42(mark(z0)), x1), x2), MARK(U51(U42(z0), x1))) MARK(U41(U51(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U51(mark(z0), z1), x1), x2), MARK(U51(U51(z0, z1), x1))) MARK(U41(U51(U52(z0), x1), x2)) -> c38(A__U41(a__U51(a__U52(mark(z0)), x1), x2), MARK(U51(U52(z0), x1))) MARK(U41(U51(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U51(a__U61(mark(z0), z1, z2), x1), x2), MARK(U51(U61(z0, z1, z2), x1))) MARK(U41(U51(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U62(mark(z0), z1), x1), x2), MARK(U51(U62(z0, z1), x1))) MARK(U41(U51(length(z0), x1), x2)) -> c38(A__U41(a__U51(a__length(mark(z0)), x1), x2), MARK(U51(length(z0), x1))) MARK(U41(U51(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U51(cons(mark(z0), z1), x1), x2), MARK(U51(cons(z0, z1), x1))) MARK(U41(U51(s(z0), x1), x2)) -> c38(A__U41(a__U51(s(mark(z0)), x1), x2), MARK(U51(s(z0), x1))) MARK(U41(U51(x0, z1), x2)) -> c38(MARK(U51(x0, z1))) MARK(U41(U51(0, x1), x2)) -> c38(A__U41(a__U51(0, x1), x2)) MARK(U41(U51(nil, x1), x2)) -> c38(A__U41(a__U51(nil, x1), x2)) MARK(U41(U51(zeros, x1), x2)) -> c3(A__U41(a__U51(a__zeros, x1), x2)) MARK(U41(U51(zeros, x1), x2)) -> c3(MARK(U51(zeros, x1))) MARK(U41(U51(isNatIList(z0), x1), x2)) -> c3(A__U41(a__U51(a__isNatIList(z0), x1), x2)) MARK(U41(U51(isNatIList(z0), x1), x2)) -> c3(MARK(U51(isNatIList(z0), x1))) MARK(U41(U51(isNatList(z0), x1), x2)) -> c3(A__U41(a__U51(a__isNatList(z0), x1), x2)) MARK(U41(U51(isNatList(z0), x1), x2)) -> c3(MARK(U51(isNatList(z0), x1))) MARK(U41(U51(isNat(z0), x1), x2)) -> c3(A__U41(a__U51(a__isNat(z0), x1), x2)) MARK(U41(U51(isNat(z0), x1), x2)) -> c3(MARK(U51(isNat(z0), x1))) MARK(U41(U51(tt, x1), x2)) -> c3(A__U41(a__U51(tt, x1), x2)) MARK(U41(U51(tt, x1), x2)) -> c3(MARK(U51(tt, x1))) MARK(U41(U52(zeros), x1)) -> c38(A__U41(a__U52(a__zeros), x1), MARK(U52(zeros))) MARK(U41(U52(U11(z0)), x1)) -> c38(A__U41(a__U52(a__U11(mark(z0))), x1), MARK(U52(U11(z0)))) MARK(U41(U52(U21(z0)), x1)) -> c38(A__U41(a__U52(a__U21(mark(z0))), x1), MARK(U52(U21(z0)))) MARK(U41(U52(U31(z0)), x1)) -> c38(A__U41(a__U52(a__U31(mark(z0))), x1), MARK(U52(U31(z0)))) MARK(U41(U52(U41(z0, z1)), x1)) -> c38(A__U41(a__U52(a__U41(mark(z0), z1)), x1), MARK(U52(U41(z0, z1)))) MARK(U41(U52(U42(z0)), x1)) -> c38(A__U41(a__U52(a__U42(mark(z0))), x1), MARK(U52(U42(z0)))) MARK(U41(U52(isNatIList(z0)), x1)) -> c38(A__U41(a__U52(a__isNatIList(z0)), x1), MARK(U52(isNatIList(z0)))) MARK(U41(U52(U51(z0, z1)), x1)) -> c38(A__U41(a__U52(a__U51(mark(z0), z1)), x1), MARK(U52(U51(z0, z1)))) MARK(U41(U52(U52(z0)), x1)) -> c38(A__U41(a__U52(a__U52(mark(z0))), x1), MARK(U52(U52(z0)))) MARK(U41(U52(isNatList(z0)), x1)) -> c38(A__U41(a__U52(a__isNatList(z0)), x1), MARK(U52(isNatList(z0)))) MARK(U41(U52(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U52(a__U61(mark(z0), z1, z2)), x1), MARK(U52(U61(z0, z1, z2)))) MARK(U41(U52(U62(z0, z1)), x1)) -> c38(A__U41(a__U52(a__U62(mark(z0), z1)), x1), MARK(U52(U62(z0, z1)))) MARK(U41(U52(isNat(z0)), x1)) -> c38(A__U41(a__U52(a__isNat(z0)), x1), MARK(U52(isNat(z0)))) MARK(U41(U52(length(z0)), x1)) -> c38(A__U41(a__U52(a__length(mark(z0))), x1), MARK(U52(length(z0)))) MARK(U41(U52(cons(z0, z1)), x1)) -> c38(A__U41(a__U52(cons(mark(z0), z1)), x1), MARK(U52(cons(z0, z1)))) MARK(U41(U52(0), x1)) -> c38(A__U41(a__U52(0), x1), MARK(U52(0))) MARK(U41(U52(tt), x1)) -> c38(A__U41(a__U52(tt), x1), MARK(U52(tt))) MARK(U41(U52(s(z0)), x1)) -> c38(A__U41(a__U52(s(mark(z0))), x1), MARK(U52(s(z0)))) MARK(U41(U52(nil), x1)) -> c38(A__U41(a__U52(nil), x1), MARK(U52(nil))) MARK(U41(U52(x0), x1)) -> c38(MARK(U52(x0))) K tuples:none Defined Rule Symbols: a__zeros, a__U11_1, a__U21_1, a__U31_1, a__U41_2, a__U42_1, a__U51_2, a__U52_1, a__U61_3, a__U62_2, a__isNat_1, a__isNatIList_1, a__isNatList_1, a__length_1, mark_1 Defined Pair Symbols: MARK_1, A__U41_2, A__U51_2, A__ISNAT_1, A__ISNATILIST_1, A__U61_3, A__U62_2, A__ISNATLIST_1, A__LENGTH_1 Compound Symbols: c40_1, c43_1, c46_1, c48_1, c51_1, c8_1, c12_1, c21_1, c22_1, c24_1, c35_1, c36_1, c37_1, c39_1, c42_1, c16_1, c18_2, c18_1, c26_1, c29_1, c32_1, c38_2, c38_1, c_1, c41_2, c41_1, c1_1, c44_2, c44_1, c45_2, c45_1, c47_2, c47_1, c16_2, c26_2, c29_2, c32_2, c2_1, c3_1 ---------------------------------------- (201) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace MARK(U41(U61(z0, z1, z2), x1)) -> c38(A__U41(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) by MARK(U41(U61(x0, z1, z2), x3)) -> c38(A__U41(U61(mark(x0), z1, z2), x3), MARK(U61(x0, z1, z2))) MARK(U41(U61(zeros, x1, x2), x3)) -> c38(A__U41(a__U61(a__zeros, x1, x2), x3), MARK(U61(zeros, x1, x2))) MARK(U41(U61(U11(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U11(mark(z0)), x1, x2), x3), MARK(U61(U11(z0), x1, x2))) MARK(U41(U61(U21(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U21(mark(z0)), x1, x2), x3), MARK(U61(U21(z0), x1, x2))) MARK(U41(U61(U31(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U31(mark(z0)), x1, x2), x3), MARK(U61(U31(z0), x1, x2))) MARK(U41(U61(U41(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(a__U41(mark(z0), z1), x1, x2), x3), MARK(U61(U41(z0, z1), x1, x2))) MARK(U41(U61(U42(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U42(mark(z0)), x1, x2), x3), MARK(U61(U42(z0), x1, x2))) MARK(U41(U61(isNatIList(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__isNatIList(z0), x1, x2), x3), MARK(U61(isNatIList(z0), x1, x2))) MARK(U41(U61(U51(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(a__U51(mark(z0), z1), x1, x2), x3), MARK(U61(U51(z0, z1), x1, x2))) MARK(U41(U61(U52(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U52(mark(z0)), x1, x2), x3), MARK(U61(U52(z0), x1, x2))) MARK(U41(U61(isNatList(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__isNatList(z0), x1, x2), x3), MARK(U61(isNatList(z0), x1, x2))) MARK(U41(U61(U61(z0, z1, z2), x1, x2), x3)) -> c38(A__U41(a__U61(a__U61(mark(z0), z1, z2), x1, x2), x3), MARK(U61(U61(z0, z1, z2), x1, x2))) MARK(U41(U61(U62(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(a__U62(mark(z0), z1), x1, x2), x3), MARK(U61(U62(z0, z1), x1, x2))) MARK(U41(U61(isNat(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__isNat(z0), x1, x2), x3), MARK(U61(isNat(z0), x1, x2))) MARK(U41(U61(length(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__length(mark(z0)), x1, x2), x3), MARK(U61(length(z0), x1, x2))) MARK(U41(U61(cons(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(cons(mark(z0), z1), x1, x2), x3), MARK(U61(cons(z0, z1), x1, x2))) MARK(U41(U61(0, x1, x2), x3)) -> c38(A__U41(a__U61(0, x1, x2), x3), MARK(U61(0, x1, x2))) MARK(U41(U61(tt, x1, x2), x3)) -> c38(A__U41(a__U61(tt, x1, x2), x3), MARK(U61(tt, x1, x2))) MARK(U41(U61(s(z0), x1, x2), x3)) -> c38(A__U41(a__U61(s(mark(z0)), x1, x2), x3), MARK(U61(s(z0), x1, x2))) MARK(U41(U61(nil, x1, x2), x3)) -> c38(A__U41(a__U61(nil, x1, x2), x3), MARK(U61(nil, x1, x2))) ---------------------------------------- (202) Obligation: Complexity Dependency Tuples Problem Rules: a__zeros -> cons(0, zeros) a__zeros -> zeros a__U11(tt) -> tt a__U11(z0) -> U11(z0) a__U21(tt) -> tt a__U21(z0) -> U21(z0) a__U31(tt) -> tt a__U31(z0) -> U31(z0) a__U41(tt, z0) -> a__U42(a__isNatIList(z0)) a__U41(z0, z1) -> U41(z0, z1) a__U42(tt) -> tt a__U42(z0) -> U42(z0) a__U51(tt, z0) -> a__U52(a__isNatList(z0)) a__U51(z0, z1) -> U51(z0, z1) a__U52(tt) -> tt a__U52(z0) -> U52(z0) a__U61(tt, z0, z1) -> a__U62(a__isNat(z1), z0) a__U61(z0, z1, z2) -> U61(z0, z1, z2) a__U62(tt, z0) -> s(a__length(mark(z0))) a__U62(z0, z1) -> U62(z0, z1) a__isNat(0) -> tt a__isNat(length(z0)) -> a__U11(a__isNatList(z0)) a__isNat(s(z0)) -> a__U21(a__isNat(z0)) a__isNat(z0) -> isNat(z0) a__isNatIList(z0) -> a__U31(a__isNatList(z0)) a__isNatIList(zeros) -> tt a__isNatIList(cons(z0, z1)) -> a__U41(a__isNat(z0), z1) a__isNatIList(z0) -> isNatIList(z0) a__isNatList(nil) -> tt a__isNatList(cons(z0, z1)) -> a__U51(a__isNat(z0), z1) a__isNatList(z0) -> isNatList(z0) a__length(nil) -> 0 a__length(cons(z0, z1)) -> a__U61(a__isNatList(z1), z1, z0) a__length(z0) -> length(z0) mark(zeros) -> a__zeros mark(U11(z0)) -> a__U11(mark(z0)) mark(U21(z0)) -> a__U21(mark(z0)) mark(U31(z0)) -> a__U31(mark(z0)) mark(U41(z0, z1)) -> a__U41(mark(z0), z1) mark(U42(z0)) -> a__U42(mark(z0)) mark(isNatIList(z0)) -> a__isNatIList(z0) mark(U51(z0, z1)) -> a__U51(mark(z0), z1) mark(U52(z0)) -> a__U52(mark(z0)) mark(isNatList(z0)) -> a__isNatList(z0) mark(U61(z0, z1, z2)) -> a__U61(mark(z0), z1, z2) mark(U62(z0, z1)) -> a__U62(mark(z0), z1) mark(isNat(z0)) -> a__isNat(z0) mark(length(z0)) -> a__length(mark(z0)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(0) -> 0 mark(tt) -> tt mark(s(z0)) -> s(mark(z0)) mark(nil) -> nil Tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) A__U62(tt, isNatList(cons(z0, z1))) -> c18(A__LENGTH(a__U51(a__isNat(z0), z1)), MARK(isNatList(cons(z0, z1)))) A__U62(tt, isNatList(nil)) -> c18(MARK(isNatList(nil))) A__U62(tt, isNatList(z0)) -> c18(MARK(isNatList(z0))) A__U62(tt, U61(zeros, x1, x2)) -> c18(A__LENGTH(a__U61(a__zeros, x1, x2)), MARK(U61(zeros, x1, x2))) A__U62(tt, U61(U11(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U11(mark(z0)), x1, x2)), MARK(U61(U11(z0), x1, x2))) A__U62(tt, U61(U21(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U21(mark(z0)), x1, x2)), MARK(U61(U21(z0), x1, x2))) A__U62(tt, U61(U31(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U31(mark(z0)), x1, x2)), MARK(U61(U31(z0), x1, x2))) A__U62(tt, U61(U41(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U41(mark(z0), z1), x1, x2)), MARK(U61(U41(z0, z1), x1, x2))) A__U62(tt, U61(U42(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U42(mark(z0)), x1, x2)), MARK(U61(U42(z0), x1, x2))) A__U62(tt, U61(isNatIList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatIList(z0), x1, x2)), MARK(U61(isNatIList(z0), x1, x2))) A__U62(tt, U61(U51(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U51(mark(z0), z1), x1, x2)), MARK(U61(U51(z0, z1), x1, x2))) A__U62(tt, U61(U52(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U52(mark(z0)), x1, x2)), MARK(U61(U52(z0), x1, x2))) A__U62(tt, U61(isNatList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatList(z0), x1, x2)), MARK(U61(isNatList(z0), x1, x2))) A__U62(tt, U61(U61(z0, z1, z2), x1, x2)) -> c18(A__LENGTH(a__U61(a__U61(mark(z0), z1, z2), x1, x2)), MARK(U61(U61(z0, z1, z2), x1, x2))) A__U62(tt, U61(U62(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U62(mark(z0), z1), x1, x2)), MARK(U61(U62(z0, z1), x1, x2))) A__U62(tt, U61(isNat(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNat(z0), x1, x2)), MARK(U61(isNat(z0), x1, x2))) A__U62(tt, U61(length(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__length(mark(z0)), x1, x2)), MARK(U61(length(z0), x1, x2))) A__U62(tt, U61(cons(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(cons(mark(z0), z1), x1, x2)), MARK(U61(cons(z0, z1), x1, x2))) A__U62(tt, U61(tt, x1, x2)) -> c18(A__LENGTH(a__U61(tt, x1, x2)), MARK(U61(tt, x1, x2))) A__U62(tt, U61(s(z0), x1, x2)) -> c18(A__LENGTH(a__U61(s(mark(z0)), x1, x2)), MARK(U61(s(z0), x1, x2))) A__U62(tt, U61(x0, z1, z2)) -> c18(MARK(U61(x0, z1, z2))) A__U62(tt, U61(0, x1, x2)) -> c18(A__LENGTH(a__U61(0, x1, x2))) A__U62(tt, U61(nil, x1, x2)) -> c18(A__LENGTH(a__U61(nil, x1, x2))) A__U62(tt, U62(zeros, x1)) -> c18(A__LENGTH(a__U62(a__zeros, x1)), MARK(U62(zeros, x1))) A__U62(tt, U62(U11(z0), x1)) -> c18(A__LENGTH(a__U62(a__U11(mark(z0)), x1)), MARK(U62(U11(z0), x1))) A__U62(tt, U62(U21(z0), x1)) -> c18(A__LENGTH(a__U62(a__U21(mark(z0)), x1)), MARK(U62(U21(z0), x1))) A__U62(tt, U62(U31(z0), x1)) -> c18(A__LENGTH(a__U62(a__U31(mark(z0)), x1)), MARK(U62(U31(z0), x1))) A__U62(tt, U62(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U41(mark(z0), z1), x1)), MARK(U62(U41(z0, z1), x1))) A__U62(tt, U62(U42(z0), x1)) -> c18(A__LENGTH(a__U62(a__U42(mark(z0)), x1)), MARK(U62(U42(z0), x1))) A__U62(tt, U62(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatIList(z0), x1)), MARK(U62(isNatIList(z0), x1))) A__U62(tt, U62(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U51(mark(z0), z1), x1)), MARK(U62(U51(z0, z1), x1))) A__U62(tt, U62(U52(z0), x1)) -> c18(A__LENGTH(a__U62(a__U52(mark(z0)), x1)), MARK(U62(U52(z0), x1))) A__U62(tt, U62(isNatList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatList(z0), x1)), MARK(U62(isNatList(z0), x1))) A__U62(tt, U62(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U62(a__U61(mark(z0), z1, z2), x1)), MARK(U62(U61(z0, z1, z2), x1))) A__U62(tt, U62(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U62(mark(z0), z1), x1)), MARK(U62(U62(z0, z1), x1))) A__U62(tt, U62(isNat(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNat(z0), x1)), MARK(U62(isNat(z0), x1))) A__U62(tt, U62(length(z0), x1)) -> c18(A__LENGTH(a__U62(a__length(mark(z0)), x1)), MARK(U62(length(z0), x1))) A__U62(tt, U62(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U62(cons(mark(z0), z1), x1)), MARK(U62(cons(z0, z1), x1))) A__U62(tt, U62(tt, x1)) -> c18(A__LENGTH(a__U62(tt, x1)), MARK(U62(tt, x1))) A__U62(tt, U62(s(z0), x1)) -> c18(A__LENGTH(a__U62(s(mark(z0)), x1)), MARK(U62(s(z0), x1))) A__U62(tt, U62(x0, z1)) -> c18(MARK(U62(x0, z1))) A__U62(tt, U62(0, x1)) -> c18(A__LENGTH(a__U62(0, x1))) A__U62(tt, U62(nil, x1)) -> c18(A__LENGTH(a__U62(nil, x1))) A__U62(tt, isNat(length(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(isNat(length(z0)))) A__U62(tt, isNat(s(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(isNat(s(z0)))) A__U62(tt, isNat(0)) -> c18(MARK(isNat(0))) A__U62(tt, isNat(z0)) -> c18(MARK(isNat(z0))) A__U62(tt, length(zeros)) -> c18(A__LENGTH(a__length(a__zeros)), MARK(length(zeros))) A__U62(tt, length(U11(z0))) -> c18(A__LENGTH(a__length(a__U11(mark(z0)))), MARK(length(U11(z0)))) A__U62(tt, length(U21(z0))) -> c18(A__LENGTH(a__length(a__U21(mark(z0)))), MARK(length(U21(z0)))) A__U62(tt, length(U31(z0))) -> c18(A__LENGTH(a__length(a__U31(mark(z0)))), MARK(length(U31(z0)))) A__U62(tt, length(U41(z0, z1))) -> c18(A__LENGTH(a__length(a__U41(mark(z0), z1))), MARK(length(U41(z0, z1)))) A__U62(tt, length(U42(z0))) -> c18(A__LENGTH(a__length(a__U42(mark(z0)))), MARK(length(U42(z0)))) A__U62(tt, length(isNatIList(z0))) -> c18(A__LENGTH(a__length(a__isNatIList(z0))), MARK(length(isNatIList(z0)))) A__U62(tt, length(U51(z0, z1))) -> c18(A__LENGTH(a__length(a__U51(mark(z0), z1))), MARK(length(U51(z0, z1)))) A__U62(tt, length(U52(z0))) -> c18(A__LENGTH(a__length(a__U52(mark(z0)))), MARK(length(U52(z0)))) A__U62(tt, length(isNatList(z0))) -> c18(A__LENGTH(a__length(a__isNatList(z0))), MARK(length(isNatList(z0)))) A__U62(tt, length(U61(z0, z1, z2))) -> c18(A__LENGTH(a__length(a__U61(mark(z0), z1, z2))), MARK(length(U61(z0, z1, z2)))) A__U62(tt, length(U62(z0, z1))) -> c18(A__LENGTH(a__length(a__U62(mark(z0), z1))), MARK(length(U62(z0, z1)))) A__U62(tt, length(isNat(z0))) -> c18(A__LENGTH(a__length(a__isNat(z0))), MARK(length(isNat(z0)))) A__U62(tt, length(length(z0))) -> c18(A__LENGTH(a__length(a__length(mark(z0)))), MARK(length(length(z0)))) A__U62(tt, length(cons(z0, z1))) -> c18(A__LENGTH(a__length(cons(mark(z0), z1))), MARK(length(cons(z0, z1)))) A__U62(tt, length(s(z0))) -> c18(A__LENGTH(a__length(s(mark(z0)))), MARK(length(s(z0)))) A__U62(tt, length(x0)) -> c18(MARK(length(x0))) A__U62(tt, length(0)) -> c18(A__LENGTH(a__length(0))) A__U62(tt, length(tt)) -> c18(A__LENGTH(a__length(tt))) A__U62(tt, length(nil)) -> c18(A__LENGTH(a__length(nil))) A__U62(tt, zeros) -> c18(A__LENGTH(cons(0, zeros))) A__ISNATILIST(cons(length(nil), x1)) -> c26(A__U41(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATILIST(cons(length(cons(z0, z1)), x1)) -> c26(A__U41(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(length(x0), x1)) -> c26(A__ISNAT(length(x0))) A__ISNATILIST(cons(s(0), x1)) -> c26(A__U41(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATILIST(cons(s(length(z0)), x1)) -> c26(A__U41(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATILIST(cons(s(s(z0)), x1)) -> c26(A__U41(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(s(x0), x1)) -> c26(A__ISNAT(s(x0))) A__ISNATLIST(cons(length(nil), x1)) -> c29(A__U51(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATLIST(cons(length(cons(z0, z1)), x1)) -> c29(A__U51(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(length(x0), x1)) -> c29(A__ISNAT(length(x0))) A__ISNATLIST(cons(s(0), x1)) -> c29(A__U51(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATLIST(cons(s(length(z0)), x1)) -> c29(A__U51(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATLIST(cons(s(s(z0)), x1)) -> c29(A__U51(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(s(x0), x1)) -> c29(A__ISNAT(s(x0))) A__LENGTH(cons(x0, cons(0, x2))) -> c32(A__U61(a__U51(tt, x2), cons(0, x2), x0), A__ISNATLIST(cons(0, x2))) A__LENGTH(cons(x0, cons(length(z0), x2))) -> c32(A__U61(a__U51(a__U11(a__isNatList(z0)), x2), cons(length(z0), x2), x0), A__ISNATLIST(cons(length(z0), x2))) A__LENGTH(cons(x0, cons(s(z0), x2))) -> c32(A__U61(a__U51(a__U21(a__isNat(z0)), x2), cons(s(z0), x2), x0), A__ISNATLIST(cons(s(z0), x2))) A__LENGTH(cons(x0, cons(z0, x2))) -> c32(A__U61(a__U51(isNat(z0), x2), cons(z0, x2), x0), A__ISNATLIST(cons(z0, x2))) A__LENGTH(cons(x0, cons(x1, z1))) -> c32(A__ISNATLIST(cons(x1, z1))) MARK(U41(U11(zeros), x1)) -> c38(A__U41(a__U11(a__zeros), x1), MARK(U11(zeros))) MARK(U41(U11(U11(z0)), x1)) -> c38(A__U41(a__U11(a__U11(mark(z0))), x1), MARK(U11(U11(z0)))) MARK(U41(U11(U21(z0)), x1)) -> c38(A__U41(a__U11(a__U21(mark(z0))), x1), MARK(U11(U21(z0)))) MARK(U41(U11(U31(z0)), x1)) -> c38(A__U41(a__U11(a__U31(mark(z0))), x1), MARK(U11(U31(z0)))) MARK(U41(U11(U41(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U41(mark(z0), z1)), x1), MARK(U11(U41(z0, z1)))) MARK(U41(U11(U42(z0)), x1)) -> c38(A__U41(a__U11(a__U42(mark(z0))), x1), MARK(U11(U42(z0)))) MARK(U41(U11(isNatIList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatIList(z0)), x1), MARK(U11(isNatIList(z0)))) MARK(U41(U11(U51(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U51(mark(z0), z1)), x1), MARK(U11(U51(z0, z1)))) MARK(U41(U11(U52(z0)), x1)) -> c38(A__U41(a__U11(a__U52(mark(z0))), x1), MARK(U11(U52(z0)))) MARK(U41(U11(isNatList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatList(z0)), x1), MARK(U11(isNatList(z0)))) MARK(U41(U11(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U11(a__U61(mark(z0), z1, z2)), x1), MARK(U11(U61(z0, z1, z2)))) MARK(U41(U11(U62(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U62(mark(z0), z1)), x1), MARK(U11(U62(z0, z1)))) MARK(U41(U11(isNat(z0)), x1)) -> c38(A__U41(a__U11(a__isNat(z0)), x1), MARK(U11(isNat(z0)))) MARK(U41(U11(length(z0)), x1)) -> c38(A__U41(a__U11(a__length(mark(z0))), x1), MARK(U11(length(z0)))) MARK(U41(U11(cons(z0, z1)), x1)) -> c38(A__U41(a__U11(cons(mark(z0), z1)), x1), MARK(U11(cons(z0, z1)))) MARK(U41(U11(0), x1)) -> c38(A__U41(a__U11(0), x1), MARK(U11(0))) MARK(U41(U11(tt), x1)) -> c38(A__U41(a__U11(tt), x1), MARK(U11(tt))) MARK(U41(U11(s(z0)), x1)) -> c38(A__U41(a__U11(s(mark(z0))), x1), MARK(U11(s(z0)))) MARK(U41(U11(nil), x1)) -> c38(A__U41(a__U11(nil), x1), MARK(U11(nil))) MARK(U41(U11(x0), x1)) -> c38(MARK(U11(x0))) MARK(U41(U21(zeros), x1)) -> c38(A__U41(a__U21(a__zeros), x1), MARK(U21(zeros))) MARK(U41(U21(U11(z0)), x1)) -> c38(A__U41(a__U21(a__U11(mark(z0))), x1), MARK(U21(U11(z0)))) MARK(U41(U21(U21(z0)), x1)) -> c38(A__U41(a__U21(a__U21(mark(z0))), x1), MARK(U21(U21(z0)))) MARK(U41(U21(U31(z0)), x1)) -> c38(A__U41(a__U21(a__U31(mark(z0))), x1), MARK(U21(U31(z0)))) MARK(U41(U21(U41(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U41(mark(z0), z1)), x1), MARK(U21(U41(z0, z1)))) MARK(U41(U21(U42(z0)), x1)) -> c38(A__U41(a__U21(a__U42(mark(z0))), x1), MARK(U21(U42(z0)))) MARK(U41(U21(isNatIList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatIList(z0)), x1), MARK(U21(isNatIList(z0)))) MARK(U41(U21(U51(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U51(mark(z0), z1)), x1), MARK(U21(U51(z0, z1)))) MARK(U41(U21(U52(z0)), x1)) -> c38(A__U41(a__U21(a__U52(mark(z0))), x1), MARK(U21(U52(z0)))) MARK(U41(U21(isNatList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatList(z0)), x1), MARK(U21(isNatList(z0)))) MARK(U41(U21(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U21(a__U61(mark(z0), z1, z2)), x1), MARK(U21(U61(z0, z1, z2)))) MARK(U41(U21(U62(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U62(mark(z0), z1)), x1), MARK(U21(U62(z0, z1)))) MARK(U41(U21(isNat(z0)), x1)) -> c38(A__U41(a__U21(a__isNat(z0)), x1), MARK(U21(isNat(z0)))) MARK(U41(U21(length(z0)), x1)) -> c38(A__U41(a__U21(a__length(mark(z0))), x1), MARK(U21(length(z0)))) MARK(U41(U21(cons(z0, z1)), x1)) -> c38(A__U41(a__U21(cons(mark(z0), z1)), x1), MARK(U21(cons(z0, z1)))) MARK(U41(U21(0), x1)) -> c38(A__U41(a__U21(0), x1), MARK(U21(0))) MARK(U41(U21(tt), x1)) -> c38(A__U41(a__U21(tt), x1), MARK(U21(tt))) MARK(U41(U21(s(z0)), x1)) -> c38(A__U41(a__U21(s(mark(z0))), x1), MARK(U21(s(z0)))) MARK(U41(U21(nil), x1)) -> c38(A__U41(a__U21(nil), x1), MARK(U21(nil))) MARK(U41(U21(x0), x1)) -> c38(MARK(U21(x0))) MARK(U41(U31(zeros), x1)) -> c38(A__U41(a__U31(a__zeros), x1), MARK(U31(zeros))) MARK(U41(U31(U11(z0)), x1)) -> c38(A__U41(a__U31(a__U11(mark(z0))), x1), MARK(U31(U11(z0)))) MARK(U41(U31(U21(z0)), x1)) -> c38(A__U41(a__U31(a__U21(mark(z0))), x1), MARK(U31(U21(z0)))) MARK(U41(U31(U31(z0)), x1)) -> c38(A__U41(a__U31(a__U31(mark(z0))), x1), MARK(U31(U31(z0)))) MARK(U41(U31(U41(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U41(mark(z0), z1)), x1), MARK(U31(U41(z0, z1)))) MARK(U41(U31(U42(z0)), x1)) -> c38(A__U41(a__U31(a__U42(mark(z0))), x1), MARK(U31(U42(z0)))) MARK(U41(U31(isNatIList(z0)), x1)) -> c38(A__U41(a__U31(a__isNatIList(z0)), x1), MARK(U31(isNatIList(z0)))) MARK(U41(U31(U51(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U51(mark(z0), z1)), x1), MARK(U31(U51(z0, z1)))) MARK(U41(U31(U52(z0)), x1)) -> c38(A__U41(a__U31(a__U52(mark(z0))), x1), MARK(U31(U52(z0)))) MARK(U41(U31(isNatList(z0)), x1)) -> c38(A__U41(a__U31(a__isNatList(z0)), x1), MARK(U31(isNatList(z0)))) MARK(U41(U31(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U31(a__U61(mark(z0), z1, z2)), x1), MARK(U31(U61(z0, z1, z2)))) MARK(U41(U31(U62(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U62(mark(z0), z1)), x1), MARK(U31(U62(z0, z1)))) MARK(U41(U31(isNat(z0)), x1)) -> c38(A__U41(a__U31(a__isNat(z0)), x1), MARK(U31(isNat(z0)))) MARK(U41(U31(length(z0)), x1)) -> c38(A__U41(a__U31(a__length(mark(z0))), x1), MARK(U31(length(z0)))) MARK(U41(U31(cons(z0, z1)), x1)) -> c38(A__U41(a__U31(cons(mark(z0), z1)), x1), MARK(U31(cons(z0, z1)))) MARK(U41(U31(0), x1)) -> c38(A__U41(a__U31(0), x1), MARK(U31(0))) MARK(U41(U31(tt), x1)) -> c38(A__U41(a__U31(tt), x1), MARK(U31(tt))) MARK(U41(U31(s(z0)), x1)) -> c38(A__U41(a__U31(s(mark(z0))), x1), MARK(U31(s(z0)))) MARK(U41(U31(nil), x1)) -> c38(A__U41(a__U31(nil), x1), MARK(U31(nil))) MARK(U41(U31(x0), x1)) -> c38(MARK(U31(x0))) MARK(U41(U41(U11(z0), x1), x2)) -> c38(A__U41(a__U41(a__U11(mark(z0)), x1), x2), MARK(U41(U11(z0), x1))) MARK(U41(U41(U21(z0), x1), x2)) -> c38(A__U41(a__U41(a__U21(mark(z0)), x1), x2), MARK(U41(U21(z0), x1))) MARK(U41(U41(U31(z0), x1), x2)) -> c38(A__U41(a__U41(a__U31(mark(z0)), x1), x2), MARK(U41(U31(z0), x1))) MARK(U41(U41(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U41(mark(z0), z1), x1), x2), MARK(U41(U41(z0, z1), x1))) MARK(U41(U41(U42(z0), x1), x2)) -> c38(A__U41(a__U41(a__U42(mark(z0)), x1), x2), MARK(U41(U42(z0), x1))) MARK(U41(U41(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U51(mark(z0), z1), x1), x2), MARK(U41(U51(z0, z1), x1))) MARK(U41(U41(U52(z0), x1), x2)) -> c38(A__U41(a__U41(a__U52(mark(z0)), x1), x2), MARK(U41(U52(z0), x1))) MARK(U41(U41(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U41(a__U61(mark(z0), z1, z2), x1), x2), MARK(U41(U61(z0, z1, z2), x1))) MARK(U41(U41(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U62(mark(z0), z1), x1), x2), MARK(U41(U62(z0, z1), x1))) MARK(U41(U41(length(z0), x1), x2)) -> c38(A__U41(a__U41(a__length(mark(z0)), x1), x2), MARK(U41(length(z0), x1))) MARK(U41(U41(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U41(cons(mark(z0), z1), x1), x2), MARK(U41(cons(z0, z1), x1))) MARK(U41(U41(s(z0), x1), x2)) -> c38(A__U41(a__U41(s(mark(z0)), x1), x2), MARK(U41(s(z0), x1))) MARK(U41(U41(x0, z1), x2)) -> c38(MARK(U41(x0, z1))) MARK(U41(U41(0, x1), x2)) -> c38(A__U41(a__U41(0, x1), x2)) MARK(U41(U41(nil, x1), x2)) -> c38(A__U41(a__U41(nil, x1), x2)) MARK(U41(U41(zeros, x1), x2)) -> c2(A__U41(a__U41(a__zeros, x1), x2)) MARK(U41(U41(zeros, x1), x2)) -> c2(MARK(U41(zeros, x1))) MARK(U41(U41(isNatIList(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNatIList(z0), x1), x2)) MARK(U41(U41(isNatIList(z0), x1), x2)) -> c2(MARK(U41(isNatIList(z0), x1))) MARK(U41(U41(isNatList(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNatList(z0), x1), x2)) MARK(U41(U41(isNatList(z0), x1), x2)) -> c2(MARK(U41(isNatList(z0), x1))) MARK(U41(U41(isNat(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNat(z0), x1), x2)) MARK(U41(U41(isNat(z0), x1), x2)) -> c2(MARK(U41(isNat(z0), x1))) MARK(U41(U41(tt, x1), x2)) -> c2(A__U41(a__U41(tt, x1), x2)) MARK(U41(U41(tt, x1), x2)) -> c2(MARK(U41(tt, x1))) MARK(U41(U42(zeros), x1)) -> c38(A__U41(a__U42(a__zeros), x1), MARK(U42(zeros))) MARK(U41(U42(U11(z0)), x1)) -> c38(A__U41(a__U42(a__U11(mark(z0))), x1), MARK(U42(U11(z0)))) MARK(U41(U42(U21(z0)), x1)) -> c38(A__U41(a__U42(a__U21(mark(z0))), x1), MARK(U42(U21(z0)))) MARK(U41(U42(U31(z0)), x1)) -> c38(A__U41(a__U42(a__U31(mark(z0))), x1), MARK(U42(U31(z0)))) MARK(U41(U42(U41(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U41(mark(z0), z1)), x1), MARK(U42(U41(z0, z1)))) MARK(U41(U42(U42(z0)), x1)) -> c38(A__U41(a__U42(a__U42(mark(z0))), x1), MARK(U42(U42(z0)))) MARK(U41(U42(isNatIList(z0)), x1)) -> c38(A__U41(a__U42(a__isNatIList(z0)), x1), MARK(U42(isNatIList(z0)))) MARK(U41(U42(U51(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U51(mark(z0), z1)), x1), MARK(U42(U51(z0, z1)))) MARK(U41(U42(U52(z0)), x1)) -> c38(A__U41(a__U42(a__U52(mark(z0))), x1), MARK(U42(U52(z0)))) MARK(U41(U42(isNatList(z0)), x1)) -> c38(A__U41(a__U42(a__isNatList(z0)), x1), MARK(U42(isNatList(z0)))) MARK(U41(U42(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U42(a__U61(mark(z0), z1, z2)), x1), MARK(U42(U61(z0, z1, z2)))) MARK(U41(U42(U62(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U62(mark(z0), z1)), x1), MARK(U42(U62(z0, z1)))) MARK(U41(U42(isNat(z0)), x1)) -> c38(A__U41(a__U42(a__isNat(z0)), x1), MARK(U42(isNat(z0)))) MARK(U41(U42(length(z0)), x1)) -> c38(A__U41(a__U42(a__length(mark(z0))), x1), MARK(U42(length(z0)))) MARK(U41(U42(cons(z0, z1)), x1)) -> c38(A__U41(a__U42(cons(mark(z0), z1)), x1), MARK(U42(cons(z0, z1)))) MARK(U41(U42(0), x1)) -> c38(A__U41(a__U42(0), x1), MARK(U42(0))) MARK(U41(U42(tt), x1)) -> c38(A__U41(a__U42(tt), x1), MARK(U42(tt))) MARK(U41(U42(s(z0)), x1)) -> c38(A__U41(a__U42(s(mark(z0))), x1), MARK(U42(s(z0)))) MARK(U41(U42(nil), x1)) -> c38(A__U41(a__U42(nil), x1), MARK(U42(nil))) MARK(U41(U42(x0), x1)) -> c38(MARK(U42(x0))) MARK(U41(U51(U11(z0), x1), x2)) -> c38(A__U41(a__U51(a__U11(mark(z0)), x1), x2), MARK(U51(U11(z0), x1))) MARK(U41(U51(U21(z0), x1), x2)) -> c38(A__U41(a__U51(a__U21(mark(z0)), x1), x2), MARK(U51(U21(z0), x1))) MARK(U41(U51(U31(z0), x1), x2)) -> c38(A__U41(a__U51(a__U31(mark(z0)), x1), x2), MARK(U51(U31(z0), x1))) MARK(U41(U51(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U41(mark(z0), z1), x1), x2), MARK(U51(U41(z0, z1), x1))) MARK(U41(U51(U42(z0), x1), x2)) -> c38(A__U41(a__U51(a__U42(mark(z0)), x1), x2), MARK(U51(U42(z0), x1))) MARK(U41(U51(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U51(mark(z0), z1), x1), x2), MARK(U51(U51(z0, z1), x1))) MARK(U41(U51(U52(z0), x1), x2)) -> c38(A__U41(a__U51(a__U52(mark(z0)), x1), x2), MARK(U51(U52(z0), x1))) MARK(U41(U51(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U51(a__U61(mark(z0), z1, z2), x1), x2), MARK(U51(U61(z0, z1, z2), x1))) MARK(U41(U51(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U62(mark(z0), z1), x1), x2), MARK(U51(U62(z0, z1), x1))) MARK(U41(U51(length(z0), x1), x2)) -> c38(A__U41(a__U51(a__length(mark(z0)), x1), x2), MARK(U51(length(z0), x1))) MARK(U41(U51(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U51(cons(mark(z0), z1), x1), x2), MARK(U51(cons(z0, z1), x1))) MARK(U41(U51(s(z0), x1), x2)) -> c38(A__U41(a__U51(s(mark(z0)), x1), x2), MARK(U51(s(z0), x1))) MARK(U41(U51(x0, z1), x2)) -> c38(MARK(U51(x0, z1))) MARK(U41(U51(0, x1), x2)) -> c38(A__U41(a__U51(0, x1), x2)) MARK(U41(U51(nil, x1), x2)) -> c38(A__U41(a__U51(nil, x1), x2)) MARK(U41(U51(zeros, x1), x2)) -> c3(A__U41(a__U51(a__zeros, x1), x2)) MARK(U41(U51(zeros, x1), x2)) -> c3(MARK(U51(zeros, x1))) MARK(U41(U51(isNatIList(z0), x1), x2)) -> c3(A__U41(a__U51(a__isNatIList(z0), x1), x2)) MARK(U41(U51(isNatIList(z0), x1), x2)) -> c3(MARK(U51(isNatIList(z0), x1))) MARK(U41(U51(isNatList(z0), x1), x2)) -> c3(A__U41(a__U51(a__isNatList(z0), x1), x2)) MARK(U41(U51(isNatList(z0), x1), x2)) -> c3(MARK(U51(isNatList(z0), x1))) MARK(U41(U51(isNat(z0), x1), x2)) -> c3(A__U41(a__U51(a__isNat(z0), x1), x2)) MARK(U41(U51(isNat(z0), x1), x2)) -> c3(MARK(U51(isNat(z0), x1))) MARK(U41(U51(tt, x1), x2)) -> c3(A__U41(a__U51(tt, x1), x2)) MARK(U41(U51(tt, x1), x2)) -> c3(MARK(U51(tt, x1))) MARK(U41(U52(zeros), x1)) -> c38(A__U41(a__U52(a__zeros), x1), MARK(U52(zeros))) MARK(U41(U52(U11(z0)), x1)) -> c38(A__U41(a__U52(a__U11(mark(z0))), x1), MARK(U52(U11(z0)))) MARK(U41(U52(U21(z0)), x1)) -> c38(A__U41(a__U52(a__U21(mark(z0))), x1), MARK(U52(U21(z0)))) MARK(U41(U52(U31(z0)), x1)) -> c38(A__U41(a__U52(a__U31(mark(z0))), x1), MARK(U52(U31(z0)))) MARK(U41(U52(U41(z0, z1)), x1)) -> c38(A__U41(a__U52(a__U41(mark(z0), z1)), x1), MARK(U52(U41(z0, z1)))) MARK(U41(U52(U42(z0)), x1)) -> c38(A__U41(a__U52(a__U42(mark(z0))), x1), MARK(U52(U42(z0)))) MARK(U41(U52(isNatIList(z0)), x1)) -> c38(A__U41(a__U52(a__isNatIList(z0)), x1), MARK(U52(isNatIList(z0)))) MARK(U41(U52(U51(z0, z1)), x1)) -> c38(A__U41(a__U52(a__U51(mark(z0), z1)), x1), MARK(U52(U51(z0, z1)))) MARK(U41(U52(U52(z0)), x1)) -> c38(A__U41(a__U52(a__U52(mark(z0))), x1), MARK(U52(U52(z0)))) MARK(U41(U52(isNatList(z0)), x1)) -> c38(A__U41(a__U52(a__isNatList(z0)), x1), MARK(U52(isNatList(z0)))) MARK(U41(U52(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U52(a__U61(mark(z0), z1, z2)), x1), MARK(U52(U61(z0, z1, z2)))) MARK(U41(U52(U62(z0, z1)), x1)) -> c38(A__U41(a__U52(a__U62(mark(z0), z1)), x1), MARK(U52(U62(z0, z1)))) MARK(U41(U52(isNat(z0)), x1)) -> c38(A__U41(a__U52(a__isNat(z0)), x1), MARK(U52(isNat(z0)))) MARK(U41(U52(length(z0)), x1)) -> c38(A__U41(a__U52(a__length(mark(z0))), x1), MARK(U52(length(z0)))) MARK(U41(U52(cons(z0, z1)), x1)) -> c38(A__U41(a__U52(cons(mark(z0), z1)), x1), MARK(U52(cons(z0, z1)))) MARK(U41(U52(0), x1)) -> c38(A__U41(a__U52(0), x1), MARK(U52(0))) MARK(U41(U52(tt), x1)) -> c38(A__U41(a__U52(tt), x1), MARK(U52(tt))) MARK(U41(U52(s(z0)), x1)) -> c38(A__U41(a__U52(s(mark(z0))), x1), MARK(U52(s(z0)))) MARK(U41(U52(nil), x1)) -> c38(A__U41(a__U52(nil), x1), MARK(U52(nil))) MARK(U41(U52(x0), x1)) -> c38(MARK(U52(x0))) MARK(U41(U61(x0, z1, z2), x3)) -> c38(A__U41(U61(mark(x0), z1, z2), x3), MARK(U61(x0, z1, z2))) MARK(U41(U61(zeros, x1, x2), x3)) -> c38(A__U41(a__U61(a__zeros, x1, x2), x3), MARK(U61(zeros, x1, x2))) MARK(U41(U61(U11(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U11(mark(z0)), x1, x2), x3), MARK(U61(U11(z0), x1, x2))) MARK(U41(U61(U21(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U21(mark(z0)), x1, x2), x3), MARK(U61(U21(z0), x1, x2))) MARK(U41(U61(U31(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U31(mark(z0)), x1, x2), x3), MARK(U61(U31(z0), x1, x2))) MARK(U41(U61(U41(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(a__U41(mark(z0), z1), x1, x2), x3), MARK(U61(U41(z0, z1), x1, x2))) MARK(U41(U61(U42(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U42(mark(z0)), x1, x2), x3), MARK(U61(U42(z0), x1, x2))) MARK(U41(U61(isNatIList(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__isNatIList(z0), x1, x2), x3), MARK(U61(isNatIList(z0), x1, x2))) MARK(U41(U61(U51(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(a__U51(mark(z0), z1), x1, x2), x3), MARK(U61(U51(z0, z1), x1, x2))) MARK(U41(U61(U52(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U52(mark(z0)), x1, x2), x3), MARK(U61(U52(z0), x1, x2))) MARK(U41(U61(isNatList(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__isNatList(z0), x1, x2), x3), MARK(U61(isNatList(z0), x1, x2))) MARK(U41(U61(U61(z0, z1, z2), x1, x2), x3)) -> c38(A__U41(a__U61(a__U61(mark(z0), z1, z2), x1, x2), x3), MARK(U61(U61(z0, z1, z2), x1, x2))) MARK(U41(U61(U62(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(a__U62(mark(z0), z1), x1, x2), x3), MARK(U61(U62(z0, z1), x1, x2))) MARK(U41(U61(isNat(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__isNat(z0), x1, x2), x3), MARK(U61(isNat(z0), x1, x2))) MARK(U41(U61(length(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__length(mark(z0)), x1, x2), x3), MARK(U61(length(z0), x1, x2))) MARK(U41(U61(cons(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(cons(mark(z0), z1), x1, x2), x3), MARK(U61(cons(z0, z1), x1, x2))) MARK(U41(U61(0, x1, x2), x3)) -> c38(A__U41(a__U61(0, x1, x2), x3), MARK(U61(0, x1, x2))) MARK(U41(U61(tt, x1, x2), x3)) -> c38(A__U41(a__U61(tt, x1, x2), x3), MARK(U61(tt, x1, x2))) MARK(U41(U61(s(z0), x1, x2), x3)) -> c38(A__U41(a__U61(s(mark(z0)), x1, x2), x3), MARK(U61(s(z0), x1, x2))) MARK(U41(U61(nil, x1, x2), x3)) -> c38(A__U41(a__U61(nil, x1, x2), x3), MARK(U61(nil, x1, x2))) S tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) A__U62(tt, isNatList(cons(z0, z1))) -> c18(A__LENGTH(a__U51(a__isNat(z0), z1)), MARK(isNatList(cons(z0, z1)))) A__U62(tt, isNatList(nil)) -> c18(MARK(isNatList(nil))) A__U62(tt, isNatList(z0)) -> c18(MARK(isNatList(z0))) A__U62(tt, U61(zeros, x1, x2)) -> c18(A__LENGTH(a__U61(a__zeros, x1, x2)), MARK(U61(zeros, x1, x2))) A__U62(tt, U61(U11(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U11(mark(z0)), x1, x2)), MARK(U61(U11(z0), x1, x2))) A__U62(tt, U61(U21(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U21(mark(z0)), x1, x2)), MARK(U61(U21(z0), x1, x2))) A__U62(tt, U61(U31(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U31(mark(z0)), x1, x2)), MARK(U61(U31(z0), x1, x2))) A__U62(tt, U61(U41(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U41(mark(z0), z1), x1, x2)), MARK(U61(U41(z0, z1), x1, x2))) A__U62(tt, U61(U42(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U42(mark(z0)), x1, x2)), MARK(U61(U42(z0), x1, x2))) A__U62(tt, U61(isNatIList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatIList(z0), x1, x2)), MARK(U61(isNatIList(z0), x1, x2))) A__U62(tt, U61(U51(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U51(mark(z0), z1), x1, x2)), MARK(U61(U51(z0, z1), x1, x2))) A__U62(tt, U61(U52(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U52(mark(z0)), x1, x2)), MARK(U61(U52(z0), x1, x2))) A__U62(tt, U61(isNatList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatList(z0), x1, x2)), MARK(U61(isNatList(z0), x1, x2))) A__U62(tt, U61(U61(z0, z1, z2), x1, x2)) -> c18(A__LENGTH(a__U61(a__U61(mark(z0), z1, z2), x1, x2)), MARK(U61(U61(z0, z1, z2), x1, x2))) A__U62(tt, U61(U62(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U62(mark(z0), z1), x1, x2)), MARK(U61(U62(z0, z1), x1, x2))) A__U62(tt, U61(isNat(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNat(z0), x1, x2)), MARK(U61(isNat(z0), x1, x2))) A__U62(tt, U61(length(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__length(mark(z0)), x1, x2)), MARK(U61(length(z0), x1, x2))) A__U62(tt, U61(cons(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(cons(mark(z0), z1), x1, x2)), MARK(U61(cons(z0, z1), x1, x2))) A__U62(tt, U61(tt, x1, x2)) -> c18(A__LENGTH(a__U61(tt, x1, x2)), MARK(U61(tt, x1, x2))) A__U62(tt, U61(s(z0), x1, x2)) -> c18(A__LENGTH(a__U61(s(mark(z0)), x1, x2)), MARK(U61(s(z0), x1, x2))) A__U62(tt, U61(x0, z1, z2)) -> c18(MARK(U61(x0, z1, z2))) A__U62(tt, U61(0, x1, x2)) -> c18(A__LENGTH(a__U61(0, x1, x2))) A__U62(tt, U61(nil, x1, x2)) -> c18(A__LENGTH(a__U61(nil, x1, x2))) A__U62(tt, U62(zeros, x1)) -> c18(A__LENGTH(a__U62(a__zeros, x1)), MARK(U62(zeros, x1))) A__U62(tt, U62(U11(z0), x1)) -> c18(A__LENGTH(a__U62(a__U11(mark(z0)), x1)), MARK(U62(U11(z0), x1))) A__U62(tt, U62(U21(z0), x1)) -> c18(A__LENGTH(a__U62(a__U21(mark(z0)), x1)), MARK(U62(U21(z0), x1))) A__U62(tt, U62(U31(z0), x1)) -> c18(A__LENGTH(a__U62(a__U31(mark(z0)), x1)), MARK(U62(U31(z0), x1))) A__U62(tt, U62(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U41(mark(z0), z1), x1)), MARK(U62(U41(z0, z1), x1))) A__U62(tt, U62(U42(z0), x1)) -> c18(A__LENGTH(a__U62(a__U42(mark(z0)), x1)), MARK(U62(U42(z0), x1))) A__U62(tt, U62(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatIList(z0), x1)), MARK(U62(isNatIList(z0), x1))) A__U62(tt, U62(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U51(mark(z0), z1), x1)), MARK(U62(U51(z0, z1), x1))) A__U62(tt, U62(U52(z0), x1)) -> c18(A__LENGTH(a__U62(a__U52(mark(z0)), x1)), MARK(U62(U52(z0), x1))) A__U62(tt, U62(isNatList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatList(z0), x1)), MARK(U62(isNatList(z0), x1))) A__U62(tt, U62(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U62(a__U61(mark(z0), z1, z2), x1)), MARK(U62(U61(z0, z1, z2), x1))) A__U62(tt, U62(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U62(mark(z0), z1), x1)), MARK(U62(U62(z0, z1), x1))) A__U62(tt, U62(isNat(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNat(z0), x1)), MARK(U62(isNat(z0), x1))) A__U62(tt, U62(length(z0), x1)) -> c18(A__LENGTH(a__U62(a__length(mark(z0)), x1)), MARK(U62(length(z0), x1))) A__U62(tt, U62(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U62(cons(mark(z0), z1), x1)), MARK(U62(cons(z0, z1), x1))) A__U62(tt, U62(tt, x1)) -> c18(A__LENGTH(a__U62(tt, x1)), MARK(U62(tt, x1))) A__U62(tt, U62(s(z0), x1)) -> c18(A__LENGTH(a__U62(s(mark(z0)), x1)), MARK(U62(s(z0), x1))) A__U62(tt, U62(x0, z1)) -> c18(MARK(U62(x0, z1))) A__U62(tt, U62(0, x1)) -> c18(A__LENGTH(a__U62(0, x1))) A__U62(tt, U62(nil, x1)) -> c18(A__LENGTH(a__U62(nil, x1))) A__U62(tt, isNat(length(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(isNat(length(z0)))) A__U62(tt, isNat(s(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(isNat(s(z0)))) A__U62(tt, isNat(0)) -> c18(MARK(isNat(0))) A__U62(tt, isNat(z0)) -> c18(MARK(isNat(z0))) A__U62(tt, length(zeros)) -> c18(A__LENGTH(a__length(a__zeros)), MARK(length(zeros))) A__U62(tt, length(U11(z0))) -> c18(A__LENGTH(a__length(a__U11(mark(z0)))), MARK(length(U11(z0)))) A__U62(tt, length(U21(z0))) -> c18(A__LENGTH(a__length(a__U21(mark(z0)))), MARK(length(U21(z0)))) A__U62(tt, length(U31(z0))) -> c18(A__LENGTH(a__length(a__U31(mark(z0)))), MARK(length(U31(z0)))) A__U62(tt, length(U41(z0, z1))) -> c18(A__LENGTH(a__length(a__U41(mark(z0), z1))), MARK(length(U41(z0, z1)))) A__U62(tt, length(U42(z0))) -> c18(A__LENGTH(a__length(a__U42(mark(z0)))), MARK(length(U42(z0)))) A__U62(tt, length(isNatIList(z0))) -> c18(A__LENGTH(a__length(a__isNatIList(z0))), MARK(length(isNatIList(z0)))) A__U62(tt, length(U51(z0, z1))) -> c18(A__LENGTH(a__length(a__U51(mark(z0), z1))), MARK(length(U51(z0, z1)))) A__U62(tt, length(U52(z0))) -> c18(A__LENGTH(a__length(a__U52(mark(z0)))), MARK(length(U52(z0)))) A__U62(tt, length(isNatList(z0))) -> c18(A__LENGTH(a__length(a__isNatList(z0))), MARK(length(isNatList(z0)))) A__U62(tt, length(U61(z0, z1, z2))) -> c18(A__LENGTH(a__length(a__U61(mark(z0), z1, z2))), MARK(length(U61(z0, z1, z2)))) A__U62(tt, length(U62(z0, z1))) -> c18(A__LENGTH(a__length(a__U62(mark(z0), z1))), MARK(length(U62(z0, z1)))) A__U62(tt, length(isNat(z0))) -> c18(A__LENGTH(a__length(a__isNat(z0))), MARK(length(isNat(z0)))) A__U62(tt, length(length(z0))) -> c18(A__LENGTH(a__length(a__length(mark(z0)))), MARK(length(length(z0)))) A__U62(tt, length(cons(z0, z1))) -> c18(A__LENGTH(a__length(cons(mark(z0), z1))), MARK(length(cons(z0, z1)))) A__U62(tt, length(s(z0))) -> c18(A__LENGTH(a__length(s(mark(z0)))), MARK(length(s(z0)))) A__U62(tt, length(x0)) -> c18(MARK(length(x0))) A__U62(tt, length(0)) -> c18(A__LENGTH(a__length(0))) A__U62(tt, length(tt)) -> c18(A__LENGTH(a__length(tt))) A__U62(tt, length(nil)) -> c18(A__LENGTH(a__length(nil))) A__U62(tt, zeros) -> c18(A__LENGTH(cons(0, zeros))) A__ISNATILIST(cons(length(nil), x1)) -> c26(A__U41(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATILIST(cons(length(cons(z0, z1)), x1)) -> c26(A__U41(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(length(x0), x1)) -> c26(A__ISNAT(length(x0))) A__ISNATILIST(cons(s(0), x1)) -> c26(A__U41(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATILIST(cons(s(length(z0)), x1)) -> c26(A__U41(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATILIST(cons(s(s(z0)), x1)) -> c26(A__U41(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(s(x0), x1)) -> c26(A__ISNAT(s(x0))) A__ISNATLIST(cons(length(nil), x1)) -> c29(A__U51(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATLIST(cons(length(cons(z0, z1)), x1)) -> c29(A__U51(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(length(x0), x1)) -> c29(A__ISNAT(length(x0))) A__ISNATLIST(cons(s(0), x1)) -> c29(A__U51(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATLIST(cons(s(length(z0)), x1)) -> c29(A__U51(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATLIST(cons(s(s(z0)), x1)) -> c29(A__U51(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(s(x0), x1)) -> c29(A__ISNAT(s(x0))) A__LENGTH(cons(x0, cons(0, x2))) -> c32(A__U61(a__U51(tt, x2), cons(0, x2), x0), A__ISNATLIST(cons(0, x2))) A__LENGTH(cons(x0, cons(length(z0), x2))) -> c32(A__U61(a__U51(a__U11(a__isNatList(z0)), x2), cons(length(z0), x2), x0), A__ISNATLIST(cons(length(z0), x2))) A__LENGTH(cons(x0, cons(s(z0), x2))) -> c32(A__U61(a__U51(a__U21(a__isNat(z0)), x2), cons(s(z0), x2), x0), A__ISNATLIST(cons(s(z0), x2))) A__LENGTH(cons(x0, cons(z0, x2))) -> c32(A__U61(a__U51(isNat(z0), x2), cons(z0, x2), x0), A__ISNATLIST(cons(z0, x2))) A__LENGTH(cons(x0, cons(x1, z1))) -> c32(A__ISNATLIST(cons(x1, z1))) MARK(U41(U11(zeros), x1)) -> c38(A__U41(a__U11(a__zeros), x1), MARK(U11(zeros))) MARK(U41(U11(U11(z0)), x1)) -> c38(A__U41(a__U11(a__U11(mark(z0))), x1), MARK(U11(U11(z0)))) MARK(U41(U11(U21(z0)), x1)) -> c38(A__U41(a__U11(a__U21(mark(z0))), x1), MARK(U11(U21(z0)))) MARK(U41(U11(U31(z0)), x1)) -> c38(A__U41(a__U11(a__U31(mark(z0))), x1), MARK(U11(U31(z0)))) MARK(U41(U11(U41(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U41(mark(z0), z1)), x1), MARK(U11(U41(z0, z1)))) MARK(U41(U11(U42(z0)), x1)) -> c38(A__U41(a__U11(a__U42(mark(z0))), x1), MARK(U11(U42(z0)))) MARK(U41(U11(isNatIList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatIList(z0)), x1), MARK(U11(isNatIList(z0)))) MARK(U41(U11(U51(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U51(mark(z0), z1)), x1), MARK(U11(U51(z0, z1)))) MARK(U41(U11(U52(z0)), x1)) -> c38(A__U41(a__U11(a__U52(mark(z0))), x1), MARK(U11(U52(z0)))) MARK(U41(U11(isNatList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatList(z0)), x1), MARK(U11(isNatList(z0)))) MARK(U41(U11(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U11(a__U61(mark(z0), z1, z2)), x1), MARK(U11(U61(z0, z1, z2)))) MARK(U41(U11(U62(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U62(mark(z0), z1)), x1), MARK(U11(U62(z0, z1)))) MARK(U41(U11(isNat(z0)), x1)) -> c38(A__U41(a__U11(a__isNat(z0)), x1), MARK(U11(isNat(z0)))) MARK(U41(U11(length(z0)), x1)) -> c38(A__U41(a__U11(a__length(mark(z0))), x1), MARK(U11(length(z0)))) MARK(U41(U11(cons(z0, z1)), x1)) -> c38(A__U41(a__U11(cons(mark(z0), z1)), x1), MARK(U11(cons(z0, z1)))) MARK(U41(U11(0), x1)) -> c38(A__U41(a__U11(0), x1), MARK(U11(0))) MARK(U41(U11(tt), x1)) -> c38(A__U41(a__U11(tt), x1), MARK(U11(tt))) MARK(U41(U11(s(z0)), x1)) -> c38(A__U41(a__U11(s(mark(z0))), x1), MARK(U11(s(z0)))) MARK(U41(U11(nil), x1)) -> c38(A__U41(a__U11(nil), x1), MARK(U11(nil))) MARK(U41(U11(x0), x1)) -> c38(MARK(U11(x0))) MARK(U41(U21(zeros), x1)) -> c38(A__U41(a__U21(a__zeros), x1), MARK(U21(zeros))) MARK(U41(U21(U11(z0)), x1)) -> c38(A__U41(a__U21(a__U11(mark(z0))), x1), MARK(U21(U11(z0)))) MARK(U41(U21(U21(z0)), x1)) -> c38(A__U41(a__U21(a__U21(mark(z0))), x1), MARK(U21(U21(z0)))) MARK(U41(U21(U31(z0)), x1)) -> c38(A__U41(a__U21(a__U31(mark(z0))), x1), MARK(U21(U31(z0)))) MARK(U41(U21(U41(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U41(mark(z0), z1)), x1), MARK(U21(U41(z0, z1)))) MARK(U41(U21(U42(z0)), x1)) -> c38(A__U41(a__U21(a__U42(mark(z0))), x1), MARK(U21(U42(z0)))) MARK(U41(U21(isNatIList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatIList(z0)), x1), MARK(U21(isNatIList(z0)))) MARK(U41(U21(U51(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U51(mark(z0), z1)), x1), MARK(U21(U51(z0, z1)))) MARK(U41(U21(U52(z0)), x1)) -> c38(A__U41(a__U21(a__U52(mark(z0))), x1), MARK(U21(U52(z0)))) MARK(U41(U21(isNatList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatList(z0)), x1), MARK(U21(isNatList(z0)))) MARK(U41(U21(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U21(a__U61(mark(z0), z1, z2)), x1), MARK(U21(U61(z0, z1, z2)))) MARK(U41(U21(U62(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U62(mark(z0), z1)), x1), MARK(U21(U62(z0, z1)))) MARK(U41(U21(isNat(z0)), x1)) -> c38(A__U41(a__U21(a__isNat(z0)), x1), MARK(U21(isNat(z0)))) MARK(U41(U21(length(z0)), x1)) -> c38(A__U41(a__U21(a__length(mark(z0))), x1), MARK(U21(length(z0)))) MARK(U41(U21(cons(z0, z1)), x1)) -> c38(A__U41(a__U21(cons(mark(z0), z1)), x1), MARK(U21(cons(z0, z1)))) MARK(U41(U21(0), x1)) -> c38(A__U41(a__U21(0), x1), MARK(U21(0))) MARK(U41(U21(tt), x1)) -> c38(A__U41(a__U21(tt), x1), MARK(U21(tt))) MARK(U41(U21(s(z0)), x1)) -> c38(A__U41(a__U21(s(mark(z0))), x1), MARK(U21(s(z0)))) MARK(U41(U21(nil), x1)) -> c38(A__U41(a__U21(nil), x1), MARK(U21(nil))) MARK(U41(U21(x0), x1)) -> c38(MARK(U21(x0))) MARK(U41(U31(zeros), x1)) -> c38(A__U41(a__U31(a__zeros), x1), MARK(U31(zeros))) MARK(U41(U31(U11(z0)), x1)) -> c38(A__U41(a__U31(a__U11(mark(z0))), x1), MARK(U31(U11(z0)))) MARK(U41(U31(U21(z0)), x1)) -> c38(A__U41(a__U31(a__U21(mark(z0))), x1), MARK(U31(U21(z0)))) MARK(U41(U31(U31(z0)), x1)) -> c38(A__U41(a__U31(a__U31(mark(z0))), x1), MARK(U31(U31(z0)))) MARK(U41(U31(U41(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U41(mark(z0), z1)), x1), MARK(U31(U41(z0, z1)))) MARK(U41(U31(U42(z0)), x1)) -> c38(A__U41(a__U31(a__U42(mark(z0))), x1), MARK(U31(U42(z0)))) MARK(U41(U31(isNatIList(z0)), x1)) -> c38(A__U41(a__U31(a__isNatIList(z0)), x1), MARK(U31(isNatIList(z0)))) MARK(U41(U31(U51(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U51(mark(z0), z1)), x1), MARK(U31(U51(z0, z1)))) MARK(U41(U31(U52(z0)), x1)) -> c38(A__U41(a__U31(a__U52(mark(z0))), x1), MARK(U31(U52(z0)))) MARK(U41(U31(isNatList(z0)), x1)) -> c38(A__U41(a__U31(a__isNatList(z0)), x1), MARK(U31(isNatList(z0)))) MARK(U41(U31(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U31(a__U61(mark(z0), z1, z2)), x1), MARK(U31(U61(z0, z1, z2)))) MARK(U41(U31(U62(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U62(mark(z0), z1)), x1), MARK(U31(U62(z0, z1)))) MARK(U41(U31(isNat(z0)), x1)) -> c38(A__U41(a__U31(a__isNat(z0)), x1), MARK(U31(isNat(z0)))) MARK(U41(U31(length(z0)), x1)) -> c38(A__U41(a__U31(a__length(mark(z0))), x1), MARK(U31(length(z0)))) MARK(U41(U31(cons(z0, z1)), x1)) -> c38(A__U41(a__U31(cons(mark(z0), z1)), x1), MARK(U31(cons(z0, z1)))) MARK(U41(U31(0), x1)) -> c38(A__U41(a__U31(0), x1), MARK(U31(0))) MARK(U41(U31(tt), x1)) -> c38(A__U41(a__U31(tt), x1), MARK(U31(tt))) MARK(U41(U31(s(z0)), x1)) -> c38(A__U41(a__U31(s(mark(z0))), x1), MARK(U31(s(z0)))) MARK(U41(U31(nil), x1)) -> c38(A__U41(a__U31(nil), x1), MARK(U31(nil))) MARK(U41(U31(x0), x1)) -> c38(MARK(U31(x0))) MARK(U41(U41(U11(z0), x1), x2)) -> c38(A__U41(a__U41(a__U11(mark(z0)), x1), x2), MARK(U41(U11(z0), x1))) MARK(U41(U41(U21(z0), x1), x2)) -> c38(A__U41(a__U41(a__U21(mark(z0)), x1), x2), MARK(U41(U21(z0), x1))) MARK(U41(U41(U31(z0), x1), x2)) -> c38(A__U41(a__U41(a__U31(mark(z0)), x1), x2), MARK(U41(U31(z0), x1))) MARK(U41(U41(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U41(mark(z0), z1), x1), x2), MARK(U41(U41(z0, z1), x1))) MARK(U41(U41(U42(z0), x1), x2)) -> c38(A__U41(a__U41(a__U42(mark(z0)), x1), x2), MARK(U41(U42(z0), x1))) MARK(U41(U41(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U51(mark(z0), z1), x1), x2), MARK(U41(U51(z0, z1), x1))) MARK(U41(U41(U52(z0), x1), x2)) -> c38(A__U41(a__U41(a__U52(mark(z0)), x1), x2), MARK(U41(U52(z0), x1))) MARK(U41(U41(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U41(a__U61(mark(z0), z1, z2), x1), x2), MARK(U41(U61(z0, z1, z2), x1))) MARK(U41(U41(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U62(mark(z0), z1), x1), x2), MARK(U41(U62(z0, z1), x1))) MARK(U41(U41(length(z0), x1), x2)) -> c38(A__U41(a__U41(a__length(mark(z0)), x1), x2), MARK(U41(length(z0), x1))) MARK(U41(U41(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U41(cons(mark(z0), z1), x1), x2), MARK(U41(cons(z0, z1), x1))) MARK(U41(U41(s(z0), x1), x2)) -> c38(A__U41(a__U41(s(mark(z0)), x1), x2), MARK(U41(s(z0), x1))) MARK(U41(U41(x0, z1), x2)) -> c38(MARK(U41(x0, z1))) MARK(U41(U41(0, x1), x2)) -> c38(A__U41(a__U41(0, x1), x2)) MARK(U41(U41(nil, x1), x2)) -> c38(A__U41(a__U41(nil, x1), x2)) MARK(U41(U41(zeros, x1), x2)) -> c2(A__U41(a__U41(a__zeros, x1), x2)) MARK(U41(U41(zeros, x1), x2)) -> c2(MARK(U41(zeros, x1))) MARK(U41(U41(isNatIList(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNatIList(z0), x1), x2)) MARK(U41(U41(isNatIList(z0), x1), x2)) -> c2(MARK(U41(isNatIList(z0), x1))) MARK(U41(U41(isNatList(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNatList(z0), x1), x2)) MARK(U41(U41(isNatList(z0), x1), x2)) -> c2(MARK(U41(isNatList(z0), x1))) MARK(U41(U41(isNat(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNat(z0), x1), x2)) MARK(U41(U41(isNat(z0), x1), x2)) -> c2(MARK(U41(isNat(z0), x1))) MARK(U41(U41(tt, x1), x2)) -> c2(A__U41(a__U41(tt, x1), x2)) MARK(U41(U41(tt, x1), x2)) -> c2(MARK(U41(tt, x1))) MARK(U41(U42(zeros), x1)) -> c38(A__U41(a__U42(a__zeros), x1), MARK(U42(zeros))) MARK(U41(U42(U11(z0)), x1)) -> c38(A__U41(a__U42(a__U11(mark(z0))), x1), MARK(U42(U11(z0)))) MARK(U41(U42(U21(z0)), x1)) -> c38(A__U41(a__U42(a__U21(mark(z0))), x1), MARK(U42(U21(z0)))) MARK(U41(U42(U31(z0)), x1)) -> c38(A__U41(a__U42(a__U31(mark(z0))), x1), MARK(U42(U31(z0)))) MARK(U41(U42(U41(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U41(mark(z0), z1)), x1), MARK(U42(U41(z0, z1)))) MARK(U41(U42(U42(z0)), x1)) -> c38(A__U41(a__U42(a__U42(mark(z0))), x1), MARK(U42(U42(z0)))) MARK(U41(U42(isNatIList(z0)), x1)) -> c38(A__U41(a__U42(a__isNatIList(z0)), x1), MARK(U42(isNatIList(z0)))) MARK(U41(U42(U51(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U51(mark(z0), z1)), x1), MARK(U42(U51(z0, z1)))) MARK(U41(U42(U52(z0)), x1)) -> c38(A__U41(a__U42(a__U52(mark(z0))), x1), MARK(U42(U52(z0)))) MARK(U41(U42(isNatList(z0)), x1)) -> c38(A__U41(a__U42(a__isNatList(z0)), x1), MARK(U42(isNatList(z0)))) MARK(U41(U42(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U42(a__U61(mark(z0), z1, z2)), x1), MARK(U42(U61(z0, z1, z2)))) MARK(U41(U42(U62(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U62(mark(z0), z1)), x1), MARK(U42(U62(z0, z1)))) MARK(U41(U42(isNat(z0)), x1)) -> c38(A__U41(a__U42(a__isNat(z0)), x1), MARK(U42(isNat(z0)))) MARK(U41(U42(length(z0)), x1)) -> c38(A__U41(a__U42(a__length(mark(z0))), x1), MARK(U42(length(z0)))) MARK(U41(U42(cons(z0, z1)), x1)) -> c38(A__U41(a__U42(cons(mark(z0), z1)), x1), MARK(U42(cons(z0, z1)))) MARK(U41(U42(0), x1)) -> c38(A__U41(a__U42(0), x1), MARK(U42(0))) MARK(U41(U42(tt), x1)) -> c38(A__U41(a__U42(tt), x1), MARK(U42(tt))) MARK(U41(U42(s(z0)), x1)) -> c38(A__U41(a__U42(s(mark(z0))), x1), MARK(U42(s(z0)))) MARK(U41(U42(nil), x1)) -> c38(A__U41(a__U42(nil), x1), MARK(U42(nil))) MARK(U41(U42(x0), x1)) -> c38(MARK(U42(x0))) MARK(U41(U51(U11(z0), x1), x2)) -> c38(A__U41(a__U51(a__U11(mark(z0)), x1), x2), MARK(U51(U11(z0), x1))) MARK(U41(U51(U21(z0), x1), x2)) -> c38(A__U41(a__U51(a__U21(mark(z0)), x1), x2), MARK(U51(U21(z0), x1))) MARK(U41(U51(U31(z0), x1), x2)) -> c38(A__U41(a__U51(a__U31(mark(z0)), x1), x2), MARK(U51(U31(z0), x1))) MARK(U41(U51(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U41(mark(z0), z1), x1), x2), MARK(U51(U41(z0, z1), x1))) MARK(U41(U51(U42(z0), x1), x2)) -> c38(A__U41(a__U51(a__U42(mark(z0)), x1), x2), MARK(U51(U42(z0), x1))) MARK(U41(U51(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U51(mark(z0), z1), x1), x2), MARK(U51(U51(z0, z1), x1))) MARK(U41(U51(U52(z0), x1), x2)) -> c38(A__U41(a__U51(a__U52(mark(z0)), x1), x2), MARK(U51(U52(z0), x1))) MARK(U41(U51(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U51(a__U61(mark(z0), z1, z2), x1), x2), MARK(U51(U61(z0, z1, z2), x1))) MARK(U41(U51(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U62(mark(z0), z1), x1), x2), MARK(U51(U62(z0, z1), x1))) MARK(U41(U51(length(z0), x1), x2)) -> c38(A__U41(a__U51(a__length(mark(z0)), x1), x2), MARK(U51(length(z0), x1))) MARK(U41(U51(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U51(cons(mark(z0), z1), x1), x2), MARK(U51(cons(z0, z1), x1))) MARK(U41(U51(s(z0), x1), x2)) -> c38(A__U41(a__U51(s(mark(z0)), x1), x2), MARK(U51(s(z0), x1))) MARK(U41(U51(x0, z1), x2)) -> c38(MARK(U51(x0, z1))) MARK(U41(U51(0, x1), x2)) -> c38(A__U41(a__U51(0, x1), x2)) MARK(U41(U51(nil, x1), x2)) -> c38(A__U41(a__U51(nil, x1), x2)) MARK(U41(U51(zeros, x1), x2)) -> c3(A__U41(a__U51(a__zeros, x1), x2)) MARK(U41(U51(zeros, x1), x2)) -> c3(MARK(U51(zeros, x1))) MARK(U41(U51(isNatIList(z0), x1), x2)) -> c3(A__U41(a__U51(a__isNatIList(z0), x1), x2)) MARK(U41(U51(isNatIList(z0), x1), x2)) -> c3(MARK(U51(isNatIList(z0), x1))) MARK(U41(U51(isNatList(z0), x1), x2)) -> c3(A__U41(a__U51(a__isNatList(z0), x1), x2)) MARK(U41(U51(isNatList(z0), x1), x2)) -> c3(MARK(U51(isNatList(z0), x1))) MARK(U41(U51(isNat(z0), x1), x2)) -> c3(A__U41(a__U51(a__isNat(z0), x1), x2)) MARK(U41(U51(isNat(z0), x1), x2)) -> c3(MARK(U51(isNat(z0), x1))) MARK(U41(U51(tt, x1), x2)) -> c3(A__U41(a__U51(tt, x1), x2)) MARK(U41(U51(tt, x1), x2)) -> c3(MARK(U51(tt, x1))) MARK(U41(U52(zeros), x1)) -> c38(A__U41(a__U52(a__zeros), x1), MARK(U52(zeros))) MARK(U41(U52(U11(z0)), x1)) -> c38(A__U41(a__U52(a__U11(mark(z0))), x1), MARK(U52(U11(z0)))) MARK(U41(U52(U21(z0)), x1)) -> c38(A__U41(a__U52(a__U21(mark(z0))), x1), MARK(U52(U21(z0)))) MARK(U41(U52(U31(z0)), x1)) -> c38(A__U41(a__U52(a__U31(mark(z0))), x1), MARK(U52(U31(z0)))) MARK(U41(U52(U41(z0, z1)), x1)) -> c38(A__U41(a__U52(a__U41(mark(z0), z1)), x1), MARK(U52(U41(z0, z1)))) MARK(U41(U52(U42(z0)), x1)) -> c38(A__U41(a__U52(a__U42(mark(z0))), x1), MARK(U52(U42(z0)))) MARK(U41(U52(isNatIList(z0)), x1)) -> c38(A__U41(a__U52(a__isNatIList(z0)), x1), MARK(U52(isNatIList(z0)))) MARK(U41(U52(U51(z0, z1)), x1)) -> c38(A__U41(a__U52(a__U51(mark(z0), z1)), x1), MARK(U52(U51(z0, z1)))) MARK(U41(U52(U52(z0)), x1)) -> c38(A__U41(a__U52(a__U52(mark(z0))), x1), MARK(U52(U52(z0)))) MARK(U41(U52(isNatList(z0)), x1)) -> c38(A__U41(a__U52(a__isNatList(z0)), x1), MARK(U52(isNatList(z0)))) MARK(U41(U52(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U52(a__U61(mark(z0), z1, z2)), x1), MARK(U52(U61(z0, z1, z2)))) MARK(U41(U52(U62(z0, z1)), x1)) -> c38(A__U41(a__U52(a__U62(mark(z0), z1)), x1), MARK(U52(U62(z0, z1)))) MARK(U41(U52(isNat(z0)), x1)) -> c38(A__U41(a__U52(a__isNat(z0)), x1), MARK(U52(isNat(z0)))) MARK(U41(U52(length(z0)), x1)) -> c38(A__U41(a__U52(a__length(mark(z0))), x1), MARK(U52(length(z0)))) MARK(U41(U52(cons(z0, z1)), x1)) -> c38(A__U41(a__U52(cons(mark(z0), z1)), x1), MARK(U52(cons(z0, z1)))) MARK(U41(U52(0), x1)) -> c38(A__U41(a__U52(0), x1), MARK(U52(0))) MARK(U41(U52(tt), x1)) -> c38(A__U41(a__U52(tt), x1), MARK(U52(tt))) MARK(U41(U52(s(z0)), x1)) -> c38(A__U41(a__U52(s(mark(z0))), x1), MARK(U52(s(z0)))) MARK(U41(U52(nil), x1)) -> c38(A__U41(a__U52(nil), x1), MARK(U52(nil))) MARK(U41(U52(x0), x1)) -> c38(MARK(U52(x0))) MARK(U41(U61(x0, z1, z2), x3)) -> c38(A__U41(U61(mark(x0), z1, z2), x3), MARK(U61(x0, z1, z2))) MARK(U41(U61(zeros, x1, x2), x3)) -> c38(A__U41(a__U61(a__zeros, x1, x2), x3), MARK(U61(zeros, x1, x2))) MARK(U41(U61(U11(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U11(mark(z0)), x1, x2), x3), MARK(U61(U11(z0), x1, x2))) MARK(U41(U61(U21(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U21(mark(z0)), x1, x2), x3), MARK(U61(U21(z0), x1, x2))) MARK(U41(U61(U31(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U31(mark(z0)), x1, x2), x3), MARK(U61(U31(z0), x1, x2))) MARK(U41(U61(U41(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(a__U41(mark(z0), z1), x1, x2), x3), MARK(U61(U41(z0, z1), x1, x2))) MARK(U41(U61(U42(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U42(mark(z0)), x1, x2), x3), MARK(U61(U42(z0), x1, x2))) MARK(U41(U61(isNatIList(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__isNatIList(z0), x1, x2), x3), MARK(U61(isNatIList(z0), x1, x2))) MARK(U41(U61(U51(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(a__U51(mark(z0), z1), x1, x2), x3), MARK(U61(U51(z0, z1), x1, x2))) MARK(U41(U61(U52(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U52(mark(z0)), x1, x2), x3), MARK(U61(U52(z0), x1, x2))) MARK(U41(U61(isNatList(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__isNatList(z0), x1, x2), x3), MARK(U61(isNatList(z0), x1, x2))) MARK(U41(U61(U61(z0, z1, z2), x1, x2), x3)) -> c38(A__U41(a__U61(a__U61(mark(z0), z1, z2), x1, x2), x3), MARK(U61(U61(z0, z1, z2), x1, x2))) MARK(U41(U61(U62(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(a__U62(mark(z0), z1), x1, x2), x3), MARK(U61(U62(z0, z1), x1, x2))) MARK(U41(U61(isNat(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__isNat(z0), x1, x2), x3), MARK(U61(isNat(z0), x1, x2))) MARK(U41(U61(length(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__length(mark(z0)), x1, x2), x3), MARK(U61(length(z0), x1, x2))) MARK(U41(U61(cons(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(cons(mark(z0), z1), x1, x2), x3), MARK(U61(cons(z0, z1), x1, x2))) MARK(U41(U61(0, x1, x2), x3)) -> c38(A__U41(a__U61(0, x1, x2), x3), MARK(U61(0, x1, x2))) MARK(U41(U61(tt, x1, x2), x3)) -> c38(A__U41(a__U61(tt, x1, x2), x3), MARK(U61(tt, x1, x2))) MARK(U41(U61(s(z0), x1, x2), x3)) -> c38(A__U41(a__U61(s(mark(z0)), x1, x2), x3), MARK(U61(s(z0), x1, x2))) MARK(U41(U61(nil, x1, x2), x3)) -> c38(A__U41(a__U61(nil, x1, x2), x3), MARK(U61(nil, x1, x2))) K tuples:none Defined Rule Symbols: a__zeros, a__U11_1, a__U21_1, a__U31_1, a__U41_2, a__U42_1, a__U51_2, a__U52_1, a__U61_3, a__U62_2, a__isNat_1, a__isNatIList_1, a__isNatList_1, a__length_1, mark_1 Defined Pair Symbols: MARK_1, A__U41_2, A__U51_2, A__ISNAT_1, A__ISNATILIST_1, A__U61_3, A__U62_2, A__ISNATLIST_1, A__LENGTH_1 Compound Symbols: c40_1, c43_1, c46_1, c48_1, c51_1, c8_1, c12_1, c21_1, c22_1, c24_1, c35_1, c36_1, c37_1, c39_1, c42_1, c16_1, c18_2, c18_1, c26_1, c29_1, c32_1, c38_2, c38_1, c_1, c41_2, c41_1, c1_1, c44_2, c44_1, c45_2, c45_1, c47_2, c47_1, c16_2, c26_2, c29_2, c32_2, c2_1, c3_1 ---------------------------------------- (203) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 3 trailing tuple parts ---------------------------------------- (204) Obligation: Complexity Dependency Tuples Problem Rules: a__zeros -> cons(0, zeros) a__zeros -> zeros a__U11(tt) -> tt a__U11(z0) -> U11(z0) a__U21(tt) -> tt a__U21(z0) -> U21(z0) a__U31(tt) -> tt a__U31(z0) -> U31(z0) a__U41(tt, z0) -> a__U42(a__isNatIList(z0)) a__U41(z0, z1) -> U41(z0, z1) a__U42(tt) -> tt a__U42(z0) -> U42(z0) a__U51(tt, z0) -> a__U52(a__isNatList(z0)) a__U51(z0, z1) -> U51(z0, z1) a__U52(tt) -> tt a__U52(z0) -> U52(z0) a__U61(tt, z0, z1) -> a__U62(a__isNat(z1), z0) a__U61(z0, z1, z2) -> U61(z0, z1, z2) a__U62(tt, z0) -> s(a__length(mark(z0))) a__U62(z0, z1) -> U62(z0, z1) a__isNat(0) -> tt a__isNat(length(z0)) -> a__U11(a__isNatList(z0)) a__isNat(s(z0)) -> a__U21(a__isNat(z0)) a__isNat(z0) -> isNat(z0) a__isNatIList(z0) -> a__U31(a__isNatList(z0)) a__isNatIList(zeros) -> tt a__isNatIList(cons(z0, z1)) -> a__U41(a__isNat(z0), z1) a__isNatIList(z0) -> isNatIList(z0) a__isNatList(nil) -> tt a__isNatList(cons(z0, z1)) -> a__U51(a__isNat(z0), z1) a__isNatList(z0) -> isNatList(z0) a__length(nil) -> 0 a__length(cons(z0, z1)) -> a__U61(a__isNatList(z1), z1, z0) a__length(z0) -> length(z0) mark(zeros) -> a__zeros mark(U11(z0)) -> a__U11(mark(z0)) mark(U21(z0)) -> a__U21(mark(z0)) mark(U31(z0)) -> a__U31(mark(z0)) mark(U41(z0, z1)) -> a__U41(mark(z0), z1) mark(U42(z0)) -> a__U42(mark(z0)) mark(isNatIList(z0)) -> a__isNatIList(z0) mark(U51(z0, z1)) -> a__U51(mark(z0), z1) mark(U52(z0)) -> a__U52(mark(z0)) mark(isNatList(z0)) -> a__isNatList(z0) mark(U61(z0, z1, z2)) -> a__U61(mark(z0), z1, z2) mark(U62(z0, z1)) -> a__U62(mark(z0), z1) mark(isNat(z0)) -> a__isNat(z0) mark(length(z0)) -> a__length(mark(z0)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(0) -> 0 mark(tt) -> tt mark(s(z0)) -> s(mark(z0)) mark(nil) -> nil Tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) A__U62(tt, isNatList(cons(z0, z1))) -> c18(A__LENGTH(a__U51(a__isNat(z0), z1)), MARK(isNatList(cons(z0, z1)))) A__U62(tt, isNatList(nil)) -> c18(MARK(isNatList(nil))) A__U62(tt, isNatList(z0)) -> c18(MARK(isNatList(z0))) A__U62(tt, U61(zeros, x1, x2)) -> c18(A__LENGTH(a__U61(a__zeros, x1, x2)), MARK(U61(zeros, x1, x2))) A__U62(tt, U61(U11(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U11(mark(z0)), x1, x2)), MARK(U61(U11(z0), x1, x2))) A__U62(tt, U61(U21(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U21(mark(z0)), x1, x2)), MARK(U61(U21(z0), x1, x2))) A__U62(tt, U61(U31(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U31(mark(z0)), x1, x2)), MARK(U61(U31(z0), x1, x2))) A__U62(tt, U61(U41(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U41(mark(z0), z1), x1, x2)), MARK(U61(U41(z0, z1), x1, x2))) A__U62(tt, U61(U42(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U42(mark(z0)), x1, x2)), MARK(U61(U42(z0), x1, x2))) A__U62(tt, U61(isNatIList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatIList(z0), x1, x2)), MARK(U61(isNatIList(z0), x1, x2))) A__U62(tt, U61(U51(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U51(mark(z0), z1), x1, x2)), MARK(U61(U51(z0, z1), x1, x2))) A__U62(tt, U61(U52(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U52(mark(z0)), x1, x2)), MARK(U61(U52(z0), x1, x2))) A__U62(tt, U61(isNatList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatList(z0), x1, x2)), MARK(U61(isNatList(z0), x1, x2))) A__U62(tt, U61(U61(z0, z1, z2), x1, x2)) -> c18(A__LENGTH(a__U61(a__U61(mark(z0), z1, z2), x1, x2)), MARK(U61(U61(z0, z1, z2), x1, x2))) A__U62(tt, U61(U62(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U62(mark(z0), z1), x1, x2)), MARK(U61(U62(z0, z1), x1, x2))) A__U62(tt, U61(isNat(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNat(z0), x1, x2)), MARK(U61(isNat(z0), x1, x2))) A__U62(tt, U61(length(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__length(mark(z0)), x1, x2)), MARK(U61(length(z0), x1, x2))) A__U62(tt, U61(cons(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(cons(mark(z0), z1), x1, x2)), MARK(U61(cons(z0, z1), x1, x2))) A__U62(tt, U61(tt, x1, x2)) -> c18(A__LENGTH(a__U61(tt, x1, x2)), MARK(U61(tt, x1, x2))) A__U62(tt, U61(s(z0), x1, x2)) -> c18(A__LENGTH(a__U61(s(mark(z0)), x1, x2)), MARK(U61(s(z0), x1, x2))) A__U62(tt, U61(x0, z1, z2)) -> c18(MARK(U61(x0, z1, z2))) A__U62(tt, U61(0, x1, x2)) -> c18(A__LENGTH(a__U61(0, x1, x2))) A__U62(tt, U61(nil, x1, x2)) -> c18(A__LENGTH(a__U61(nil, x1, x2))) A__U62(tt, U62(zeros, x1)) -> c18(A__LENGTH(a__U62(a__zeros, x1)), MARK(U62(zeros, x1))) A__U62(tt, U62(U11(z0), x1)) -> c18(A__LENGTH(a__U62(a__U11(mark(z0)), x1)), MARK(U62(U11(z0), x1))) A__U62(tt, U62(U21(z0), x1)) -> c18(A__LENGTH(a__U62(a__U21(mark(z0)), x1)), MARK(U62(U21(z0), x1))) A__U62(tt, U62(U31(z0), x1)) -> c18(A__LENGTH(a__U62(a__U31(mark(z0)), x1)), MARK(U62(U31(z0), x1))) A__U62(tt, U62(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U41(mark(z0), z1), x1)), MARK(U62(U41(z0, z1), x1))) A__U62(tt, U62(U42(z0), x1)) -> c18(A__LENGTH(a__U62(a__U42(mark(z0)), x1)), MARK(U62(U42(z0), x1))) A__U62(tt, U62(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatIList(z0), x1)), MARK(U62(isNatIList(z0), x1))) A__U62(tt, U62(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U51(mark(z0), z1), x1)), MARK(U62(U51(z0, z1), x1))) A__U62(tt, U62(U52(z0), x1)) -> c18(A__LENGTH(a__U62(a__U52(mark(z0)), x1)), MARK(U62(U52(z0), x1))) A__U62(tt, U62(isNatList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatList(z0), x1)), MARK(U62(isNatList(z0), x1))) A__U62(tt, U62(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U62(a__U61(mark(z0), z1, z2), x1)), MARK(U62(U61(z0, z1, z2), x1))) A__U62(tt, U62(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U62(mark(z0), z1), x1)), MARK(U62(U62(z0, z1), x1))) A__U62(tt, U62(isNat(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNat(z0), x1)), MARK(U62(isNat(z0), x1))) A__U62(tt, U62(length(z0), x1)) -> c18(A__LENGTH(a__U62(a__length(mark(z0)), x1)), MARK(U62(length(z0), x1))) A__U62(tt, U62(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U62(cons(mark(z0), z1), x1)), MARK(U62(cons(z0, z1), x1))) A__U62(tt, U62(tt, x1)) -> c18(A__LENGTH(a__U62(tt, x1)), MARK(U62(tt, x1))) A__U62(tt, U62(s(z0), x1)) -> c18(A__LENGTH(a__U62(s(mark(z0)), x1)), MARK(U62(s(z0), x1))) A__U62(tt, U62(x0, z1)) -> c18(MARK(U62(x0, z1))) A__U62(tt, U62(0, x1)) -> c18(A__LENGTH(a__U62(0, x1))) A__U62(tt, U62(nil, x1)) -> c18(A__LENGTH(a__U62(nil, x1))) A__U62(tt, isNat(length(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(isNat(length(z0)))) A__U62(tt, isNat(s(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(isNat(s(z0)))) A__U62(tt, isNat(0)) -> c18(MARK(isNat(0))) A__U62(tt, isNat(z0)) -> c18(MARK(isNat(z0))) A__U62(tt, length(zeros)) -> c18(A__LENGTH(a__length(a__zeros)), MARK(length(zeros))) A__U62(tt, length(U11(z0))) -> c18(A__LENGTH(a__length(a__U11(mark(z0)))), MARK(length(U11(z0)))) A__U62(tt, length(U21(z0))) -> c18(A__LENGTH(a__length(a__U21(mark(z0)))), MARK(length(U21(z0)))) A__U62(tt, length(U31(z0))) -> c18(A__LENGTH(a__length(a__U31(mark(z0)))), MARK(length(U31(z0)))) A__U62(tt, length(U41(z0, z1))) -> c18(A__LENGTH(a__length(a__U41(mark(z0), z1))), MARK(length(U41(z0, z1)))) A__U62(tt, length(U42(z0))) -> c18(A__LENGTH(a__length(a__U42(mark(z0)))), MARK(length(U42(z0)))) A__U62(tt, length(isNatIList(z0))) -> c18(A__LENGTH(a__length(a__isNatIList(z0))), MARK(length(isNatIList(z0)))) A__U62(tt, length(U51(z0, z1))) -> c18(A__LENGTH(a__length(a__U51(mark(z0), z1))), MARK(length(U51(z0, z1)))) A__U62(tt, length(U52(z0))) -> c18(A__LENGTH(a__length(a__U52(mark(z0)))), MARK(length(U52(z0)))) A__U62(tt, length(isNatList(z0))) -> c18(A__LENGTH(a__length(a__isNatList(z0))), MARK(length(isNatList(z0)))) A__U62(tt, length(U61(z0, z1, z2))) -> c18(A__LENGTH(a__length(a__U61(mark(z0), z1, z2))), MARK(length(U61(z0, z1, z2)))) A__U62(tt, length(U62(z0, z1))) -> c18(A__LENGTH(a__length(a__U62(mark(z0), z1))), MARK(length(U62(z0, z1)))) A__U62(tt, length(isNat(z0))) -> c18(A__LENGTH(a__length(a__isNat(z0))), MARK(length(isNat(z0)))) A__U62(tt, length(length(z0))) -> c18(A__LENGTH(a__length(a__length(mark(z0)))), MARK(length(length(z0)))) A__U62(tt, length(cons(z0, z1))) -> c18(A__LENGTH(a__length(cons(mark(z0), z1))), MARK(length(cons(z0, z1)))) A__U62(tt, length(s(z0))) -> c18(A__LENGTH(a__length(s(mark(z0)))), MARK(length(s(z0)))) A__U62(tt, length(x0)) -> c18(MARK(length(x0))) A__U62(tt, length(0)) -> c18(A__LENGTH(a__length(0))) A__U62(tt, length(tt)) -> c18(A__LENGTH(a__length(tt))) A__U62(tt, length(nil)) -> c18(A__LENGTH(a__length(nil))) A__U62(tt, zeros) -> c18(A__LENGTH(cons(0, zeros))) A__ISNATILIST(cons(length(nil), x1)) -> c26(A__U41(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATILIST(cons(length(cons(z0, z1)), x1)) -> c26(A__U41(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(length(x0), x1)) -> c26(A__ISNAT(length(x0))) A__ISNATILIST(cons(s(0), x1)) -> c26(A__U41(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATILIST(cons(s(length(z0)), x1)) -> c26(A__U41(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATILIST(cons(s(s(z0)), x1)) -> c26(A__U41(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(s(x0), x1)) -> c26(A__ISNAT(s(x0))) A__ISNATLIST(cons(length(nil), x1)) -> c29(A__U51(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATLIST(cons(length(cons(z0, z1)), x1)) -> c29(A__U51(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(length(x0), x1)) -> c29(A__ISNAT(length(x0))) A__ISNATLIST(cons(s(0), x1)) -> c29(A__U51(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATLIST(cons(s(length(z0)), x1)) -> c29(A__U51(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATLIST(cons(s(s(z0)), x1)) -> c29(A__U51(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(s(x0), x1)) -> c29(A__ISNAT(s(x0))) A__LENGTH(cons(x0, cons(0, x2))) -> c32(A__U61(a__U51(tt, x2), cons(0, x2), x0), A__ISNATLIST(cons(0, x2))) A__LENGTH(cons(x0, cons(length(z0), x2))) -> c32(A__U61(a__U51(a__U11(a__isNatList(z0)), x2), cons(length(z0), x2), x0), A__ISNATLIST(cons(length(z0), x2))) A__LENGTH(cons(x0, cons(s(z0), x2))) -> c32(A__U61(a__U51(a__U21(a__isNat(z0)), x2), cons(s(z0), x2), x0), A__ISNATLIST(cons(s(z0), x2))) A__LENGTH(cons(x0, cons(z0, x2))) -> c32(A__U61(a__U51(isNat(z0), x2), cons(z0, x2), x0), A__ISNATLIST(cons(z0, x2))) A__LENGTH(cons(x0, cons(x1, z1))) -> c32(A__ISNATLIST(cons(x1, z1))) MARK(U41(U11(zeros), x1)) -> c38(A__U41(a__U11(a__zeros), x1), MARK(U11(zeros))) MARK(U41(U11(U11(z0)), x1)) -> c38(A__U41(a__U11(a__U11(mark(z0))), x1), MARK(U11(U11(z0)))) MARK(U41(U11(U21(z0)), x1)) -> c38(A__U41(a__U11(a__U21(mark(z0))), x1), MARK(U11(U21(z0)))) MARK(U41(U11(U31(z0)), x1)) -> c38(A__U41(a__U11(a__U31(mark(z0))), x1), MARK(U11(U31(z0)))) MARK(U41(U11(U41(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U41(mark(z0), z1)), x1), MARK(U11(U41(z0, z1)))) MARK(U41(U11(U42(z0)), x1)) -> c38(A__U41(a__U11(a__U42(mark(z0))), x1), MARK(U11(U42(z0)))) MARK(U41(U11(isNatIList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatIList(z0)), x1), MARK(U11(isNatIList(z0)))) MARK(U41(U11(U51(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U51(mark(z0), z1)), x1), MARK(U11(U51(z0, z1)))) MARK(U41(U11(U52(z0)), x1)) -> c38(A__U41(a__U11(a__U52(mark(z0))), x1), MARK(U11(U52(z0)))) MARK(U41(U11(isNatList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatList(z0)), x1), MARK(U11(isNatList(z0)))) MARK(U41(U11(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U11(a__U61(mark(z0), z1, z2)), x1), MARK(U11(U61(z0, z1, z2)))) MARK(U41(U11(U62(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U62(mark(z0), z1)), x1), MARK(U11(U62(z0, z1)))) MARK(U41(U11(isNat(z0)), x1)) -> c38(A__U41(a__U11(a__isNat(z0)), x1), MARK(U11(isNat(z0)))) MARK(U41(U11(length(z0)), x1)) -> c38(A__U41(a__U11(a__length(mark(z0))), x1), MARK(U11(length(z0)))) MARK(U41(U11(cons(z0, z1)), x1)) -> c38(A__U41(a__U11(cons(mark(z0), z1)), x1), MARK(U11(cons(z0, z1)))) MARK(U41(U11(0), x1)) -> c38(A__U41(a__U11(0), x1), MARK(U11(0))) MARK(U41(U11(tt), x1)) -> c38(A__U41(a__U11(tt), x1), MARK(U11(tt))) MARK(U41(U11(s(z0)), x1)) -> c38(A__U41(a__U11(s(mark(z0))), x1), MARK(U11(s(z0)))) MARK(U41(U11(nil), x1)) -> c38(A__U41(a__U11(nil), x1), MARK(U11(nil))) MARK(U41(U11(x0), x1)) -> c38(MARK(U11(x0))) MARK(U41(U21(zeros), x1)) -> c38(A__U41(a__U21(a__zeros), x1), MARK(U21(zeros))) MARK(U41(U21(U11(z0)), x1)) -> c38(A__U41(a__U21(a__U11(mark(z0))), x1), MARK(U21(U11(z0)))) MARK(U41(U21(U21(z0)), x1)) -> c38(A__U41(a__U21(a__U21(mark(z0))), x1), MARK(U21(U21(z0)))) MARK(U41(U21(U31(z0)), x1)) -> c38(A__U41(a__U21(a__U31(mark(z0))), x1), MARK(U21(U31(z0)))) MARK(U41(U21(U41(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U41(mark(z0), z1)), x1), MARK(U21(U41(z0, z1)))) MARK(U41(U21(U42(z0)), x1)) -> c38(A__U41(a__U21(a__U42(mark(z0))), x1), MARK(U21(U42(z0)))) MARK(U41(U21(isNatIList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatIList(z0)), x1), MARK(U21(isNatIList(z0)))) MARK(U41(U21(U51(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U51(mark(z0), z1)), x1), MARK(U21(U51(z0, z1)))) MARK(U41(U21(U52(z0)), x1)) -> c38(A__U41(a__U21(a__U52(mark(z0))), x1), MARK(U21(U52(z0)))) MARK(U41(U21(isNatList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatList(z0)), x1), MARK(U21(isNatList(z0)))) MARK(U41(U21(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U21(a__U61(mark(z0), z1, z2)), x1), MARK(U21(U61(z0, z1, z2)))) MARK(U41(U21(U62(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U62(mark(z0), z1)), x1), MARK(U21(U62(z0, z1)))) MARK(U41(U21(isNat(z0)), x1)) -> c38(A__U41(a__U21(a__isNat(z0)), x1), MARK(U21(isNat(z0)))) MARK(U41(U21(length(z0)), x1)) -> c38(A__U41(a__U21(a__length(mark(z0))), x1), MARK(U21(length(z0)))) MARK(U41(U21(cons(z0, z1)), x1)) -> c38(A__U41(a__U21(cons(mark(z0), z1)), x1), MARK(U21(cons(z0, z1)))) MARK(U41(U21(0), x1)) -> c38(A__U41(a__U21(0), x1), MARK(U21(0))) MARK(U41(U21(tt), x1)) -> c38(A__U41(a__U21(tt), x1), MARK(U21(tt))) MARK(U41(U21(s(z0)), x1)) -> c38(A__U41(a__U21(s(mark(z0))), x1), MARK(U21(s(z0)))) MARK(U41(U21(nil), x1)) -> c38(A__U41(a__U21(nil), x1), MARK(U21(nil))) MARK(U41(U21(x0), x1)) -> c38(MARK(U21(x0))) MARK(U41(U31(zeros), x1)) -> c38(A__U41(a__U31(a__zeros), x1), MARK(U31(zeros))) MARK(U41(U31(U11(z0)), x1)) -> c38(A__U41(a__U31(a__U11(mark(z0))), x1), MARK(U31(U11(z0)))) MARK(U41(U31(U21(z0)), x1)) -> c38(A__U41(a__U31(a__U21(mark(z0))), x1), MARK(U31(U21(z0)))) MARK(U41(U31(U31(z0)), x1)) -> c38(A__U41(a__U31(a__U31(mark(z0))), x1), MARK(U31(U31(z0)))) MARK(U41(U31(U41(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U41(mark(z0), z1)), x1), MARK(U31(U41(z0, z1)))) MARK(U41(U31(U42(z0)), x1)) -> c38(A__U41(a__U31(a__U42(mark(z0))), x1), MARK(U31(U42(z0)))) MARK(U41(U31(isNatIList(z0)), x1)) -> c38(A__U41(a__U31(a__isNatIList(z0)), x1), MARK(U31(isNatIList(z0)))) MARK(U41(U31(U51(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U51(mark(z0), z1)), x1), MARK(U31(U51(z0, z1)))) MARK(U41(U31(U52(z0)), x1)) -> c38(A__U41(a__U31(a__U52(mark(z0))), x1), MARK(U31(U52(z0)))) MARK(U41(U31(isNatList(z0)), x1)) -> c38(A__U41(a__U31(a__isNatList(z0)), x1), MARK(U31(isNatList(z0)))) MARK(U41(U31(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U31(a__U61(mark(z0), z1, z2)), x1), MARK(U31(U61(z0, z1, z2)))) MARK(U41(U31(U62(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U62(mark(z0), z1)), x1), MARK(U31(U62(z0, z1)))) MARK(U41(U31(isNat(z0)), x1)) -> c38(A__U41(a__U31(a__isNat(z0)), x1), MARK(U31(isNat(z0)))) MARK(U41(U31(length(z0)), x1)) -> c38(A__U41(a__U31(a__length(mark(z0))), x1), MARK(U31(length(z0)))) MARK(U41(U31(cons(z0, z1)), x1)) -> c38(A__U41(a__U31(cons(mark(z0), z1)), x1), MARK(U31(cons(z0, z1)))) MARK(U41(U31(0), x1)) -> c38(A__U41(a__U31(0), x1), MARK(U31(0))) MARK(U41(U31(tt), x1)) -> c38(A__U41(a__U31(tt), x1), MARK(U31(tt))) MARK(U41(U31(s(z0)), x1)) -> c38(A__U41(a__U31(s(mark(z0))), x1), MARK(U31(s(z0)))) MARK(U41(U31(nil), x1)) -> c38(A__U41(a__U31(nil), x1), MARK(U31(nil))) MARK(U41(U31(x0), x1)) -> c38(MARK(U31(x0))) MARK(U41(U41(U11(z0), x1), x2)) -> c38(A__U41(a__U41(a__U11(mark(z0)), x1), x2), MARK(U41(U11(z0), x1))) MARK(U41(U41(U21(z0), x1), x2)) -> c38(A__U41(a__U41(a__U21(mark(z0)), x1), x2), MARK(U41(U21(z0), x1))) MARK(U41(U41(U31(z0), x1), x2)) -> c38(A__U41(a__U41(a__U31(mark(z0)), x1), x2), MARK(U41(U31(z0), x1))) MARK(U41(U41(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U41(mark(z0), z1), x1), x2), MARK(U41(U41(z0, z1), x1))) MARK(U41(U41(U42(z0), x1), x2)) -> c38(A__U41(a__U41(a__U42(mark(z0)), x1), x2), MARK(U41(U42(z0), x1))) MARK(U41(U41(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U51(mark(z0), z1), x1), x2), MARK(U41(U51(z0, z1), x1))) MARK(U41(U41(U52(z0), x1), x2)) -> c38(A__U41(a__U41(a__U52(mark(z0)), x1), x2), MARK(U41(U52(z0), x1))) MARK(U41(U41(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U41(a__U61(mark(z0), z1, z2), x1), x2), MARK(U41(U61(z0, z1, z2), x1))) MARK(U41(U41(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U62(mark(z0), z1), x1), x2), MARK(U41(U62(z0, z1), x1))) MARK(U41(U41(length(z0), x1), x2)) -> c38(A__U41(a__U41(a__length(mark(z0)), x1), x2), MARK(U41(length(z0), x1))) MARK(U41(U41(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U41(cons(mark(z0), z1), x1), x2), MARK(U41(cons(z0, z1), x1))) MARK(U41(U41(s(z0), x1), x2)) -> c38(A__U41(a__U41(s(mark(z0)), x1), x2), MARK(U41(s(z0), x1))) MARK(U41(U41(x0, z1), x2)) -> c38(MARK(U41(x0, z1))) MARK(U41(U41(0, x1), x2)) -> c38(A__U41(a__U41(0, x1), x2)) MARK(U41(U41(nil, x1), x2)) -> c38(A__U41(a__U41(nil, x1), x2)) MARK(U41(U41(zeros, x1), x2)) -> c2(A__U41(a__U41(a__zeros, x1), x2)) MARK(U41(U41(zeros, x1), x2)) -> c2(MARK(U41(zeros, x1))) MARK(U41(U41(isNatIList(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNatIList(z0), x1), x2)) MARK(U41(U41(isNatIList(z0), x1), x2)) -> c2(MARK(U41(isNatIList(z0), x1))) MARK(U41(U41(isNatList(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNatList(z0), x1), x2)) MARK(U41(U41(isNatList(z0), x1), x2)) -> c2(MARK(U41(isNatList(z0), x1))) MARK(U41(U41(isNat(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNat(z0), x1), x2)) MARK(U41(U41(isNat(z0), x1), x2)) -> c2(MARK(U41(isNat(z0), x1))) MARK(U41(U41(tt, x1), x2)) -> c2(A__U41(a__U41(tt, x1), x2)) MARK(U41(U41(tt, x1), x2)) -> c2(MARK(U41(tt, x1))) MARK(U41(U42(zeros), x1)) -> c38(A__U41(a__U42(a__zeros), x1), MARK(U42(zeros))) MARK(U41(U42(U11(z0)), x1)) -> c38(A__U41(a__U42(a__U11(mark(z0))), x1), MARK(U42(U11(z0)))) MARK(U41(U42(U21(z0)), x1)) -> c38(A__U41(a__U42(a__U21(mark(z0))), x1), MARK(U42(U21(z0)))) MARK(U41(U42(U31(z0)), x1)) -> c38(A__U41(a__U42(a__U31(mark(z0))), x1), MARK(U42(U31(z0)))) MARK(U41(U42(U41(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U41(mark(z0), z1)), x1), MARK(U42(U41(z0, z1)))) MARK(U41(U42(U42(z0)), x1)) -> c38(A__U41(a__U42(a__U42(mark(z0))), x1), MARK(U42(U42(z0)))) MARK(U41(U42(isNatIList(z0)), x1)) -> c38(A__U41(a__U42(a__isNatIList(z0)), x1), MARK(U42(isNatIList(z0)))) MARK(U41(U42(U51(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U51(mark(z0), z1)), x1), MARK(U42(U51(z0, z1)))) MARK(U41(U42(U52(z0)), x1)) -> c38(A__U41(a__U42(a__U52(mark(z0))), x1), MARK(U42(U52(z0)))) MARK(U41(U42(isNatList(z0)), x1)) -> c38(A__U41(a__U42(a__isNatList(z0)), x1), MARK(U42(isNatList(z0)))) MARK(U41(U42(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U42(a__U61(mark(z0), z1, z2)), x1), MARK(U42(U61(z0, z1, z2)))) MARK(U41(U42(U62(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U62(mark(z0), z1)), x1), MARK(U42(U62(z0, z1)))) MARK(U41(U42(isNat(z0)), x1)) -> c38(A__U41(a__U42(a__isNat(z0)), x1), MARK(U42(isNat(z0)))) MARK(U41(U42(length(z0)), x1)) -> c38(A__U41(a__U42(a__length(mark(z0))), x1), MARK(U42(length(z0)))) MARK(U41(U42(cons(z0, z1)), x1)) -> c38(A__U41(a__U42(cons(mark(z0), z1)), x1), MARK(U42(cons(z0, z1)))) MARK(U41(U42(0), x1)) -> c38(A__U41(a__U42(0), x1), MARK(U42(0))) MARK(U41(U42(tt), x1)) -> c38(A__U41(a__U42(tt), x1), MARK(U42(tt))) MARK(U41(U42(s(z0)), x1)) -> c38(A__U41(a__U42(s(mark(z0))), x1), MARK(U42(s(z0)))) MARK(U41(U42(nil), x1)) -> c38(A__U41(a__U42(nil), x1), MARK(U42(nil))) MARK(U41(U42(x0), x1)) -> c38(MARK(U42(x0))) MARK(U41(U51(U11(z0), x1), x2)) -> c38(A__U41(a__U51(a__U11(mark(z0)), x1), x2), MARK(U51(U11(z0), x1))) MARK(U41(U51(U21(z0), x1), x2)) -> c38(A__U41(a__U51(a__U21(mark(z0)), x1), x2), MARK(U51(U21(z0), x1))) MARK(U41(U51(U31(z0), x1), x2)) -> c38(A__U41(a__U51(a__U31(mark(z0)), x1), x2), MARK(U51(U31(z0), x1))) MARK(U41(U51(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U41(mark(z0), z1), x1), x2), MARK(U51(U41(z0, z1), x1))) MARK(U41(U51(U42(z0), x1), x2)) -> c38(A__U41(a__U51(a__U42(mark(z0)), x1), x2), MARK(U51(U42(z0), x1))) MARK(U41(U51(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U51(mark(z0), z1), x1), x2), MARK(U51(U51(z0, z1), x1))) MARK(U41(U51(U52(z0), x1), x2)) -> c38(A__U41(a__U51(a__U52(mark(z0)), x1), x2), MARK(U51(U52(z0), x1))) MARK(U41(U51(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U51(a__U61(mark(z0), z1, z2), x1), x2), MARK(U51(U61(z0, z1, z2), x1))) MARK(U41(U51(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U62(mark(z0), z1), x1), x2), MARK(U51(U62(z0, z1), x1))) MARK(U41(U51(length(z0), x1), x2)) -> c38(A__U41(a__U51(a__length(mark(z0)), x1), x2), MARK(U51(length(z0), x1))) MARK(U41(U51(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U51(cons(mark(z0), z1), x1), x2), MARK(U51(cons(z0, z1), x1))) MARK(U41(U51(s(z0), x1), x2)) -> c38(A__U41(a__U51(s(mark(z0)), x1), x2), MARK(U51(s(z0), x1))) MARK(U41(U51(x0, z1), x2)) -> c38(MARK(U51(x0, z1))) MARK(U41(U51(0, x1), x2)) -> c38(A__U41(a__U51(0, x1), x2)) MARK(U41(U51(nil, x1), x2)) -> c38(A__U41(a__U51(nil, x1), x2)) MARK(U41(U51(zeros, x1), x2)) -> c3(A__U41(a__U51(a__zeros, x1), x2)) MARK(U41(U51(zeros, x1), x2)) -> c3(MARK(U51(zeros, x1))) MARK(U41(U51(isNatIList(z0), x1), x2)) -> c3(A__U41(a__U51(a__isNatIList(z0), x1), x2)) MARK(U41(U51(isNatIList(z0), x1), x2)) -> c3(MARK(U51(isNatIList(z0), x1))) MARK(U41(U51(isNatList(z0), x1), x2)) -> c3(A__U41(a__U51(a__isNatList(z0), x1), x2)) MARK(U41(U51(isNatList(z0), x1), x2)) -> c3(MARK(U51(isNatList(z0), x1))) MARK(U41(U51(isNat(z0), x1), x2)) -> c3(A__U41(a__U51(a__isNat(z0), x1), x2)) MARK(U41(U51(isNat(z0), x1), x2)) -> c3(MARK(U51(isNat(z0), x1))) MARK(U41(U51(tt, x1), x2)) -> c3(A__U41(a__U51(tt, x1), x2)) MARK(U41(U51(tt, x1), x2)) -> c3(MARK(U51(tt, x1))) MARK(U41(U52(zeros), x1)) -> c38(A__U41(a__U52(a__zeros), x1), MARK(U52(zeros))) MARK(U41(U52(U11(z0)), x1)) -> c38(A__U41(a__U52(a__U11(mark(z0))), x1), MARK(U52(U11(z0)))) MARK(U41(U52(U21(z0)), x1)) -> c38(A__U41(a__U52(a__U21(mark(z0))), x1), MARK(U52(U21(z0)))) MARK(U41(U52(U31(z0)), x1)) -> c38(A__U41(a__U52(a__U31(mark(z0))), x1), MARK(U52(U31(z0)))) MARK(U41(U52(U41(z0, z1)), x1)) -> c38(A__U41(a__U52(a__U41(mark(z0), z1)), x1), MARK(U52(U41(z0, z1)))) MARK(U41(U52(U42(z0)), x1)) -> c38(A__U41(a__U52(a__U42(mark(z0))), x1), MARK(U52(U42(z0)))) MARK(U41(U52(isNatIList(z0)), x1)) -> c38(A__U41(a__U52(a__isNatIList(z0)), x1), MARK(U52(isNatIList(z0)))) MARK(U41(U52(U51(z0, z1)), x1)) -> c38(A__U41(a__U52(a__U51(mark(z0), z1)), x1), MARK(U52(U51(z0, z1)))) MARK(U41(U52(U52(z0)), x1)) -> c38(A__U41(a__U52(a__U52(mark(z0))), x1), MARK(U52(U52(z0)))) MARK(U41(U52(isNatList(z0)), x1)) -> c38(A__U41(a__U52(a__isNatList(z0)), x1), MARK(U52(isNatList(z0)))) MARK(U41(U52(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U52(a__U61(mark(z0), z1, z2)), x1), MARK(U52(U61(z0, z1, z2)))) MARK(U41(U52(U62(z0, z1)), x1)) -> c38(A__U41(a__U52(a__U62(mark(z0), z1)), x1), MARK(U52(U62(z0, z1)))) MARK(U41(U52(isNat(z0)), x1)) -> c38(A__U41(a__U52(a__isNat(z0)), x1), MARK(U52(isNat(z0)))) MARK(U41(U52(length(z0)), x1)) -> c38(A__U41(a__U52(a__length(mark(z0))), x1), MARK(U52(length(z0)))) MARK(U41(U52(cons(z0, z1)), x1)) -> c38(A__U41(a__U52(cons(mark(z0), z1)), x1), MARK(U52(cons(z0, z1)))) MARK(U41(U52(0), x1)) -> c38(A__U41(a__U52(0), x1), MARK(U52(0))) MARK(U41(U52(tt), x1)) -> c38(A__U41(a__U52(tt), x1), MARK(U52(tt))) MARK(U41(U52(s(z0)), x1)) -> c38(A__U41(a__U52(s(mark(z0))), x1), MARK(U52(s(z0)))) MARK(U41(U52(nil), x1)) -> c38(A__U41(a__U52(nil), x1), MARK(U52(nil))) MARK(U41(U52(x0), x1)) -> c38(MARK(U52(x0))) MARK(U41(U61(zeros, x1, x2), x3)) -> c38(A__U41(a__U61(a__zeros, x1, x2), x3), MARK(U61(zeros, x1, x2))) MARK(U41(U61(U11(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U11(mark(z0)), x1, x2), x3), MARK(U61(U11(z0), x1, x2))) MARK(U41(U61(U21(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U21(mark(z0)), x1, x2), x3), MARK(U61(U21(z0), x1, x2))) MARK(U41(U61(U31(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U31(mark(z0)), x1, x2), x3), MARK(U61(U31(z0), x1, x2))) MARK(U41(U61(U41(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(a__U41(mark(z0), z1), x1, x2), x3), MARK(U61(U41(z0, z1), x1, x2))) MARK(U41(U61(U42(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U42(mark(z0)), x1, x2), x3), MARK(U61(U42(z0), x1, x2))) MARK(U41(U61(isNatIList(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__isNatIList(z0), x1, x2), x3), MARK(U61(isNatIList(z0), x1, x2))) MARK(U41(U61(U51(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(a__U51(mark(z0), z1), x1, x2), x3), MARK(U61(U51(z0, z1), x1, x2))) MARK(U41(U61(U52(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U52(mark(z0)), x1, x2), x3), MARK(U61(U52(z0), x1, x2))) MARK(U41(U61(isNatList(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__isNatList(z0), x1, x2), x3), MARK(U61(isNatList(z0), x1, x2))) MARK(U41(U61(U61(z0, z1, z2), x1, x2), x3)) -> c38(A__U41(a__U61(a__U61(mark(z0), z1, z2), x1, x2), x3), MARK(U61(U61(z0, z1, z2), x1, x2))) MARK(U41(U61(U62(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(a__U62(mark(z0), z1), x1, x2), x3), MARK(U61(U62(z0, z1), x1, x2))) MARK(U41(U61(isNat(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__isNat(z0), x1, x2), x3), MARK(U61(isNat(z0), x1, x2))) MARK(U41(U61(length(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__length(mark(z0)), x1, x2), x3), MARK(U61(length(z0), x1, x2))) MARK(U41(U61(cons(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(cons(mark(z0), z1), x1, x2), x3), MARK(U61(cons(z0, z1), x1, x2))) MARK(U41(U61(tt, x1, x2), x3)) -> c38(A__U41(a__U61(tt, x1, x2), x3), MARK(U61(tt, x1, x2))) MARK(U41(U61(s(z0), x1, x2), x3)) -> c38(A__U41(a__U61(s(mark(z0)), x1, x2), x3), MARK(U61(s(z0), x1, x2))) MARK(U41(U61(x0, z1, z2), x3)) -> c38(MARK(U61(x0, z1, z2))) MARK(U41(U61(0, x1, x2), x3)) -> c38(A__U41(a__U61(0, x1, x2), x3)) MARK(U41(U61(nil, x1, x2), x3)) -> c38(A__U41(a__U61(nil, x1, x2), x3)) S tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) A__U62(tt, isNatList(cons(z0, z1))) -> c18(A__LENGTH(a__U51(a__isNat(z0), z1)), MARK(isNatList(cons(z0, z1)))) A__U62(tt, isNatList(nil)) -> c18(MARK(isNatList(nil))) A__U62(tt, isNatList(z0)) -> c18(MARK(isNatList(z0))) A__U62(tt, U61(zeros, x1, x2)) -> c18(A__LENGTH(a__U61(a__zeros, x1, x2)), MARK(U61(zeros, x1, x2))) A__U62(tt, U61(U11(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U11(mark(z0)), x1, x2)), MARK(U61(U11(z0), x1, x2))) A__U62(tt, U61(U21(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U21(mark(z0)), x1, x2)), MARK(U61(U21(z0), x1, x2))) A__U62(tt, U61(U31(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U31(mark(z0)), x1, x2)), MARK(U61(U31(z0), x1, x2))) A__U62(tt, U61(U41(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U41(mark(z0), z1), x1, x2)), MARK(U61(U41(z0, z1), x1, x2))) A__U62(tt, U61(U42(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U42(mark(z0)), x1, x2)), MARK(U61(U42(z0), x1, x2))) A__U62(tt, U61(isNatIList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatIList(z0), x1, x2)), MARK(U61(isNatIList(z0), x1, x2))) A__U62(tt, U61(U51(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U51(mark(z0), z1), x1, x2)), MARK(U61(U51(z0, z1), x1, x2))) A__U62(tt, U61(U52(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U52(mark(z0)), x1, x2)), MARK(U61(U52(z0), x1, x2))) A__U62(tt, U61(isNatList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatList(z0), x1, x2)), MARK(U61(isNatList(z0), x1, x2))) A__U62(tt, U61(U61(z0, z1, z2), x1, x2)) -> c18(A__LENGTH(a__U61(a__U61(mark(z0), z1, z2), x1, x2)), MARK(U61(U61(z0, z1, z2), x1, x2))) A__U62(tt, U61(U62(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U62(mark(z0), z1), x1, x2)), MARK(U61(U62(z0, z1), x1, x2))) A__U62(tt, U61(isNat(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNat(z0), x1, x2)), MARK(U61(isNat(z0), x1, x2))) A__U62(tt, U61(length(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__length(mark(z0)), x1, x2)), MARK(U61(length(z0), x1, x2))) A__U62(tt, U61(cons(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(cons(mark(z0), z1), x1, x2)), MARK(U61(cons(z0, z1), x1, x2))) A__U62(tt, U61(tt, x1, x2)) -> c18(A__LENGTH(a__U61(tt, x1, x2)), MARK(U61(tt, x1, x2))) A__U62(tt, U61(s(z0), x1, x2)) -> c18(A__LENGTH(a__U61(s(mark(z0)), x1, x2)), MARK(U61(s(z0), x1, x2))) A__U62(tt, U61(x0, z1, z2)) -> c18(MARK(U61(x0, z1, z2))) A__U62(tt, U61(0, x1, x2)) -> c18(A__LENGTH(a__U61(0, x1, x2))) A__U62(tt, U61(nil, x1, x2)) -> c18(A__LENGTH(a__U61(nil, x1, x2))) A__U62(tt, U62(zeros, x1)) -> c18(A__LENGTH(a__U62(a__zeros, x1)), MARK(U62(zeros, x1))) A__U62(tt, U62(U11(z0), x1)) -> c18(A__LENGTH(a__U62(a__U11(mark(z0)), x1)), MARK(U62(U11(z0), x1))) A__U62(tt, U62(U21(z0), x1)) -> c18(A__LENGTH(a__U62(a__U21(mark(z0)), x1)), MARK(U62(U21(z0), x1))) A__U62(tt, U62(U31(z0), x1)) -> c18(A__LENGTH(a__U62(a__U31(mark(z0)), x1)), MARK(U62(U31(z0), x1))) A__U62(tt, U62(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U41(mark(z0), z1), x1)), MARK(U62(U41(z0, z1), x1))) A__U62(tt, U62(U42(z0), x1)) -> c18(A__LENGTH(a__U62(a__U42(mark(z0)), x1)), MARK(U62(U42(z0), x1))) A__U62(tt, U62(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatIList(z0), x1)), MARK(U62(isNatIList(z0), x1))) A__U62(tt, U62(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U51(mark(z0), z1), x1)), MARK(U62(U51(z0, z1), x1))) A__U62(tt, U62(U52(z0), x1)) -> c18(A__LENGTH(a__U62(a__U52(mark(z0)), x1)), MARK(U62(U52(z0), x1))) A__U62(tt, U62(isNatList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatList(z0), x1)), MARK(U62(isNatList(z0), x1))) A__U62(tt, U62(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U62(a__U61(mark(z0), z1, z2), x1)), MARK(U62(U61(z0, z1, z2), x1))) A__U62(tt, U62(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U62(mark(z0), z1), x1)), MARK(U62(U62(z0, z1), x1))) A__U62(tt, U62(isNat(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNat(z0), x1)), MARK(U62(isNat(z0), x1))) A__U62(tt, U62(length(z0), x1)) -> c18(A__LENGTH(a__U62(a__length(mark(z0)), x1)), MARK(U62(length(z0), x1))) A__U62(tt, U62(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U62(cons(mark(z0), z1), x1)), MARK(U62(cons(z0, z1), x1))) A__U62(tt, U62(tt, x1)) -> c18(A__LENGTH(a__U62(tt, x1)), MARK(U62(tt, x1))) A__U62(tt, U62(s(z0), x1)) -> c18(A__LENGTH(a__U62(s(mark(z0)), x1)), MARK(U62(s(z0), x1))) A__U62(tt, U62(x0, z1)) -> c18(MARK(U62(x0, z1))) A__U62(tt, U62(0, x1)) -> c18(A__LENGTH(a__U62(0, x1))) A__U62(tt, U62(nil, x1)) -> c18(A__LENGTH(a__U62(nil, x1))) A__U62(tt, isNat(length(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(isNat(length(z0)))) A__U62(tt, isNat(s(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(isNat(s(z0)))) A__U62(tt, isNat(0)) -> c18(MARK(isNat(0))) A__U62(tt, isNat(z0)) -> c18(MARK(isNat(z0))) A__U62(tt, length(zeros)) -> c18(A__LENGTH(a__length(a__zeros)), MARK(length(zeros))) A__U62(tt, length(U11(z0))) -> c18(A__LENGTH(a__length(a__U11(mark(z0)))), MARK(length(U11(z0)))) A__U62(tt, length(U21(z0))) -> c18(A__LENGTH(a__length(a__U21(mark(z0)))), MARK(length(U21(z0)))) A__U62(tt, length(U31(z0))) -> c18(A__LENGTH(a__length(a__U31(mark(z0)))), MARK(length(U31(z0)))) A__U62(tt, length(U41(z0, z1))) -> c18(A__LENGTH(a__length(a__U41(mark(z0), z1))), MARK(length(U41(z0, z1)))) A__U62(tt, length(U42(z0))) -> c18(A__LENGTH(a__length(a__U42(mark(z0)))), MARK(length(U42(z0)))) A__U62(tt, length(isNatIList(z0))) -> c18(A__LENGTH(a__length(a__isNatIList(z0))), MARK(length(isNatIList(z0)))) A__U62(tt, length(U51(z0, z1))) -> c18(A__LENGTH(a__length(a__U51(mark(z0), z1))), MARK(length(U51(z0, z1)))) A__U62(tt, length(U52(z0))) -> c18(A__LENGTH(a__length(a__U52(mark(z0)))), MARK(length(U52(z0)))) A__U62(tt, length(isNatList(z0))) -> c18(A__LENGTH(a__length(a__isNatList(z0))), MARK(length(isNatList(z0)))) A__U62(tt, length(U61(z0, z1, z2))) -> c18(A__LENGTH(a__length(a__U61(mark(z0), z1, z2))), MARK(length(U61(z0, z1, z2)))) A__U62(tt, length(U62(z0, z1))) -> c18(A__LENGTH(a__length(a__U62(mark(z0), z1))), MARK(length(U62(z0, z1)))) A__U62(tt, length(isNat(z0))) -> c18(A__LENGTH(a__length(a__isNat(z0))), MARK(length(isNat(z0)))) A__U62(tt, length(length(z0))) -> c18(A__LENGTH(a__length(a__length(mark(z0)))), MARK(length(length(z0)))) A__U62(tt, length(cons(z0, z1))) -> c18(A__LENGTH(a__length(cons(mark(z0), z1))), MARK(length(cons(z0, z1)))) A__U62(tt, length(s(z0))) -> c18(A__LENGTH(a__length(s(mark(z0)))), MARK(length(s(z0)))) A__U62(tt, length(x0)) -> c18(MARK(length(x0))) A__U62(tt, length(0)) -> c18(A__LENGTH(a__length(0))) A__U62(tt, length(tt)) -> c18(A__LENGTH(a__length(tt))) A__U62(tt, length(nil)) -> c18(A__LENGTH(a__length(nil))) A__U62(tt, zeros) -> c18(A__LENGTH(cons(0, zeros))) A__ISNATILIST(cons(length(nil), x1)) -> c26(A__U41(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATILIST(cons(length(cons(z0, z1)), x1)) -> c26(A__U41(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(length(x0), x1)) -> c26(A__ISNAT(length(x0))) A__ISNATILIST(cons(s(0), x1)) -> c26(A__U41(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATILIST(cons(s(length(z0)), x1)) -> c26(A__U41(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATILIST(cons(s(s(z0)), x1)) -> c26(A__U41(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(s(x0), x1)) -> c26(A__ISNAT(s(x0))) A__ISNATLIST(cons(length(nil), x1)) -> c29(A__U51(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATLIST(cons(length(cons(z0, z1)), x1)) -> c29(A__U51(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(length(x0), x1)) -> c29(A__ISNAT(length(x0))) A__ISNATLIST(cons(s(0), x1)) -> c29(A__U51(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATLIST(cons(s(length(z0)), x1)) -> c29(A__U51(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATLIST(cons(s(s(z0)), x1)) -> c29(A__U51(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(s(x0), x1)) -> c29(A__ISNAT(s(x0))) A__LENGTH(cons(x0, cons(0, x2))) -> c32(A__U61(a__U51(tt, x2), cons(0, x2), x0), A__ISNATLIST(cons(0, x2))) A__LENGTH(cons(x0, cons(length(z0), x2))) -> c32(A__U61(a__U51(a__U11(a__isNatList(z0)), x2), cons(length(z0), x2), x0), A__ISNATLIST(cons(length(z0), x2))) A__LENGTH(cons(x0, cons(s(z0), x2))) -> c32(A__U61(a__U51(a__U21(a__isNat(z0)), x2), cons(s(z0), x2), x0), A__ISNATLIST(cons(s(z0), x2))) A__LENGTH(cons(x0, cons(z0, x2))) -> c32(A__U61(a__U51(isNat(z0), x2), cons(z0, x2), x0), A__ISNATLIST(cons(z0, x2))) A__LENGTH(cons(x0, cons(x1, z1))) -> c32(A__ISNATLIST(cons(x1, z1))) MARK(U41(U11(zeros), x1)) -> c38(A__U41(a__U11(a__zeros), x1), MARK(U11(zeros))) MARK(U41(U11(U11(z0)), x1)) -> c38(A__U41(a__U11(a__U11(mark(z0))), x1), MARK(U11(U11(z0)))) MARK(U41(U11(U21(z0)), x1)) -> c38(A__U41(a__U11(a__U21(mark(z0))), x1), MARK(U11(U21(z0)))) MARK(U41(U11(U31(z0)), x1)) -> c38(A__U41(a__U11(a__U31(mark(z0))), x1), MARK(U11(U31(z0)))) MARK(U41(U11(U41(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U41(mark(z0), z1)), x1), MARK(U11(U41(z0, z1)))) MARK(U41(U11(U42(z0)), x1)) -> c38(A__U41(a__U11(a__U42(mark(z0))), x1), MARK(U11(U42(z0)))) MARK(U41(U11(isNatIList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatIList(z0)), x1), MARK(U11(isNatIList(z0)))) MARK(U41(U11(U51(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U51(mark(z0), z1)), x1), MARK(U11(U51(z0, z1)))) MARK(U41(U11(U52(z0)), x1)) -> c38(A__U41(a__U11(a__U52(mark(z0))), x1), MARK(U11(U52(z0)))) MARK(U41(U11(isNatList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatList(z0)), x1), MARK(U11(isNatList(z0)))) MARK(U41(U11(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U11(a__U61(mark(z0), z1, z2)), x1), MARK(U11(U61(z0, z1, z2)))) MARK(U41(U11(U62(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U62(mark(z0), z1)), x1), MARK(U11(U62(z0, z1)))) MARK(U41(U11(isNat(z0)), x1)) -> c38(A__U41(a__U11(a__isNat(z0)), x1), MARK(U11(isNat(z0)))) MARK(U41(U11(length(z0)), x1)) -> c38(A__U41(a__U11(a__length(mark(z0))), x1), MARK(U11(length(z0)))) MARK(U41(U11(cons(z0, z1)), x1)) -> c38(A__U41(a__U11(cons(mark(z0), z1)), x1), MARK(U11(cons(z0, z1)))) MARK(U41(U11(0), x1)) -> c38(A__U41(a__U11(0), x1), MARK(U11(0))) MARK(U41(U11(tt), x1)) -> c38(A__U41(a__U11(tt), x1), MARK(U11(tt))) MARK(U41(U11(s(z0)), x1)) -> c38(A__U41(a__U11(s(mark(z0))), x1), MARK(U11(s(z0)))) MARK(U41(U11(nil), x1)) -> c38(A__U41(a__U11(nil), x1), MARK(U11(nil))) MARK(U41(U11(x0), x1)) -> c38(MARK(U11(x0))) MARK(U41(U21(zeros), x1)) -> c38(A__U41(a__U21(a__zeros), x1), MARK(U21(zeros))) MARK(U41(U21(U11(z0)), x1)) -> c38(A__U41(a__U21(a__U11(mark(z0))), x1), MARK(U21(U11(z0)))) MARK(U41(U21(U21(z0)), x1)) -> c38(A__U41(a__U21(a__U21(mark(z0))), x1), MARK(U21(U21(z0)))) MARK(U41(U21(U31(z0)), x1)) -> c38(A__U41(a__U21(a__U31(mark(z0))), x1), MARK(U21(U31(z0)))) MARK(U41(U21(U41(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U41(mark(z0), z1)), x1), MARK(U21(U41(z0, z1)))) MARK(U41(U21(U42(z0)), x1)) -> c38(A__U41(a__U21(a__U42(mark(z0))), x1), MARK(U21(U42(z0)))) MARK(U41(U21(isNatIList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatIList(z0)), x1), MARK(U21(isNatIList(z0)))) MARK(U41(U21(U51(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U51(mark(z0), z1)), x1), MARK(U21(U51(z0, z1)))) MARK(U41(U21(U52(z0)), x1)) -> c38(A__U41(a__U21(a__U52(mark(z0))), x1), MARK(U21(U52(z0)))) MARK(U41(U21(isNatList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatList(z0)), x1), MARK(U21(isNatList(z0)))) MARK(U41(U21(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U21(a__U61(mark(z0), z1, z2)), x1), MARK(U21(U61(z0, z1, z2)))) MARK(U41(U21(U62(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U62(mark(z0), z1)), x1), MARK(U21(U62(z0, z1)))) MARK(U41(U21(isNat(z0)), x1)) -> c38(A__U41(a__U21(a__isNat(z0)), x1), MARK(U21(isNat(z0)))) MARK(U41(U21(length(z0)), x1)) -> c38(A__U41(a__U21(a__length(mark(z0))), x1), MARK(U21(length(z0)))) MARK(U41(U21(cons(z0, z1)), x1)) -> c38(A__U41(a__U21(cons(mark(z0), z1)), x1), MARK(U21(cons(z0, z1)))) MARK(U41(U21(0), x1)) -> c38(A__U41(a__U21(0), x1), MARK(U21(0))) MARK(U41(U21(tt), x1)) -> c38(A__U41(a__U21(tt), x1), MARK(U21(tt))) MARK(U41(U21(s(z0)), x1)) -> c38(A__U41(a__U21(s(mark(z0))), x1), MARK(U21(s(z0)))) MARK(U41(U21(nil), x1)) -> c38(A__U41(a__U21(nil), x1), MARK(U21(nil))) MARK(U41(U21(x0), x1)) -> c38(MARK(U21(x0))) MARK(U41(U31(zeros), x1)) -> c38(A__U41(a__U31(a__zeros), x1), MARK(U31(zeros))) MARK(U41(U31(U11(z0)), x1)) -> c38(A__U41(a__U31(a__U11(mark(z0))), x1), MARK(U31(U11(z0)))) MARK(U41(U31(U21(z0)), x1)) -> c38(A__U41(a__U31(a__U21(mark(z0))), x1), MARK(U31(U21(z0)))) MARK(U41(U31(U31(z0)), x1)) -> c38(A__U41(a__U31(a__U31(mark(z0))), x1), MARK(U31(U31(z0)))) MARK(U41(U31(U41(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U41(mark(z0), z1)), x1), MARK(U31(U41(z0, z1)))) MARK(U41(U31(U42(z0)), x1)) -> c38(A__U41(a__U31(a__U42(mark(z0))), x1), MARK(U31(U42(z0)))) MARK(U41(U31(isNatIList(z0)), x1)) -> c38(A__U41(a__U31(a__isNatIList(z0)), x1), MARK(U31(isNatIList(z0)))) MARK(U41(U31(U51(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U51(mark(z0), z1)), x1), MARK(U31(U51(z0, z1)))) MARK(U41(U31(U52(z0)), x1)) -> c38(A__U41(a__U31(a__U52(mark(z0))), x1), MARK(U31(U52(z0)))) MARK(U41(U31(isNatList(z0)), x1)) -> c38(A__U41(a__U31(a__isNatList(z0)), x1), MARK(U31(isNatList(z0)))) MARK(U41(U31(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U31(a__U61(mark(z0), z1, z2)), x1), MARK(U31(U61(z0, z1, z2)))) MARK(U41(U31(U62(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U62(mark(z0), z1)), x1), MARK(U31(U62(z0, z1)))) MARK(U41(U31(isNat(z0)), x1)) -> c38(A__U41(a__U31(a__isNat(z0)), x1), MARK(U31(isNat(z0)))) MARK(U41(U31(length(z0)), x1)) -> c38(A__U41(a__U31(a__length(mark(z0))), x1), MARK(U31(length(z0)))) MARK(U41(U31(cons(z0, z1)), x1)) -> c38(A__U41(a__U31(cons(mark(z0), z1)), x1), MARK(U31(cons(z0, z1)))) MARK(U41(U31(0), x1)) -> c38(A__U41(a__U31(0), x1), MARK(U31(0))) MARK(U41(U31(tt), x1)) -> c38(A__U41(a__U31(tt), x1), MARK(U31(tt))) MARK(U41(U31(s(z0)), x1)) -> c38(A__U41(a__U31(s(mark(z0))), x1), MARK(U31(s(z0)))) MARK(U41(U31(nil), x1)) -> c38(A__U41(a__U31(nil), x1), MARK(U31(nil))) MARK(U41(U31(x0), x1)) -> c38(MARK(U31(x0))) MARK(U41(U41(U11(z0), x1), x2)) -> c38(A__U41(a__U41(a__U11(mark(z0)), x1), x2), MARK(U41(U11(z0), x1))) MARK(U41(U41(U21(z0), x1), x2)) -> c38(A__U41(a__U41(a__U21(mark(z0)), x1), x2), MARK(U41(U21(z0), x1))) MARK(U41(U41(U31(z0), x1), x2)) -> c38(A__U41(a__U41(a__U31(mark(z0)), x1), x2), MARK(U41(U31(z0), x1))) MARK(U41(U41(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U41(mark(z0), z1), x1), x2), MARK(U41(U41(z0, z1), x1))) MARK(U41(U41(U42(z0), x1), x2)) -> c38(A__U41(a__U41(a__U42(mark(z0)), x1), x2), MARK(U41(U42(z0), x1))) MARK(U41(U41(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U51(mark(z0), z1), x1), x2), MARK(U41(U51(z0, z1), x1))) MARK(U41(U41(U52(z0), x1), x2)) -> c38(A__U41(a__U41(a__U52(mark(z0)), x1), x2), MARK(U41(U52(z0), x1))) MARK(U41(U41(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U41(a__U61(mark(z0), z1, z2), x1), x2), MARK(U41(U61(z0, z1, z2), x1))) MARK(U41(U41(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U62(mark(z0), z1), x1), x2), MARK(U41(U62(z0, z1), x1))) MARK(U41(U41(length(z0), x1), x2)) -> c38(A__U41(a__U41(a__length(mark(z0)), x1), x2), MARK(U41(length(z0), x1))) MARK(U41(U41(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U41(cons(mark(z0), z1), x1), x2), MARK(U41(cons(z0, z1), x1))) MARK(U41(U41(s(z0), x1), x2)) -> c38(A__U41(a__U41(s(mark(z0)), x1), x2), MARK(U41(s(z0), x1))) MARK(U41(U41(x0, z1), x2)) -> c38(MARK(U41(x0, z1))) MARK(U41(U41(0, x1), x2)) -> c38(A__U41(a__U41(0, x1), x2)) MARK(U41(U41(nil, x1), x2)) -> c38(A__U41(a__U41(nil, x1), x2)) MARK(U41(U41(zeros, x1), x2)) -> c2(A__U41(a__U41(a__zeros, x1), x2)) MARK(U41(U41(zeros, x1), x2)) -> c2(MARK(U41(zeros, x1))) MARK(U41(U41(isNatIList(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNatIList(z0), x1), x2)) MARK(U41(U41(isNatIList(z0), x1), x2)) -> c2(MARK(U41(isNatIList(z0), x1))) MARK(U41(U41(isNatList(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNatList(z0), x1), x2)) MARK(U41(U41(isNatList(z0), x1), x2)) -> c2(MARK(U41(isNatList(z0), x1))) MARK(U41(U41(isNat(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNat(z0), x1), x2)) MARK(U41(U41(isNat(z0), x1), x2)) -> c2(MARK(U41(isNat(z0), x1))) MARK(U41(U41(tt, x1), x2)) -> c2(A__U41(a__U41(tt, x1), x2)) MARK(U41(U41(tt, x1), x2)) -> c2(MARK(U41(tt, x1))) MARK(U41(U42(zeros), x1)) -> c38(A__U41(a__U42(a__zeros), x1), MARK(U42(zeros))) MARK(U41(U42(U11(z0)), x1)) -> c38(A__U41(a__U42(a__U11(mark(z0))), x1), MARK(U42(U11(z0)))) MARK(U41(U42(U21(z0)), x1)) -> c38(A__U41(a__U42(a__U21(mark(z0))), x1), MARK(U42(U21(z0)))) MARK(U41(U42(U31(z0)), x1)) -> c38(A__U41(a__U42(a__U31(mark(z0))), x1), MARK(U42(U31(z0)))) MARK(U41(U42(U41(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U41(mark(z0), z1)), x1), MARK(U42(U41(z0, z1)))) MARK(U41(U42(U42(z0)), x1)) -> c38(A__U41(a__U42(a__U42(mark(z0))), x1), MARK(U42(U42(z0)))) MARK(U41(U42(isNatIList(z0)), x1)) -> c38(A__U41(a__U42(a__isNatIList(z0)), x1), MARK(U42(isNatIList(z0)))) MARK(U41(U42(U51(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U51(mark(z0), z1)), x1), MARK(U42(U51(z0, z1)))) MARK(U41(U42(U52(z0)), x1)) -> c38(A__U41(a__U42(a__U52(mark(z0))), x1), MARK(U42(U52(z0)))) MARK(U41(U42(isNatList(z0)), x1)) -> c38(A__U41(a__U42(a__isNatList(z0)), x1), MARK(U42(isNatList(z0)))) MARK(U41(U42(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U42(a__U61(mark(z0), z1, z2)), x1), MARK(U42(U61(z0, z1, z2)))) MARK(U41(U42(U62(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U62(mark(z0), z1)), x1), MARK(U42(U62(z0, z1)))) MARK(U41(U42(isNat(z0)), x1)) -> c38(A__U41(a__U42(a__isNat(z0)), x1), MARK(U42(isNat(z0)))) MARK(U41(U42(length(z0)), x1)) -> c38(A__U41(a__U42(a__length(mark(z0))), x1), MARK(U42(length(z0)))) MARK(U41(U42(cons(z0, z1)), x1)) -> c38(A__U41(a__U42(cons(mark(z0), z1)), x1), MARK(U42(cons(z0, z1)))) MARK(U41(U42(0), x1)) -> c38(A__U41(a__U42(0), x1), MARK(U42(0))) MARK(U41(U42(tt), x1)) -> c38(A__U41(a__U42(tt), x1), MARK(U42(tt))) MARK(U41(U42(s(z0)), x1)) -> c38(A__U41(a__U42(s(mark(z0))), x1), MARK(U42(s(z0)))) MARK(U41(U42(nil), x1)) -> c38(A__U41(a__U42(nil), x1), MARK(U42(nil))) MARK(U41(U42(x0), x1)) -> c38(MARK(U42(x0))) MARK(U41(U51(U11(z0), x1), x2)) -> c38(A__U41(a__U51(a__U11(mark(z0)), x1), x2), MARK(U51(U11(z0), x1))) MARK(U41(U51(U21(z0), x1), x2)) -> c38(A__U41(a__U51(a__U21(mark(z0)), x1), x2), MARK(U51(U21(z0), x1))) MARK(U41(U51(U31(z0), x1), x2)) -> c38(A__U41(a__U51(a__U31(mark(z0)), x1), x2), MARK(U51(U31(z0), x1))) MARK(U41(U51(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U41(mark(z0), z1), x1), x2), MARK(U51(U41(z0, z1), x1))) MARK(U41(U51(U42(z0), x1), x2)) -> c38(A__U41(a__U51(a__U42(mark(z0)), x1), x2), MARK(U51(U42(z0), x1))) MARK(U41(U51(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U51(mark(z0), z1), x1), x2), MARK(U51(U51(z0, z1), x1))) MARK(U41(U51(U52(z0), x1), x2)) -> c38(A__U41(a__U51(a__U52(mark(z0)), x1), x2), MARK(U51(U52(z0), x1))) MARK(U41(U51(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U51(a__U61(mark(z0), z1, z2), x1), x2), MARK(U51(U61(z0, z1, z2), x1))) MARK(U41(U51(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U62(mark(z0), z1), x1), x2), MARK(U51(U62(z0, z1), x1))) MARK(U41(U51(length(z0), x1), x2)) -> c38(A__U41(a__U51(a__length(mark(z0)), x1), x2), MARK(U51(length(z0), x1))) MARK(U41(U51(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U51(cons(mark(z0), z1), x1), x2), MARK(U51(cons(z0, z1), x1))) MARK(U41(U51(s(z0), x1), x2)) -> c38(A__U41(a__U51(s(mark(z0)), x1), x2), MARK(U51(s(z0), x1))) MARK(U41(U51(x0, z1), x2)) -> c38(MARK(U51(x0, z1))) MARK(U41(U51(0, x1), x2)) -> c38(A__U41(a__U51(0, x1), x2)) MARK(U41(U51(nil, x1), x2)) -> c38(A__U41(a__U51(nil, x1), x2)) MARK(U41(U51(zeros, x1), x2)) -> c3(A__U41(a__U51(a__zeros, x1), x2)) MARK(U41(U51(zeros, x1), x2)) -> c3(MARK(U51(zeros, x1))) MARK(U41(U51(isNatIList(z0), x1), x2)) -> c3(A__U41(a__U51(a__isNatIList(z0), x1), x2)) MARK(U41(U51(isNatIList(z0), x1), x2)) -> c3(MARK(U51(isNatIList(z0), x1))) MARK(U41(U51(isNatList(z0), x1), x2)) -> c3(A__U41(a__U51(a__isNatList(z0), x1), x2)) MARK(U41(U51(isNatList(z0), x1), x2)) -> c3(MARK(U51(isNatList(z0), x1))) MARK(U41(U51(isNat(z0), x1), x2)) -> c3(A__U41(a__U51(a__isNat(z0), x1), x2)) MARK(U41(U51(isNat(z0), x1), x2)) -> c3(MARK(U51(isNat(z0), x1))) MARK(U41(U51(tt, x1), x2)) -> c3(A__U41(a__U51(tt, x1), x2)) MARK(U41(U51(tt, x1), x2)) -> c3(MARK(U51(tt, x1))) MARK(U41(U52(zeros), x1)) -> c38(A__U41(a__U52(a__zeros), x1), MARK(U52(zeros))) MARK(U41(U52(U11(z0)), x1)) -> c38(A__U41(a__U52(a__U11(mark(z0))), x1), MARK(U52(U11(z0)))) MARK(U41(U52(U21(z0)), x1)) -> c38(A__U41(a__U52(a__U21(mark(z0))), x1), MARK(U52(U21(z0)))) MARK(U41(U52(U31(z0)), x1)) -> c38(A__U41(a__U52(a__U31(mark(z0))), x1), MARK(U52(U31(z0)))) MARK(U41(U52(U41(z0, z1)), x1)) -> c38(A__U41(a__U52(a__U41(mark(z0), z1)), x1), MARK(U52(U41(z0, z1)))) MARK(U41(U52(U42(z0)), x1)) -> c38(A__U41(a__U52(a__U42(mark(z0))), x1), MARK(U52(U42(z0)))) MARK(U41(U52(isNatIList(z0)), x1)) -> c38(A__U41(a__U52(a__isNatIList(z0)), x1), MARK(U52(isNatIList(z0)))) MARK(U41(U52(U51(z0, z1)), x1)) -> c38(A__U41(a__U52(a__U51(mark(z0), z1)), x1), MARK(U52(U51(z0, z1)))) MARK(U41(U52(U52(z0)), x1)) -> c38(A__U41(a__U52(a__U52(mark(z0))), x1), MARK(U52(U52(z0)))) MARK(U41(U52(isNatList(z0)), x1)) -> c38(A__U41(a__U52(a__isNatList(z0)), x1), MARK(U52(isNatList(z0)))) MARK(U41(U52(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U52(a__U61(mark(z0), z1, z2)), x1), MARK(U52(U61(z0, z1, z2)))) MARK(U41(U52(U62(z0, z1)), x1)) -> c38(A__U41(a__U52(a__U62(mark(z0), z1)), x1), MARK(U52(U62(z0, z1)))) MARK(U41(U52(isNat(z0)), x1)) -> c38(A__U41(a__U52(a__isNat(z0)), x1), MARK(U52(isNat(z0)))) MARK(U41(U52(length(z0)), x1)) -> c38(A__U41(a__U52(a__length(mark(z0))), x1), MARK(U52(length(z0)))) MARK(U41(U52(cons(z0, z1)), x1)) -> c38(A__U41(a__U52(cons(mark(z0), z1)), x1), MARK(U52(cons(z0, z1)))) MARK(U41(U52(0), x1)) -> c38(A__U41(a__U52(0), x1), MARK(U52(0))) MARK(U41(U52(tt), x1)) -> c38(A__U41(a__U52(tt), x1), MARK(U52(tt))) MARK(U41(U52(s(z0)), x1)) -> c38(A__U41(a__U52(s(mark(z0))), x1), MARK(U52(s(z0)))) MARK(U41(U52(nil), x1)) -> c38(A__U41(a__U52(nil), x1), MARK(U52(nil))) MARK(U41(U52(x0), x1)) -> c38(MARK(U52(x0))) MARK(U41(U61(zeros, x1, x2), x3)) -> c38(A__U41(a__U61(a__zeros, x1, x2), x3), MARK(U61(zeros, x1, x2))) MARK(U41(U61(U11(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U11(mark(z0)), x1, x2), x3), MARK(U61(U11(z0), x1, x2))) MARK(U41(U61(U21(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U21(mark(z0)), x1, x2), x3), MARK(U61(U21(z0), x1, x2))) MARK(U41(U61(U31(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U31(mark(z0)), x1, x2), x3), MARK(U61(U31(z0), x1, x2))) MARK(U41(U61(U41(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(a__U41(mark(z0), z1), x1, x2), x3), MARK(U61(U41(z0, z1), x1, x2))) MARK(U41(U61(U42(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U42(mark(z0)), x1, x2), x3), MARK(U61(U42(z0), x1, x2))) MARK(U41(U61(isNatIList(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__isNatIList(z0), x1, x2), x3), MARK(U61(isNatIList(z0), x1, x2))) MARK(U41(U61(U51(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(a__U51(mark(z0), z1), x1, x2), x3), MARK(U61(U51(z0, z1), x1, x2))) MARK(U41(U61(U52(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U52(mark(z0)), x1, x2), x3), MARK(U61(U52(z0), x1, x2))) MARK(U41(U61(isNatList(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__isNatList(z0), x1, x2), x3), MARK(U61(isNatList(z0), x1, x2))) MARK(U41(U61(U61(z0, z1, z2), x1, x2), x3)) -> c38(A__U41(a__U61(a__U61(mark(z0), z1, z2), x1, x2), x3), MARK(U61(U61(z0, z1, z2), x1, x2))) MARK(U41(U61(U62(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(a__U62(mark(z0), z1), x1, x2), x3), MARK(U61(U62(z0, z1), x1, x2))) MARK(U41(U61(isNat(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__isNat(z0), x1, x2), x3), MARK(U61(isNat(z0), x1, x2))) MARK(U41(U61(length(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__length(mark(z0)), x1, x2), x3), MARK(U61(length(z0), x1, x2))) MARK(U41(U61(cons(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(cons(mark(z0), z1), x1, x2), x3), MARK(U61(cons(z0, z1), x1, x2))) MARK(U41(U61(tt, x1, x2), x3)) -> c38(A__U41(a__U61(tt, x1, x2), x3), MARK(U61(tt, x1, x2))) MARK(U41(U61(s(z0), x1, x2), x3)) -> c38(A__U41(a__U61(s(mark(z0)), x1, x2), x3), MARK(U61(s(z0), x1, x2))) MARK(U41(U61(x0, z1, z2), x3)) -> c38(MARK(U61(x0, z1, z2))) MARK(U41(U61(0, x1, x2), x3)) -> c38(A__U41(a__U61(0, x1, x2), x3)) MARK(U41(U61(nil, x1, x2), x3)) -> c38(A__U41(a__U61(nil, x1, x2), x3)) K tuples:none Defined Rule Symbols: a__zeros, a__U11_1, a__U21_1, a__U31_1, a__U41_2, a__U42_1, a__U51_2, a__U52_1, a__U61_3, a__U62_2, a__isNat_1, a__isNatIList_1, a__isNatList_1, a__length_1, mark_1 Defined Pair Symbols: MARK_1, A__U41_2, A__U51_2, A__ISNAT_1, A__ISNATILIST_1, A__U61_3, A__U62_2, A__ISNATLIST_1, A__LENGTH_1 Compound Symbols: c40_1, c43_1, c46_1, c48_1, c51_1, c8_1, c12_1, c21_1, c22_1, c24_1, c35_1, c36_1, c37_1, c39_1, c42_1, c16_1, c18_2, c18_1, c26_1, c29_1, c32_1, c38_2, c38_1, c_1, c41_2, c41_1, c1_1, c44_2, c44_1, c45_2, c45_1, c47_2, c47_1, c16_2, c26_2, c29_2, c32_2, c2_1, c3_1 ---------------------------------------- (205) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace MARK(U41(U62(z0, z1), x1)) -> c38(A__U41(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) by MARK(U41(U62(x0, z1), x2)) -> c38(A__U41(U62(mark(x0), z1), x2), MARK(U62(x0, z1))) MARK(U41(U62(zeros, x1), x2)) -> c38(A__U41(a__U62(a__zeros, x1), x2), MARK(U62(zeros, x1))) MARK(U41(U62(U11(z0), x1), x2)) -> c38(A__U41(a__U62(a__U11(mark(z0)), x1), x2), MARK(U62(U11(z0), x1))) MARK(U41(U62(U21(z0), x1), x2)) -> c38(A__U41(a__U62(a__U21(mark(z0)), x1), x2), MARK(U62(U21(z0), x1))) MARK(U41(U62(U31(z0), x1), x2)) -> c38(A__U41(a__U62(a__U31(mark(z0)), x1), x2), MARK(U62(U31(z0), x1))) MARK(U41(U62(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U62(a__U41(mark(z0), z1), x1), x2), MARK(U62(U41(z0, z1), x1))) MARK(U41(U62(U42(z0), x1), x2)) -> c38(A__U41(a__U62(a__U42(mark(z0)), x1), x2), MARK(U62(U42(z0), x1))) MARK(U41(U62(isNatIList(z0), x1), x2)) -> c38(A__U41(a__U62(a__isNatIList(z0), x1), x2), MARK(U62(isNatIList(z0), x1))) MARK(U41(U62(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U62(a__U51(mark(z0), z1), x1), x2), MARK(U62(U51(z0, z1), x1))) MARK(U41(U62(U52(z0), x1), x2)) -> c38(A__U41(a__U62(a__U52(mark(z0)), x1), x2), MARK(U62(U52(z0), x1))) MARK(U41(U62(isNatList(z0), x1), x2)) -> c38(A__U41(a__U62(a__isNatList(z0), x1), x2), MARK(U62(isNatList(z0), x1))) MARK(U41(U62(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U62(a__U61(mark(z0), z1, z2), x1), x2), MARK(U62(U61(z0, z1, z2), x1))) MARK(U41(U62(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U62(a__U62(mark(z0), z1), x1), x2), MARK(U62(U62(z0, z1), x1))) MARK(U41(U62(isNat(z0), x1), x2)) -> c38(A__U41(a__U62(a__isNat(z0), x1), x2), MARK(U62(isNat(z0), x1))) MARK(U41(U62(length(z0), x1), x2)) -> c38(A__U41(a__U62(a__length(mark(z0)), x1), x2), MARK(U62(length(z0), x1))) MARK(U41(U62(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U62(cons(mark(z0), z1), x1), x2), MARK(U62(cons(z0, z1), x1))) MARK(U41(U62(0, x1), x2)) -> c38(A__U41(a__U62(0, x1), x2), MARK(U62(0, x1))) MARK(U41(U62(tt, x1), x2)) -> c38(A__U41(a__U62(tt, x1), x2), MARK(U62(tt, x1))) MARK(U41(U62(s(z0), x1), x2)) -> c38(A__U41(a__U62(s(mark(z0)), x1), x2), MARK(U62(s(z0), x1))) MARK(U41(U62(nil, x1), x2)) -> c38(A__U41(a__U62(nil, x1), x2), MARK(U62(nil, x1))) ---------------------------------------- (206) Obligation: Complexity Dependency Tuples Problem Rules: a__zeros -> cons(0, zeros) a__zeros -> zeros a__U11(tt) -> tt a__U11(z0) -> U11(z0) a__U21(tt) -> tt a__U21(z0) -> U21(z0) a__U31(tt) -> tt a__U31(z0) -> U31(z0) a__U41(tt, z0) -> a__U42(a__isNatIList(z0)) a__U41(z0, z1) -> U41(z0, z1) a__U42(tt) -> tt a__U42(z0) -> U42(z0) a__U51(tt, z0) -> a__U52(a__isNatList(z0)) a__U51(z0, z1) -> U51(z0, z1) a__U52(tt) -> tt a__U52(z0) -> U52(z0) a__U61(tt, z0, z1) -> a__U62(a__isNat(z1), z0) a__U61(z0, z1, z2) -> U61(z0, z1, z2) a__U62(tt, z0) -> s(a__length(mark(z0))) a__U62(z0, z1) -> U62(z0, z1) a__isNat(0) -> tt a__isNat(length(z0)) -> a__U11(a__isNatList(z0)) a__isNat(s(z0)) -> a__U21(a__isNat(z0)) a__isNat(z0) -> isNat(z0) a__isNatIList(z0) -> a__U31(a__isNatList(z0)) a__isNatIList(zeros) -> tt a__isNatIList(cons(z0, z1)) -> a__U41(a__isNat(z0), z1) a__isNatIList(z0) -> isNatIList(z0) a__isNatList(nil) -> tt a__isNatList(cons(z0, z1)) -> a__U51(a__isNat(z0), z1) a__isNatList(z0) -> isNatList(z0) a__length(nil) -> 0 a__length(cons(z0, z1)) -> a__U61(a__isNatList(z1), z1, z0) a__length(z0) -> length(z0) mark(zeros) -> a__zeros mark(U11(z0)) -> a__U11(mark(z0)) mark(U21(z0)) -> a__U21(mark(z0)) mark(U31(z0)) -> a__U31(mark(z0)) mark(U41(z0, z1)) -> a__U41(mark(z0), z1) mark(U42(z0)) -> a__U42(mark(z0)) mark(isNatIList(z0)) -> a__isNatIList(z0) mark(U51(z0, z1)) -> a__U51(mark(z0), z1) mark(U52(z0)) -> a__U52(mark(z0)) mark(isNatList(z0)) -> a__isNatList(z0) mark(U61(z0, z1, z2)) -> a__U61(mark(z0), z1, z2) mark(U62(z0, z1)) -> a__U62(mark(z0), z1) mark(isNat(z0)) -> a__isNat(z0) mark(length(z0)) -> a__length(mark(z0)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(0) -> 0 mark(tt) -> tt mark(s(z0)) -> s(mark(z0)) mark(nil) -> nil Tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) A__U62(tt, isNatList(cons(z0, z1))) -> c18(A__LENGTH(a__U51(a__isNat(z0), z1)), MARK(isNatList(cons(z0, z1)))) A__U62(tt, isNatList(nil)) -> c18(MARK(isNatList(nil))) A__U62(tt, isNatList(z0)) -> c18(MARK(isNatList(z0))) A__U62(tt, U61(zeros, x1, x2)) -> c18(A__LENGTH(a__U61(a__zeros, x1, x2)), MARK(U61(zeros, x1, x2))) A__U62(tt, U61(U11(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U11(mark(z0)), x1, x2)), MARK(U61(U11(z0), x1, x2))) A__U62(tt, U61(U21(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U21(mark(z0)), x1, x2)), MARK(U61(U21(z0), x1, x2))) A__U62(tt, U61(U31(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U31(mark(z0)), x1, x2)), MARK(U61(U31(z0), x1, x2))) A__U62(tt, U61(U41(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U41(mark(z0), z1), x1, x2)), MARK(U61(U41(z0, z1), x1, x2))) A__U62(tt, U61(U42(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U42(mark(z0)), x1, x2)), MARK(U61(U42(z0), x1, x2))) A__U62(tt, U61(isNatIList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatIList(z0), x1, x2)), MARK(U61(isNatIList(z0), x1, x2))) A__U62(tt, U61(U51(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U51(mark(z0), z1), x1, x2)), MARK(U61(U51(z0, z1), x1, x2))) A__U62(tt, U61(U52(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U52(mark(z0)), x1, x2)), MARK(U61(U52(z0), x1, x2))) A__U62(tt, U61(isNatList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatList(z0), x1, x2)), MARK(U61(isNatList(z0), x1, x2))) A__U62(tt, U61(U61(z0, z1, z2), x1, x2)) -> c18(A__LENGTH(a__U61(a__U61(mark(z0), z1, z2), x1, x2)), MARK(U61(U61(z0, z1, z2), x1, x2))) A__U62(tt, U61(U62(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U62(mark(z0), z1), x1, x2)), MARK(U61(U62(z0, z1), x1, x2))) A__U62(tt, U61(isNat(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNat(z0), x1, x2)), MARK(U61(isNat(z0), x1, x2))) A__U62(tt, U61(length(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__length(mark(z0)), x1, x2)), MARK(U61(length(z0), x1, x2))) A__U62(tt, U61(cons(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(cons(mark(z0), z1), x1, x2)), MARK(U61(cons(z0, z1), x1, x2))) A__U62(tt, U61(tt, x1, x2)) -> c18(A__LENGTH(a__U61(tt, x1, x2)), MARK(U61(tt, x1, x2))) A__U62(tt, U61(s(z0), x1, x2)) -> c18(A__LENGTH(a__U61(s(mark(z0)), x1, x2)), MARK(U61(s(z0), x1, x2))) A__U62(tt, U61(x0, z1, z2)) -> c18(MARK(U61(x0, z1, z2))) A__U62(tt, U61(0, x1, x2)) -> c18(A__LENGTH(a__U61(0, x1, x2))) A__U62(tt, U61(nil, x1, x2)) -> c18(A__LENGTH(a__U61(nil, x1, x2))) A__U62(tt, U62(zeros, x1)) -> c18(A__LENGTH(a__U62(a__zeros, x1)), MARK(U62(zeros, x1))) A__U62(tt, U62(U11(z0), x1)) -> c18(A__LENGTH(a__U62(a__U11(mark(z0)), x1)), MARK(U62(U11(z0), x1))) A__U62(tt, U62(U21(z0), x1)) -> c18(A__LENGTH(a__U62(a__U21(mark(z0)), x1)), MARK(U62(U21(z0), x1))) A__U62(tt, U62(U31(z0), x1)) -> c18(A__LENGTH(a__U62(a__U31(mark(z0)), x1)), MARK(U62(U31(z0), x1))) A__U62(tt, U62(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U41(mark(z0), z1), x1)), MARK(U62(U41(z0, z1), x1))) A__U62(tt, U62(U42(z0), x1)) -> c18(A__LENGTH(a__U62(a__U42(mark(z0)), x1)), MARK(U62(U42(z0), x1))) A__U62(tt, U62(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatIList(z0), x1)), MARK(U62(isNatIList(z0), x1))) A__U62(tt, U62(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U51(mark(z0), z1), x1)), MARK(U62(U51(z0, z1), x1))) A__U62(tt, U62(U52(z0), x1)) -> c18(A__LENGTH(a__U62(a__U52(mark(z0)), x1)), MARK(U62(U52(z0), x1))) A__U62(tt, U62(isNatList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatList(z0), x1)), MARK(U62(isNatList(z0), x1))) A__U62(tt, U62(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U62(a__U61(mark(z0), z1, z2), x1)), MARK(U62(U61(z0, z1, z2), x1))) A__U62(tt, U62(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U62(mark(z0), z1), x1)), MARK(U62(U62(z0, z1), x1))) A__U62(tt, U62(isNat(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNat(z0), x1)), MARK(U62(isNat(z0), x1))) A__U62(tt, U62(length(z0), x1)) -> c18(A__LENGTH(a__U62(a__length(mark(z0)), x1)), MARK(U62(length(z0), x1))) A__U62(tt, U62(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U62(cons(mark(z0), z1), x1)), MARK(U62(cons(z0, z1), x1))) A__U62(tt, U62(tt, x1)) -> c18(A__LENGTH(a__U62(tt, x1)), MARK(U62(tt, x1))) A__U62(tt, U62(s(z0), x1)) -> c18(A__LENGTH(a__U62(s(mark(z0)), x1)), MARK(U62(s(z0), x1))) A__U62(tt, U62(x0, z1)) -> c18(MARK(U62(x0, z1))) A__U62(tt, U62(0, x1)) -> c18(A__LENGTH(a__U62(0, x1))) A__U62(tt, U62(nil, x1)) -> c18(A__LENGTH(a__U62(nil, x1))) A__U62(tt, isNat(length(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(isNat(length(z0)))) A__U62(tt, isNat(s(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(isNat(s(z0)))) A__U62(tt, isNat(0)) -> c18(MARK(isNat(0))) A__U62(tt, isNat(z0)) -> c18(MARK(isNat(z0))) A__U62(tt, length(zeros)) -> c18(A__LENGTH(a__length(a__zeros)), MARK(length(zeros))) A__U62(tt, length(U11(z0))) -> c18(A__LENGTH(a__length(a__U11(mark(z0)))), MARK(length(U11(z0)))) A__U62(tt, length(U21(z0))) -> c18(A__LENGTH(a__length(a__U21(mark(z0)))), MARK(length(U21(z0)))) A__U62(tt, length(U31(z0))) -> c18(A__LENGTH(a__length(a__U31(mark(z0)))), MARK(length(U31(z0)))) A__U62(tt, length(U41(z0, z1))) -> c18(A__LENGTH(a__length(a__U41(mark(z0), z1))), MARK(length(U41(z0, z1)))) A__U62(tt, length(U42(z0))) -> c18(A__LENGTH(a__length(a__U42(mark(z0)))), MARK(length(U42(z0)))) A__U62(tt, length(isNatIList(z0))) -> c18(A__LENGTH(a__length(a__isNatIList(z0))), MARK(length(isNatIList(z0)))) A__U62(tt, length(U51(z0, z1))) -> c18(A__LENGTH(a__length(a__U51(mark(z0), z1))), MARK(length(U51(z0, z1)))) A__U62(tt, length(U52(z0))) -> c18(A__LENGTH(a__length(a__U52(mark(z0)))), MARK(length(U52(z0)))) A__U62(tt, length(isNatList(z0))) -> c18(A__LENGTH(a__length(a__isNatList(z0))), MARK(length(isNatList(z0)))) A__U62(tt, length(U61(z0, z1, z2))) -> c18(A__LENGTH(a__length(a__U61(mark(z0), z1, z2))), MARK(length(U61(z0, z1, z2)))) A__U62(tt, length(U62(z0, z1))) -> c18(A__LENGTH(a__length(a__U62(mark(z0), z1))), MARK(length(U62(z0, z1)))) A__U62(tt, length(isNat(z0))) -> c18(A__LENGTH(a__length(a__isNat(z0))), MARK(length(isNat(z0)))) A__U62(tt, length(length(z0))) -> c18(A__LENGTH(a__length(a__length(mark(z0)))), MARK(length(length(z0)))) A__U62(tt, length(cons(z0, z1))) -> c18(A__LENGTH(a__length(cons(mark(z0), z1))), MARK(length(cons(z0, z1)))) A__U62(tt, length(s(z0))) -> c18(A__LENGTH(a__length(s(mark(z0)))), MARK(length(s(z0)))) A__U62(tt, length(x0)) -> c18(MARK(length(x0))) A__U62(tt, length(0)) -> c18(A__LENGTH(a__length(0))) A__U62(tt, length(tt)) -> c18(A__LENGTH(a__length(tt))) A__U62(tt, length(nil)) -> c18(A__LENGTH(a__length(nil))) A__U62(tt, zeros) -> c18(A__LENGTH(cons(0, zeros))) A__ISNATILIST(cons(length(nil), x1)) -> c26(A__U41(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATILIST(cons(length(cons(z0, z1)), x1)) -> c26(A__U41(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(length(x0), x1)) -> c26(A__ISNAT(length(x0))) A__ISNATILIST(cons(s(0), x1)) -> c26(A__U41(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATILIST(cons(s(length(z0)), x1)) -> c26(A__U41(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATILIST(cons(s(s(z0)), x1)) -> c26(A__U41(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(s(x0), x1)) -> c26(A__ISNAT(s(x0))) A__ISNATLIST(cons(length(nil), x1)) -> c29(A__U51(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATLIST(cons(length(cons(z0, z1)), x1)) -> c29(A__U51(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(length(x0), x1)) -> c29(A__ISNAT(length(x0))) A__ISNATLIST(cons(s(0), x1)) -> c29(A__U51(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATLIST(cons(s(length(z0)), x1)) -> c29(A__U51(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATLIST(cons(s(s(z0)), x1)) -> c29(A__U51(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(s(x0), x1)) -> c29(A__ISNAT(s(x0))) A__LENGTH(cons(x0, cons(0, x2))) -> c32(A__U61(a__U51(tt, x2), cons(0, x2), x0), A__ISNATLIST(cons(0, x2))) A__LENGTH(cons(x0, cons(length(z0), x2))) -> c32(A__U61(a__U51(a__U11(a__isNatList(z0)), x2), cons(length(z0), x2), x0), A__ISNATLIST(cons(length(z0), x2))) A__LENGTH(cons(x0, cons(s(z0), x2))) -> c32(A__U61(a__U51(a__U21(a__isNat(z0)), x2), cons(s(z0), x2), x0), A__ISNATLIST(cons(s(z0), x2))) A__LENGTH(cons(x0, cons(z0, x2))) -> c32(A__U61(a__U51(isNat(z0), x2), cons(z0, x2), x0), A__ISNATLIST(cons(z0, x2))) A__LENGTH(cons(x0, cons(x1, z1))) -> c32(A__ISNATLIST(cons(x1, z1))) MARK(U41(U11(zeros), x1)) -> c38(A__U41(a__U11(a__zeros), x1), MARK(U11(zeros))) MARK(U41(U11(U11(z0)), x1)) -> c38(A__U41(a__U11(a__U11(mark(z0))), x1), MARK(U11(U11(z0)))) MARK(U41(U11(U21(z0)), x1)) -> c38(A__U41(a__U11(a__U21(mark(z0))), x1), MARK(U11(U21(z0)))) MARK(U41(U11(U31(z0)), x1)) -> c38(A__U41(a__U11(a__U31(mark(z0))), x1), MARK(U11(U31(z0)))) MARK(U41(U11(U41(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U41(mark(z0), z1)), x1), MARK(U11(U41(z0, z1)))) MARK(U41(U11(U42(z0)), x1)) -> c38(A__U41(a__U11(a__U42(mark(z0))), x1), MARK(U11(U42(z0)))) MARK(U41(U11(isNatIList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatIList(z0)), x1), MARK(U11(isNatIList(z0)))) MARK(U41(U11(U51(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U51(mark(z0), z1)), x1), MARK(U11(U51(z0, z1)))) MARK(U41(U11(U52(z0)), x1)) -> c38(A__U41(a__U11(a__U52(mark(z0))), x1), MARK(U11(U52(z0)))) MARK(U41(U11(isNatList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatList(z0)), x1), MARK(U11(isNatList(z0)))) MARK(U41(U11(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U11(a__U61(mark(z0), z1, z2)), x1), MARK(U11(U61(z0, z1, z2)))) MARK(U41(U11(U62(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U62(mark(z0), z1)), x1), MARK(U11(U62(z0, z1)))) MARK(U41(U11(isNat(z0)), x1)) -> c38(A__U41(a__U11(a__isNat(z0)), x1), MARK(U11(isNat(z0)))) MARK(U41(U11(length(z0)), x1)) -> c38(A__U41(a__U11(a__length(mark(z0))), x1), MARK(U11(length(z0)))) MARK(U41(U11(cons(z0, z1)), x1)) -> c38(A__U41(a__U11(cons(mark(z0), z1)), x1), MARK(U11(cons(z0, z1)))) MARK(U41(U11(0), x1)) -> c38(A__U41(a__U11(0), x1), MARK(U11(0))) MARK(U41(U11(tt), x1)) -> c38(A__U41(a__U11(tt), x1), MARK(U11(tt))) MARK(U41(U11(s(z0)), x1)) -> c38(A__U41(a__U11(s(mark(z0))), x1), MARK(U11(s(z0)))) MARK(U41(U11(nil), x1)) -> c38(A__U41(a__U11(nil), x1), MARK(U11(nil))) MARK(U41(U11(x0), x1)) -> c38(MARK(U11(x0))) MARK(U41(U21(zeros), x1)) -> c38(A__U41(a__U21(a__zeros), x1), MARK(U21(zeros))) MARK(U41(U21(U11(z0)), x1)) -> c38(A__U41(a__U21(a__U11(mark(z0))), x1), MARK(U21(U11(z0)))) MARK(U41(U21(U21(z0)), x1)) -> c38(A__U41(a__U21(a__U21(mark(z0))), x1), MARK(U21(U21(z0)))) MARK(U41(U21(U31(z0)), x1)) -> c38(A__U41(a__U21(a__U31(mark(z0))), x1), MARK(U21(U31(z0)))) MARK(U41(U21(U41(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U41(mark(z0), z1)), x1), MARK(U21(U41(z0, z1)))) MARK(U41(U21(U42(z0)), x1)) -> c38(A__U41(a__U21(a__U42(mark(z0))), x1), MARK(U21(U42(z0)))) MARK(U41(U21(isNatIList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatIList(z0)), x1), MARK(U21(isNatIList(z0)))) MARK(U41(U21(U51(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U51(mark(z0), z1)), x1), MARK(U21(U51(z0, z1)))) MARK(U41(U21(U52(z0)), x1)) -> c38(A__U41(a__U21(a__U52(mark(z0))), x1), MARK(U21(U52(z0)))) MARK(U41(U21(isNatList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatList(z0)), x1), MARK(U21(isNatList(z0)))) MARK(U41(U21(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U21(a__U61(mark(z0), z1, z2)), x1), MARK(U21(U61(z0, z1, z2)))) MARK(U41(U21(U62(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U62(mark(z0), z1)), x1), MARK(U21(U62(z0, z1)))) MARK(U41(U21(isNat(z0)), x1)) -> c38(A__U41(a__U21(a__isNat(z0)), x1), MARK(U21(isNat(z0)))) MARK(U41(U21(length(z0)), x1)) -> c38(A__U41(a__U21(a__length(mark(z0))), x1), MARK(U21(length(z0)))) MARK(U41(U21(cons(z0, z1)), x1)) -> c38(A__U41(a__U21(cons(mark(z0), z1)), x1), MARK(U21(cons(z0, z1)))) MARK(U41(U21(0), x1)) -> c38(A__U41(a__U21(0), x1), MARK(U21(0))) MARK(U41(U21(tt), x1)) -> c38(A__U41(a__U21(tt), x1), MARK(U21(tt))) MARK(U41(U21(s(z0)), x1)) -> c38(A__U41(a__U21(s(mark(z0))), x1), MARK(U21(s(z0)))) MARK(U41(U21(nil), x1)) -> c38(A__U41(a__U21(nil), x1), MARK(U21(nil))) MARK(U41(U21(x0), x1)) -> c38(MARK(U21(x0))) MARK(U41(U31(zeros), x1)) -> c38(A__U41(a__U31(a__zeros), x1), MARK(U31(zeros))) MARK(U41(U31(U11(z0)), x1)) -> c38(A__U41(a__U31(a__U11(mark(z0))), x1), MARK(U31(U11(z0)))) MARK(U41(U31(U21(z0)), x1)) -> c38(A__U41(a__U31(a__U21(mark(z0))), x1), MARK(U31(U21(z0)))) MARK(U41(U31(U31(z0)), x1)) -> c38(A__U41(a__U31(a__U31(mark(z0))), x1), MARK(U31(U31(z0)))) MARK(U41(U31(U41(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U41(mark(z0), z1)), x1), MARK(U31(U41(z0, z1)))) MARK(U41(U31(U42(z0)), x1)) -> c38(A__U41(a__U31(a__U42(mark(z0))), x1), MARK(U31(U42(z0)))) MARK(U41(U31(isNatIList(z0)), x1)) -> c38(A__U41(a__U31(a__isNatIList(z0)), x1), MARK(U31(isNatIList(z0)))) MARK(U41(U31(U51(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U51(mark(z0), z1)), x1), MARK(U31(U51(z0, z1)))) MARK(U41(U31(U52(z0)), x1)) -> c38(A__U41(a__U31(a__U52(mark(z0))), x1), MARK(U31(U52(z0)))) MARK(U41(U31(isNatList(z0)), x1)) -> c38(A__U41(a__U31(a__isNatList(z0)), x1), MARK(U31(isNatList(z0)))) MARK(U41(U31(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U31(a__U61(mark(z0), z1, z2)), x1), MARK(U31(U61(z0, z1, z2)))) MARK(U41(U31(U62(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U62(mark(z0), z1)), x1), MARK(U31(U62(z0, z1)))) MARK(U41(U31(isNat(z0)), x1)) -> c38(A__U41(a__U31(a__isNat(z0)), x1), MARK(U31(isNat(z0)))) MARK(U41(U31(length(z0)), x1)) -> c38(A__U41(a__U31(a__length(mark(z0))), x1), MARK(U31(length(z0)))) MARK(U41(U31(cons(z0, z1)), x1)) -> c38(A__U41(a__U31(cons(mark(z0), z1)), x1), MARK(U31(cons(z0, z1)))) MARK(U41(U31(0), x1)) -> c38(A__U41(a__U31(0), x1), MARK(U31(0))) MARK(U41(U31(tt), x1)) -> c38(A__U41(a__U31(tt), x1), MARK(U31(tt))) MARK(U41(U31(s(z0)), x1)) -> c38(A__U41(a__U31(s(mark(z0))), x1), MARK(U31(s(z0)))) MARK(U41(U31(nil), x1)) -> c38(A__U41(a__U31(nil), x1), MARK(U31(nil))) MARK(U41(U31(x0), x1)) -> c38(MARK(U31(x0))) MARK(U41(U41(U11(z0), x1), x2)) -> c38(A__U41(a__U41(a__U11(mark(z0)), x1), x2), MARK(U41(U11(z0), x1))) MARK(U41(U41(U21(z0), x1), x2)) -> c38(A__U41(a__U41(a__U21(mark(z0)), x1), x2), MARK(U41(U21(z0), x1))) MARK(U41(U41(U31(z0), x1), x2)) -> c38(A__U41(a__U41(a__U31(mark(z0)), x1), x2), MARK(U41(U31(z0), x1))) MARK(U41(U41(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U41(mark(z0), z1), x1), x2), MARK(U41(U41(z0, z1), x1))) MARK(U41(U41(U42(z0), x1), x2)) -> c38(A__U41(a__U41(a__U42(mark(z0)), x1), x2), MARK(U41(U42(z0), x1))) MARK(U41(U41(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U51(mark(z0), z1), x1), x2), MARK(U41(U51(z0, z1), x1))) MARK(U41(U41(U52(z0), x1), x2)) -> c38(A__U41(a__U41(a__U52(mark(z0)), x1), x2), MARK(U41(U52(z0), x1))) MARK(U41(U41(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U41(a__U61(mark(z0), z1, z2), x1), x2), MARK(U41(U61(z0, z1, z2), x1))) MARK(U41(U41(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U62(mark(z0), z1), x1), x2), MARK(U41(U62(z0, z1), x1))) MARK(U41(U41(length(z0), x1), x2)) -> c38(A__U41(a__U41(a__length(mark(z0)), x1), x2), MARK(U41(length(z0), x1))) MARK(U41(U41(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U41(cons(mark(z0), z1), x1), x2), MARK(U41(cons(z0, z1), x1))) MARK(U41(U41(s(z0), x1), x2)) -> c38(A__U41(a__U41(s(mark(z0)), x1), x2), MARK(U41(s(z0), x1))) MARK(U41(U41(x0, z1), x2)) -> c38(MARK(U41(x0, z1))) MARK(U41(U41(0, x1), x2)) -> c38(A__U41(a__U41(0, x1), x2)) MARK(U41(U41(nil, x1), x2)) -> c38(A__U41(a__U41(nil, x1), x2)) MARK(U41(U41(zeros, x1), x2)) -> c2(A__U41(a__U41(a__zeros, x1), x2)) MARK(U41(U41(zeros, x1), x2)) -> c2(MARK(U41(zeros, x1))) MARK(U41(U41(isNatIList(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNatIList(z0), x1), x2)) MARK(U41(U41(isNatIList(z0), x1), x2)) -> c2(MARK(U41(isNatIList(z0), x1))) MARK(U41(U41(isNatList(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNatList(z0), x1), x2)) MARK(U41(U41(isNatList(z0), x1), x2)) -> c2(MARK(U41(isNatList(z0), x1))) MARK(U41(U41(isNat(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNat(z0), x1), x2)) MARK(U41(U41(isNat(z0), x1), x2)) -> c2(MARK(U41(isNat(z0), x1))) MARK(U41(U41(tt, x1), x2)) -> c2(A__U41(a__U41(tt, x1), x2)) MARK(U41(U41(tt, x1), x2)) -> c2(MARK(U41(tt, x1))) MARK(U41(U42(zeros), x1)) -> c38(A__U41(a__U42(a__zeros), x1), MARK(U42(zeros))) MARK(U41(U42(U11(z0)), x1)) -> c38(A__U41(a__U42(a__U11(mark(z0))), x1), MARK(U42(U11(z0)))) MARK(U41(U42(U21(z0)), x1)) -> c38(A__U41(a__U42(a__U21(mark(z0))), x1), MARK(U42(U21(z0)))) MARK(U41(U42(U31(z0)), x1)) -> c38(A__U41(a__U42(a__U31(mark(z0))), x1), MARK(U42(U31(z0)))) MARK(U41(U42(U41(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U41(mark(z0), z1)), x1), MARK(U42(U41(z0, z1)))) MARK(U41(U42(U42(z0)), x1)) -> c38(A__U41(a__U42(a__U42(mark(z0))), x1), MARK(U42(U42(z0)))) MARK(U41(U42(isNatIList(z0)), x1)) -> c38(A__U41(a__U42(a__isNatIList(z0)), x1), MARK(U42(isNatIList(z0)))) MARK(U41(U42(U51(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U51(mark(z0), z1)), x1), MARK(U42(U51(z0, z1)))) MARK(U41(U42(U52(z0)), x1)) -> c38(A__U41(a__U42(a__U52(mark(z0))), x1), MARK(U42(U52(z0)))) MARK(U41(U42(isNatList(z0)), x1)) -> c38(A__U41(a__U42(a__isNatList(z0)), x1), MARK(U42(isNatList(z0)))) MARK(U41(U42(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U42(a__U61(mark(z0), z1, z2)), x1), MARK(U42(U61(z0, z1, z2)))) MARK(U41(U42(U62(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U62(mark(z0), z1)), x1), MARK(U42(U62(z0, z1)))) MARK(U41(U42(isNat(z0)), x1)) -> c38(A__U41(a__U42(a__isNat(z0)), x1), MARK(U42(isNat(z0)))) MARK(U41(U42(length(z0)), x1)) -> c38(A__U41(a__U42(a__length(mark(z0))), x1), MARK(U42(length(z0)))) MARK(U41(U42(cons(z0, z1)), x1)) -> c38(A__U41(a__U42(cons(mark(z0), z1)), x1), MARK(U42(cons(z0, z1)))) MARK(U41(U42(0), x1)) -> c38(A__U41(a__U42(0), x1), MARK(U42(0))) MARK(U41(U42(tt), x1)) -> c38(A__U41(a__U42(tt), x1), MARK(U42(tt))) MARK(U41(U42(s(z0)), x1)) -> c38(A__U41(a__U42(s(mark(z0))), x1), MARK(U42(s(z0)))) MARK(U41(U42(nil), x1)) -> c38(A__U41(a__U42(nil), x1), MARK(U42(nil))) MARK(U41(U42(x0), x1)) -> c38(MARK(U42(x0))) MARK(U41(U51(U11(z0), x1), x2)) -> c38(A__U41(a__U51(a__U11(mark(z0)), x1), x2), MARK(U51(U11(z0), x1))) MARK(U41(U51(U21(z0), x1), x2)) -> c38(A__U41(a__U51(a__U21(mark(z0)), x1), x2), MARK(U51(U21(z0), x1))) MARK(U41(U51(U31(z0), x1), x2)) -> c38(A__U41(a__U51(a__U31(mark(z0)), x1), x2), MARK(U51(U31(z0), x1))) MARK(U41(U51(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U41(mark(z0), z1), x1), x2), MARK(U51(U41(z0, z1), x1))) MARK(U41(U51(U42(z0), x1), x2)) -> c38(A__U41(a__U51(a__U42(mark(z0)), x1), x2), MARK(U51(U42(z0), x1))) MARK(U41(U51(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U51(mark(z0), z1), x1), x2), MARK(U51(U51(z0, z1), x1))) MARK(U41(U51(U52(z0), x1), x2)) -> c38(A__U41(a__U51(a__U52(mark(z0)), x1), x2), MARK(U51(U52(z0), x1))) MARK(U41(U51(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U51(a__U61(mark(z0), z1, z2), x1), x2), MARK(U51(U61(z0, z1, z2), x1))) MARK(U41(U51(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U62(mark(z0), z1), x1), x2), MARK(U51(U62(z0, z1), x1))) MARK(U41(U51(length(z0), x1), x2)) -> c38(A__U41(a__U51(a__length(mark(z0)), x1), x2), MARK(U51(length(z0), x1))) MARK(U41(U51(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U51(cons(mark(z0), z1), x1), x2), MARK(U51(cons(z0, z1), x1))) MARK(U41(U51(s(z0), x1), x2)) -> c38(A__U41(a__U51(s(mark(z0)), x1), x2), MARK(U51(s(z0), x1))) MARK(U41(U51(x0, z1), x2)) -> c38(MARK(U51(x0, z1))) MARK(U41(U51(0, x1), x2)) -> c38(A__U41(a__U51(0, x1), x2)) MARK(U41(U51(nil, x1), x2)) -> c38(A__U41(a__U51(nil, x1), x2)) MARK(U41(U51(zeros, x1), x2)) -> c3(A__U41(a__U51(a__zeros, x1), x2)) MARK(U41(U51(zeros, x1), x2)) -> c3(MARK(U51(zeros, x1))) MARK(U41(U51(isNatIList(z0), x1), x2)) -> c3(A__U41(a__U51(a__isNatIList(z0), x1), x2)) MARK(U41(U51(isNatIList(z0), x1), x2)) -> c3(MARK(U51(isNatIList(z0), x1))) MARK(U41(U51(isNatList(z0), x1), x2)) -> c3(A__U41(a__U51(a__isNatList(z0), x1), x2)) MARK(U41(U51(isNatList(z0), x1), x2)) -> c3(MARK(U51(isNatList(z0), x1))) MARK(U41(U51(isNat(z0), x1), x2)) -> c3(A__U41(a__U51(a__isNat(z0), x1), x2)) MARK(U41(U51(isNat(z0), x1), x2)) -> c3(MARK(U51(isNat(z0), x1))) MARK(U41(U51(tt, x1), x2)) -> c3(A__U41(a__U51(tt, x1), x2)) MARK(U41(U51(tt, x1), x2)) -> c3(MARK(U51(tt, x1))) MARK(U41(U52(zeros), x1)) -> c38(A__U41(a__U52(a__zeros), x1), MARK(U52(zeros))) MARK(U41(U52(U11(z0)), x1)) -> c38(A__U41(a__U52(a__U11(mark(z0))), x1), MARK(U52(U11(z0)))) MARK(U41(U52(U21(z0)), x1)) -> c38(A__U41(a__U52(a__U21(mark(z0))), x1), MARK(U52(U21(z0)))) MARK(U41(U52(U31(z0)), x1)) -> c38(A__U41(a__U52(a__U31(mark(z0))), x1), MARK(U52(U31(z0)))) MARK(U41(U52(U41(z0, z1)), x1)) -> c38(A__U41(a__U52(a__U41(mark(z0), z1)), x1), MARK(U52(U41(z0, z1)))) MARK(U41(U52(U42(z0)), x1)) -> c38(A__U41(a__U52(a__U42(mark(z0))), x1), MARK(U52(U42(z0)))) MARK(U41(U52(isNatIList(z0)), x1)) -> c38(A__U41(a__U52(a__isNatIList(z0)), x1), MARK(U52(isNatIList(z0)))) MARK(U41(U52(U51(z0, z1)), x1)) -> c38(A__U41(a__U52(a__U51(mark(z0), z1)), x1), MARK(U52(U51(z0, z1)))) MARK(U41(U52(U52(z0)), x1)) -> c38(A__U41(a__U52(a__U52(mark(z0))), x1), MARK(U52(U52(z0)))) MARK(U41(U52(isNatList(z0)), x1)) -> c38(A__U41(a__U52(a__isNatList(z0)), x1), MARK(U52(isNatList(z0)))) MARK(U41(U52(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U52(a__U61(mark(z0), z1, z2)), x1), MARK(U52(U61(z0, z1, z2)))) MARK(U41(U52(U62(z0, z1)), x1)) -> c38(A__U41(a__U52(a__U62(mark(z0), z1)), x1), MARK(U52(U62(z0, z1)))) MARK(U41(U52(isNat(z0)), x1)) -> c38(A__U41(a__U52(a__isNat(z0)), x1), MARK(U52(isNat(z0)))) MARK(U41(U52(length(z0)), x1)) -> c38(A__U41(a__U52(a__length(mark(z0))), x1), MARK(U52(length(z0)))) MARK(U41(U52(cons(z0, z1)), x1)) -> c38(A__U41(a__U52(cons(mark(z0), z1)), x1), MARK(U52(cons(z0, z1)))) MARK(U41(U52(0), x1)) -> c38(A__U41(a__U52(0), x1), MARK(U52(0))) MARK(U41(U52(tt), x1)) -> c38(A__U41(a__U52(tt), x1), MARK(U52(tt))) MARK(U41(U52(s(z0)), x1)) -> c38(A__U41(a__U52(s(mark(z0))), x1), MARK(U52(s(z0)))) MARK(U41(U52(nil), x1)) -> c38(A__U41(a__U52(nil), x1), MARK(U52(nil))) MARK(U41(U52(x0), x1)) -> c38(MARK(U52(x0))) MARK(U41(U61(zeros, x1, x2), x3)) -> c38(A__U41(a__U61(a__zeros, x1, x2), x3), MARK(U61(zeros, x1, x2))) MARK(U41(U61(U11(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U11(mark(z0)), x1, x2), x3), MARK(U61(U11(z0), x1, x2))) MARK(U41(U61(U21(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U21(mark(z0)), x1, x2), x3), MARK(U61(U21(z0), x1, x2))) MARK(U41(U61(U31(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U31(mark(z0)), x1, x2), x3), MARK(U61(U31(z0), x1, x2))) MARK(U41(U61(U41(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(a__U41(mark(z0), z1), x1, x2), x3), MARK(U61(U41(z0, z1), x1, x2))) MARK(U41(U61(U42(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U42(mark(z0)), x1, x2), x3), MARK(U61(U42(z0), x1, x2))) MARK(U41(U61(isNatIList(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__isNatIList(z0), x1, x2), x3), MARK(U61(isNatIList(z0), x1, x2))) MARK(U41(U61(U51(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(a__U51(mark(z0), z1), x1, x2), x3), MARK(U61(U51(z0, z1), x1, x2))) MARK(U41(U61(U52(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U52(mark(z0)), x1, x2), x3), MARK(U61(U52(z0), x1, x2))) MARK(U41(U61(isNatList(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__isNatList(z0), x1, x2), x3), MARK(U61(isNatList(z0), x1, x2))) MARK(U41(U61(U61(z0, z1, z2), x1, x2), x3)) -> c38(A__U41(a__U61(a__U61(mark(z0), z1, z2), x1, x2), x3), MARK(U61(U61(z0, z1, z2), x1, x2))) MARK(U41(U61(U62(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(a__U62(mark(z0), z1), x1, x2), x3), MARK(U61(U62(z0, z1), x1, x2))) MARK(U41(U61(isNat(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__isNat(z0), x1, x2), x3), MARK(U61(isNat(z0), x1, x2))) MARK(U41(U61(length(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__length(mark(z0)), x1, x2), x3), MARK(U61(length(z0), x1, x2))) MARK(U41(U61(cons(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(cons(mark(z0), z1), x1, x2), x3), MARK(U61(cons(z0, z1), x1, x2))) MARK(U41(U61(tt, x1, x2), x3)) -> c38(A__U41(a__U61(tt, x1, x2), x3), MARK(U61(tt, x1, x2))) MARK(U41(U61(s(z0), x1, x2), x3)) -> c38(A__U41(a__U61(s(mark(z0)), x1, x2), x3), MARK(U61(s(z0), x1, x2))) MARK(U41(U61(x0, z1, z2), x3)) -> c38(MARK(U61(x0, z1, z2))) MARK(U41(U61(0, x1, x2), x3)) -> c38(A__U41(a__U61(0, x1, x2), x3)) MARK(U41(U61(nil, x1, x2), x3)) -> c38(A__U41(a__U61(nil, x1, x2), x3)) MARK(U41(U62(x0, z1), x2)) -> c38(A__U41(U62(mark(x0), z1), x2), MARK(U62(x0, z1))) MARK(U41(U62(zeros, x1), x2)) -> c38(A__U41(a__U62(a__zeros, x1), x2), MARK(U62(zeros, x1))) MARK(U41(U62(U11(z0), x1), x2)) -> c38(A__U41(a__U62(a__U11(mark(z0)), x1), x2), MARK(U62(U11(z0), x1))) MARK(U41(U62(U21(z0), x1), x2)) -> c38(A__U41(a__U62(a__U21(mark(z0)), x1), x2), MARK(U62(U21(z0), x1))) MARK(U41(U62(U31(z0), x1), x2)) -> c38(A__U41(a__U62(a__U31(mark(z0)), x1), x2), MARK(U62(U31(z0), x1))) MARK(U41(U62(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U62(a__U41(mark(z0), z1), x1), x2), MARK(U62(U41(z0, z1), x1))) MARK(U41(U62(U42(z0), x1), x2)) -> c38(A__U41(a__U62(a__U42(mark(z0)), x1), x2), MARK(U62(U42(z0), x1))) MARK(U41(U62(isNatIList(z0), x1), x2)) -> c38(A__U41(a__U62(a__isNatIList(z0), x1), x2), MARK(U62(isNatIList(z0), x1))) MARK(U41(U62(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U62(a__U51(mark(z0), z1), x1), x2), MARK(U62(U51(z0, z1), x1))) MARK(U41(U62(U52(z0), x1), x2)) -> c38(A__U41(a__U62(a__U52(mark(z0)), x1), x2), MARK(U62(U52(z0), x1))) MARK(U41(U62(isNatList(z0), x1), x2)) -> c38(A__U41(a__U62(a__isNatList(z0), x1), x2), MARK(U62(isNatList(z0), x1))) MARK(U41(U62(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U62(a__U61(mark(z0), z1, z2), x1), x2), MARK(U62(U61(z0, z1, z2), x1))) MARK(U41(U62(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U62(a__U62(mark(z0), z1), x1), x2), MARK(U62(U62(z0, z1), x1))) MARK(U41(U62(isNat(z0), x1), x2)) -> c38(A__U41(a__U62(a__isNat(z0), x1), x2), MARK(U62(isNat(z0), x1))) MARK(U41(U62(length(z0), x1), x2)) -> c38(A__U41(a__U62(a__length(mark(z0)), x1), x2), MARK(U62(length(z0), x1))) MARK(U41(U62(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U62(cons(mark(z0), z1), x1), x2), MARK(U62(cons(z0, z1), x1))) MARK(U41(U62(0, x1), x2)) -> c38(A__U41(a__U62(0, x1), x2), MARK(U62(0, x1))) MARK(U41(U62(tt, x1), x2)) -> c38(A__U41(a__U62(tt, x1), x2), MARK(U62(tt, x1))) MARK(U41(U62(s(z0), x1), x2)) -> c38(A__U41(a__U62(s(mark(z0)), x1), x2), MARK(U62(s(z0), x1))) MARK(U41(U62(nil, x1), x2)) -> c38(A__U41(a__U62(nil, x1), x2), MARK(U62(nil, x1))) S tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) A__U62(tt, isNatList(cons(z0, z1))) -> c18(A__LENGTH(a__U51(a__isNat(z0), z1)), MARK(isNatList(cons(z0, z1)))) A__U62(tt, isNatList(nil)) -> c18(MARK(isNatList(nil))) A__U62(tt, isNatList(z0)) -> c18(MARK(isNatList(z0))) A__U62(tt, U61(zeros, x1, x2)) -> c18(A__LENGTH(a__U61(a__zeros, x1, x2)), MARK(U61(zeros, x1, x2))) A__U62(tt, U61(U11(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U11(mark(z0)), x1, x2)), MARK(U61(U11(z0), x1, x2))) A__U62(tt, U61(U21(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U21(mark(z0)), x1, x2)), MARK(U61(U21(z0), x1, x2))) A__U62(tt, U61(U31(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U31(mark(z0)), x1, x2)), MARK(U61(U31(z0), x1, x2))) A__U62(tt, U61(U41(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U41(mark(z0), z1), x1, x2)), MARK(U61(U41(z0, z1), x1, x2))) A__U62(tt, U61(U42(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U42(mark(z0)), x1, x2)), MARK(U61(U42(z0), x1, x2))) A__U62(tt, U61(isNatIList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatIList(z0), x1, x2)), MARK(U61(isNatIList(z0), x1, x2))) A__U62(tt, U61(U51(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U51(mark(z0), z1), x1, x2)), MARK(U61(U51(z0, z1), x1, x2))) A__U62(tt, U61(U52(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U52(mark(z0)), x1, x2)), MARK(U61(U52(z0), x1, x2))) A__U62(tt, U61(isNatList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatList(z0), x1, x2)), MARK(U61(isNatList(z0), x1, x2))) A__U62(tt, U61(U61(z0, z1, z2), x1, x2)) -> c18(A__LENGTH(a__U61(a__U61(mark(z0), z1, z2), x1, x2)), MARK(U61(U61(z0, z1, z2), x1, x2))) A__U62(tt, U61(U62(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U62(mark(z0), z1), x1, x2)), MARK(U61(U62(z0, z1), x1, x2))) A__U62(tt, U61(isNat(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNat(z0), x1, x2)), MARK(U61(isNat(z0), x1, x2))) A__U62(tt, U61(length(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__length(mark(z0)), x1, x2)), MARK(U61(length(z0), x1, x2))) A__U62(tt, U61(cons(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(cons(mark(z0), z1), x1, x2)), MARK(U61(cons(z0, z1), x1, x2))) A__U62(tt, U61(tt, x1, x2)) -> c18(A__LENGTH(a__U61(tt, x1, x2)), MARK(U61(tt, x1, x2))) A__U62(tt, U61(s(z0), x1, x2)) -> c18(A__LENGTH(a__U61(s(mark(z0)), x1, x2)), MARK(U61(s(z0), x1, x2))) A__U62(tt, U61(x0, z1, z2)) -> c18(MARK(U61(x0, z1, z2))) A__U62(tt, U61(0, x1, x2)) -> c18(A__LENGTH(a__U61(0, x1, x2))) A__U62(tt, U61(nil, x1, x2)) -> c18(A__LENGTH(a__U61(nil, x1, x2))) A__U62(tt, U62(zeros, x1)) -> c18(A__LENGTH(a__U62(a__zeros, x1)), MARK(U62(zeros, x1))) A__U62(tt, U62(U11(z0), x1)) -> c18(A__LENGTH(a__U62(a__U11(mark(z0)), x1)), MARK(U62(U11(z0), x1))) A__U62(tt, U62(U21(z0), x1)) -> c18(A__LENGTH(a__U62(a__U21(mark(z0)), x1)), MARK(U62(U21(z0), x1))) A__U62(tt, U62(U31(z0), x1)) -> c18(A__LENGTH(a__U62(a__U31(mark(z0)), x1)), MARK(U62(U31(z0), x1))) A__U62(tt, U62(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U41(mark(z0), z1), x1)), MARK(U62(U41(z0, z1), x1))) A__U62(tt, U62(U42(z0), x1)) -> c18(A__LENGTH(a__U62(a__U42(mark(z0)), x1)), MARK(U62(U42(z0), x1))) A__U62(tt, U62(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatIList(z0), x1)), MARK(U62(isNatIList(z0), x1))) A__U62(tt, U62(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U51(mark(z0), z1), x1)), MARK(U62(U51(z0, z1), x1))) A__U62(tt, U62(U52(z0), x1)) -> c18(A__LENGTH(a__U62(a__U52(mark(z0)), x1)), MARK(U62(U52(z0), x1))) A__U62(tt, U62(isNatList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatList(z0), x1)), MARK(U62(isNatList(z0), x1))) A__U62(tt, U62(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U62(a__U61(mark(z0), z1, z2), x1)), MARK(U62(U61(z0, z1, z2), x1))) A__U62(tt, U62(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U62(mark(z0), z1), x1)), MARK(U62(U62(z0, z1), x1))) A__U62(tt, U62(isNat(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNat(z0), x1)), MARK(U62(isNat(z0), x1))) A__U62(tt, U62(length(z0), x1)) -> c18(A__LENGTH(a__U62(a__length(mark(z0)), x1)), MARK(U62(length(z0), x1))) A__U62(tt, U62(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U62(cons(mark(z0), z1), x1)), MARK(U62(cons(z0, z1), x1))) A__U62(tt, U62(tt, x1)) -> c18(A__LENGTH(a__U62(tt, x1)), MARK(U62(tt, x1))) A__U62(tt, U62(s(z0), x1)) -> c18(A__LENGTH(a__U62(s(mark(z0)), x1)), MARK(U62(s(z0), x1))) A__U62(tt, U62(x0, z1)) -> c18(MARK(U62(x0, z1))) A__U62(tt, U62(0, x1)) -> c18(A__LENGTH(a__U62(0, x1))) A__U62(tt, U62(nil, x1)) -> c18(A__LENGTH(a__U62(nil, x1))) A__U62(tt, isNat(length(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(isNat(length(z0)))) A__U62(tt, isNat(s(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(isNat(s(z0)))) A__U62(tt, isNat(0)) -> c18(MARK(isNat(0))) A__U62(tt, isNat(z0)) -> c18(MARK(isNat(z0))) A__U62(tt, length(zeros)) -> c18(A__LENGTH(a__length(a__zeros)), MARK(length(zeros))) A__U62(tt, length(U11(z0))) -> c18(A__LENGTH(a__length(a__U11(mark(z0)))), MARK(length(U11(z0)))) A__U62(tt, length(U21(z0))) -> c18(A__LENGTH(a__length(a__U21(mark(z0)))), MARK(length(U21(z0)))) A__U62(tt, length(U31(z0))) -> c18(A__LENGTH(a__length(a__U31(mark(z0)))), MARK(length(U31(z0)))) A__U62(tt, length(U41(z0, z1))) -> c18(A__LENGTH(a__length(a__U41(mark(z0), z1))), MARK(length(U41(z0, z1)))) A__U62(tt, length(U42(z0))) -> c18(A__LENGTH(a__length(a__U42(mark(z0)))), MARK(length(U42(z0)))) A__U62(tt, length(isNatIList(z0))) -> c18(A__LENGTH(a__length(a__isNatIList(z0))), MARK(length(isNatIList(z0)))) A__U62(tt, length(U51(z0, z1))) -> c18(A__LENGTH(a__length(a__U51(mark(z0), z1))), MARK(length(U51(z0, z1)))) A__U62(tt, length(U52(z0))) -> c18(A__LENGTH(a__length(a__U52(mark(z0)))), MARK(length(U52(z0)))) A__U62(tt, length(isNatList(z0))) -> c18(A__LENGTH(a__length(a__isNatList(z0))), MARK(length(isNatList(z0)))) A__U62(tt, length(U61(z0, z1, z2))) -> c18(A__LENGTH(a__length(a__U61(mark(z0), z1, z2))), MARK(length(U61(z0, z1, z2)))) A__U62(tt, length(U62(z0, z1))) -> c18(A__LENGTH(a__length(a__U62(mark(z0), z1))), MARK(length(U62(z0, z1)))) A__U62(tt, length(isNat(z0))) -> c18(A__LENGTH(a__length(a__isNat(z0))), MARK(length(isNat(z0)))) A__U62(tt, length(length(z0))) -> c18(A__LENGTH(a__length(a__length(mark(z0)))), MARK(length(length(z0)))) A__U62(tt, length(cons(z0, z1))) -> c18(A__LENGTH(a__length(cons(mark(z0), z1))), MARK(length(cons(z0, z1)))) A__U62(tt, length(s(z0))) -> c18(A__LENGTH(a__length(s(mark(z0)))), MARK(length(s(z0)))) A__U62(tt, length(x0)) -> c18(MARK(length(x0))) A__U62(tt, length(0)) -> c18(A__LENGTH(a__length(0))) A__U62(tt, length(tt)) -> c18(A__LENGTH(a__length(tt))) A__U62(tt, length(nil)) -> c18(A__LENGTH(a__length(nil))) A__U62(tt, zeros) -> c18(A__LENGTH(cons(0, zeros))) A__ISNATILIST(cons(length(nil), x1)) -> c26(A__U41(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATILIST(cons(length(cons(z0, z1)), x1)) -> c26(A__U41(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(length(x0), x1)) -> c26(A__ISNAT(length(x0))) A__ISNATILIST(cons(s(0), x1)) -> c26(A__U41(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATILIST(cons(s(length(z0)), x1)) -> c26(A__U41(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATILIST(cons(s(s(z0)), x1)) -> c26(A__U41(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(s(x0), x1)) -> c26(A__ISNAT(s(x0))) A__ISNATLIST(cons(length(nil), x1)) -> c29(A__U51(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATLIST(cons(length(cons(z0, z1)), x1)) -> c29(A__U51(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(length(x0), x1)) -> c29(A__ISNAT(length(x0))) A__ISNATLIST(cons(s(0), x1)) -> c29(A__U51(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATLIST(cons(s(length(z0)), x1)) -> c29(A__U51(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATLIST(cons(s(s(z0)), x1)) -> c29(A__U51(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(s(x0), x1)) -> c29(A__ISNAT(s(x0))) A__LENGTH(cons(x0, cons(0, x2))) -> c32(A__U61(a__U51(tt, x2), cons(0, x2), x0), A__ISNATLIST(cons(0, x2))) A__LENGTH(cons(x0, cons(length(z0), x2))) -> c32(A__U61(a__U51(a__U11(a__isNatList(z0)), x2), cons(length(z0), x2), x0), A__ISNATLIST(cons(length(z0), x2))) A__LENGTH(cons(x0, cons(s(z0), x2))) -> c32(A__U61(a__U51(a__U21(a__isNat(z0)), x2), cons(s(z0), x2), x0), A__ISNATLIST(cons(s(z0), x2))) A__LENGTH(cons(x0, cons(z0, x2))) -> c32(A__U61(a__U51(isNat(z0), x2), cons(z0, x2), x0), A__ISNATLIST(cons(z0, x2))) A__LENGTH(cons(x0, cons(x1, z1))) -> c32(A__ISNATLIST(cons(x1, z1))) MARK(U41(U11(zeros), x1)) -> c38(A__U41(a__U11(a__zeros), x1), MARK(U11(zeros))) MARK(U41(U11(U11(z0)), x1)) -> c38(A__U41(a__U11(a__U11(mark(z0))), x1), MARK(U11(U11(z0)))) MARK(U41(U11(U21(z0)), x1)) -> c38(A__U41(a__U11(a__U21(mark(z0))), x1), MARK(U11(U21(z0)))) MARK(U41(U11(U31(z0)), x1)) -> c38(A__U41(a__U11(a__U31(mark(z0))), x1), MARK(U11(U31(z0)))) MARK(U41(U11(U41(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U41(mark(z0), z1)), x1), MARK(U11(U41(z0, z1)))) MARK(U41(U11(U42(z0)), x1)) -> c38(A__U41(a__U11(a__U42(mark(z0))), x1), MARK(U11(U42(z0)))) MARK(U41(U11(isNatIList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatIList(z0)), x1), MARK(U11(isNatIList(z0)))) MARK(U41(U11(U51(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U51(mark(z0), z1)), x1), MARK(U11(U51(z0, z1)))) MARK(U41(U11(U52(z0)), x1)) -> c38(A__U41(a__U11(a__U52(mark(z0))), x1), MARK(U11(U52(z0)))) MARK(U41(U11(isNatList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatList(z0)), x1), MARK(U11(isNatList(z0)))) MARK(U41(U11(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U11(a__U61(mark(z0), z1, z2)), x1), MARK(U11(U61(z0, z1, z2)))) MARK(U41(U11(U62(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U62(mark(z0), z1)), x1), MARK(U11(U62(z0, z1)))) MARK(U41(U11(isNat(z0)), x1)) -> c38(A__U41(a__U11(a__isNat(z0)), x1), MARK(U11(isNat(z0)))) MARK(U41(U11(length(z0)), x1)) -> c38(A__U41(a__U11(a__length(mark(z0))), x1), MARK(U11(length(z0)))) MARK(U41(U11(cons(z0, z1)), x1)) -> c38(A__U41(a__U11(cons(mark(z0), z1)), x1), MARK(U11(cons(z0, z1)))) MARK(U41(U11(0), x1)) -> c38(A__U41(a__U11(0), x1), MARK(U11(0))) MARK(U41(U11(tt), x1)) -> c38(A__U41(a__U11(tt), x1), MARK(U11(tt))) MARK(U41(U11(s(z0)), x1)) -> c38(A__U41(a__U11(s(mark(z0))), x1), MARK(U11(s(z0)))) MARK(U41(U11(nil), x1)) -> c38(A__U41(a__U11(nil), x1), MARK(U11(nil))) MARK(U41(U11(x0), x1)) -> c38(MARK(U11(x0))) MARK(U41(U21(zeros), x1)) -> c38(A__U41(a__U21(a__zeros), x1), MARK(U21(zeros))) MARK(U41(U21(U11(z0)), x1)) -> c38(A__U41(a__U21(a__U11(mark(z0))), x1), MARK(U21(U11(z0)))) MARK(U41(U21(U21(z0)), x1)) -> c38(A__U41(a__U21(a__U21(mark(z0))), x1), MARK(U21(U21(z0)))) MARK(U41(U21(U31(z0)), x1)) -> c38(A__U41(a__U21(a__U31(mark(z0))), x1), MARK(U21(U31(z0)))) MARK(U41(U21(U41(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U41(mark(z0), z1)), x1), MARK(U21(U41(z0, z1)))) MARK(U41(U21(U42(z0)), x1)) -> c38(A__U41(a__U21(a__U42(mark(z0))), x1), MARK(U21(U42(z0)))) MARK(U41(U21(isNatIList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatIList(z0)), x1), MARK(U21(isNatIList(z0)))) MARK(U41(U21(U51(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U51(mark(z0), z1)), x1), MARK(U21(U51(z0, z1)))) MARK(U41(U21(U52(z0)), x1)) -> c38(A__U41(a__U21(a__U52(mark(z0))), x1), MARK(U21(U52(z0)))) MARK(U41(U21(isNatList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatList(z0)), x1), MARK(U21(isNatList(z0)))) MARK(U41(U21(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U21(a__U61(mark(z0), z1, z2)), x1), MARK(U21(U61(z0, z1, z2)))) MARK(U41(U21(U62(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U62(mark(z0), z1)), x1), MARK(U21(U62(z0, z1)))) MARK(U41(U21(isNat(z0)), x1)) -> c38(A__U41(a__U21(a__isNat(z0)), x1), MARK(U21(isNat(z0)))) MARK(U41(U21(length(z0)), x1)) -> c38(A__U41(a__U21(a__length(mark(z0))), x1), MARK(U21(length(z0)))) MARK(U41(U21(cons(z0, z1)), x1)) -> c38(A__U41(a__U21(cons(mark(z0), z1)), x1), MARK(U21(cons(z0, z1)))) MARK(U41(U21(0), x1)) -> c38(A__U41(a__U21(0), x1), MARK(U21(0))) MARK(U41(U21(tt), x1)) -> c38(A__U41(a__U21(tt), x1), MARK(U21(tt))) MARK(U41(U21(s(z0)), x1)) -> c38(A__U41(a__U21(s(mark(z0))), x1), MARK(U21(s(z0)))) MARK(U41(U21(nil), x1)) -> c38(A__U41(a__U21(nil), x1), MARK(U21(nil))) MARK(U41(U21(x0), x1)) -> c38(MARK(U21(x0))) MARK(U41(U31(zeros), x1)) -> c38(A__U41(a__U31(a__zeros), x1), MARK(U31(zeros))) MARK(U41(U31(U11(z0)), x1)) -> c38(A__U41(a__U31(a__U11(mark(z0))), x1), MARK(U31(U11(z0)))) MARK(U41(U31(U21(z0)), x1)) -> c38(A__U41(a__U31(a__U21(mark(z0))), x1), MARK(U31(U21(z0)))) MARK(U41(U31(U31(z0)), x1)) -> c38(A__U41(a__U31(a__U31(mark(z0))), x1), MARK(U31(U31(z0)))) MARK(U41(U31(U41(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U41(mark(z0), z1)), x1), MARK(U31(U41(z0, z1)))) MARK(U41(U31(U42(z0)), x1)) -> c38(A__U41(a__U31(a__U42(mark(z0))), x1), MARK(U31(U42(z0)))) MARK(U41(U31(isNatIList(z0)), x1)) -> c38(A__U41(a__U31(a__isNatIList(z0)), x1), MARK(U31(isNatIList(z0)))) MARK(U41(U31(U51(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U51(mark(z0), z1)), x1), MARK(U31(U51(z0, z1)))) MARK(U41(U31(U52(z0)), x1)) -> c38(A__U41(a__U31(a__U52(mark(z0))), x1), MARK(U31(U52(z0)))) MARK(U41(U31(isNatList(z0)), x1)) -> c38(A__U41(a__U31(a__isNatList(z0)), x1), MARK(U31(isNatList(z0)))) MARK(U41(U31(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U31(a__U61(mark(z0), z1, z2)), x1), MARK(U31(U61(z0, z1, z2)))) MARK(U41(U31(U62(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U62(mark(z0), z1)), x1), MARK(U31(U62(z0, z1)))) MARK(U41(U31(isNat(z0)), x1)) -> c38(A__U41(a__U31(a__isNat(z0)), x1), MARK(U31(isNat(z0)))) MARK(U41(U31(length(z0)), x1)) -> c38(A__U41(a__U31(a__length(mark(z0))), x1), MARK(U31(length(z0)))) MARK(U41(U31(cons(z0, z1)), x1)) -> c38(A__U41(a__U31(cons(mark(z0), z1)), x1), MARK(U31(cons(z0, z1)))) MARK(U41(U31(0), x1)) -> c38(A__U41(a__U31(0), x1), MARK(U31(0))) MARK(U41(U31(tt), x1)) -> c38(A__U41(a__U31(tt), x1), MARK(U31(tt))) MARK(U41(U31(s(z0)), x1)) -> c38(A__U41(a__U31(s(mark(z0))), x1), MARK(U31(s(z0)))) MARK(U41(U31(nil), x1)) -> c38(A__U41(a__U31(nil), x1), MARK(U31(nil))) MARK(U41(U31(x0), x1)) -> c38(MARK(U31(x0))) MARK(U41(U41(U11(z0), x1), x2)) -> c38(A__U41(a__U41(a__U11(mark(z0)), x1), x2), MARK(U41(U11(z0), x1))) MARK(U41(U41(U21(z0), x1), x2)) -> c38(A__U41(a__U41(a__U21(mark(z0)), x1), x2), MARK(U41(U21(z0), x1))) MARK(U41(U41(U31(z0), x1), x2)) -> c38(A__U41(a__U41(a__U31(mark(z0)), x1), x2), MARK(U41(U31(z0), x1))) MARK(U41(U41(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U41(mark(z0), z1), x1), x2), MARK(U41(U41(z0, z1), x1))) MARK(U41(U41(U42(z0), x1), x2)) -> c38(A__U41(a__U41(a__U42(mark(z0)), x1), x2), MARK(U41(U42(z0), x1))) MARK(U41(U41(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U51(mark(z0), z1), x1), x2), MARK(U41(U51(z0, z1), x1))) MARK(U41(U41(U52(z0), x1), x2)) -> c38(A__U41(a__U41(a__U52(mark(z0)), x1), x2), MARK(U41(U52(z0), x1))) MARK(U41(U41(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U41(a__U61(mark(z0), z1, z2), x1), x2), MARK(U41(U61(z0, z1, z2), x1))) MARK(U41(U41(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U62(mark(z0), z1), x1), x2), MARK(U41(U62(z0, z1), x1))) MARK(U41(U41(length(z0), x1), x2)) -> c38(A__U41(a__U41(a__length(mark(z0)), x1), x2), MARK(U41(length(z0), x1))) MARK(U41(U41(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U41(cons(mark(z0), z1), x1), x2), MARK(U41(cons(z0, z1), x1))) MARK(U41(U41(s(z0), x1), x2)) -> c38(A__U41(a__U41(s(mark(z0)), x1), x2), MARK(U41(s(z0), x1))) MARK(U41(U41(x0, z1), x2)) -> c38(MARK(U41(x0, z1))) MARK(U41(U41(0, x1), x2)) -> c38(A__U41(a__U41(0, x1), x2)) MARK(U41(U41(nil, x1), x2)) -> c38(A__U41(a__U41(nil, x1), x2)) MARK(U41(U41(zeros, x1), x2)) -> c2(A__U41(a__U41(a__zeros, x1), x2)) MARK(U41(U41(zeros, x1), x2)) -> c2(MARK(U41(zeros, x1))) MARK(U41(U41(isNatIList(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNatIList(z0), x1), x2)) MARK(U41(U41(isNatIList(z0), x1), x2)) -> c2(MARK(U41(isNatIList(z0), x1))) MARK(U41(U41(isNatList(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNatList(z0), x1), x2)) MARK(U41(U41(isNatList(z0), x1), x2)) -> c2(MARK(U41(isNatList(z0), x1))) MARK(U41(U41(isNat(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNat(z0), x1), x2)) MARK(U41(U41(isNat(z0), x1), x2)) -> c2(MARK(U41(isNat(z0), x1))) MARK(U41(U41(tt, x1), x2)) -> c2(A__U41(a__U41(tt, x1), x2)) MARK(U41(U41(tt, x1), x2)) -> c2(MARK(U41(tt, x1))) MARK(U41(U42(zeros), x1)) -> c38(A__U41(a__U42(a__zeros), x1), MARK(U42(zeros))) MARK(U41(U42(U11(z0)), x1)) -> c38(A__U41(a__U42(a__U11(mark(z0))), x1), MARK(U42(U11(z0)))) MARK(U41(U42(U21(z0)), x1)) -> c38(A__U41(a__U42(a__U21(mark(z0))), x1), MARK(U42(U21(z0)))) MARK(U41(U42(U31(z0)), x1)) -> c38(A__U41(a__U42(a__U31(mark(z0))), x1), MARK(U42(U31(z0)))) MARK(U41(U42(U41(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U41(mark(z0), z1)), x1), MARK(U42(U41(z0, z1)))) MARK(U41(U42(U42(z0)), x1)) -> c38(A__U41(a__U42(a__U42(mark(z0))), x1), MARK(U42(U42(z0)))) MARK(U41(U42(isNatIList(z0)), x1)) -> c38(A__U41(a__U42(a__isNatIList(z0)), x1), MARK(U42(isNatIList(z0)))) MARK(U41(U42(U51(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U51(mark(z0), z1)), x1), MARK(U42(U51(z0, z1)))) MARK(U41(U42(U52(z0)), x1)) -> c38(A__U41(a__U42(a__U52(mark(z0))), x1), MARK(U42(U52(z0)))) MARK(U41(U42(isNatList(z0)), x1)) -> c38(A__U41(a__U42(a__isNatList(z0)), x1), MARK(U42(isNatList(z0)))) MARK(U41(U42(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U42(a__U61(mark(z0), z1, z2)), x1), MARK(U42(U61(z0, z1, z2)))) MARK(U41(U42(U62(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U62(mark(z0), z1)), x1), MARK(U42(U62(z0, z1)))) MARK(U41(U42(isNat(z0)), x1)) -> c38(A__U41(a__U42(a__isNat(z0)), x1), MARK(U42(isNat(z0)))) MARK(U41(U42(length(z0)), x1)) -> c38(A__U41(a__U42(a__length(mark(z0))), x1), MARK(U42(length(z0)))) MARK(U41(U42(cons(z0, z1)), x1)) -> c38(A__U41(a__U42(cons(mark(z0), z1)), x1), MARK(U42(cons(z0, z1)))) MARK(U41(U42(0), x1)) -> c38(A__U41(a__U42(0), x1), MARK(U42(0))) MARK(U41(U42(tt), x1)) -> c38(A__U41(a__U42(tt), x1), MARK(U42(tt))) MARK(U41(U42(s(z0)), x1)) -> c38(A__U41(a__U42(s(mark(z0))), x1), MARK(U42(s(z0)))) MARK(U41(U42(nil), x1)) -> c38(A__U41(a__U42(nil), x1), MARK(U42(nil))) MARK(U41(U42(x0), x1)) -> c38(MARK(U42(x0))) MARK(U41(U51(U11(z0), x1), x2)) -> c38(A__U41(a__U51(a__U11(mark(z0)), x1), x2), MARK(U51(U11(z0), x1))) MARK(U41(U51(U21(z0), x1), x2)) -> c38(A__U41(a__U51(a__U21(mark(z0)), x1), x2), MARK(U51(U21(z0), x1))) MARK(U41(U51(U31(z0), x1), x2)) -> c38(A__U41(a__U51(a__U31(mark(z0)), x1), x2), MARK(U51(U31(z0), x1))) MARK(U41(U51(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U41(mark(z0), z1), x1), x2), MARK(U51(U41(z0, z1), x1))) MARK(U41(U51(U42(z0), x1), x2)) -> c38(A__U41(a__U51(a__U42(mark(z0)), x1), x2), MARK(U51(U42(z0), x1))) MARK(U41(U51(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U51(mark(z0), z1), x1), x2), MARK(U51(U51(z0, z1), x1))) MARK(U41(U51(U52(z0), x1), x2)) -> c38(A__U41(a__U51(a__U52(mark(z0)), x1), x2), MARK(U51(U52(z0), x1))) MARK(U41(U51(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U51(a__U61(mark(z0), z1, z2), x1), x2), MARK(U51(U61(z0, z1, z2), x1))) MARK(U41(U51(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U62(mark(z0), z1), x1), x2), MARK(U51(U62(z0, z1), x1))) MARK(U41(U51(length(z0), x1), x2)) -> c38(A__U41(a__U51(a__length(mark(z0)), x1), x2), MARK(U51(length(z0), x1))) MARK(U41(U51(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U51(cons(mark(z0), z1), x1), x2), MARK(U51(cons(z0, z1), x1))) MARK(U41(U51(s(z0), x1), x2)) -> c38(A__U41(a__U51(s(mark(z0)), x1), x2), MARK(U51(s(z0), x1))) MARK(U41(U51(x0, z1), x2)) -> c38(MARK(U51(x0, z1))) MARK(U41(U51(0, x1), x2)) -> c38(A__U41(a__U51(0, x1), x2)) MARK(U41(U51(nil, x1), x2)) -> c38(A__U41(a__U51(nil, x1), x2)) MARK(U41(U51(zeros, x1), x2)) -> c3(A__U41(a__U51(a__zeros, x1), x2)) MARK(U41(U51(zeros, x1), x2)) -> c3(MARK(U51(zeros, x1))) MARK(U41(U51(isNatIList(z0), x1), x2)) -> c3(A__U41(a__U51(a__isNatIList(z0), x1), x2)) MARK(U41(U51(isNatIList(z0), x1), x2)) -> c3(MARK(U51(isNatIList(z0), x1))) MARK(U41(U51(isNatList(z0), x1), x2)) -> c3(A__U41(a__U51(a__isNatList(z0), x1), x2)) MARK(U41(U51(isNatList(z0), x1), x2)) -> c3(MARK(U51(isNatList(z0), x1))) MARK(U41(U51(isNat(z0), x1), x2)) -> c3(A__U41(a__U51(a__isNat(z0), x1), x2)) MARK(U41(U51(isNat(z0), x1), x2)) -> c3(MARK(U51(isNat(z0), x1))) MARK(U41(U51(tt, x1), x2)) -> c3(A__U41(a__U51(tt, x1), x2)) MARK(U41(U51(tt, x1), x2)) -> c3(MARK(U51(tt, x1))) MARK(U41(U52(zeros), x1)) -> c38(A__U41(a__U52(a__zeros), x1), MARK(U52(zeros))) MARK(U41(U52(U11(z0)), x1)) -> c38(A__U41(a__U52(a__U11(mark(z0))), x1), MARK(U52(U11(z0)))) MARK(U41(U52(U21(z0)), x1)) -> c38(A__U41(a__U52(a__U21(mark(z0))), x1), MARK(U52(U21(z0)))) MARK(U41(U52(U31(z0)), x1)) -> c38(A__U41(a__U52(a__U31(mark(z0))), x1), MARK(U52(U31(z0)))) MARK(U41(U52(U41(z0, z1)), x1)) -> c38(A__U41(a__U52(a__U41(mark(z0), z1)), x1), MARK(U52(U41(z0, z1)))) MARK(U41(U52(U42(z0)), x1)) -> c38(A__U41(a__U52(a__U42(mark(z0))), x1), MARK(U52(U42(z0)))) MARK(U41(U52(isNatIList(z0)), x1)) -> c38(A__U41(a__U52(a__isNatIList(z0)), x1), MARK(U52(isNatIList(z0)))) MARK(U41(U52(U51(z0, z1)), x1)) -> c38(A__U41(a__U52(a__U51(mark(z0), z1)), x1), MARK(U52(U51(z0, z1)))) MARK(U41(U52(U52(z0)), x1)) -> c38(A__U41(a__U52(a__U52(mark(z0))), x1), MARK(U52(U52(z0)))) MARK(U41(U52(isNatList(z0)), x1)) -> c38(A__U41(a__U52(a__isNatList(z0)), x1), MARK(U52(isNatList(z0)))) MARK(U41(U52(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U52(a__U61(mark(z0), z1, z2)), x1), MARK(U52(U61(z0, z1, z2)))) MARK(U41(U52(U62(z0, z1)), x1)) -> c38(A__U41(a__U52(a__U62(mark(z0), z1)), x1), MARK(U52(U62(z0, z1)))) MARK(U41(U52(isNat(z0)), x1)) -> c38(A__U41(a__U52(a__isNat(z0)), x1), MARK(U52(isNat(z0)))) MARK(U41(U52(length(z0)), x1)) -> c38(A__U41(a__U52(a__length(mark(z0))), x1), MARK(U52(length(z0)))) MARK(U41(U52(cons(z0, z1)), x1)) -> c38(A__U41(a__U52(cons(mark(z0), z1)), x1), MARK(U52(cons(z0, z1)))) MARK(U41(U52(0), x1)) -> c38(A__U41(a__U52(0), x1), MARK(U52(0))) MARK(U41(U52(tt), x1)) -> c38(A__U41(a__U52(tt), x1), MARK(U52(tt))) MARK(U41(U52(s(z0)), x1)) -> c38(A__U41(a__U52(s(mark(z0))), x1), MARK(U52(s(z0)))) MARK(U41(U52(nil), x1)) -> c38(A__U41(a__U52(nil), x1), MARK(U52(nil))) MARK(U41(U52(x0), x1)) -> c38(MARK(U52(x0))) MARK(U41(U61(zeros, x1, x2), x3)) -> c38(A__U41(a__U61(a__zeros, x1, x2), x3), MARK(U61(zeros, x1, x2))) MARK(U41(U61(U11(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U11(mark(z0)), x1, x2), x3), MARK(U61(U11(z0), x1, x2))) MARK(U41(U61(U21(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U21(mark(z0)), x1, x2), x3), MARK(U61(U21(z0), x1, x2))) MARK(U41(U61(U31(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U31(mark(z0)), x1, x2), x3), MARK(U61(U31(z0), x1, x2))) MARK(U41(U61(U41(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(a__U41(mark(z0), z1), x1, x2), x3), MARK(U61(U41(z0, z1), x1, x2))) MARK(U41(U61(U42(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U42(mark(z0)), x1, x2), x3), MARK(U61(U42(z0), x1, x2))) MARK(U41(U61(isNatIList(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__isNatIList(z0), x1, x2), x3), MARK(U61(isNatIList(z0), x1, x2))) MARK(U41(U61(U51(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(a__U51(mark(z0), z1), x1, x2), x3), MARK(U61(U51(z0, z1), x1, x2))) MARK(U41(U61(U52(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U52(mark(z0)), x1, x2), x3), MARK(U61(U52(z0), x1, x2))) MARK(U41(U61(isNatList(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__isNatList(z0), x1, x2), x3), MARK(U61(isNatList(z0), x1, x2))) MARK(U41(U61(U61(z0, z1, z2), x1, x2), x3)) -> c38(A__U41(a__U61(a__U61(mark(z0), z1, z2), x1, x2), x3), MARK(U61(U61(z0, z1, z2), x1, x2))) MARK(U41(U61(U62(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(a__U62(mark(z0), z1), x1, x2), x3), MARK(U61(U62(z0, z1), x1, x2))) MARK(U41(U61(isNat(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__isNat(z0), x1, x2), x3), MARK(U61(isNat(z0), x1, x2))) MARK(U41(U61(length(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__length(mark(z0)), x1, x2), x3), MARK(U61(length(z0), x1, x2))) MARK(U41(U61(cons(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(cons(mark(z0), z1), x1, x2), x3), MARK(U61(cons(z0, z1), x1, x2))) MARK(U41(U61(tt, x1, x2), x3)) -> c38(A__U41(a__U61(tt, x1, x2), x3), MARK(U61(tt, x1, x2))) MARK(U41(U61(s(z0), x1, x2), x3)) -> c38(A__U41(a__U61(s(mark(z0)), x1, x2), x3), MARK(U61(s(z0), x1, x2))) MARK(U41(U61(x0, z1, z2), x3)) -> c38(MARK(U61(x0, z1, z2))) MARK(U41(U61(0, x1, x2), x3)) -> c38(A__U41(a__U61(0, x1, x2), x3)) MARK(U41(U61(nil, x1, x2), x3)) -> c38(A__U41(a__U61(nil, x1, x2), x3)) MARK(U41(U62(x0, z1), x2)) -> c38(A__U41(U62(mark(x0), z1), x2), MARK(U62(x0, z1))) MARK(U41(U62(zeros, x1), x2)) -> c38(A__U41(a__U62(a__zeros, x1), x2), MARK(U62(zeros, x1))) MARK(U41(U62(U11(z0), x1), x2)) -> c38(A__U41(a__U62(a__U11(mark(z0)), x1), x2), MARK(U62(U11(z0), x1))) MARK(U41(U62(U21(z0), x1), x2)) -> c38(A__U41(a__U62(a__U21(mark(z0)), x1), x2), MARK(U62(U21(z0), x1))) MARK(U41(U62(U31(z0), x1), x2)) -> c38(A__U41(a__U62(a__U31(mark(z0)), x1), x2), MARK(U62(U31(z0), x1))) MARK(U41(U62(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U62(a__U41(mark(z0), z1), x1), x2), MARK(U62(U41(z0, z1), x1))) MARK(U41(U62(U42(z0), x1), x2)) -> c38(A__U41(a__U62(a__U42(mark(z0)), x1), x2), MARK(U62(U42(z0), x1))) MARK(U41(U62(isNatIList(z0), x1), x2)) -> c38(A__U41(a__U62(a__isNatIList(z0), x1), x2), MARK(U62(isNatIList(z0), x1))) MARK(U41(U62(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U62(a__U51(mark(z0), z1), x1), x2), MARK(U62(U51(z0, z1), x1))) MARK(U41(U62(U52(z0), x1), x2)) -> c38(A__U41(a__U62(a__U52(mark(z0)), x1), x2), MARK(U62(U52(z0), x1))) MARK(U41(U62(isNatList(z0), x1), x2)) -> c38(A__U41(a__U62(a__isNatList(z0), x1), x2), MARK(U62(isNatList(z0), x1))) MARK(U41(U62(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U62(a__U61(mark(z0), z1, z2), x1), x2), MARK(U62(U61(z0, z1, z2), x1))) MARK(U41(U62(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U62(a__U62(mark(z0), z1), x1), x2), MARK(U62(U62(z0, z1), x1))) MARK(U41(U62(isNat(z0), x1), x2)) -> c38(A__U41(a__U62(a__isNat(z0), x1), x2), MARK(U62(isNat(z0), x1))) MARK(U41(U62(length(z0), x1), x2)) -> c38(A__U41(a__U62(a__length(mark(z0)), x1), x2), MARK(U62(length(z0), x1))) MARK(U41(U62(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U62(cons(mark(z0), z1), x1), x2), MARK(U62(cons(z0, z1), x1))) MARK(U41(U62(0, x1), x2)) -> c38(A__U41(a__U62(0, x1), x2), MARK(U62(0, x1))) MARK(U41(U62(tt, x1), x2)) -> c38(A__U41(a__U62(tt, x1), x2), MARK(U62(tt, x1))) MARK(U41(U62(s(z0), x1), x2)) -> c38(A__U41(a__U62(s(mark(z0)), x1), x2), MARK(U62(s(z0), x1))) MARK(U41(U62(nil, x1), x2)) -> c38(A__U41(a__U62(nil, x1), x2), MARK(U62(nil, x1))) K tuples:none Defined Rule Symbols: a__zeros, a__U11_1, a__U21_1, a__U31_1, a__U41_2, a__U42_1, a__U51_2, a__U52_1, a__U61_3, a__U62_2, a__isNat_1, a__isNatIList_1, a__isNatList_1, a__length_1, mark_1 Defined Pair Symbols: MARK_1, A__U41_2, A__U51_2, A__ISNAT_1, A__ISNATILIST_1, A__U61_3, A__U62_2, A__ISNATLIST_1, A__LENGTH_1 Compound Symbols: c40_1, c43_1, c46_1, c48_1, c51_1, c8_1, c12_1, c21_1, c22_1, c24_1, c35_1, c36_1, c37_1, c39_1, c42_1, c16_1, c18_2, c18_1, c26_1, c29_1, c32_1, c38_2, c38_1, c_1, c41_2, c41_1, c1_1, c44_2, c44_1, c45_2, c45_1, c47_2, c47_1, c16_2, c26_2, c29_2, c32_2, c2_1, c3_1 ---------------------------------------- (207) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 3 trailing tuple parts ---------------------------------------- (208) Obligation: Complexity Dependency Tuples Problem Rules: a__zeros -> cons(0, zeros) a__zeros -> zeros a__U11(tt) -> tt a__U11(z0) -> U11(z0) a__U21(tt) -> tt a__U21(z0) -> U21(z0) a__U31(tt) -> tt a__U31(z0) -> U31(z0) a__U41(tt, z0) -> a__U42(a__isNatIList(z0)) a__U41(z0, z1) -> U41(z0, z1) a__U42(tt) -> tt a__U42(z0) -> U42(z0) a__U51(tt, z0) -> a__U52(a__isNatList(z0)) a__U51(z0, z1) -> U51(z0, z1) a__U52(tt) -> tt a__U52(z0) -> U52(z0) a__U61(tt, z0, z1) -> a__U62(a__isNat(z1), z0) a__U61(z0, z1, z2) -> U61(z0, z1, z2) a__U62(tt, z0) -> s(a__length(mark(z0))) a__U62(z0, z1) -> U62(z0, z1) a__isNat(0) -> tt a__isNat(length(z0)) -> a__U11(a__isNatList(z0)) a__isNat(s(z0)) -> a__U21(a__isNat(z0)) a__isNat(z0) -> isNat(z0) a__isNatIList(z0) -> a__U31(a__isNatList(z0)) a__isNatIList(zeros) -> tt a__isNatIList(cons(z0, z1)) -> a__U41(a__isNat(z0), z1) a__isNatIList(z0) -> isNatIList(z0) a__isNatList(nil) -> tt a__isNatList(cons(z0, z1)) -> a__U51(a__isNat(z0), z1) a__isNatList(z0) -> isNatList(z0) a__length(nil) -> 0 a__length(cons(z0, z1)) -> a__U61(a__isNatList(z1), z1, z0) a__length(z0) -> length(z0) mark(zeros) -> a__zeros mark(U11(z0)) -> a__U11(mark(z0)) mark(U21(z0)) -> a__U21(mark(z0)) mark(U31(z0)) -> a__U31(mark(z0)) mark(U41(z0, z1)) -> a__U41(mark(z0), z1) mark(U42(z0)) -> a__U42(mark(z0)) mark(isNatIList(z0)) -> a__isNatIList(z0) mark(U51(z0, z1)) -> a__U51(mark(z0), z1) mark(U52(z0)) -> a__U52(mark(z0)) mark(isNatList(z0)) -> a__isNatList(z0) mark(U61(z0, z1, z2)) -> a__U61(mark(z0), z1, z2) mark(U62(z0, z1)) -> a__U62(mark(z0), z1) mark(isNat(z0)) -> a__isNat(z0) mark(length(z0)) -> a__length(mark(z0)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(0) -> 0 mark(tt) -> tt mark(s(z0)) -> s(mark(z0)) mark(nil) -> nil Tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) A__U62(tt, isNatList(cons(z0, z1))) -> c18(A__LENGTH(a__U51(a__isNat(z0), z1)), MARK(isNatList(cons(z0, z1)))) A__U62(tt, isNatList(nil)) -> c18(MARK(isNatList(nil))) A__U62(tt, isNatList(z0)) -> c18(MARK(isNatList(z0))) A__U62(tt, U61(zeros, x1, x2)) -> c18(A__LENGTH(a__U61(a__zeros, x1, x2)), MARK(U61(zeros, x1, x2))) A__U62(tt, U61(U11(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U11(mark(z0)), x1, x2)), MARK(U61(U11(z0), x1, x2))) A__U62(tt, U61(U21(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U21(mark(z0)), x1, x2)), MARK(U61(U21(z0), x1, x2))) A__U62(tt, U61(U31(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U31(mark(z0)), x1, x2)), MARK(U61(U31(z0), x1, x2))) A__U62(tt, U61(U41(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U41(mark(z0), z1), x1, x2)), MARK(U61(U41(z0, z1), x1, x2))) A__U62(tt, U61(U42(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U42(mark(z0)), x1, x2)), MARK(U61(U42(z0), x1, x2))) A__U62(tt, U61(isNatIList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatIList(z0), x1, x2)), MARK(U61(isNatIList(z0), x1, x2))) A__U62(tt, U61(U51(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U51(mark(z0), z1), x1, x2)), MARK(U61(U51(z0, z1), x1, x2))) A__U62(tt, U61(U52(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U52(mark(z0)), x1, x2)), MARK(U61(U52(z0), x1, x2))) A__U62(tt, U61(isNatList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatList(z0), x1, x2)), MARK(U61(isNatList(z0), x1, x2))) A__U62(tt, U61(U61(z0, z1, z2), x1, x2)) -> c18(A__LENGTH(a__U61(a__U61(mark(z0), z1, z2), x1, x2)), MARK(U61(U61(z0, z1, z2), x1, x2))) A__U62(tt, U61(U62(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U62(mark(z0), z1), x1, x2)), MARK(U61(U62(z0, z1), x1, x2))) A__U62(tt, U61(isNat(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNat(z0), x1, x2)), MARK(U61(isNat(z0), x1, x2))) A__U62(tt, U61(length(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__length(mark(z0)), x1, x2)), MARK(U61(length(z0), x1, x2))) A__U62(tt, U61(cons(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(cons(mark(z0), z1), x1, x2)), MARK(U61(cons(z0, z1), x1, x2))) A__U62(tt, U61(tt, x1, x2)) -> c18(A__LENGTH(a__U61(tt, x1, x2)), MARK(U61(tt, x1, x2))) A__U62(tt, U61(s(z0), x1, x2)) -> c18(A__LENGTH(a__U61(s(mark(z0)), x1, x2)), MARK(U61(s(z0), x1, x2))) A__U62(tt, U61(x0, z1, z2)) -> c18(MARK(U61(x0, z1, z2))) A__U62(tt, U61(0, x1, x2)) -> c18(A__LENGTH(a__U61(0, x1, x2))) A__U62(tt, U61(nil, x1, x2)) -> c18(A__LENGTH(a__U61(nil, x1, x2))) A__U62(tt, U62(zeros, x1)) -> c18(A__LENGTH(a__U62(a__zeros, x1)), MARK(U62(zeros, x1))) A__U62(tt, U62(U11(z0), x1)) -> c18(A__LENGTH(a__U62(a__U11(mark(z0)), x1)), MARK(U62(U11(z0), x1))) A__U62(tt, U62(U21(z0), x1)) -> c18(A__LENGTH(a__U62(a__U21(mark(z0)), x1)), MARK(U62(U21(z0), x1))) A__U62(tt, U62(U31(z0), x1)) -> c18(A__LENGTH(a__U62(a__U31(mark(z0)), x1)), MARK(U62(U31(z0), x1))) A__U62(tt, U62(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U41(mark(z0), z1), x1)), MARK(U62(U41(z0, z1), x1))) A__U62(tt, U62(U42(z0), x1)) -> c18(A__LENGTH(a__U62(a__U42(mark(z0)), x1)), MARK(U62(U42(z0), x1))) A__U62(tt, U62(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatIList(z0), x1)), MARK(U62(isNatIList(z0), x1))) A__U62(tt, U62(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U51(mark(z0), z1), x1)), MARK(U62(U51(z0, z1), x1))) A__U62(tt, U62(U52(z0), x1)) -> c18(A__LENGTH(a__U62(a__U52(mark(z0)), x1)), MARK(U62(U52(z0), x1))) A__U62(tt, U62(isNatList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatList(z0), x1)), MARK(U62(isNatList(z0), x1))) A__U62(tt, U62(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U62(a__U61(mark(z0), z1, z2), x1)), MARK(U62(U61(z0, z1, z2), x1))) A__U62(tt, U62(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U62(mark(z0), z1), x1)), MARK(U62(U62(z0, z1), x1))) A__U62(tt, U62(isNat(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNat(z0), x1)), MARK(U62(isNat(z0), x1))) A__U62(tt, U62(length(z0), x1)) -> c18(A__LENGTH(a__U62(a__length(mark(z0)), x1)), MARK(U62(length(z0), x1))) A__U62(tt, U62(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U62(cons(mark(z0), z1), x1)), MARK(U62(cons(z0, z1), x1))) A__U62(tt, U62(tt, x1)) -> c18(A__LENGTH(a__U62(tt, x1)), MARK(U62(tt, x1))) A__U62(tt, U62(s(z0), x1)) -> c18(A__LENGTH(a__U62(s(mark(z0)), x1)), MARK(U62(s(z0), x1))) A__U62(tt, U62(x0, z1)) -> c18(MARK(U62(x0, z1))) A__U62(tt, U62(0, x1)) -> c18(A__LENGTH(a__U62(0, x1))) A__U62(tt, U62(nil, x1)) -> c18(A__LENGTH(a__U62(nil, x1))) A__U62(tt, isNat(length(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(isNat(length(z0)))) A__U62(tt, isNat(s(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(isNat(s(z0)))) A__U62(tt, isNat(0)) -> c18(MARK(isNat(0))) A__U62(tt, isNat(z0)) -> c18(MARK(isNat(z0))) A__U62(tt, length(zeros)) -> c18(A__LENGTH(a__length(a__zeros)), MARK(length(zeros))) A__U62(tt, length(U11(z0))) -> c18(A__LENGTH(a__length(a__U11(mark(z0)))), MARK(length(U11(z0)))) A__U62(tt, length(U21(z0))) -> c18(A__LENGTH(a__length(a__U21(mark(z0)))), MARK(length(U21(z0)))) A__U62(tt, length(U31(z0))) -> c18(A__LENGTH(a__length(a__U31(mark(z0)))), MARK(length(U31(z0)))) A__U62(tt, length(U41(z0, z1))) -> c18(A__LENGTH(a__length(a__U41(mark(z0), z1))), MARK(length(U41(z0, z1)))) A__U62(tt, length(U42(z0))) -> c18(A__LENGTH(a__length(a__U42(mark(z0)))), MARK(length(U42(z0)))) A__U62(tt, length(isNatIList(z0))) -> c18(A__LENGTH(a__length(a__isNatIList(z0))), MARK(length(isNatIList(z0)))) A__U62(tt, length(U51(z0, z1))) -> c18(A__LENGTH(a__length(a__U51(mark(z0), z1))), MARK(length(U51(z0, z1)))) A__U62(tt, length(U52(z0))) -> c18(A__LENGTH(a__length(a__U52(mark(z0)))), MARK(length(U52(z0)))) A__U62(tt, length(isNatList(z0))) -> c18(A__LENGTH(a__length(a__isNatList(z0))), MARK(length(isNatList(z0)))) A__U62(tt, length(U61(z0, z1, z2))) -> c18(A__LENGTH(a__length(a__U61(mark(z0), z1, z2))), MARK(length(U61(z0, z1, z2)))) A__U62(tt, length(U62(z0, z1))) -> c18(A__LENGTH(a__length(a__U62(mark(z0), z1))), MARK(length(U62(z0, z1)))) A__U62(tt, length(isNat(z0))) -> c18(A__LENGTH(a__length(a__isNat(z0))), MARK(length(isNat(z0)))) A__U62(tt, length(length(z0))) -> c18(A__LENGTH(a__length(a__length(mark(z0)))), MARK(length(length(z0)))) A__U62(tt, length(cons(z0, z1))) -> c18(A__LENGTH(a__length(cons(mark(z0), z1))), MARK(length(cons(z0, z1)))) A__U62(tt, length(s(z0))) -> c18(A__LENGTH(a__length(s(mark(z0)))), MARK(length(s(z0)))) A__U62(tt, length(x0)) -> c18(MARK(length(x0))) A__U62(tt, length(0)) -> c18(A__LENGTH(a__length(0))) A__U62(tt, length(tt)) -> c18(A__LENGTH(a__length(tt))) A__U62(tt, length(nil)) -> c18(A__LENGTH(a__length(nil))) A__U62(tt, zeros) -> c18(A__LENGTH(cons(0, zeros))) A__ISNATILIST(cons(length(nil), x1)) -> c26(A__U41(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATILIST(cons(length(cons(z0, z1)), x1)) -> c26(A__U41(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(length(x0), x1)) -> c26(A__ISNAT(length(x0))) A__ISNATILIST(cons(s(0), x1)) -> c26(A__U41(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATILIST(cons(s(length(z0)), x1)) -> c26(A__U41(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATILIST(cons(s(s(z0)), x1)) -> c26(A__U41(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(s(x0), x1)) -> c26(A__ISNAT(s(x0))) A__ISNATLIST(cons(length(nil), x1)) -> c29(A__U51(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATLIST(cons(length(cons(z0, z1)), x1)) -> c29(A__U51(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(length(x0), x1)) -> c29(A__ISNAT(length(x0))) A__ISNATLIST(cons(s(0), x1)) -> c29(A__U51(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATLIST(cons(s(length(z0)), x1)) -> c29(A__U51(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATLIST(cons(s(s(z0)), x1)) -> c29(A__U51(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(s(x0), x1)) -> c29(A__ISNAT(s(x0))) A__LENGTH(cons(x0, cons(0, x2))) -> c32(A__U61(a__U51(tt, x2), cons(0, x2), x0), A__ISNATLIST(cons(0, x2))) A__LENGTH(cons(x0, cons(length(z0), x2))) -> c32(A__U61(a__U51(a__U11(a__isNatList(z0)), x2), cons(length(z0), x2), x0), A__ISNATLIST(cons(length(z0), x2))) A__LENGTH(cons(x0, cons(s(z0), x2))) -> c32(A__U61(a__U51(a__U21(a__isNat(z0)), x2), cons(s(z0), x2), x0), A__ISNATLIST(cons(s(z0), x2))) A__LENGTH(cons(x0, cons(z0, x2))) -> c32(A__U61(a__U51(isNat(z0), x2), cons(z0, x2), x0), A__ISNATLIST(cons(z0, x2))) A__LENGTH(cons(x0, cons(x1, z1))) -> c32(A__ISNATLIST(cons(x1, z1))) MARK(U41(U11(zeros), x1)) -> c38(A__U41(a__U11(a__zeros), x1), MARK(U11(zeros))) MARK(U41(U11(U11(z0)), x1)) -> c38(A__U41(a__U11(a__U11(mark(z0))), x1), MARK(U11(U11(z0)))) MARK(U41(U11(U21(z0)), x1)) -> c38(A__U41(a__U11(a__U21(mark(z0))), x1), MARK(U11(U21(z0)))) MARK(U41(U11(U31(z0)), x1)) -> c38(A__U41(a__U11(a__U31(mark(z0))), x1), MARK(U11(U31(z0)))) MARK(U41(U11(U41(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U41(mark(z0), z1)), x1), MARK(U11(U41(z0, z1)))) MARK(U41(U11(U42(z0)), x1)) -> c38(A__U41(a__U11(a__U42(mark(z0))), x1), MARK(U11(U42(z0)))) MARK(U41(U11(isNatIList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatIList(z0)), x1), MARK(U11(isNatIList(z0)))) MARK(U41(U11(U51(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U51(mark(z0), z1)), x1), MARK(U11(U51(z0, z1)))) MARK(U41(U11(U52(z0)), x1)) -> c38(A__U41(a__U11(a__U52(mark(z0))), x1), MARK(U11(U52(z0)))) MARK(U41(U11(isNatList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatList(z0)), x1), MARK(U11(isNatList(z0)))) MARK(U41(U11(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U11(a__U61(mark(z0), z1, z2)), x1), MARK(U11(U61(z0, z1, z2)))) MARK(U41(U11(U62(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U62(mark(z0), z1)), x1), MARK(U11(U62(z0, z1)))) MARK(U41(U11(isNat(z0)), x1)) -> c38(A__U41(a__U11(a__isNat(z0)), x1), MARK(U11(isNat(z0)))) MARK(U41(U11(length(z0)), x1)) -> c38(A__U41(a__U11(a__length(mark(z0))), x1), MARK(U11(length(z0)))) MARK(U41(U11(cons(z0, z1)), x1)) -> c38(A__U41(a__U11(cons(mark(z0), z1)), x1), MARK(U11(cons(z0, z1)))) MARK(U41(U11(0), x1)) -> c38(A__U41(a__U11(0), x1), MARK(U11(0))) MARK(U41(U11(tt), x1)) -> c38(A__U41(a__U11(tt), x1), MARK(U11(tt))) MARK(U41(U11(s(z0)), x1)) -> c38(A__U41(a__U11(s(mark(z0))), x1), MARK(U11(s(z0)))) MARK(U41(U11(nil), x1)) -> c38(A__U41(a__U11(nil), x1), MARK(U11(nil))) MARK(U41(U11(x0), x1)) -> c38(MARK(U11(x0))) MARK(U41(U21(zeros), x1)) -> c38(A__U41(a__U21(a__zeros), x1), MARK(U21(zeros))) MARK(U41(U21(U11(z0)), x1)) -> c38(A__U41(a__U21(a__U11(mark(z0))), x1), MARK(U21(U11(z0)))) MARK(U41(U21(U21(z0)), x1)) -> c38(A__U41(a__U21(a__U21(mark(z0))), x1), MARK(U21(U21(z0)))) MARK(U41(U21(U31(z0)), x1)) -> c38(A__U41(a__U21(a__U31(mark(z0))), x1), MARK(U21(U31(z0)))) MARK(U41(U21(U41(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U41(mark(z0), z1)), x1), MARK(U21(U41(z0, z1)))) MARK(U41(U21(U42(z0)), x1)) -> c38(A__U41(a__U21(a__U42(mark(z0))), x1), MARK(U21(U42(z0)))) MARK(U41(U21(isNatIList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatIList(z0)), x1), MARK(U21(isNatIList(z0)))) MARK(U41(U21(U51(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U51(mark(z0), z1)), x1), MARK(U21(U51(z0, z1)))) MARK(U41(U21(U52(z0)), x1)) -> c38(A__U41(a__U21(a__U52(mark(z0))), x1), MARK(U21(U52(z0)))) MARK(U41(U21(isNatList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatList(z0)), x1), MARK(U21(isNatList(z0)))) MARK(U41(U21(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U21(a__U61(mark(z0), z1, z2)), x1), MARK(U21(U61(z0, z1, z2)))) MARK(U41(U21(U62(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U62(mark(z0), z1)), x1), MARK(U21(U62(z0, z1)))) MARK(U41(U21(isNat(z0)), x1)) -> c38(A__U41(a__U21(a__isNat(z0)), x1), MARK(U21(isNat(z0)))) MARK(U41(U21(length(z0)), x1)) -> c38(A__U41(a__U21(a__length(mark(z0))), x1), MARK(U21(length(z0)))) MARK(U41(U21(cons(z0, z1)), x1)) -> c38(A__U41(a__U21(cons(mark(z0), z1)), x1), MARK(U21(cons(z0, z1)))) MARK(U41(U21(0), x1)) -> c38(A__U41(a__U21(0), x1), MARK(U21(0))) MARK(U41(U21(tt), x1)) -> c38(A__U41(a__U21(tt), x1), MARK(U21(tt))) MARK(U41(U21(s(z0)), x1)) -> c38(A__U41(a__U21(s(mark(z0))), x1), MARK(U21(s(z0)))) MARK(U41(U21(nil), x1)) -> c38(A__U41(a__U21(nil), x1), MARK(U21(nil))) MARK(U41(U21(x0), x1)) -> c38(MARK(U21(x0))) MARK(U41(U31(zeros), x1)) -> c38(A__U41(a__U31(a__zeros), x1), MARK(U31(zeros))) MARK(U41(U31(U11(z0)), x1)) -> c38(A__U41(a__U31(a__U11(mark(z0))), x1), MARK(U31(U11(z0)))) MARK(U41(U31(U21(z0)), x1)) -> c38(A__U41(a__U31(a__U21(mark(z0))), x1), MARK(U31(U21(z0)))) MARK(U41(U31(U31(z0)), x1)) -> c38(A__U41(a__U31(a__U31(mark(z0))), x1), MARK(U31(U31(z0)))) MARK(U41(U31(U41(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U41(mark(z0), z1)), x1), MARK(U31(U41(z0, z1)))) MARK(U41(U31(U42(z0)), x1)) -> c38(A__U41(a__U31(a__U42(mark(z0))), x1), MARK(U31(U42(z0)))) MARK(U41(U31(isNatIList(z0)), x1)) -> c38(A__U41(a__U31(a__isNatIList(z0)), x1), MARK(U31(isNatIList(z0)))) MARK(U41(U31(U51(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U51(mark(z0), z1)), x1), MARK(U31(U51(z0, z1)))) MARK(U41(U31(U52(z0)), x1)) -> c38(A__U41(a__U31(a__U52(mark(z0))), x1), MARK(U31(U52(z0)))) MARK(U41(U31(isNatList(z0)), x1)) -> c38(A__U41(a__U31(a__isNatList(z0)), x1), MARK(U31(isNatList(z0)))) MARK(U41(U31(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U31(a__U61(mark(z0), z1, z2)), x1), MARK(U31(U61(z0, z1, z2)))) MARK(U41(U31(U62(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U62(mark(z0), z1)), x1), MARK(U31(U62(z0, z1)))) MARK(U41(U31(isNat(z0)), x1)) -> c38(A__U41(a__U31(a__isNat(z0)), x1), MARK(U31(isNat(z0)))) MARK(U41(U31(length(z0)), x1)) -> c38(A__U41(a__U31(a__length(mark(z0))), x1), MARK(U31(length(z0)))) MARK(U41(U31(cons(z0, z1)), x1)) -> c38(A__U41(a__U31(cons(mark(z0), z1)), x1), MARK(U31(cons(z0, z1)))) MARK(U41(U31(0), x1)) -> c38(A__U41(a__U31(0), x1), MARK(U31(0))) MARK(U41(U31(tt), x1)) -> c38(A__U41(a__U31(tt), x1), MARK(U31(tt))) MARK(U41(U31(s(z0)), x1)) -> c38(A__U41(a__U31(s(mark(z0))), x1), MARK(U31(s(z0)))) MARK(U41(U31(nil), x1)) -> c38(A__U41(a__U31(nil), x1), MARK(U31(nil))) MARK(U41(U31(x0), x1)) -> c38(MARK(U31(x0))) MARK(U41(U41(U11(z0), x1), x2)) -> c38(A__U41(a__U41(a__U11(mark(z0)), x1), x2), MARK(U41(U11(z0), x1))) MARK(U41(U41(U21(z0), x1), x2)) -> c38(A__U41(a__U41(a__U21(mark(z0)), x1), x2), MARK(U41(U21(z0), x1))) MARK(U41(U41(U31(z0), x1), x2)) -> c38(A__U41(a__U41(a__U31(mark(z0)), x1), x2), MARK(U41(U31(z0), x1))) MARK(U41(U41(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U41(mark(z0), z1), x1), x2), MARK(U41(U41(z0, z1), x1))) MARK(U41(U41(U42(z0), x1), x2)) -> c38(A__U41(a__U41(a__U42(mark(z0)), x1), x2), MARK(U41(U42(z0), x1))) MARK(U41(U41(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U51(mark(z0), z1), x1), x2), MARK(U41(U51(z0, z1), x1))) MARK(U41(U41(U52(z0), x1), x2)) -> c38(A__U41(a__U41(a__U52(mark(z0)), x1), x2), MARK(U41(U52(z0), x1))) MARK(U41(U41(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U41(a__U61(mark(z0), z1, z2), x1), x2), MARK(U41(U61(z0, z1, z2), x1))) MARK(U41(U41(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U62(mark(z0), z1), x1), x2), MARK(U41(U62(z0, z1), x1))) MARK(U41(U41(length(z0), x1), x2)) -> c38(A__U41(a__U41(a__length(mark(z0)), x1), x2), MARK(U41(length(z0), x1))) MARK(U41(U41(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U41(cons(mark(z0), z1), x1), x2), MARK(U41(cons(z0, z1), x1))) MARK(U41(U41(s(z0), x1), x2)) -> c38(A__U41(a__U41(s(mark(z0)), x1), x2), MARK(U41(s(z0), x1))) MARK(U41(U41(x0, z1), x2)) -> c38(MARK(U41(x0, z1))) MARK(U41(U41(0, x1), x2)) -> c38(A__U41(a__U41(0, x1), x2)) MARK(U41(U41(nil, x1), x2)) -> c38(A__U41(a__U41(nil, x1), x2)) MARK(U41(U41(zeros, x1), x2)) -> c2(A__U41(a__U41(a__zeros, x1), x2)) MARK(U41(U41(zeros, x1), x2)) -> c2(MARK(U41(zeros, x1))) MARK(U41(U41(isNatIList(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNatIList(z0), x1), x2)) MARK(U41(U41(isNatIList(z0), x1), x2)) -> c2(MARK(U41(isNatIList(z0), x1))) MARK(U41(U41(isNatList(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNatList(z0), x1), x2)) MARK(U41(U41(isNatList(z0), x1), x2)) -> c2(MARK(U41(isNatList(z0), x1))) MARK(U41(U41(isNat(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNat(z0), x1), x2)) MARK(U41(U41(isNat(z0), x1), x2)) -> c2(MARK(U41(isNat(z0), x1))) MARK(U41(U41(tt, x1), x2)) -> c2(A__U41(a__U41(tt, x1), x2)) MARK(U41(U41(tt, x1), x2)) -> c2(MARK(U41(tt, x1))) MARK(U41(U42(zeros), x1)) -> c38(A__U41(a__U42(a__zeros), x1), MARK(U42(zeros))) MARK(U41(U42(U11(z0)), x1)) -> c38(A__U41(a__U42(a__U11(mark(z0))), x1), MARK(U42(U11(z0)))) MARK(U41(U42(U21(z0)), x1)) -> c38(A__U41(a__U42(a__U21(mark(z0))), x1), MARK(U42(U21(z0)))) MARK(U41(U42(U31(z0)), x1)) -> c38(A__U41(a__U42(a__U31(mark(z0))), x1), MARK(U42(U31(z0)))) MARK(U41(U42(U41(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U41(mark(z0), z1)), x1), MARK(U42(U41(z0, z1)))) MARK(U41(U42(U42(z0)), x1)) -> c38(A__U41(a__U42(a__U42(mark(z0))), x1), MARK(U42(U42(z0)))) MARK(U41(U42(isNatIList(z0)), x1)) -> c38(A__U41(a__U42(a__isNatIList(z0)), x1), MARK(U42(isNatIList(z0)))) MARK(U41(U42(U51(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U51(mark(z0), z1)), x1), MARK(U42(U51(z0, z1)))) MARK(U41(U42(U52(z0)), x1)) -> c38(A__U41(a__U42(a__U52(mark(z0))), x1), MARK(U42(U52(z0)))) MARK(U41(U42(isNatList(z0)), x1)) -> c38(A__U41(a__U42(a__isNatList(z0)), x1), MARK(U42(isNatList(z0)))) MARK(U41(U42(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U42(a__U61(mark(z0), z1, z2)), x1), MARK(U42(U61(z0, z1, z2)))) MARK(U41(U42(U62(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U62(mark(z0), z1)), x1), MARK(U42(U62(z0, z1)))) MARK(U41(U42(isNat(z0)), x1)) -> c38(A__U41(a__U42(a__isNat(z0)), x1), MARK(U42(isNat(z0)))) MARK(U41(U42(length(z0)), x1)) -> c38(A__U41(a__U42(a__length(mark(z0))), x1), MARK(U42(length(z0)))) MARK(U41(U42(cons(z0, z1)), x1)) -> c38(A__U41(a__U42(cons(mark(z0), z1)), x1), MARK(U42(cons(z0, z1)))) MARK(U41(U42(0), x1)) -> c38(A__U41(a__U42(0), x1), MARK(U42(0))) MARK(U41(U42(tt), x1)) -> c38(A__U41(a__U42(tt), x1), MARK(U42(tt))) MARK(U41(U42(s(z0)), x1)) -> c38(A__U41(a__U42(s(mark(z0))), x1), MARK(U42(s(z0)))) MARK(U41(U42(nil), x1)) -> c38(A__U41(a__U42(nil), x1), MARK(U42(nil))) MARK(U41(U42(x0), x1)) -> c38(MARK(U42(x0))) MARK(U41(U51(U11(z0), x1), x2)) -> c38(A__U41(a__U51(a__U11(mark(z0)), x1), x2), MARK(U51(U11(z0), x1))) MARK(U41(U51(U21(z0), x1), x2)) -> c38(A__U41(a__U51(a__U21(mark(z0)), x1), x2), MARK(U51(U21(z0), x1))) MARK(U41(U51(U31(z0), x1), x2)) -> c38(A__U41(a__U51(a__U31(mark(z0)), x1), x2), MARK(U51(U31(z0), x1))) MARK(U41(U51(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U41(mark(z0), z1), x1), x2), MARK(U51(U41(z0, z1), x1))) MARK(U41(U51(U42(z0), x1), x2)) -> c38(A__U41(a__U51(a__U42(mark(z0)), x1), x2), MARK(U51(U42(z0), x1))) MARK(U41(U51(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U51(mark(z0), z1), x1), x2), MARK(U51(U51(z0, z1), x1))) MARK(U41(U51(U52(z0), x1), x2)) -> c38(A__U41(a__U51(a__U52(mark(z0)), x1), x2), MARK(U51(U52(z0), x1))) MARK(U41(U51(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U51(a__U61(mark(z0), z1, z2), x1), x2), MARK(U51(U61(z0, z1, z2), x1))) MARK(U41(U51(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U62(mark(z0), z1), x1), x2), MARK(U51(U62(z0, z1), x1))) MARK(U41(U51(length(z0), x1), x2)) -> c38(A__U41(a__U51(a__length(mark(z0)), x1), x2), MARK(U51(length(z0), x1))) MARK(U41(U51(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U51(cons(mark(z0), z1), x1), x2), MARK(U51(cons(z0, z1), x1))) MARK(U41(U51(s(z0), x1), x2)) -> c38(A__U41(a__U51(s(mark(z0)), x1), x2), MARK(U51(s(z0), x1))) MARK(U41(U51(x0, z1), x2)) -> c38(MARK(U51(x0, z1))) MARK(U41(U51(0, x1), x2)) -> c38(A__U41(a__U51(0, x1), x2)) MARK(U41(U51(nil, x1), x2)) -> c38(A__U41(a__U51(nil, x1), x2)) MARK(U41(U51(zeros, x1), x2)) -> c3(A__U41(a__U51(a__zeros, x1), x2)) MARK(U41(U51(zeros, x1), x2)) -> c3(MARK(U51(zeros, x1))) MARK(U41(U51(isNatIList(z0), x1), x2)) -> c3(A__U41(a__U51(a__isNatIList(z0), x1), x2)) MARK(U41(U51(isNatIList(z0), x1), x2)) -> c3(MARK(U51(isNatIList(z0), x1))) MARK(U41(U51(isNatList(z0), x1), x2)) -> c3(A__U41(a__U51(a__isNatList(z0), x1), x2)) MARK(U41(U51(isNatList(z0), x1), x2)) -> c3(MARK(U51(isNatList(z0), x1))) MARK(U41(U51(isNat(z0), x1), x2)) -> c3(A__U41(a__U51(a__isNat(z0), x1), x2)) MARK(U41(U51(isNat(z0), x1), x2)) -> c3(MARK(U51(isNat(z0), x1))) MARK(U41(U51(tt, x1), x2)) -> c3(A__U41(a__U51(tt, x1), x2)) MARK(U41(U51(tt, x1), x2)) -> c3(MARK(U51(tt, x1))) MARK(U41(U52(zeros), x1)) -> c38(A__U41(a__U52(a__zeros), x1), MARK(U52(zeros))) MARK(U41(U52(U11(z0)), x1)) -> c38(A__U41(a__U52(a__U11(mark(z0))), x1), MARK(U52(U11(z0)))) MARK(U41(U52(U21(z0)), x1)) -> c38(A__U41(a__U52(a__U21(mark(z0))), x1), MARK(U52(U21(z0)))) MARK(U41(U52(U31(z0)), x1)) -> c38(A__U41(a__U52(a__U31(mark(z0))), x1), MARK(U52(U31(z0)))) MARK(U41(U52(U41(z0, z1)), x1)) -> c38(A__U41(a__U52(a__U41(mark(z0), z1)), x1), MARK(U52(U41(z0, z1)))) MARK(U41(U52(U42(z0)), x1)) -> c38(A__U41(a__U52(a__U42(mark(z0))), x1), MARK(U52(U42(z0)))) MARK(U41(U52(isNatIList(z0)), x1)) -> c38(A__U41(a__U52(a__isNatIList(z0)), x1), MARK(U52(isNatIList(z0)))) MARK(U41(U52(U51(z0, z1)), x1)) -> c38(A__U41(a__U52(a__U51(mark(z0), z1)), x1), MARK(U52(U51(z0, z1)))) MARK(U41(U52(U52(z0)), x1)) -> c38(A__U41(a__U52(a__U52(mark(z0))), x1), MARK(U52(U52(z0)))) MARK(U41(U52(isNatList(z0)), x1)) -> c38(A__U41(a__U52(a__isNatList(z0)), x1), MARK(U52(isNatList(z0)))) MARK(U41(U52(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U52(a__U61(mark(z0), z1, z2)), x1), MARK(U52(U61(z0, z1, z2)))) MARK(U41(U52(U62(z0, z1)), x1)) -> c38(A__U41(a__U52(a__U62(mark(z0), z1)), x1), MARK(U52(U62(z0, z1)))) MARK(U41(U52(isNat(z0)), x1)) -> c38(A__U41(a__U52(a__isNat(z0)), x1), MARK(U52(isNat(z0)))) MARK(U41(U52(length(z0)), x1)) -> c38(A__U41(a__U52(a__length(mark(z0))), x1), MARK(U52(length(z0)))) MARK(U41(U52(cons(z0, z1)), x1)) -> c38(A__U41(a__U52(cons(mark(z0), z1)), x1), MARK(U52(cons(z0, z1)))) MARK(U41(U52(0), x1)) -> c38(A__U41(a__U52(0), x1), MARK(U52(0))) MARK(U41(U52(tt), x1)) -> c38(A__U41(a__U52(tt), x1), MARK(U52(tt))) MARK(U41(U52(s(z0)), x1)) -> c38(A__U41(a__U52(s(mark(z0))), x1), MARK(U52(s(z0)))) MARK(U41(U52(nil), x1)) -> c38(A__U41(a__U52(nil), x1), MARK(U52(nil))) MARK(U41(U52(x0), x1)) -> c38(MARK(U52(x0))) MARK(U41(U61(zeros, x1, x2), x3)) -> c38(A__U41(a__U61(a__zeros, x1, x2), x3), MARK(U61(zeros, x1, x2))) MARK(U41(U61(U11(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U11(mark(z0)), x1, x2), x3), MARK(U61(U11(z0), x1, x2))) MARK(U41(U61(U21(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U21(mark(z0)), x1, x2), x3), MARK(U61(U21(z0), x1, x2))) MARK(U41(U61(U31(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U31(mark(z0)), x1, x2), x3), MARK(U61(U31(z0), x1, x2))) MARK(U41(U61(U41(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(a__U41(mark(z0), z1), x1, x2), x3), MARK(U61(U41(z0, z1), x1, x2))) MARK(U41(U61(U42(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U42(mark(z0)), x1, x2), x3), MARK(U61(U42(z0), x1, x2))) MARK(U41(U61(isNatIList(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__isNatIList(z0), x1, x2), x3), MARK(U61(isNatIList(z0), x1, x2))) MARK(U41(U61(U51(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(a__U51(mark(z0), z1), x1, x2), x3), MARK(U61(U51(z0, z1), x1, x2))) MARK(U41(U61(U52(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U52(mark(z0)), x1, x2), x3), MARK(U61(U52(z0), x1, x2))) MARK(U41(U61(isNatList(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__isNatList(z0), x1, x2), x3), MARK(U61(isNatList(z0), x1, x2))) MARK(U41(U61(U61(z0, z1, z2), x1, x2), x3)) -> c38(A__U41(a__U61(a__U61(mark(z0), z1, z2), x1, x2), x3), MARK(U61(U61(z0, z1, z2), x1, x2))) MARK(U41(U61(U62(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(a__U62(mark(z0), z1), x1, x2), x3), MARK(U61(U62(z0, z1), x1, x2))) MARK(U41(U61(isNat(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__isNat(z0), x1, x2), x3), MARK(U61(isNat(z0), x1, x2))) MARK(U41(U61(length(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__length(mark(z0)), x1, x2), x3), MARK(U61(length(z0), x1, x2))) MARK(U41(U61(cons(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(cons(mark(z0), z1), x1, x2), x3), MARK(U61(cons(z0, z1), x1, x2))) MARK(U41(U61(tt, x1, x2), x3)) -> c38(A__U41(a__U61(tt, x1, x2), x3), MARK(U61(tt, x1, x2))) MARK(U41(U61(s(z0), x1, x2), x3)) -> c38(A__U41(a__U61(s(mark(z0)), x1, x2), x3), MARK(U61(s(z0), x1, x2))) MARK(U41(U61(x0, z1, z2), x3)) -> c38(MARK(U61(x0, z1, z2))) MARK(U41(U61(0, x1, x2), x3)) -> c38(A__U41(a__U61(0, x1, x2), x3)) MARK(U41(U61(nil, x1, x2), x3)) -> c38(A__U41(a__U61(nil, x1, x2), x3)) MARK(U41(U62(zeros, x1), x2)) -> c38(A__U41(a__U62(a__zeros, x1), x2), MARK(U62(zeros, x1))) MARK(U41(U62(U11(z0), x1), x2)) -> c38(A__U41(a__U62(a__U11(mark(z0)), x1), x2), MARK(U62(U11(z0), x1))) MARK(U41(U62(U21(z0), x1), x2)) -> c38(A__U41(a__U62(a__U21(mark(z0)), x1), x2), MARK(U62(U21(z0), x1))) MARK(U41(U62(U31(z0), x1), x2)) -> c38(A__U41(a__U62(a__U31(mark(z0)), x1), x2), MARK(U62(U31(z0), x1))) MARK(U41(U62(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U62(a__U41(mark(z0), z1), x1), x2), MARK(U62(U41(z0, z1), x1))) MARK(U41(U62(U42(z0), x1), x2)) -> c38(A__U41(a__U62(a__U42(mark(z0)), x1), x2), MARK(U62(U42(z0), x1))) MARK(U41(U62(isNatIList(z0), x1), x2)) -> c38(A__U41(a__U62(a__isNatIList(z0), x1), x2), MARK(U62(isNatIList(z0), x1))) MARK(U41(U62(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U62(a__U51(mark(z0), z1), x1), x2), MARK(U62(U51(z0, z1), x1))) MARK(U41(U62(U52(z0), x1), x2)) -> c38(A__U41(a__U62(a__U52(mark(z0)), x1), x2), MARK(U62(U52(z0), x1))) MARK(U41(U62(isNatList(z0), x1), x2)) -> c38(A__U41(a__U62(a__isNatList(z0), x1), x2), MARK(U62(isNatList(z0), x1))) MARK(U41(U62(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U62(a__U61(mark(z0), z1, z2), x1), x2), MARK(U62(U61(z0, z1, z2), x1))) MARK(U41(U62(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U62(a__U62(mark(z0), z1), x1), x2), MARK(U62(U62(z0, z1), x1))) MARK(U41(U62(isNat(z0), x1), x2)) -> c38(A__U41(a__U62(a__isNat(z0), x1), x2), MARK(U62(isNat(z0), x1))) MARK(U41(U62(length(z0), x1), x2)) -> c38(A__U41(a__U62(a__length(mark(z0)), x1), x2), MARK(U62(length(z0), x1))) MARK(U41(U62(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U62(cons(mark(z0), z1), x1), x2), MARK(U62(cons(z0, z1), x1))) MARK(U41(U62(tt, x1), x2)) -> c38(A__U41(a__U62(tt, x1), x2), MARK(U62(tt, x1))) MARK(U41(U62(s(z0), x1), x2)) -> c38(A__U41(a__U62(s(mark(z0)), x1), x2), MARK(U62(s(z0), x1))) MARK(U41(U62(x0, z1), x2)) -> c38(MARK(U62(x0, z1))) MARK(U41(U62(0, x1), x2)) -> c38(A__U41(a__U62(0, x1), x2)) MARK(U41(U62(nil, x1), x2)) -> c38(A__U41(a__U62(nil, x1), x2)) S tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) A__U62(tt, isNatList(cons(z0, z1))) -> c18(A__LENGTH(a__U51(a__isNat(z0), z1)), MARK(isNatList(cons(z0, z1)))) A__U62(tt, isNatList(nil)) -> c18(MARK(isNatList(nil))) A__U62(tt, isNatList(z0)) -> c18(MARK(isNatList(z0))) A__U62(tt, U61(zeros, x1, x2)) -> c18(A__LENGTH(a__U61(a__zeros, x1, x2)), MARK(U61(zeros, x1, x2))) A__U62(tt, U61(U11(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U11(mark(z0)), x1, x2)), MARK(U61(U11(z0), x1, x2))) A__U62(tt, U61(U21(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U21(mark(z0)), x1, x2)), MARK(U61(U21(z0), x1, x2))) A__U62(tt, U61(U31(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U31(mark(z0)), x1, x2)), MARK(U61(U31(z0), x1, x2))) A__U62(tt, U61(U41(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U41(mark(z0), z1), x1, x2)), MARK(U61(U41(z0, z1), x1, x2))) A__U62(tt, U61(U42(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U42(mark(z0)), x1, x2)), MARK(U61(U42(z0), x1, x2))) A__U62(tt, U61(isNatIList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatIList(z0), x1, x2)), MARK(U61(isNatIList(z0), x1, x2))) A__U62(tt, U61(U51(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U51(mark(z0), z1), x1, x2)), MARK(U61(U51(z0, z1), x1, x2))) A__U62(tt, U61(U52(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U52(mark(z0)), x1, x2)), MARK(U61(U52(z0), x1, x2))) A__U62(tt, U61(isNatList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatList(z0), x1, x2)), MARK(U61(isNatList(z0), x1, x2))) A__U62(tt, U61(U61(z0, z1, z2), x1, x2)) -> c18(A__LENGTH(a__U61(a__U61(mark(z0), z1, z2), x1, x2)), MARK(U61(U61(z0, z1, z2), x1, x2))) A__U62(tt, U61(U62(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U62(mark(z0), z1), x1, x2)), MARK(U61(U62(z0, z1), x1, x2))) A__U62(tt, U61(isNat(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNat(z0), x1, x2)), MARK(U61(isNat(z0), x1, x2))) A__U62(tt, U61(length(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__length(mark(z0)), x1, x2)), MARK(U61(length(z0), x1, x2))) A__U62(tt, U61(cons(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(cons(mark(z0), z1), x1, x2)), MARK(U61(cons(z0, z1), x1, x2))) A__U62(tt, U61(tt, x1, x2)) -> c18(A__LENGTH(a__U61(tt, x1, x2)), MARK(U61(tt, x1, x2))) A__U62(tt, U61(s(z0), x1, x2)) -> c18(A__LENGTH(a__U61(s(mark(z0)), x1, x2)), MARK(U61(s(z0), x1, x2))) A__U62(tt, U61(x0, z1, z2)) -> c18(MARK(U61(x0, z1, z2))) A__U62(tt, U61(0, x1, x2)) -> c18(A__LENGTH(a__U61(0, x1, x2))) A__U62(tt, U61(nil, x1, x2)) -> c18(A__LENGTH(a__U61(nil, x1, x2))) A__U62(tt, U62(zeros, x1)) -> c18(A__LENGTH(a__U62(a__zeros, x1)), MARK(U62(zeros, x1))) A__U62(tt, U62(U11(z0), x1)) -> c18(A__LENGTH(a__U62(a__U11(mark(z0)), x1)), MARK(U62(U11(z0), x1))) A__U62(tt, U62(U21(z0), x1)) -> c18(A__LENGTH(a__U62(a__U21(mark(z0)), x1)), MARK(U62(U21(z0), x1))) A__U62(tt, U62(U31(z0), x1)) -> c18(A__LENGTH(a__U62(a__U31(mark(z0)), x1)), MARK(U62(U31(z0), x1))) A__U62(tt, U62(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U41(mark(z0), z1), x1)), MARK(U62(U41(z0, z1), x1))) A__U62(tt, U62(U42(z0), x1)) -> c18(A__LENGTH(a__U62(a__U42(mark(z0)), x1)), MARK(U62(U42(z0), x1))) A__U62(tt, U62(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatIList(z0), x1)), MARK(U62(isNatIList(z0), x1))) A__U62(tt, U62(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U51(mark(z0), z1), x1)), MARK(U62(U51(z0, z1), x1))) A__U62(tt, U62(U52(z0), x1)) -> c18(A__LENGTH(a__U62(a__U52(mark(z0)), x1)), MARK(U62(U52(z0), x1))) A__U62(tt, U62(isNatList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatList(z0), x1)), MARK(U62(isNatList(z0), x1))) A__U62(tt, U62(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U62(a__U61(mark(z0), z1, z2), x1)), MARK(U62(U61(z0, z1, z2), x1))) A__U62(tt, U62(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U62(mark(z0), z1), x1)), MARK(U62(U62(z0, z1), x1))) A__U62(tt, U62(isNat(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNat(z0), x1)), MARK(U62(isNat(z0), x1))) A__U62(tt, U62(length(z0), x1)) -> c18(A__LENGTH(a__U62(a__length(mark(z0)), x1)), MARK(U62(length(z0), x1))) A__U62(tt, U62(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U62(cons(mark(z0), z1), x1)), MARK(U62(cons(z0, z1), x1))) A__U62(tt, U62(tt, x1)) -> c18(A__LENGTH(a__U62(tt, x1)), MARK(U62(tt, x1))) A__U62(tt, U62(s(z0), x1)) -> c18(A__LENGTH(a__U62(s(mark(z0)), x1)), MARK(U62(s(z0), x1))) A__U62(tt, U62(x0, z1)) -> c18(MARK(U62(x0, z1))) A__U62(tt, U62(0, x1)) -> c18(A__LENGTH(a__U62(0, x1))) A__U62(tt, U62(nil, x1)) -> c18(A__LENGTH(a__U62(nil, x1))) A__U62(tt, isNat(length(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(isNat(length(z0)))) A__U62(tt, isNat(s(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(isNat(s(z0)))) A__U62(tt, isNat(0)) -> c18(MARK(isNat(0))) A__U62(tt, isNat(z0)) -> c18(MARK(isNat(z0))) A__U62(tt, length(zeros)) -> c18(A__LENGTH(a__length(a__zeros)), MARK(length(zeros))) A__U62(tt, length(U11(z0))) -> c18(A__LENGTH(a__length(a__U11(mark(z0)))), MARK(length(U11(z0)))) A__U62(tt, length(U21(z0))) -> c18(A__LENGTH(a__length(a__U21(mark(z0)))), MARK(length(U21(z0)))) A__U62(tt, length(U31(z0))) -> c18(A__LENGTH(a__length(a__U31(mark(z0)))), MARK(length(U31(z0)))) A__U62(tt, length(U41(z0, z1))) -> c18(A__LENGTH(a__length(a__U41(mark(z0), z1))), MARK(length(U41(z0, z1)))) A__U62(tt, length(U42(z0))) -> c18(A__LENGTH(a__length(a__U42(mark(z0)))), MARK(length(U42(z0)))) A__U62(tt, length(isNatIList(z0))) -> c18(A__LENGTH(a__length(a__isNatIList(z0))), MARK(length(isNatIList(z0)))) A__U62(tt, length(U51(z0, z1))) -> c18(A__LENGTH(a__length(a__U51(mark(z0), z1))), MARK(length(U51(z0, z1)))) A__U62(tt, length(U52(z0))) -> c18(A__LENGTH(a__length(a__U52(mark(z0)))), MARK(length(U52(z0)))) A__U62(tt, length(isNatList(z0))) -> c18(A__LENGTH(a__length(a__isNatList(z0))), MARK(length(isNatList(z0)))) A__U62(tt, length(U61(z0, z1, z2))) -> c18(A__LENGTH(a__length(a__U61(mark(z0), z1, z2))), MARK(length(U61(z0, z1, z2)))) A__U62(tt, length(U62(z0, z1))) -> c18(A__LENGTH(a__length(a__U62(mark(z0), z1))), MARK(length(U62(z0, z1)))) A__U62(tt, length(isNat(z0))) -> c18(A__LENGTH(a__length(a__isNat(z0))), MARK(length(isNat(z0)))) A__U62(tt, length(length(z0))) -> c18(A__LENGTH(a__length(a__length(mark(z0)))), MARK(length(length(z0)))) A__U62(tt, length(cons(z0, z1))) -> c18(A__LENGTH(a__length(cons(mark(z0), z1))), MARK(length(cons(z0, z1)))) A__U62(tt, length(s(z0))) -> c18(A__LENGTH(a__length(s(mark(z0)))), MARK(length(s(z0)))) A__U62(tt, length(x0)) -> c18(MARK(length(x0))) A__U62(tt, length(0)) -> c18(A__LENGTH(a__length(0))) A__U62(tt, length(tt)) -> c18(A__LENGTH(a__length(tt))) A__U62(tt, length(nil)) -> c18(A__LENGTH(a__length(nil))) A__U62(tt, zeros) -> c18(A__LENGTH(cons(0, zeros))) A__ISNATILIST(cons(length(nil), x1)) -> c26(A__U41(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATILIST(cons(length(cons(z0, z1)), x1)) -> c26(A__U41(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(length(x0), x1)) -> c26(A__ISNAT(length(x0))) A__ISNATILIST(cons(s(0), x1)) -> c26(A__U41(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATILIST(cons(s(length(z0)), x1)) -> c26(A__U41(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATILIST(cons(s(s(z0)), x1)) -> c26(A__U41(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(s(x0), x1)) -> c26(A__ISNAT(s(x0))) A__ISNATLIST(cons(length(nil), x1)) -> c29(A__U51(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATLIST(cons(length(cons(z0, z1)), x1)) -> c29(A__U51(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(length(x0), x1)) -> c29(A__ISNAT(length(x0))) A__ISNATLIST(cons(s(0), x1)) -> c29(A__U51(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATLIST(cons(s(length(z0)), x1)) -> c29(A__U51(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATLIST(cons(s(s(z0)), x1)) -> c29(A__U51(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(s(x0), x1)) -> c29(A__ISNAT(s(x0))) A__LENGTH(cons(x0, cons(0, x2))) -> c32(A__U61(a__U51(tt, x2), cons(0, x2), x0), A__ISNATLIST(cons(0, x2))) A__LENGTH(cons(x0, cons(length(z0), x2))) -> c32(A__U61(a__U51(a__U11(a__isNatList(z0)), x2), cons(length(z0), x2), x0), A__ISNATLIST(cons(length(z0), x2))) A__LENGTH(cons(x0, cons(s(z0), x2))) -> c32(A__U61(a__U51(a__U21(a__isNat(z0)), x2), cons(s(z0), x2), x0), A__ISNATLIST(cons(s(z0), x2))) A__LENGTH(cons(x0, cons(z0, x2))) -> c32(A__U61(a__U51(isNat(z0), x2), cons(z0, x2), x0), A__ISNATLIST(cons(z0, x2))) A__LENGTH(cons(x0, cons(x1, z1))) -> c32(A__ISNATLIST(cons(x1, z1))) MARK(U41(U11(zeros), x1)) -> c38(A__U41(a__U11(a__zeros), x1), MARK(U11(zeros))) MARK(U41(U11(U11(z0)), x1)) -> c38(A__U41(a__U11(a__U11(mark(z0))), x1), MARK(U11(U11(z0)))) MARK(U41(U11(U21(z0)), x1)) -> c38(A__U41(a__U11(a__U21(mark(z0))), x1), MARK(U11(U21(z0)))) MARK(U41(U11(U31(z0)), x1)) -> c38(A__U41(a__U11(a__U31(mark(z0))), x1), MARK(U11(U31(z0)))) MARK(U41(U11(U41(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U41(mark(z0), z1)), x1), MARK(U11(U41(z0, z1)))) MARK(U41(U11(U42(z0)), x1)) -> c38(A__U41(a__U11(a__U42(mark(z0))), x1), MARK(U11(U42(z0)))) MARK(U41(U11(isNatIList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatIList(z0)), x1), MARK(U11(isNatIList(z0)))) MARK(U41(U11(U51(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U51(mark(z0), z1)), x1), MARK(U11(U51(z0, z1)))) MARK(U41(U11(U52(z0)), x1)) -> c38(A__U41(a__U11(a__U52(mark(z0))), x1), MARK(U11(U52(z0)))) MARK(U41(U11(isNatList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatList(z0)), x1), MARK(U11(isNatList(z0)))) MARK(U41(U11(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U11(a__U61(mark(z0), z1, z2)), x1), MARK(U11(U61(z0, z1, z2)))) MARK(U41(U11(U62(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U62(mark(z0), z1)), x1), MARK(U11(U62(z0, z1)))) MARK(U41(U11(isNat(z0)), x1)) -> c38(A__U41(a__U11(a__isNat(z0)), x1), MARK(U11(isNat(z0)))) MARK(U41(U11(length(z0)), x1)) -> c38(A__U41(a__U11(a__length(mark(z0))), x1), MARK(U11(length(z0)))) MARK(U41(U11(cons(z0, z1)), x1)) -> c38(A__U41(a__U11(cons(mark(z0), z1)), x1), MARK(U11(cons(z0, z1)))) MARK(U41(U11(0), x1)) -> c38(A__U41(a__U11(0), x1), MARK(U11(0))) MARK(U41(U11(tt), x1)) -> c38(A__U41(a__U11(tt), x1), MARK(U11(tt))) MARK(U41(U11(s(z0)), x1)) -> c38(A__U41(a__U11(s(mark(z0))), x1), MARK(U11(s(z0)))) MARK(U41(U11(nil), x1)) -> c38(A__U41(a__U11(nil), x1), MARK(U11(nil))) MARK(U41(U11(x0), x1)) -> c38(MARK(U11(x0))) MARK(U41(U21(zeros), x1)) -> c38(A__U41(a__U21(a__zeros), x1), MARK(U21(zeros))) MARK(U41(U21(U11(z0)), x1)) -> c38(A__U41(a__U21(a__U11(mark(z0))), x1), MARK(U21(U11(z0)))) MARK(U41(U21(U21(z0)), x1)) -> c38(A__U41(a__U21(a__U21(mark(z0))), x1), MARK(U21(U21(z0)))) MARK(U41(U21(U31(z0)), x1)) -> c38(A__U41(a__U21(a__U31(mark(z0))), x1), MARK(U21(U31(z0)))) MARK(U41(U21(U41(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U41(mark(z0), z1)), x1), MARK(U21(U41(z0, z1)))) MARK(U41(U21(U42(z0)), x1)) -> c38(A__U41(a__U21(a__U42(mark(z0))), x1), MARK(U21(U42(z0)))) MARK(U41(U21(isNatIList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatIList(z0)), x1), MARK(U21(isNatIList(z0)))) MARK(U41(U21(U51(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U51(mark(z0), z1)), x1), MARK(U21(U51(z0, z1)))) MARK(U41(U21(U52(z0)), x1)) -> c38(A__U41(a__U21(a__U52(mark(z0))), x1), MARK(U21(U52(z0)))) MARK(U41(U21(isNatList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatList(z0)), x1), MARK(U21(isNatList(z0)))) MARK(U41(U21(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U21(a__U61(mark(z0), z1, z2)), x1), MARK(U21(U61(z0, z1, z2)))) MARK(U41(U21(U62(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U62(mark(z0), z1)), x1), MARK(U21(U62(z0, z1)))) MARK(U41(U21(isNat(z0)), x1)) -> c38(A__U41(a__U21(a__isNat(z0)), x1), MARK(U21(isNat(z0)))) MARK(U41(U21(length(z0)), x1)) -> c38(A__U41(a__U21(a__length(mark(z0))), x1), MARK(U21(length(z0)))) MARK(U41(U21(cons(z0, z1)), x1)) -> c38(A__U41(a__U21(cons(mark(z0), z1)), x1), MARK(U21(cons(z0, z1)))) MARK(U41(U21(0), x1)) -> c38(A__U41(a__U21(0), x1), MARK(U21(0))) MARK(U41(U21(tt), x1)) -> c38(A__U41(a__U21(tt), x1), MARK(U21(tt))) MARK(U41(U21(s(z0)), x1)) -> c38(A__U41(a__U21(s(mark(z0))), x1), MARK(U21(s(z0)))) MARK(U41(U21(nil), x1)) -> c38(A__U41(a__U21(nil), x1), MARK(U21(nil))) MARK(U41(U21(x0), x1)) -> c38(MARK(U21(x0))) MARK(U41(U31(zeros), x1)) -> c38(A__U41(a__U31(a__zeros), x1), MARK(U31(zeros))) MARK(U41(U31(U11(z0)), x1)) -> c38(A__U41(a__U31(a__U11(mark(z0))), x1), MARK(U31(U11(z0)))) MARK(U41(U31(U21(z0)), x1)) -> c38(A__U41(a__U31(a__U21(mark(z0))), x1), MARK(U31(U21(z0)))) MARK(U41(U31(U31(z0)), x1)) -> c38(A__U41(a__U31(a__U31(mark(z0))), x1), MARK(U31(U31(z0)))) MARK(U41(U31(U41(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U41(mark(z0), z1)), x1), MARK(U31(U41(z0, z1)))) MARK(U41(U31(U42(z0)), x1)) -> c38(A__U41(a__U31(a__U42(mark(z0))), x1), MARK(U31(U42(z0)))) MARK(U41(U31(isNatIList(z0)), x1)) -> c38(A__U41(a__U31(a__isNatIList(z0)), x1), MARK(U31(isNatIList(z0)))) MARK(U41(U31(U51(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U51(mark(z0), z1)), x1), MARK(U31(U51(z0, z1)))) MARK(U41(U31(U52(z0)), x1)) -> c38(A__U41(a__U31(a__U52(mark(z0))), x1), MARK(U31(U52(z0)))) MARK(U41(U31(isNatList(z0)), x1)) -> c38(A__U41(a__U31(a__isNatList(z0)), x1), MARK(U31(isNatList(z0)))) MARK(U41(U31(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U31(a__U61(mark(z0), z1, z2)), x1), MARK(U31(U61(z0, z1, z2)))) MARK(U41(U31(U62(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U62(mark(z0), z1)), x1), MARK(U31(U62(z0, z1)))) MARK(U41(U31(isNat(z0)), x1)) -> c38(A__U41(a__U31(a__isNat(z0)), x1), MARK(U31(isNat(z0)))) MARK(U41(U31(length(z0)), x1)) -> c38(A__U41(a__U31(a__length(mark(z0))), x1), MARK(U31(length(z0)))) MARK(U41(U31(cons(z0, z1)), x1)) -> c38(A__U41(a__U31(cons(mark(z0), z1)), x1), MARK(U31(cons(z0, z1)))) MARK(U41(U31(0), x1)) -> c38(A__U41(a__U31(0), x1), MARK(U31(0))) MARK(U41(U31(tt), x1)) -> c38(A__U41(a__U31(tt), x1), MARK(U31(tt))) MARK(U41(U31(s(z0)), x1)) -> c38(A__U41(a__U31(s(mark(z0))), x1), MARK(U31(s(z0)))) MARK(U41(U31(nil), x1)) -> c38(A__U41(a__U31(nil), x1), MARK(U31(nil))) MARK(U41(U31(x0), x1)) -> c38(MARK(U31(x0))) MARK(U41(U41(U11(z0), x1), x2)) -> c38(A__U41(a__U41(a__U11(mark(z0)), x1), x2), MARK(U41(U11(z0), x1))) MARK(U41(U41(U21(z0), x1), x2)) -> c38(A__U41(a__U41(a__U21(mark(z0)), x1), x2), MARK(U41(U21(z0), x1))) MARK(U41(U41(U31(z0), x1), x2)) -> c38(A__U41(a__U41(a__U31(mark(z0)), x1), x2), MARK(U41(U31(z0), x1))) MARK(U41(U41(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U41(mark(z0), z1), x1), x2), MARK(U41(U41(z0, z1), x1))) MARK(U41(U41(U42(z0), x1), x2)) -> c38(A__U41(a__U41(a__U42(mark(z0)), x1), x2), MARK(U41(U42(z0), x1))) MARK(U41(U41(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U51(mark(z0), z1), x1), x2), MARK(U41(U51(z0, z1), x1))) MARK(U41(U41(U52(z0), x1), x2)) -> c38(A__U41(a__U41(a__U52(mark(z0)), x1), x2), MARK(U41(U52(z0), x1))) MARK(U41(U41(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U41(a__U61(mark(z0), z1, z2), x1), x2), MARK(U41(U61(z0, z1, z2), x1))) MARK(U41(U41(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U62(mark(z0), z1), x1), x2), MARK(U41(U62(z0, z1), x1))) MARK(U41(U41(length(z0), x1), x2)) -> c38(A__U41(a__U41(a__length(mark(z0)), x1), x2), MARK(U41(length(z0), x1))) MARK(U41(U41(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U41(cons(mark(z0), z1), x1), x2), MARK(U41(cons(z0, z1), x1))) MARK(U41(U41(s(z0), x1), x2)) -> c38(A__U41(a__U41(s(mark(z0)), x1), x2), MARK(U41(s(z0), x1))) MARK(U41(U41(x0, z1), x2)) -> c38(MARK(U41(x0, z1))) MARK(U41(U41(0, x1), x2)) -> c38(A__U41(a__U41(0, x1), x2)) MARK(U41(U41(nil, x1), x2)) -> c38(A__U41(a__U41(nil, x1), x2)) MARK(U41(U41(zeros, x1), x2)) -> c2(A__U41(a__U41(a__zeros, x1), x2)) MARK(U41(U41(zeros, x1), x2)) -> c2(MARK(U41(zeros, x1))) MARK(U41(U41(isNatIList(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNatIList(z0), x1), x2)) MARK(U41(U41(isNatIList(z0), x1), x2)) -> c2(MARK(U41(isNatIList(z0), x1))) MARK(U41(U41(isNatList(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNatList(z0), x1), x2)) MARK(U41(U41(isNatList(z0), x1), x2)) -> c2(MARK(U41(isNatList(z0), x1))) MARK(U41(U41(isNat(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNat(z0), x1), x2)) MARK(U41(U41(isNat(z0), x1), x2)) -> c2(MARK(U41(isNat(z0), x1))) MARK(U41(U41(tt, x1), x2)) -> c2(A__U41(a__U41(tt, x1), x2)) MARK(U41(U41(tt, x1), x2)) -> c2(MARK(U41(tt, x1))) MARK(U41(U42(zeros), x1)) -> c38(A__U41(a__U42(a__zeros), x1), MARK(U42(zeros))) MARK(U41(U42(U11(z0)), x1)) -> c38(A__U41(a__U42(a__U11(mark(z0))), x1), MARK(U42(U11(z0)))) MARK(U41(U42(U21(z0)), x1)) -> c38(A__U41(a__U42(a__U21(mark(z0))), x1), MARK(U42(U21(z0)))) MARK(U41(U42(U31(z0)), x1)) -> c38(A__U41(a__U42(a__U31(mark(z0))), x1), MARK(U42(U31(z0)))) MARK(U41(U42(U41(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U41(mark(z0), z1)), x1), MARK(U42(U41(z0, z1)))) MARK(U41(U42(U42(z0)), x1)) -> c38(A__U41(a__U42(a__U42(mark(z0))), x1), MARK(U42(U42(z0)))) MARK(U41(U42(isNatIList(z0)), x1)) -> c38(A__U41(a__U42(a__isNatIList(z0)), x1), MARK(U42(isNatIList(z0)))) MARK(U41(U42(U51(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U51(mark(z0), z1)), x1), MARK(U42(U51(z0, z1)))) MARK(U41(U42(U52(z0)), x1)) -> c38(A__U41(a__U42(a__U52(mark(z0))), x1), MARK(U42(U52(z0)))) MARK(U41(U42(isNatList(z0)), x1)) -> c38(A__U41(a__U42(a__isNatList(z0)), x1), MARK(U42(isNatList(z0)))) MARK(U41(U42(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U42(a__U61(mark(z0), z1, z2)), x1), MARK(U42(U61(z0, z1, z2)))) MARK(U41(U42(U62(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U62(mark(z0), z1)), x1), MARK(U42(U62(z0, z1)))) MARK(U41(U42(isNat(z0)), x1)) -> c38(A__U41(a__U42(a__isNat(z0)), x1), MARK(U42(isNat(z0)))) MARK(U41(U42(length(z0)), x1)) -> c38(A__U41(a__U42(a__length(mark(z0))), x1), MARK(U42(length(z0)))) MARK(U41(U42(cons(z0, z1)), x1)) -> c38(A__U41(a__U42(cons(mark(z0), z1)), x1), MARK(U42(cons(z0, z1)))) MARK(U41(U42(0), x1)) -> c38(A__U41(a__U42(0), x1), MARK(U42(0))) MARK(U41(U42(tt), x1)) -> c38(A__U41(a__U42(tt), x1), MARK(U42(tt))) MARK(U41(U42(s(z0)), x1)) -> c38(A__U41(a__U42(s(mark(z0))), x1), MARK(U42(s(z0)))) MARK(U41(U42(nil), x1)) -> c38(A__U41(a__U42(nil), x1), MARK(U42(nil))) MARK(U41(U42(x0), x1)) -> c38(MARK(U42(x0))) MARK(U41(U51(U11(z0), x1), x2)) -> c38(A__U41(a__U51(a__U11(mark(z0)), x1), x2), MARK(U51(U11(z0), x1))) MARK(U41(U51(U21(z0), x1), x2)) -> c38(A__U41(a__U51(a__U21(mark(z0)), x1), x2), MARK(U51(U21(z0), x1))) MARK(U41(U51(U31(z0), x1), x2)) -> c38(A__U41(a__U51(a__U31(mark(z0)), x1), x2), MARK(U51(U31(z0), x1))) MARK(U41(U51(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U41(mark(z0), z1), x1), x2), MARK(U51(U41(z0, z1), x1))) MARK(U41(U51(U42(z0), x1), x2)) -> c38(A__U41(a__U51(a__U42(mark(z0)), x1), x2), MARK(U51(U42(z0), x1))) MARK(U41(U51(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U51(mark(z0), z1), x1), x2), MARK(U51(U51(z0, z1), x1))) MARK(U41(U51(U52(z0), x1), x2)) -> c38(A__U41(a__U51(a__U52(mark(z0)), x1), x2), MARK(U51(U52(z0), x1))) MARK(U41(U51(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U51(a__U61(mark(z0), z1, z2), x1), x2), MARK(U51(U61(z0, z1, z2), x1))) MARK(U41(U51(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U62(mark(z0), z1), x1), x2), MARK(U51(U62(z0, z1), x1))) MARK(U41(U51(length(z0), x1), x2)) -> c38(A__U41(a__U51(a__length(mark(z0)), x1), x2), MARK(U51(length(z0), x1))) MARK(U41(U51(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U51(cons(mark(z0), z1), x1), x2), MARK(U51(cons(z0, z1), x1))) MARK(U41(U51(s(z0), x1), x2)) -> c38(A__U41(a__U51(s(mark(z0)), x1), x2), MARK(U51(s(z0), x1))) MARK(U41(U51(x0, z1), x2)) -> c38(MARK(U51(x0, z1))) MARK(U41(U51(0, x1), x2)) -> c38(A__U41(a__U51(0, x1), x2)) MARK(U41(U51(nil, x1), x2)) -> c38(A__U41(a__U51(nil, x1), x2)) MARK(U41(U51(zeros, x1), x2)) -> c3(A__U41(a__U51(a__zeros, x1), x2)) MARK(U41(U51(zeros, x1), x2)) -> c3(MARK(U51(zeros, x1))) MARK(U41(U51(isNatIList(z0), x1), x2)) -> c3(A__U41(a__U51(a__isNatIList(z0), x1), x2)) MARK(U41(U51(isNatIList(z0), x1), x2)) -> c3(MARK(U51(isNatIList(z0), x1))) MARK(U41(U51(isNatList(z0), x1), x2)) -> c3(A__U41(a__U51(a__isNatList(z0), x1), x2)) MARK(U41(U51(isNatList(z0), x1), x2)) -> c3(MARK(U51(isNatList(z0), x1))) MARK(U41(U51(isNat(z0), x1), x2)) -> c3(A__U41(a__U51(a__isNat(z0), x1), x2)) MARK(U41(U51(isNat(z0), x1), x2)) -> c3(MARK(U51(isNat(z0), x1))) MARK(U41(U51(tt, x1), x2)) -> c3(A__U41(a__U51(tt, x1), x2)) MARK(U41(U51(tt, x1), x2)) -> c3(MARK(U51(tt, x1))) MARK(U41(U52(zeros), x1)) -> c38(A__U41(a__U52(a__zeros), x1), MARK(U52(zeros))) MARK(U41(U52(U11(z0)), x1)) -> c38(A__U41(a__U52(a__U11(mark(z0))), x1), MARK(U52(U11(z0)))) MARK(U41(U52(U21(z0)), x1)) -> c38(A__U41(a__U52(a__U21(mark(z0))), x1), MARK(U52(U21(z0)))) MARK(U41(U52(U31(z0)), x1)) -> c38(A__U41(a__U52(a__U31(mark(z0))), x1), MARK(U52(U31(z0)))) MARK(U41(U52(U41(z0, z1)), x1)) -> c38(A__U41(a__U52(a__U41(mark(z0), z1)), x1), MARK(U52(U41(z0, z1)))) MARK(U41(U52(U42(z0)), x1)) -> c38(A__U41(a__U52(a__U42(mark(z0))), x1), MARK(U52(U42(z0)))) MARK(U41(U52(isNatIList(z0)), x1)) -> c38(A__U41(a__U52(a__isNatIList(z0)), x1), MARK(U52(isNatIList(z0)))) MARK(U41(U52(U51(z0, z1)), x1)) -> c38(A__U41(a__U52(a__U51(mark(z0), z1)), x1), MARK(U52(U51(z0, z1)))) MARK(U41(U52(U52(z0)), x1)) -> c38(A__U41(a__U52(a__U52(mark(z0))), x1), MARK(U52(U52(z0)))) MARK(U41(U52(isNatList(z0)), x1)) -> c38(A__U41(a__U52(a__isNatList(z0)), x1), MARK(U52(isNatList(z0)))) MARK(U41(U52(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U52(a__U61(mark(z0), z1, z2)), x1), MARK(U52(U61(z0, z1, z2)))) MARK(U41(U52(U62(z0, z1)), x1)) -> c38(A__U41(a__U52(a__U62(mark(z0), z1)), x1), MARK(U52(U62(z0, z1)))) MARK(U41(U52(isNat(z0)), x1)) -> c38(A__U41(a__U52(a__isNat(z0)), x1), MARK(U52(isNat(z0)))) MARK(U41(U52(length(z0)), x1)) -> c38(A__U41(a__U52(a__length(mark(z0))), x1), MARK(U52(length(z0)))) MARK(U41(U52(cons(z0, z1)), x1)) -> c38(A__U41(a__U52(cons(mark(z0), z1)), x1), MARK(U52(cons(z0, z1)))) MARK(U41(U52(0), x1)) -> c38(A__U41(a__U52(0), x1), MARK(U52(0))) MARK(U41(U52(tt), x1)) -> c38(A__U41(a__U52(tt), x1), MARK(U52(tt))) MARK(U41(U52(s(z0)), x1)) -> c38(A__U41(a__U52(s(mark(z0))), x1), MARK(U52(s(z0)))) MARK(U41(U52(nil), x1)) -> c38(A__U41(a__U52(nil), x1), MARK(U52(nil))) MARK(U41(U52(x0), x1)) -> c38(MARK(U52(x0))) MARK(U41(U61(zeros, x1, x2), x3)) -> c38(A__U41(a__U61(a__zeros, x1, x2), x3), MARK(U61(zeros, x1, x2))) MARK(U41(U61(U11(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U11(mark(z0)), x1, x2), x3), MARK(U61(U11(z0), x1, x2))) MARK(U41(U61(U21(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U21(mark(z0)), x1, x2), x3), MARK(U61(U21(z0), x1, x2))) MARK(U41(U61(U31(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U31(mark(z0)), x1, x2), x3), MARK(U61(U31(z0), x1, x2))) MARK(U41(U61(U41(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(a__U41(mark(z0), z1), x1, x2), x3), MARK(U61(U41(z0, z1), x1, x2))) MARK(U41(U61(U42(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U42(mark(z0)), x1, x2), x3), MARK(U61(U42(z0), x1, x2))) MARK(U41(U61(isNatIList(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__isNatIList(z0), x1, x2), x3), MARK(U61(isNatIList(z0), x1, x2))) MARK(U41(U61(U51(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(a__U51(mark(z0), z1), x1, x2), x3), MARK(U61(U51(z0, z1), x1, x2))) MARK(U41(U61(U52(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U52(mark(z0)), x1, x2), x3), MARK(U61(U52(z0), x1, x2))) MARK(U41(U61(isNatList(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__isNatList(z0), x1, x2), x3), MARK(U61(isNatList(z0), x1, x2))) MARK(U41(U61(U61(z0, z1, z2), x1, x2), x3)) -> c38(A__U41(a__U61(a__U61(mark(z0), z1, z2), x1, x2), x3), MARK(U61(U61(z0, z1, z2), x1, x2))) MARK(U41(U61(U62(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(a__U62(mark(z0), z1), x1, x2), x3), MARK(U61(U62(z0, z1), x1, x2))) MARK(U41(U61(isNat(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__isNat(z0), x1, x2), x3), MARK(U61(isNat(z0), x1, x2))) MARK(U41(U61(length(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__length(mark(z0)), x1, x2), x3), MARK(U61(length(z0), x1, x2))) MARK(U41(U61(cons(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(cons(mark(z0), z1), x1, x2), x3), MARK(U61(cons(z0, z1), x1, x2))) MARK(U41(U61(tt, x1, x2), x3)) -> c38(A__U41(a__U61(tt, x1, x2), x3), MARK(U61(tt, x1, x2))) MARK(U41(U61(s(z0), x1, x2), x3)) -> c38(A__U41(a__U61(s(mark(z0)), x1, x2), x3), MARK(U61(s(z0), x1, x2))) MARK(U41(U61(x0, z1, z2), x3)) -> c38(MARK(U61(x0, z1, z2))) MARK(U41(U61(0, x1, x2), x3)) -> c38(A__U41(a__U61(0, x1, x2), x3)) MARK(U41(U61(nil, x1, x2), x3)) -> c38(A__U41(a__U61(nil, x1, x2), x3)) MARK(U41(U62(zeros, x1), x2)) -> c38(A__U41(a__U62(a__zeros, x1), x2), MARK(U62(zeros, x1))) MARK(U41(U62(U11(z0), x1), x2)) -> c38(A__U41(a__U62(a__U11(mark(z0)), x1), x2), MARK(U62(U11(z0), x1))) MARK(U41(U62(U21(z0), x1), x2)) -> c38(A__U41(a__U62(a__U21(mark(z0)), x1), x2), MARK(U62(U21(z0), x1))) MARK(U41(U62(U31(z0), x1), x2)) -> c38(A__U41(a__U62(a__U31(mark(z0)), x1), x2), MARK(U62(U31(z0), x1))) MARK(U41(U62(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U62(a__U41(mark(z0), z1), x1), x2), MARK(U62(U41(z0, z1), x1))) MARK(U41(U62(U42(z0), x1), x2)) -> c38(A__U41(a__U62(a__U42(mark(z0)), x1), x2), MARK(U62(U42(z0), x1))) MARK(U41(U62(isNatIList(z0), x1), x2)) -> c38(A__U41(a__U62(a__isNatIList(z0), x1), x2), MARK(U62(isNatIList(z0), x1))) MARK(U41(U62(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U62(a__U51(mark(z0), z1), x1), x2), MARK(U62(U51(z0, z1), x1))) MARK(U41(U62(U52(z0), x1), x2)) -> c38(A__U41(a__U62(a__U52(mark(z0)), x1), x2), MARK(U62(U52(z0), x1))) MARK(U41(U62(isNatList(z0), x1), x2)) -> c38(A__U41(a__U62(a__isNatList(z0), x1), x2), MARK(U62(isNatList(z0), x1))) MARK(U41(U62(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U62(a__U61(mark(z0), z1, z2), x1), x2), MARK(U62(U61(z0, z1, z2), x1))) MARK(U41(U62(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U62(a__U62(mark(z0), z1), x1), x2), MARK(U62(U62(z0, z1), x1))) MARK(U41(U62(isNat(z0), x1), x2)) -> c38(A__U41(a__U62(a__isNat(z0), x1), x2), MARK(U62(isNat(z0), x1))) MARK(U41(U62(length(z0), x1), x2)) -> c38(A__U41(a__U62(a__length(mark(z0)), x1), x2), MARK(U62(length(z0), x1))) MARK(U41(U62(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U62(cons(mark(z0), z1), x1), x2), MARK(U62(cons(z0, z1), x1))) MARK(U41(U62(tt, x1), x2)) -> c38(A__U41(a__U62(tt, x1), x2), MARK(U62(tt, x1))) MARK(U41(U62(s(z0), x1), x2)) -> c38(A__U41(a__U62(s(mark(z0)), x1), x2), MARK(U62(s(z0), x1))) MARK(U41(U62(x0, z1), x2)) -> c38(MARK(U62(x0, z1))) MARK(U41(U62(0, x1), x2)) -> c38(A__U41(a__U62(0, x1), x2)) MARK(U41(U62(nil, x1), x2)) -> c38(A__U41(a__U62(nil, x1), x2)) K tuples:none Defined Rule Symbols: a__zeros, a__U11_1, a__U21_1, a__U31_1, a__U41_2, a__U42_1, a__U51_2, a__U52_1, a__U61_3, a__U62_2, a__isNat_1, a__isNatIList_1, a__isNatList_1, a__length_1, mark_1 Defined Pair Symbols: MARK_1, A__U41_2, A__U51_2, A__ISNAT_1, A__ISNATILIST_1, A__U61_3, A__U62_2, A__ISNATLIST_1, A__LENGTH_1 Compound Symbols: c40_1, c43_1, c46_1, c48_1, c51_1, c8_1, c12_1, c21_1, c22_1, c24_1, c35_1, c36_1, c37_1, c39_1, c42_1, c16_1, c18_2, c18_1, c26_1, c29_1, c32_1, c38_2, c38_1, c_1, c41_2, c41_1, c1_1, c44_2, c44_1, c45_2, c45_1, c47_2, c47_1, c16_2, c26_2, c29_2, c32_2, c2_1, c3_1 ---------------------------------------- (209) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace MARK(U41(length(z0), x1)) -> c38(A__U41(a__length(mark(z0)), x1), MARK(length(z0))) by MARK(U41(length(x0), x1)) -> c38(A__U41(length(mark(x0)), x1), MARK(length(x0))) MARK(U41(length(zeros), x1)) -> c38(A__U41(a__length(a__zeros), x1), MARK(length(zeros))) MARK(U41(length(U11(z0)), x1)) -> c38(A__U41(a__length(a__U11(mark(z0))), x1), MARK(length(U11(z0)))) MARK(U41(length(U21(z0)), x1)) -> c38(A__U41(a__length(a__U21(mark(z0))), x1), MARK(length(U21(z0)))) MARK(U41(length(U31(z0)), x1)) -> c38(A__U41(a__length(a__U31(mark(z0))), x1), MARK(length(U31(z0)))) MARK(U41(length(U41(z0, z1)), x1)) -> c38(A__U41(a__length(a__U41(mark(z0), z1)), x1), MARK(length(U41(z0, z1)))) MARK(U41(length(U42(z0)), x1)) -> c38(A__U41(a__length(a__U42(mark(z0))), x1), MARK(length(U42(z0)))) MARK(U41(length(isNatIList(z0)), x1)) -> c38(A__U41(a__length(a__isNatIList(z0)), x1), MARK(length(isNatIList(z0)))) MARK(U41(length(U51(z0, z1)), x1)) -> c38(A__U41(a__length(a__U51(mark(z0), z1)), x1), MARK(length(U51(z0, z1)))) MARK(U41(length(U52(z0)), x1)) -> c38(A__U41(a__length(a__U52(mark(z0))), x1), MARK(length(U52(z0)))) MARK(U41(length(isNatList(z0)), x1)) -> c38(A__U41(a__length(a__isNatList(z0)), x1), MARK(length(isNatList(z0)))) MARK(U41(length(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__length(a__U61(mark(z0), z1, z2)), x1), MARK(length(U61(z0, z1, z2)))) MARK(U41(length(U62(z0, z1)), x1)) -> c38(A__U41(a__length(a__U62(mark(z0), z1)), x1), MARK(length(U62(z0, z1)))) MARK(U41(length(isNat(z0)), x1)) -> c38(A__U41(a__length(a__isNat(z0)), x1), MARK(length(isNat(z0)))) MARK(U41(length(length(z0)), x1)) -> c38(A__U41(a__length(a__length(mark(z0))), x1), MARK(length(length(z0)))) MARK(U41(length(cons(z0, z1)), x1)) -> c38(A__U41(a__length(cons(mark(z0), z1)), x1), MARK(length(cons(z0, z1)))) MARK(U41(length(0), x1)) -> c38(A__U41(a__length(0), x1), MARK(length(0))) MARK(U41(length(tt), x1)) -> c38(A__U41(a__length(tt), x1), MARK(length(tt))) MARK(U41(length(s(z0)), x1)) -> c38(A__U41(a__length(s(mark(z0))), x1), MARK(length(s(z0)))) MARK(U41(length(nil), x1)) -> c38(A__U41(a__length(nil), x1), MARK(length(nil))) ---------------------------------------- (210) Obligation: Complexity Dependency Tuples Problem Rules: a__zeros -> cons(0, zeros) a__zeros -> zeros a__U11(tt) -> tt a__U11(z0) -> U11(z0) a__U21(tt) -> tt a__U21(z0) -> U21(z0) a__U31(tt) -> tt a__U31(z0) -> U31(z0) a__U41(tt, z0) -> a__U42(a__isNatIList(z0)) a__U41(z0, z1) -> U41(z0, z1) a__U42(tt) -> tt a__U42(z0) -> U42(z0) a__U51(tt, z0) -> a__U52(a__isNatList(z0)) a__U51(z0, z1) -> U51(z0, z1) a__U52(tt) -> tt a__U52(z0) -> U52(z0) a__U61(tt, z0, z1) -> a__U62(a__isNat(z1), z0) a__U61(z0, z1, z2) -> U61(z0, z1, z2) a__U62(tt, z0) -> s(a__length(mark(z0))) a__U62(z0, z1) -> U62(z0, z1) a__isNat(0) -> tt a__isNat(length(z0)) -> a__U11(a__isNatList(z0)) a__isNat(s(z0)) -> a__U21(a__isNat(z0)) a__isNat(z0) -> isNat(z0) a__isNatIList(z0) -> a__U31(a__isNatList(z0)) a__isNatIList(zeros) -> tt a__isNatIList(cons(z0, z1)) -> a__U41(a__isNat(z0), z1) a__isNatIList(z0) -> isNatIList(z0) a__isNatList(nil) -> tt a__isNatList(cons(z0, z1)) -> a__U51(a__isNat(z0), z1) a__isNatList(z0) -> isNatList(z0) a__length(nil) -> 0 a__length(cons(z0, z1)) -> a__U61(a__isNatList(z1), z1, z0) a__length(z0) -> length(z0) mark(zeros) -> a__zeros mark(U11(z0)) -> a__U11(mark(z0)) mark(U21(z0)) -> a__U21(mark(z0)) mark(U31(z0)) -> a__U31(mark(z0)) mark(U41(z0, z1)) -> a__U41(mark(z0), z1) mark(U42(z0)) -> a__U42(mark(z0)) mark(isNatIList(z0)) -> a__isNatIList(z0) mark(U51(z0, z1)) -> a__U51(mark(z0), z1) mark(U52(z0)) -> a__U52(mark(z0)) mark(isNatList(z0)) -> a__isNatList(z0) mark(U61(z0, z1, z2)) -> a__U61(mark(z0), z1, z2) mark(U62(z0, z1)) -> a__U62(mark(z0), z1) mark(isNat(z0)) -> a__isNat(z0) mark(length(z0)) -> a__length(mark(z0)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(0) -> 0 mark(tt) -> tt mark(s(z0)) -> s(mark(z0)) mark(nil) -> nil Tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) A__U62(tt, isNatList(cons(z0, z1))) -> c18(A__LENGTH(a__U51(a__isNat(z0), z1)), MARK(isNatList(cons(z0, z1)))) A__U62(tt, isNatList(nil)) -> c18(MARK(isNatList(nil))) A__U62(tt, isNatList(z0)) -> c18(MARK(isNatList(z0))) A__U62(tt, U61(zeros, x1, x2)) -> c18(A__LENGTH(a__U61(a__zeros, x1, x2)), MARK(U61(zeros, x1, x2))) A__U62(tt, U61(U11(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U11(mark(z0)), x1, x2)), MARK(U61(U11(z0), x1, x2))) A__U62(tt, U61(U21(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U21(mark(z0)), x1, x2)), MARK(U61(U21(z0), x1, x2))) A__U62(tt, U61(U31(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U31(mark(z0)), x1, x2)), MARK(U61(U31(z0), x1, x2))) A__U62(tt, U61(U41(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U41(mark(z0), z1), x1, x2)), MARK(U61(U41(z0, z1), x1, x2))) A__U62(tt, U61(U42(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U42(mark(z0)), x1, x2)), MARK(U61(U42(z0), x1, x2))) A__U62(tt, U61(isNatIList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatIList(z0), x1, x2)), MARK(U61(isNatIList(z0), x1, x2))) A__U62(tt, U61(U51(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U51(mark(z0), z1), x1, x2)), MARK(U61(U51(z0, z1), x1, x2))) A__U62(tt, U61(U52(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U52(mark(z0)), x1, x2)), MARK(U61(U52(z0), x1, x2))) A__U62(tt, U61(isNatList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatList(z0), x1, x2)), MARK(U61(isNatList(z0), x1, x2))) A__U62(tt, U61(U61(z0, z1, z2), x1, x2)) -> c18(A__LENGTH(a__U61(a__U61(mark(z0), z1, z2), x1, x2)), MARK(U61(U61(z0, z1, z2), x1, x2))) A__U62(tt, U61(U62(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U62(mark(z0), z1), x1, x2)), MARK(U61(U62(z0, z1), x1, x2))) A__U62(tt, U61(isNat(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNat(z0), x1, x2)), MARK(U61(isNat(z0), x1, x2))) A__U62(tt, U61(length(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__length(mark(z0)), x1, x2)), MARK(U61(length(z0), x1, x2))) A__U62(tt, U61(cons(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(cons(mark(z0), z1), x1, x2)), MARK(U61(cons(z0, z1), x1, x2))) A__U62(tt, U61(tt, x1, x2)) -> c18(A__LENGTH(a__U61(tt, x1, x2)), MARK(U61(tt, x1, x2))) A__U62(tt, U61(s(z0), x1, x2)) -> c18(A__LENGTH(a__U61(s(mark(z0)), x1, x2)), MARK(U61(s(z0), x1, x2))) A__U62(tt, U61(x0, z1, z2)) -> c18(MARK(U61(x0, z1, z2))) A__U62(tt, U61(0, x1, x2)) -> c18(A__LENGTH(a__U61(0, x1, x2))) A__U62(tt, U61(nil, x1, x2)) -> c18(A__LENGTH(a__U61(nil, x1, x2))) A__U62(tt, U62(zeros, x1)) -> c18(A__LENGTH(a__U62(a__zeros, x1)), MARK(U62(zeros, x1))) A__U62(tt, U62(U11(z0), x1)) -> c18(A__LENGTH(a__U62(a__U11(mark(z0)), x1)), MARK(U62(U11(z0), x1))) A__U62(tt, U62(U21(z0), x1)) -> c18(A__LENGTH(a__U62(a__U21(mark(z0)), x1)), MARK(U62(U21(z0), x1))) A__U62(tt, U62(U31(z0), x1)) -> c18(A__LENGTH(a__U62(a__U31(mark(z0)), x1)), MARK(U62(U31(z0), x1))) A__U62(tt, U62(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U41(mark(z0), z1), x1)), MARK(U62(U41(z0, z1), x1))) A__U62(tt, U62(U42(z0), x1)) -> c18(A__LENGTH(a__U62(a__U42(mark(z0)), x1)), MARK(U62(U42(z0), x1))) A__U62(tt, U62(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatIList(z0), x1)), MARK(U62(isNatIList(z0), x1))) A__U62(tt, U62(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U51(mark(z0), z1), x1)), MARK(U62(U51(z0, z1), x1))) A__U62(tt, U62(U52(z0), x1)) -> c18(A__LENGTH(a__U62(a__U52(mark(z0)), x1)), MARK(U62(U52(z0), x1))) A__U62(tt, U62(isNatList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatList(z0), x1)), MARK(U62(isNatList(z0), x1))) A__U62(tt, U62(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U62(a__U61(mark(z0), z1, z2), x1)), MARK(U62(U61(z0, z1, z2), x1))) A__U62(tt, U62(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U62(mark(z0), z1), x1)), MARK(U62(U62(z0, z1), x1))) A__U62(tt, U62(isNat(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNat(z0), x1)), MARK(U62(isNat(z0), x1))) A__U62(tt, U62(length(z0), x1)) -> c18(A__LENGTH(a__U62(a__length(mark(z0)), x1)), MARK(U62(length(z0), x1))) A__U62(tt, U62(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U62(cons(mark(z0), z1), x1)), MARK(U62(cons(z0, z1), x1))) A__U62(tt, U62(tt, x1)) -> c18(A__LENGTH(a__U62(tt, x1)), MARK(U62(tt, x1))) A__U62(tt, U62(s(z0), x1)) -> c18(A__LENGTH(a__U62(s(mark(z0)), x1)), MARK(U62(s(z0), x1))) A__U62(tt, U62(x0, z1)) -> c18(MARK(U62(x0, z1))) A__U62(tt, U62(0, x1)) -> c18(A__LENGTH(a__U62(0, x1))) A__U62(tt, U62(nil, x1)) -> c18(A__LENGTH(a__U62(nil, x1))) A__U62(tt, isNat(length(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(isNat(length(z0)))) A__U62(tt, isNat(s(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(isNat(s(z0)))) A__U62(tt, isNat(0)) -> c18(MARK(isNat(0))) A__U62(tt, isNat(z0)) -> c18(MARK(isNat(z0))) A__U62(tt, length(zeros)) -> c18(A__LENGTH(a__length(a__zeros)), MARK(length(zeros))) A__U62(tt, length(U11(z0))) -> c18(A__LENGTH(a__length(a__U11(mark(z0)))), MARK(length(U11(z0)))) A__U62(tt, length(U21(z0))) -> c18(A__LENGTH(a__length(a__U21(mark(z0)))), MARK(length(U21(z0)))) A__U62(tt, length(U31(z0))) -> c18(A__LENGTH(a__length(a__U31(mark(z0)))), MARK(length(U31(z0)))) A__U62(tt, length(U41(z0, z1))) -> c18(A__LENGTH(a__length(a__U41(mark(z0), z1))), MARK(length(U41(z0, z1)))) A__U62(tt, length(U42(z0))) -> c18(A__LENGTH(a__length(a__U42(mark(z0)))), MARK(length(U42(z0)))) A__U62(tt, length(isNatIList(z0))) -> c18(A__LENGTH(a__length(a__isNatIList(z0))), MARK(length(isNatIList(z0)))) A__U62(tt, length(U51(z0, z1))) -> c18(A__LENGTH(a__length(a__U51(mark(z0), z1))), MARK(length(U51(z0, z1)))) A__U62(tt, length(U52(z0))) -> c18(A__LENGTH(a__length(a__U52(mark(z0)))), MARK(length(U52(z0)))) A__U62(tt, length(isNatList(z0))) -> c18(A__LENGTH(a__length(a__isNatList(z0))), MARK(length(isNatList(z0)))) A__U62(tt, length(U61(z0, z1, z2))) -> c18(A__LENGTH(a__length(a__U61(mark(z0), z1, z2))), MARK(length(U61(z0, z1, z2)))) A__U62(tt, length(U62(z0, z1))) -> c18(A__LENGTH(a__length(a__U62(mark(z0), z1))), MARK(length(U62(z0, z1)))) A__U62(tt, length(isNat(z0))) -> c18(A__LENGTH(a__length(a__isNat(z0))), MARK(length(isNat(z0)))) A__U62(tt, length(length(z0))) -> c18(A__LENGTH(a__length(a__length(mark(z0)))), MARK(length(length(z0)))) A__U62(tt, length(cons(z0, z1))) -> c18(A__LENGTH(a__length(cons(mark(z0), z1))), MARK(length(cons(z0, z1)))) A__U62(tt, length(s(z0))) -> c18(A__LENGTH(a__length(s(mark(z0)))), MARK(length(s(z0)))) A__U62(tt, length(x0)) -> c18(MARK(length(x0))) A__U62(tt, length(0)) -> c18(A__LENGTH(a__length(0))) A__U62(tt, length(tt)) -> c18(A__LENGTH(a__length(tt))) A__U62(tt, length(nil)) -> c18(A__LENGTH(a__length(nil))) A__U62(tt, zeros) -> c18(A__LENGTH(cons(0, zeros))) A__ISNATILIST(cons(length(nil), x1)) -> c26(A__U41(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATILIST(cons(length(cons(z0, z1)), x1)) -> c26(A__U41(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(length(x0), x1)) -> c26(A__ISNAT(length(x0))) A__ISNATILIST(cons(s(0), x1)) -> c26(A__U41(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATILIST(cons(s(length(z0)), x1)) -> c26(A__U41(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATILIST(cons(s(s(z0)), x1)) -> c26(A__U41(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(s(x0), x1)) -> c26(A__ISNAT(s(x0))) A__ISNATLIST(cons(length(nil), x1)) -> c29(A__U51(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATLIST(cons(length(cons(z0, z1)), x1)) -> c29(A__U51(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(length(x0), x1)) -> c29(A__ISNAT(length(x0))) A__ISNATLIST(cons(s(0), x1)) -> c29(A__U51(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATLIST(cons(s(length(z0)), x1)) -> c29(A__U51(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATLIST(cons(s(s(z0)), x1)) -> c29(A__U51(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(s(x0), x1)) -> c29(A__ISNAT(s(x0))) A__LENGTH(cons(x0, cons(0, x2))) -> c32(A__U61(a__U51(tt, x2), cons(0, x2), x0), A__ISNATLIST(cons(0, x2))) A__LENGTH(cons(x0, cons(length(z0), x2))) -> c32(A__U61(a__U51(a__U11(a__isNatList(z0)), x2), cons(length(z0), x2), x0), A__ISNATLIST(cons(length(z0), x2))) A__LENGTH(cons(x0, cons(s(z0), x2))) -> c32(A__U61(a__U51(a__U21(a__isNat(z0)), x2), cons(s(z0), x2), x0), A__ISNATLIST(cons(s(z0), x2))) A__LENGTH(cons(x0, cons(z0, x2))) -> c32(A__U61(a__U51(isNat(z0), x2), cons(z0, x2), x0), A__ISNATLIST(cons(z0, x2))) A__LENGTH(cons(x0, cons(x1, z1))) -> c32(A__ISNATLIST(cons(x1, z1))) MARK(U41(U11(zeros), x1)) -> c38(A__U41(a__U11(a__zeros), x1), MARK(U11(zeros))) MARK(U41(U11(U11(z0)), x1)) -> c38(A__U41(a__U11(a__U11(mark(z0))), x1), MARK(U11(U11(z0)))) MARK(U41(U11(U21(z0)), x1)) -> c38(A__U41(a__U11(a__U21(mark(z0))), x1), MARK(U11(U21(z0)))) MARK(U41(U11(U31(z0)), x1)) -> c38(A__U41(a__U11(a__U31(mark(z0))), x1), MARK(U11(U31(z0)))) MARK(U41(U11(U41(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U41(mark(z0), z1)), x1), MARK(U11(U41(z0, z1)))) MARK(U41(U11(U42(z0)), x1)) -> c38(A__U41(a__U11(a__U42(mark(z0))), x1), MARK(U11(U42(z0)))) MARK(U41(U11(isNatIList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatIList(z0)), x1), MARK(U11(isNatIList(z0)))) MARK(U41(U11(U51(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U51(mark(z0), z1)), x1), MARK(U11(U51(z0, z1)))) MARK(U41(U11(U52(z0)), x1)) -> c38(A__U41(a__U11(a__U52(mark(z0))), x1), MARK(U11(U52(z0)))) MARK(U41(U11(isNatList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatList(z0)), x1), MARK(U11(isNatList(z0)))) MARK(U41(U11(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U11(a__U61(mark(z0), z1, z2)), x1), MARK(U11(U61(z0, z1, z2)))) MARK(U41(U11(U62(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U62(mark(z0), z1)), x1), MARK(U11(U62(z0, z1)))) MARK(U41(U11(isNat(z0)), x1)) -> c38(A__U41(a__U11(a__isNat(z0)), x1), MARK(U11(isNat(z0)))) MARK(U41(U11(length(z0)), x1)) -> c38(A__U41(a__U11(a__length(mark(z0))), x1), MARK(U11(length(z0)))) MARK(U41(U11(cons(z0, z1)), x1)) -> c38(A__U41(a__U11(cons(mark(z0), z1)), x1), MARK(U11(cons(z0, z1)))) MARK(U41(U11(0), x1)) -> c38(A__U41(a__U11(0), x1), MARK(U11(0))) MARK(U41(U11(tt), x1)) -> c38(A__U41(a__U11(tt), x1), MARK(U11(tt))) MARK(U41(U11(s(z0)), x1)) -> c38(A__U41(a__U11(s(mark(z0))), x1), MARK(U11(s(z0)))) MARK(U41(U11(nil), x1)) -> c38(A__U41(a__U11(nil), x1), MARK(U11(nil))) MARK(U41(U11(x0), x1)) -> c38(MARK(U11(x0))) MARK(U41(U21(zeros), x1)) -> c38(A__U41(a__U21(a__zeros), x1), MARK(U21(zeros))) MARK(U41(U21(U11(z0)), x1)) -> c38(A__U41(a__U21(a__U11(mark(z0))), x1), MARK(U21(U11(z0)))) MARK(U41(U21(U21(z0)), x1)) -> c38(A__U41(a__U21(a__U21(mark(z0))), x1), MARK(U21(U21(z0)))) MARK(U41(U21(U31(z0)), x1)) -> c38(A__U41(a__U21(a__U31(mark(z0))), x1), MARK(U21(U31(z0)))) MARK(U41(U21(U41(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U41(mark(z0), z1)), x1), MARK(U21(U41(z0, z1)))) MARK(U41(U21(U42(z0)), x1)) -> c38(A__U41(a__U21(a__U42(mark(z0))), x1), MARK(U21(U42(z0)))) MARK(U41(U21(isNatIList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatIList(z0)), x1), MARK(U21(isNatIList(z0)))) MARK(U41(U21(U51(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U51(mark(z0), z1)), x1), MARK(U21(U51(z0, z1)))) MARK(U41(U21(U52(z0)), x1)) -> c38(A__U41(a__U21(a__U52(mark(z0))), x1), MARK(U21(U52(z0)))) MARK(U41(U21(isNatList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatList(z0)), x1), MARK(U21(isNatList(z0)))) MARK(U41(U21(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U21(a__U61(mark(z0), z1, z2)), x1), MARK(U21(U61(z0, z1, z2)))) MARK(U41(U21(U62(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U62(mark(z0), z1)), x1), MARK(U21(U62(z0, z1)))) MARK(U41(U21(isNat(z0)), x1)) -> c38(A__U41(a__U21(a__isNat(z0)), x1), MARK(U21(isNat(z0)))) MARK(U41(U21(length(z0)), x1)) -> c38(A__U41(a__U21(a__length(mark(z0))), x1), MARK(U21(length(z0)))) MARK(U41(U21(cons(z0, z1)), x1)) -> c38(A__U41(a__U21(cons(mark(z0), z1)), x1), MARK(U21(cons(z0, z1)))) MARK(U41(U21(0), x1)) -> c38(A__U41(a__U21(0), x1), MARK(U21(0))) MARK(U41(U21(tt), x1)) -> c38(A__U41(a__U21(tt), x1), MARK(U21(tt))) MARK(U41(U21(s(z0)), x1)) -> c38(A__U41(a__U21(s(mark(z0))), x1), MARK(U21(s(z0)))) MARK(U41(U21(nil), x1)) -> c38(A__U41(a__U21(nil), x1), MARK(U21(nil))) MARK(U41(U21(x0), x1)) -> c38(MARK(U21(x0))) MARK(U41(U31(zeros), x1)) -> c38(A__U41(a__U31(a__zeros), x1), MARK(U31(zeros))) MARK(U41(U31(U11(z0)), x1)) -> c38(A__U41(a__U31(a__U11(mark(z0))), x1), MARK(U31(U11(z0)))) MARK(U41(U31(U21(z0)), x1)) -> c38(A__U41(a__U31(a__U21(mark(z0))), x1), MARK(U31(U21(z0)))) MARK(U41(U31(U31(z0)), x1)) -> c38(A__U41(a__U31(a__U31(mark(z0))), x1), MARK(U31(U31(z0)))) MARK(U41(U31(U41(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U41(mark(z0), z1)), x1), MARK(U31(U41(z0, z1)))) MARK(U41(U31(U42(z0)), x1)) -> c38(A__U41(a__U31(a__U42(mark(z0))), x1), MARK(U31(U42(z0)))) MARK(U41(U31(isNatIList(z0)), x1)) -> c38(A__U41(a__U31(a__isNatIList(z0)), x1), MARK(U31(isNatIList(z0)))) MARK(U41(U31(U51(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U51(mark(z0), z1)), x1), MARK(U31(U51(z0, z1)))) MARK(U41(U31(U52(z0)), x1)) -> c38(A__U41(a__U31(a__U52(mark(z0))), x1), MARK(U31(U52(z0)))) MARK(U41(U31(isNatList(z0)), x1)) -> c38(A__U41(a__U31(a__isNatList(z0)), x1), MARK(U31(isNatList(z0)))) MARK(U41(U31(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U31(a__U61(mark(z0), z1, z2)), x1), MARK(U31(U61(z0, z1, z2)))) MARK(U41(U31(U62(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U62(mark(z0), z1)), x1), MARK(U31(U62(z0, z1)))) MARK(U41(U31(isNat(z0)), x1)) -> c38(A__U41(a__U31(a__isNat(z0)), x1), MARK(U31(isNat(z0)))) MARK(U41(U31(length(z0)), x1)) -> c38(A__U41(a__U31(a__length(mark(z0))), x1), MARK(U31(length(z0)))) MARK(U41(U31(cons(z0, z1)), x1)) -> c38(A__U41(a__U31(cons(mark(z0), z1)), x1), MARK(U31(cons(z0, z1)))) MARK(U41(U31(0), x1)) -> c38(A__U41(a__U31(0), x1), MARK(U31(0))) MARK(U41(U31(tt), x1)) -> c38(A__U41(a__U31(tt), x1), MARK(U31(tt))) MARK(U41(U31(s(z0)), x1)) -> c38(A__U41(a__U31(s(mark(z0))), x1), MARK(U31(s(z0)))) MARK(U41(U31(nil), x1)) -> c38(A__U41(a__U31(nil), x1), MARK(U31(nil))) MARK(U41(U31(x0), x1)) -> c38(MARK(U31(x0))) MARK(U41(U41(U11(z0), x1), x2)) -> c38(A__U41(a__U41(a__U11(mark(z0)), x1), x2), MARK(U41(U11(z0), x1))) MARK(U41(U41(U21(z0), x1), x2)) -> c38(A__U41(a__U41(a__U21(mark(z0)), x1), x2), MARK(U41(U21(z0), x1))) MARK(U41(U41(U31(z0), x1), x2)) -> c38(A__U41(a__U41(a__U31(mark(z0)), x1), x2), MARK(U41(U31(z0), x1))) MARK(U41(U41(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U41(mark(z0), z1), x1), x2), MARK(U41(U41(z0, z1), x1))) MARK(U41(U41(U42(z0), x1), x2)) -> c38(A__U41(a__U41(a__U42(mark(z0)), x1), x2), MARK(U41(U42(z0), x1))) MARK(U41(U41(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U51(mark(z0), z1), x1), x2), MARK(U41(U51(z0, z1), x1))) MARK(U41(U41(U52(z0), x1), x2)) -> c38(A__U41(a__U41(a__U52(mark(z0)), x1), x2), MARK(U41(U52(z0), x1))) MARK(U41(U41(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U41(a__U61(mark(z0), z1, z2), x1), x2), MARK(U41(U61(z0, z1, z2), x1))) MARK(U41(U41(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U62(mark(z0), z1), x1), x2), MARK(U41(U62(z0, z1), x1))) MARK(U41(U41(length(z0), x1), x2)) -> c38(A__U41(a__U41(a__length(mark(z0)), x1), x2), MARK(U41(length(z0), x1))) MARK(U41(U41(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U41(cons(mark(z0), z1), x1), x2), MARK(U41(cons(z0, z1), x1))) MARK(U41(U41(s(z0), x1), x2)) -> c38(A__U41(a__U41(s(mark(z0)), x1), x2), MARK(U41(s(z0), x1))) MARK(U41(U41(x0, z1), x2)) -> c38(MARK(U41(x0, z1))) MARK(U41(U41(0, x1), x2)) -> c38(A__U41(a__U41(0, x1), x2)) MARK(U41(U41(nil, x1), x2)) -> c38(A__U41(a__U41(nil, x1), x2)) MARK(U41(U41(zeros, x1), x2)) -> c2(A__U41(a__U41(a__zeros, x1), x2)) MARK(U41(U41(zeros, x1), x2)) -> c2(MARK(U41(zeros, x1))) MARK(U41(U41(isNatIList(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNatIList(z0), x1), x2)) MARK(U41(U41(isNatIList(z0), x1), x2)) -> c2(MARK(U41(isNatIList(z0), x1))) MARK(U41(U41(isNatList(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNatList(z0), x1), x2)) MARK(U41(U41(isNatList(z0), x1), x2)) -> c2(MARK(U41(isNatList(z0), x1))) MARK(U41(U41(isNat(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNat(z0), x1), x2)) MARK(U41(U41(isNat(z0), x1), x2)) -> c2(MARK(U41(isNat(z0), x1))) MARK(U41(U41(tt, x1), x2)) -> c2(A__U41(a__U41(tt, x1), x2)) MARK(U41(U41(tt, x1), x2)) -> c2(MARK(U41(tt, x1))) MARK(U41(U42(zeros), x1)) -> c38(A__U41(a__U42(a__zeros), x1), MARK(U42(zeros))) MARK(U41(U42(U11(z0)), x1)) -> c38(A__U41(a__U42(a__U11(mark(z0))), x1), MARK(U42(U11(z0)))) MARK(U41(U42(U21(z0)), x1)) -> c38(A__U41(a__U42(a__U21(mark(z0))), x1), MARK(U42(U21(z0)))) MARK(U41(U42(U31(z0)), x1)) -> c38(A__U41(a__U42(a__U31(mark(z0))), x1), MARK(U42(U31(z0)))) MARK(U41(U42(U41(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U41(mark(z0), z1)), x1), MARK(U42(U41(z0, z1)))) MARK(U41(U42(U42(z0)), x1)) -> c38(A__U41(a__U42(a__U42(mark(z0))), x1), MARK(U42(U42(z0)))) MARK(U41(U42(isNatIList(z0)), x1)) -> c38(A__U41(a__U42(a__isNatIList(z0)), x1), MARK(U42(isNatIList(z0)))) MARK(U41(U42(U51(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U51(mark(z0), z1)), x1), MARK(U42(U51(z0, z1)))) MARK(U41(U42(U52(z0)), x1)) -> c38(A__U41(a__U42(a__U52(mark(z0))), x1), MARK(U42(U52(z0)))) MARK(U41(U42(isNatList(z0)), x1)) -> c38(A__U41(a__U42(a__isNatList(z0)), x1), MARK(U42(isNatList(z0)))) MARK(U41(U42(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U42(a__U61(mark(z0), z1, z2)), x1), MARK(U42(U61(z0, z1, z2)))) MARK(U41(U42(U62(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U62(mark(z0), z1)), x1), MARK(U42(U62(z0, z1)))) MARK(U41(U42(isNat(z0)), x1)) -> c38(A__U41(a__U42(a__isNat(z0)), x1), MARK(U42(isNat(z0)))) MARK(U41(U42(length(z0)), x1)) -> c38(A__U41(a__U42(a__length(mark(z0))), x1), MARK(U42(length(z0)))) MARK(U41(U42(cons(z0, z1)), x1)) -> c38(A__U41(a__U42(cons(mark(z0), z1)), x1), MARK(U42(cons(z0, z1)))) MARK(U41(U42(0), x1)) -> c38(A__U41(a__U42(0), x1), MARK(U42(0))) MARK(U41(U42(tt), x1)) -> c38(A__U41(a__U42(tt), x1), MARK(U42(tt))) MARK(U41(U42(s(z0)), x1)) -> c38(A__U41(a__U42(s(mark(z0))), x1), MARK(U42(s(z0)))) MARK(U41(U42(nil), x1)) -> c38(A__U41(a__U42(nil), x1), MARK(U42(nil))) MARK(U41(U42(x0), x1)) -> c38(MARK(U42(x0))) MARK(U41(U51(U11(z0), x1), x2)) -> c38(A__U41(a__U51(a__U11(mark(z0)), x1), x2), MARK(U51(U11(z0), x1))) MARK(U41(U51(U21(z0), x1), x2)) -> c38(A__U41(a__U51(a__U21(mark(z0)), x1), x2), MARK(U51(U21(z0), x1))) MARK(U41(U51(U31(z0), x1), x2)) -> c38(A__U41(a__U51(a__U31(mark(z0)), x1), x2), MARK(U51(U31(z0), x1))) MARK(U41(U51(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U41(mark(z0), z1), x1), x2), MARK(U51(U41(z0, z1), x1))) MARK(U41(U51(U42(z0), x1), x2)) -> c38(A__U41(a__U51(a__U42(mark(z0)), x1), x2), MARK(U51(U42(z0), x1))) MARK(U41(U51(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U51(mark(z0), z1), x1), x2), MARK(U51(U51(z0, z1), x1))) MARK(U41(U51(U52(z0), x1), x2)) -> c38(A__U41(a__U51(a__U52(mark(z0)), x1), x2), MARK(U51(U52(z0), x1))) MARK(U41(U51(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U51(a__U61(mark(z0), z1, z2), x1), x2), MARK(U51(U61(z0, z1, z2), x1))) MARK(U41(U51(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U62(mark(z0), z1), x1), x2), MARK(U51(U62(z0, z1), x1))) MARK(U41(U51(length(z0), x1), x2)) -> c38(A__U41(a__U51(a__length(mark(z0)), x1), x2), MARK(U51(length(z0), x1))) MARK(U41(U51(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U51(cons(mark(z0), z1), x1), x2), MARK(U51(cons(z0, z1), x1))) MARK(U41(U51(s(z0), x1), x2)) -> c38(A__U41(a__U51(s(mark(z0)), x1), x2), MARK(U51(s(z0), x1))) MARK(U41(U51(x0, z1), x2)) -> c38(MARK(U51(x0, z1))) MARK(U41(U51(0, x1), x2)) -> c38(A__U41(a__U51(0, x1), x2)) MARK(U41(U51(nil, x1), x2)) -> c38(A__U41(a__U51(nil, x1), x2)) MARK(U41(U51(zeros, x1), x2)) -> c3(A__U41(a__U51(a__zeros, x1), x2)) MARK(U41(U51(zeros, x1), x2)) -> c3(MARK(U51(zeros, x1))) MARK(U41(U51(isNatIList(z0), x1), x2)) -> c3(A__U41(a__U51(a__isNatIList(z0), x1), x2)) MARK(U41(U51(isNatIList(z0), x1), x2)) -> c3(MARK(U51(isNatIList(z0), x1))) MARK(U41(U51(isNatList(z0), x1), x2)) -> c3(A__U41(a__U51(a__isNatList(z0), x1), x2)) MARK(U41(U51(isNatList(z0), x1), x2)) -> c3(MARK(U51(isNatList(z0), x1))) MARK(U41(U51(isNat(z0), x1), x2)) -> c3(A__U41(a__U51(a__isNat(z0), x1), x2)) MARK(U41(U51(isNat(z0), x1), x2)) -> c3(MARK(U51(isNat(z0), x1))) MARK(U41(U51(tt, x1), x2)) -> c3(A__U41(a__U51(tt, x1), x2)) MARK(U41(U51(tt, x1), x2)) -> c3(MARK(U51(tt, x1))) MARK(U41(U52(zeros), x1)) -> c38(A__U41(a__U52(a__zeros), x1), MARK(U52(zeros))) MARK(U41(U52(U11(z0)), x1)) -> c38(A__U41(a__U52(a__U11(mark(z0))), x1), MARK(U52(U11(z0)))) MARK(U41(U52(U21(z0)), x1)) -> c38(A__U41(a__U52(a__U21(mark(z0))), x1), MARK(U52(U21(z0)))) MARK(U41(U52(U31(z0)), x1)) -> c38(A__U41(a__U52(a__U31(mark(z0))), x1), MARK(U52(U31(z0)))) MARK(U41(U52(U41(z0, z1)), x1)) -> c38(A__U41(a__U52(a__U41(mark(z0), z1)), x1), MARK(U52(U41(z0, z1)))) MARK(U41(U52(U42(z0)), x1)) -> c38(A__U41(a__U52(a__U42(mark(z0))), x1), MARK(U52(U42(z0)))) MARK(U41(U52(isNatIList(z0)), x1)) -> c38(A__U41(a__U52(a__isNatIList(z0)), x1), MARK(U52(isNatIList(z0)))) MARK(U41(U52(U51(z0, z1)), x1)) -> c38(A__U41(a__U52(a__U51(mark(z0), z1)), x1), MARK(U52(U51(z0, z1)))) MARK(U41(U52(U52(z0)), x1)) -> c38(A__U41(a__U52(a__U52(mark(z0))), x1), MARK(U52(U52(z0)))) MARK(U41(U52(isNatList(z0)), x1)) -> c38(A__U41(a__U52(a__isNatList(z0)), x1), MARK(U52(isNatList(z0)))) MARK(U41(U52(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U52(a__U61(mark(z0), z1, z2)), x1), MARK(U52(U61(z0, z1, z2)))) MARK(U41(U52(U62(z0, z1)), x1)) -> c38(A__U41(a__U52(a__U62(mark(z0), z1)), x1), MARK(U52(U62(z0, z1)))) MARK(U41(U52(isNat(z0)), x1)) -> c38(A__U41(a__U52(a__isNat(z0)), x1), MARK(U52(isNat(z0)))) MARK(U41(U52(length(z0)), x1)) -> c38(A__U41(a__U52(a__length(mark(z0))), x1), MARK(U52(length(z0)))) MARK(U41(U52(cons(z0, z1)), x1)) -> c38(A__U41(a__U52(cons(mark(z0), z1)), x1), MARK(U52(cons(z0, z1)))) MARK(U41(U52(0), x1)) -> c38(A__U41(a__U52(0), x1), MARK(U52(0))) MARK(U41(U52(tt), x1)) -> c38(A__U41(a__U52(tt), x1), MARK(U52(tt))) MARK(U41(U52(s(z0)), x1)) -> c38(A__U41(a__U52(s(mark(z0))), x1), MARK(U52(s(z0)))) MARK(U41(U52(nil), x1)) -> c38(A__U41(a__U52(nil), x1), MARK(U52(nil))) MARK(U41(U52(x0), x1)) -> c38(MARK(U52(x0))) MARK(U41(U61(zeros, x1, x2), x3)) -> c38(A__U41(a__U61(a__zeros, x1, x2), x3), MARK(U61(zeros, x1, x2))) MARK(U41(U61(U11(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U11(mark(z0)), x1, x2), x3), MARK(U61(U11(z0), x1, x2))) MARK(U41(U61(U21(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U21(mark(z0)), x1, x2), x3), MARK(U61(U21(z0), x1, x2))) MARK(U41(U61(U31(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U31(mark(z0)), x1, x2), x3), MARK(U61(U31(z0), x1, x2))) MARK(U41(U61(U41(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(a__U41(mark(z0), z1), x1, x2), x3), MARK(U61(U41(z0, z1), x1, x2))) MARK(U41(U61(U42(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U42(mark(z0)), x1, x2), x3), MARK(U61(U42(z0), x1, x2))) MARK(U41(U61(isNatIList(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__isNatIList(z0), x1, x2), x3), MARK(U61(isNatIList(z0), x1, x2))) MARK(U41(U61(U51(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(a__U51(mark(z0), z1), x1, x2), x3), MARK(U61(U51(z0, z1), x1, x2))) MARK(U41(U61(U52(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U52(mark(z0)), x1, x2), x3), MARK(U61(U52(z0), x1, x2))) MARK(U41(U61(isNatList(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__isNatList(z0), x1, x2), x3), MARK(U61(isNatList(z0), x1, x2))) MARK(U41(U61(U61(z0, z1, z2), x1, x2), x3)) -> c38(A__U41(a__U61(a__U61(mark(z0), z1, z2), x1, x2), x3), MARK(U61(U61(z0, z1, z2), x1, x2))) MARK(U41(U61(U62(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(a__U62(mark(z0), z1), x1, x2), x3), MARK(U61(U62(z0, z1), x1, x2))) MARK(U41(U61(isNat(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__isNat(z0), x1, x2), x3), MARK(U61(isNat(z0), x1, x2))) MARK(U41(U61(length(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__length(mark(z0)), x1, x2), x3), MARK(U61(length(z0), x1, x2))) MARK(U41(U61(cons(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(cons(mark(z0), z1), x1, x2), x3), MARK(U61(cons(z0, z1), x1, x2))) MARK(U41(U61(tt, x1, x2), x3)) -> c38(A__U41(a__U61(tt, x1, x2), x3), MARK(U61(tt, x1, x2))) MARK(U41(U61(s(z0), x1, x2), x3)) -> c38(A__U41(a__U61(s(mark(z0)), x1, x2), x3), MARK(U61(s(z0), x1, x2))) MARK(U41(U61(x0, z1, z2), x3)) -> c38(MARK(U61(x0, z1, z2))) MARK(U41(U61(0, x1, x2), x3)) -> c38(A__U41(a__U61(0, x1, x2), x3)) MARK(U41(U61(nil, x1, x2), x3)) -> c38(A__U41(a__U61(nil, x1, x2), x3)) MARK(U41(U62(zeros, x1), x2)) -> c38(A__U41(a__U62(a__zeros, x1), x2), MARK(U62(zeros, x1))) MARK(U41(U62(U11(z0), x1), x2)) -> c38(A__U41(a__U62(a__U11(mark(z0)), x1), x2), MARK(U62(U11(z0), x1))) MARK(U41(U62(U21(z0), x1), x2)) -> c38(A__U41(a__U62(a__U21(mark(z0)), x1), x2), MARK(U62(U21(z0), x1))) MARK(U41(U62(U31(z0), x1), x2)) -> c38(A__U41(a__U62(a__U31(mark(z0)), x1), x2), MARK(U62(U31(z0), x1))) MARK(U41(U62(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U62(a__U41(mark(z0), z1), x1), x2), MARK(U62(U41(z0, z1), x1))) MARK(U41(U62(U42(z0), x1), x2)) -> c38(A__U41(a__U62(a__U42(mark(z0)), x1), x2), MARK(U62(U42(z0), x1))) MARK(U41(U62(isNatIList(z0), x1), x2)) -> c38(A__U41(a__U62(a__isNatIList(z0), x1), x2), MARK(U62(isNatIList(z0), x1))) MARK(U41(U62(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U62(a__U51(mark(z0), z1), x1), x2), MARK(U62(U51(z0, z1), x1))) MARK(U41(U62(U52(z0), x1), x2)) -> c38(A__U41(a__U62(a__U52(mark(z0)), x1), x2), MARK(U62(U52(z0), x1))) MARK(U41(U62(isNatList(z0), x1), x2)) -> c38(A__U41(a__U62(a__isNatList(z0), x1), x2), MARK(U62(isNatList(z0), x1))) MARK(U41(U62(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U62(a__U61(mark(z0), z1, z2), x1), x2), MARK(U62(U61(z0, z1, z2), x1))) MARK(U41(U62(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U62(a__U62(mark(z0), z1), x1), x2), MARK(U62(U62(z0, z1), x1))) MARK(U41(U62(isNat(z0), x1), x2)) -> c38(A__U41(a__U62(a__isNat(z0), x1), x2), MARK(U62(isNat(z0), x1))) MARK(U41(U62(length(z0), x1), x2)) -> c38(A__U41(a__U62(a__length(mark(z0)), x1), x2), MARK(U62(length(z0), x1))) MARK(U41(U62(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U62(cons(mark(z0), z1), x1), x2), MARK(U62(cons(z0, z1), x1))) MARK(U41(U62(tt, x1), x2)) -> c38(A__U41(a__U62(tt, x1), x2), MARK(U62(tt, x1))) MARK(U41(U62(s(z0), x1), x2)) -> c38(A__U41(a__U62(s(mark(z0)), x1), x2), MARK(U62(s(z0), x1))) MARK(U41(U62(x0, z1), x2)) -> c38(MARK(U62(x0, z1))) MARK(U41(U62(0, x1), x2)) -> c38(A__U41(a__U62(0, x1), x2)) MARK(U41(U62(nil, x1), x2)) -> c38(A__U41(a__U62(nil, x1), x2)) MARK(U41(length(x0), x1)) -> c38(A__U41(length(mark(x0)), x1), MARK(length(x0))) MARK(U41(length(zeros), x1)) -> c38(A__U41(a__length(a__zeros), x1), MARK(length(zeros))) MARK(U41(length(U11(z0)), x1)) -> c38(A__U41(a__length(a__U11(mark(z0))), x1), MARK(length(U11(z0)))) MARK(U41(length(U21(z0)), x1)) -> c38(A__U41(a__length(a__U21(mark(z0))), x1), MARK(length(U21(z0)))) MARK(U41(length(U31(z0)), x1)) -> c38(A__U41(a__length(a__U31(mark(z0))), x1), MARK(length(U31(z0)))) MARK(U41(length(U41(z0, z1)), x1)) -> c38(A__U41(a__length(a__U41(mark(z0), z1)), x1), MARK(length(U41(z0, z1)))) MARK(U41(length(U42(z0)), x1)) -> c38(A__U41(a__length(a__U42(mark(z0))), x1), MARK(length(U42(z0)))) MARK(U41(length(isNatIList(z0)), x1)) -> c38(A__U41(a__length(a__isNatIList(z0)), x1), MARK(length(isNatIList(z0)))) MARK(U41(length(U51(z0, z1)), x1)) -> c38(A__U41(a__length(a__U51(mark(z0), z1)), x1), MARK(length(U51(z0, z1)))) MARK(U41(length(U52(z0)), x1)) -> c38(A__U41(a__length(a__U52(mark(z0))), x1), MARK(length(U52(z0)))) MARK(U41(length(isNatList(z0)), x1)) -> c38(A__U41(a__length(a__isNatList(z0)), x1), MARK(length(isNatList(z0)))) MARK(U41(length(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__length(a__U61(mark(z0), z1, z2)), x1), MARK(length(U61(z0, z1, z2)))) MARK(U41(length(U62(z0, z1)), x1)) -> c38(A__U41(a__length(a__U62(mark(z0), z1)), x1), MARK(length(U62(z0, z1)))) MARK(U41(length(isNat(z0)), x1)) -> c38(A__U41(a__length(a__isNat(z0)), x1), MARK(length(isNat(z0)))) MARK(U41(length(length(z0)), x1)) -> c38(A__U41(a__length(a__length(mark(z0))), x1), MARK(length(length(z0)))) MARK(U41(length(cons(z0, z1)), x1)) -> c38(A__U41(a__length(cons(mark(z0), z1)), x1), MARK(length(cons(z0, z1)))) MARK(U41(length(0), x1)) -> c38(A__U41(a__length(0), x1), MARK(length(0))) MARK(U41(length(tt), x1)) -> c38(A__U41(a__length(tt), x1), MARK(length(tt))) MARK(U41(length(s(z0)), x1)) -> c38(A__U41(a__length(s(mark(z0))), x1), MARK(length(s(z0)))) MARK(U41(length(nil), x1)) -> c38(A__U41(a__length(nil), x1), MARK(length(nil))) S tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) A__U62(tt, isNatList(cons(z0, z1))) -> c18(A__LENGTH(a__U51(a__isNat(z0), z1)), MARK(isNatList(cons(z0, z1)))) A__U62(tt, isNatList(nil)) -> c18(MARK(isNatList(nil))) A__U62(tt, isNatList(z0)) -> c18(MARK(isNatList(z0))) A__U62(tt, U61(zeros, x1, x2)) -> c18(A__LENGTH(a__U61(a__zeros, x1, x2)), MARK(U61(zeros, x1, x2))) A__U62(tt, U61(U11(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U11(mark(z0)), x1, x2)), MARK(U61(U11(z0), x1, x2))) A__U62(tt, U61(U21(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U21(mark(z0)), x1, x2)), MARK(U61(U21(z0), x1, x2))) A__U62(tt, U61(U31(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U31(mark(z0)), x1, x2)), MARK(U61(U31(z0), x1, x2))) A__U62(tt, U61(U41(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U41(mark(z0), z1), x1, x2)), MARK(U61(U41(z0, z1), x1, x2))) A__U62(tt, U61(U42(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U42(mark(z0)), x1, x2)), MARK(U61(U42(z0), x1, x2))) A__U62(tt, U61(isNatIList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatIList(z0), x1, x2)), MARK(U61(isNatIList(z0), x1, x2))) A__U62(tt, U61(U51(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U51(mark(z0), z1), x1, x2)), MARK(U61(U51(z0, z1), x1, x2))) A__U62(tt, U61(U52(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U52(mark(z0)), x1, x2)), MARK(U61(U52(z0), x1, x2))) A__U62(tt, U61(isNatList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatList(z0), x1, x2)), MARK(U61(isNatList(z0), x1, x2))) A__U62(tt, U61(U61(z0, z1, z2), x1, x2)) -> c18(A__LENGTH(a__U61(a__U61(mark(z0), z1, z2), x1, x2)), MARK(U61(U61(z0, z1, z2), x1, x2))) A__U62(tt, U61(U62(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U62(mark(z0), z1), x1, x2)), MARK(U61(U62(z0, z1), x1, x2))) A__U62(tt, U61(isNat(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNat(z0), x1, x2)), MARK(U61(isNat(z0), x1, x2))) A__U62(tt, U61(length(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__length(mark(z0)), x1, x2)), MARK(U61(length(z0), x1, x2))) A__U62(tt, U61(cons(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(cons(mark(z0), z1), x1, x2)), MARK(U61(cons(z0, z1), x1, x2))) A__U62(tt, U61(tt, x1, x2)) -> c18(A__LENGTH(a__U61(tt, x1, x2)), MARK(U61(tt, x1, x2))) A__U62(tt, U61(s(z0), x1, x2)) -> c18(A__LENGTH(a__U61(s(mark(z0)), x1, x2)), MARK(U61(s(z0), x1, x2))) A__U62(tt, U61(x0, z1, z2)) -> c18(MARK(U61(x0, z1, z2))) A__U62(tt, U61(0, x1, x2)) -> c18(A__LENGTH(a__U61(0, x1, x2))) A__U62(tt, U61(nil, x1, x2)) -> c18(A__LENGTH(a__U61(nil, x1, x2))) A__U62(tt, U62(zeros, x1)) -> c18(A__LENGTH(a__U62(a__zeros, x1)), MARK(U62(zeros, x1))) A__U62(tt, U62(U11(z0), x1)) -> c18(A__LENGTH(a__U62(a__U11(mark(z0)), x1)), MARK(U62(U11(z0), x1))) A__U62(tt, U62(U21(z0), x1)) -> c18(A__LENGTH(a__U62(a__U21(mark(z0)), x1)), MARK(U62(U21(z0), x1))) A__U62(tt, U62(U31(z0), x1)) -> c18(A__LENGTH(a__U62(a__U31(mark(z0)), x1)), MARK(U62(U31(z0), x1))) A__U62(tt, U62(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U41(mark(z0), z1), x1)), MARK(U62(U41(z0, z1), x1))) A__U62(tt, U62(U42(z0), x1)) -> c18(A__LENGTH(a__U62(a__U42(mark(z0)), x1)), MARK(U62(U42(z0), x1))) A__U62(tt, U62(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatIList(z0), x1)), MARK(U62(isNatIList(z0), x1))) A__U62(tt, U62(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U51(mark(z0), z1), x1)), MARK(U62(U51(z0, z1), x1))) A__U62(tt, U62(U52(z0), x1)) -> c18(A__LENGTH(a__U62(a__U52(mark(z0)), x1)), MARK(U62(U52(z0), x1))) A__U62(tt, U62(isNatList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatList(z0), x1)), MARK(U62(isNatList(z0), x1))) A__U62(tt, U62(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U62(a__U61(mark(z0), z1, z2), x1)), MARK(U62(U61(z0, z1, z2), x1))) A__U62(tt, U62(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U62(mark(z0), z1), x1)), MARK(U62(U62(z0, z1), x1))) A__U62(tt, U62(isNat(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNat(z0), x1)), MARK(U62(isNat(z0), x1))) A__U62(tt, U62(length(z0), x1)) -> c18(A__LENGTH(a__U62(a__length(mark(z0)), x1)), MARK(U62(length(z0), x1))) A__U62(tt, U62(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U62(cons(mark(z0), z1), x1)), MARK(U62(cons(z0, z1), x1))) A__U62(tt, U62(tt, x1)) -> c18(A__LENGTH(a__U62(tt, x1)), MARK(U62(tt, x1))) A__U62(tt, U62(s(z0), x1)) -> c18(A__LENGTH(a__U62(s(mark(z0)), x1)), MARK(U62(s(z0), x1))) A__U62(tt, U62(x0, z1)) -> c18(MARK(U62(x0, z1))) A__U62(tt, U62(0, x1)) -> c18(A__LENGTH(a__U62(0, x1))) A__U62(tt, U62(nil, x1)) -> c18(A__LENGTH(a__U62(nil, x1))) A__U62(tt, isNat(length(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(isNat(length(z0)))) A__U62(tt, isNat(s(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(isNat(s(z0)))) A__U62(tt, isNat(0)) -> c18(MARK(isNat(0))) A__U62(tt, isNat(z0)) -> c18(MARK(isNat(z0))) A__U62(tt, length(zeros)) -> c18(A__LENGTH(a__length(a__zeros)), MARK(length(zeros))) A__U62(tt, length(U11(z0))) -> c18(A__LENGTH(a__length(a__U11(mark(z0)))), MARK(length(U11(z0)))) A__U62(tt, length(U21(z0))) -> c18(A__LENGTH(a__length(a__U21(mark(z0)))), MARK(length(U21(z0)))) A__U62(tt, length(U31(z0))) -> c18(A__LENGTH(a__length(a__U31(mark(z0)))), MARK(length(U31(z0)))) A__U62(tt, length(U41(z0, z1))) -> c18(A__LENGTH(a__length(a__U41(mark(z0), z1))), MARK(length(U41(z0, z1)))) A__U62(tt, length(U42(z0))) -> c18(A__LENGTH(a__length(a__U42(mark(z0)))), MARK(length(U42(z0)))) A__U62(tt, length(isNatIList(z0))) -> c18(A__LENGTH(a__length(a__isNatIList(z0))), MARK(length(isNatIList(z0)))) A__U62(tt, length(U51(z0, z1))) -> c18(A__LENGTH(a__length(a__U51(mark(z0), z1))), MARK(length(U51(z0, z1)))) A__U62(tt, length(U52(z0))) -> c18(A__LENGTH(a__length(a__U52(mark(z0)))), MARK(length(U52(z0)))) A__U62(tt, length(isNatList(z0))) -> c18(A__LENGTH(a__length(a__isNatList(z0))), MARK(length(isNatList(z0)))) A__U62(tt, length(U61(z0, z1, z2))) -> c18(A__LENGTH(a__length(a__U61(mark(z0), z1, z2))), MARK(length(U61(z0, z1, z2)))) A__U62(tt, length(U62(z0, z1))) -> c18(A__LENGTH(a__length(a__U62(mark(z0), z1))), MARK(length(U62(z0, z1)))) A__U62(tt, length(isNat(z0))) -> c18(A__LENGTH(a__length(a__isNat(z0))), MARK(length(isNat(z0)))) A__U62(tt, length(length(z0))) -> c18(A__LENGTH(a__length(a__length(mark(z0)))), MARK(length(length(z0)))) A__U62(tt, length(cons(z0, z1))) -> c18(A__LENGTH(a__length(cons(mark(z0), z1))), MARK(length(cons(z0, z1)))) A__U62(tt, length(s(z0))) -> c18(A__LENGTH(a__length(s(mark(z0)))), MARK(length(s(z0)))) A__U62(tt, length(x0)) -> c18(MARK(length(x0))) A__U62(tt, length(0)) -> c18(A__LENGTH(a__length(0))) A__U62(tt, length(tt)) -> c18(A__LENGTH(a__length(tt))) A__U62(tt, length(nil)) -> c18(A__LENGTH(a__length(nil))) A__U62(tt, zeros) -> c18(A__LENGTH(cons(0, zeros))) A__ISNATILIST(cons(length(nil), x1)) -> c26(A__U41(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATILIST(cons(length(cons(z0, z1)), x1)) -> c26(A__U41(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(length(x0), x1)) -> c26(A__ISNAT(length(x0))) A__ISNATILIST(cons(s(0), x1)) -> c26(A__U41(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATILIST(cons(s(length(z0)), x1)) -> c26(A__U41(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATILIST(cons(s(s(z0)), x1)) -> c26(A__U41(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(s(x0), x1)) -> c26(A__ISNAT(s(x0))) A__ISNATLIST(cons(length(nil), x1)) -> c29(A__U51(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATLIST(cons(length(cons(z0, z1)), x1)) -> c29(A__U51(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(length(x0), x1)) -> c29(A__ISNAT(length(x0))) A__ISNATLIST(cons(s(0), x1)) -> c29(A__U51(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATLIST(cons(s(length(z0)), x1)) -> c29(A__U51(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATLIST(cons(s(s(z0)), x1)) -> c29(A__U51(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(s(x0), x1)) -> c29(A__ISNAT(s(x0))) A__LENGTH(cons(x0, cons(0, x2))) -> c32(A__U61(a__U51(tt, x2), cons(0, x2), x0), A__ISNATLIST(cons(0, x2))) A__LENGTH(cons(x0, cons(length(z0), x2))) -> c32(A__U61(a__U51(a__U11(a__isNatList(z0)), x2), cons(length(z0), x2), x0), A__ISNATLIST(cons(length(z0), x2))) A__LENGTH(cons(x0, cons(s(z0), x2))) -> c32(A__U61(a__U51(a__U21(a__isNat(z0)), x2), cons(s(z0), x2), x0), A__ISNATLIST(cons(s(z0), x2))) A__LENGTH(cons(x0, cons(z0, x2))) -> c32(A__U61(a__U51(isNat(z0), x2), cons(z0, x2), x0), A__ISNATLIST(cons(z0, x2))) A__LENGTH(cons(x0, cons(x1, z1))) -> c32(A__ISNATLIST(cons(x1, z1))) MARK(U41(U11(zeros), x1)) -> c38(A__U41(a__U11(a__zeros), x1), MARK(U11(zeros))) MARK(U41(U11(U11(z0)), x1)) -> c38(A__U41(a__U11(a__U11(mark(z0))), x1), MARK(U11(U11(z0)))) MARK(U41(U11(U21(z0)), x1)) -> c38(A__U41(a__U11(a__U21(mark(z0))), x1), MARK(U11(U21(z0)))) MARK(U41(U11(U31(z0)), x1)) -> c38(A__U41(a__U11(a__U31(mark(z0))), x1), MARK(U11(U31(z0)))) MARK(U41(U11(U41(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U41(mark(z0), z1)), x1), MARK(U11(U41(z0, z1)))) MARK(U41(U11(U42(z0)), x1)) -> c38(A__U41(a__U11(a__U42(mark(z0))), x1), MARK(U11(U42(z0)))) MARK(U41(U11(isNatIList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatIList(z0)), x1), MARK(U11(isNatIList(z0)))) MARK(U41(U11(U51(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U51(mark(z0), z1)), x1), MARK(U11(U51(z0, z1)))) MARK(U41(U11(U52(z0)), x1)) -> c38(A__U41(a__U11(a__U52(mark(z0))), x1), MARK(U11(U52(z0)))) MARK(U41(U11(isNatList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatList(z0)), x1), MARK(U11(isNatList(z0)))) MARK(U41(U11(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U11(a__U61(mark(z0), z1, z2)), x1), MARK(U11(U61(z0, z1, z2)))) MARK(U41(U11(U62(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U62(mark(z0), z1)), x1), MARK(U11(U62(z0, z1)))) MARK(U41(U11(isNat(z0)), x1)) -> c38(A__U41(a__U11(a__isNat(z0)), x1), MARK(U11(isNat(z0)))) MARK(U41(U11(length(z0)), x1)) -> c38(A__U41(a__U11(a__length(mark(z0))), x1), MARK(U11(length(z0)))) MARK(U41(U11(cons(z0, z1)), x1)) -> c38(A__U41(a__U11(cons(mark(z0), z1)), x1), MARK(U11(cons(z0, z1)))) MARK(U41(U11(0), x1)) -> c38(A__U41(a__U11(0), x1), MARK(U11(0))) MARK(U41(U11(tt), x1)) -> c38(A__U41(a__U11(tt), x1), MARK(U11(tt))) MARK(U41(U11(s(z0)), x1)) -> c38(A__U41(a__U11(s(mark(z0))), x1), MARK(U11(s(z0)))) MARK(U41(U11(nil), x1)) -> c38(A__U41(a__U11(nil), x1), MARK(U11(nil))) MARK(U41(U11(x0), x1)) -> c38(MARK(U11(x0))) MARK(U41(U21(zeros), x1)) -> c38(A__U41(a__U21(a__zeros), x1), MARK(U21(zeros))) MARK(U41(U21(U11(z0)), x1)) -> c38(A__U41(a__U21(a__U11(mark(z0))), x1), MARK(U21(U11(z0)))) MARK(U41(U21(U21(z0)), x1)) -> c38(A__U41(a__U21(a__U21(mark(z0))), x1), MARK(U21(U21(z0)))) MARK(U41(U21(U31(z0)), x1)) -> c38(A__U41(a__U21(a__U31(mark(z0))), x1), MARK(U21(U31(z0)))) MARK(U41(U21(U41(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U41(mark(z0), z1)), x1), MARK(U21(U41(z0, z1)))) MARK(U41(U21(U42(z0)), x1)) -> c38(A__U41(a__U21(a__U42(mark(z0))), x1), MARK(U21(U42(z0)))) MARK(U41(U21(isNatIList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatIList(z0)), x1), MARK(U21(isNatIList(z0)))) MARK(U41(U21(U51(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U51(mark(z0), z1)), x1), MARK(U21(U51(z0, z1)))) MARK(U41(U21(U52(z0)), x1)) -> c38(A__U41(a__U21(a__U52(mark(z0))), x1), MARK(U21(U52(z0)))) MARK(U41(U21(isNatList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatList(z0)), x1), MARK(U21(isNatList(z0)))) MARK(U41(U21(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U21(a__U61(mark(z0), z1, z2)), x1), MARK(U21(U61(z0, z1, z2)))) MARK(U41(U21(U62(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U62(mark(z0), z1)), x1), MARK(U21(U62(z0, z1)))) MARK(U41(U21(isNat(z0)), x1)) -> c38(A__U41(a__U21(a__isNat(z0)), x1), MARK(U21(isNat(z0)))) MARK(U41(U21(length(z0)), x1)) -> c38(A__U41(a__U21(a__length(mark(z0))), x1), MARK(U21(length(z0)))) MARK(U41(U21(cons(z0, z1)), x1)) -> c38(A__U41(a__U21(cons(mark(z0), z1)), x1), MARK(U21(cons(z0, z1)))) MARK(U41(U21(0), x1)) -> c38(A__U41(a__U21(0), x1), MARK(U21(0))) MARK(U41(U21(tt), x1)) -> c38(A__U41(a__U21(tt), x1), MARK(U21(tt))) MARK(U41(U21(s(z0)), x1)) -> c38(A__U41(a__U21(s(mark(z0))), x1), MARK(U21(s(z0)))) MARK(U41(U21(nil), x1)) -> c38(A__U41(a__U21(nil), x1), MARK(U21(nil))) MARK(U41(U21(x0), x1)) -> c38(MARK(U21(x0))) MARK(U41(U31(zeros), x1)) -> c38(A__U41(a__U31(a__zeros), x1), MARK(U31(zeros))) MARK(U41(U31(U11(z0)), x1)) -> c38(A__U41(a__U31(a__U11(mark(z0))), x1), MARK(U31(U11(z0)))) MARK(U41(U31(U21(z0)), x1)) -> c38(A__U41(a__U31(a__U21(mark(z0))), x1), MARK(U31(U21(z0)))) MARK(U41(U31(U31(z0)), x1)) -> c38(A__U41(a__U31(a__U31(mark(z0))), x1), MARK(U31(U31(z0)))) MARK(U41(U31(U41(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U41(mark(z0), z1)), x1), MARK(U31(U41(z0, z1)))) MARK(U41(U31(U42(z0)), x1)) -> c38(A__U41(a__U31(a__U42(mark(z0))), x1), MARK(U31(U42(z0)))) MARK(U41(U31(isNatIList(z0)), x1)) -> c38(A__U41(a__U31(a__isNatIList(z0)), x1), MARK(U31(isNatIList(z0)))) MARK(U41(U31(U51(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U51(mark(z0), z1)), x1), MARK(U31(U51(z0, z1)))) MARK(U41(U31(U52(z0)), x1)) -> c38(A__U41(a__U31(a__U52(mark(z0))), x1), MARK(U31(U52(z0)))) MARK(U41(U31(isNatList(z0)), x1)) -> c38(A__U41(a__U31(a__isNatList(z0)), x1), MARK(U31(isNatList(z0)))) MARK(U41(U31(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U31(a__U61(mark(z0), z1, z2)), x1), MARK(U31(U61(z0, z1, z2)))) MARK(U41(U31(U62(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U62(mark(z0), z1)), x1), MARK(U31(U62(z0, z1)))) MARK(U41(U31(isNat(z0)), x1)) -> c38(A__U41(a__U31(a__isNat(z0)), x1), MARK(U31(isNat(z0)))) MARK(U41(U31(length(z0)), x1)) -> c38(A__U41(a__U31(a__length(mark(z0))), x1), MARK(U31(length(z0)))) MARK(U41(U31(cons(z0, z1)), x1)) -> c38(A__U41(a__U31(cons(mark(z0), z1)), x1), MARK(U31(cons(z0, z1)))) MARK(U41(U31(0), x1)) -> c38(A__U41(a__U31(0), x1), MARK(U31(0))) MARK(U41(U31(tt), x1)) -> c38(A__U41(a__U31(tt), x1), MARK(U31(tt))) MARK(U41(U31(s(z0)), x1)) -> c38(A__U41(a__U31(s(mark(z0))), x1), MARK(U31(s(z0)))) MARK(U41(U31(nil), x1)) -> c38(A__U41(a__U31(nil), x1), MARK(U31(nil))) MARK(U41(U31(x0), x1)) -> c38(MARK(U31(x0))) MARK(U41(U41(U11(z0), x1), x2)) -> c38(A__U41(a__U41(a__U11(mark(z0)), x1), x2), MARK(U41(U11(z0), x1))) MARK(U41(U41(U21(z0), x1), x2)) -> c38(A__U41(a__U41(a__U21(mark(z0)), x1), x2), MARK(U41(U21(z0), x1))) MARK(U41(U41(U31(z0), x1), x2)) -> c38(A__U41(a__U41(a__U31(mark(z0)), x1), x2), MARK(U41(U31(z0), x1))) MARK(U41(U41(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U41(mark(z0), z1), x1), x2), MARK(U41(U41(z0, z1), x1))) MARK(U41(U41(U42(z0), x1), x2)) -> c38(A__U41(a__U41(a__U42(mark(z0)), x1), x2), MARK(U41(U42(z0), x1))) MARK(U41(U41(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U51(mark(z0), z1), x1), x2), MARK(U41(U51(z0, z1), x1))) MARK(U41(U41(U52(z0), x1), x2)) -> c38(A__U41(a__U41(a__U52(mark(z0)), x1), x2), MARK(U41(U52(z0), x1))) MARK(U41(U41(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U41(a__U61(mark(z0), z1, z2), x1), x2), MARK(U41(U61(z0, z1, z2), x1))) MARK(U41(U41(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U62(mark(z0), z1), x1), x2), MARK(U41(U62(z0, z1), x1))) MARK(U41(U41(length(z0), x1), x2)) -> c38(A__U41(a__U41(a__length(mark(z0)), x1), x2), MARK(U41(length(z0), x1))) MARK(U41(U41(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U41(cons(mark(z0), z1), x1), x2), MARK(U41(cons(z0, z1), x1))) MARK(U41(U41(s(z0), x1), x2)) -> c38(A__U41(a__U41(s(mark(z0)), x1), x2), MARK(U41(s(z0), x1))) MARK(U41(U41(x0, z1), x2)) -> c38(MARK(U41(x0, z1))) MARK(U41(U41(0, x1), x2)) -> c38(A__U41(a__U41(0, x1), x2)) MARK(U41(U41(nil, x1), x2)) -> c38(A__U41(a__U41(nil, x1), x2)) MARK(U41(U41(zeros, x1), x2)) -> c2(A__U41(a__U41(a__zeros, x1), x2)) MARK(U41(U41(zeros, x1), x2)) -> c2(MARK(U41(zeros, x1))) MARK(U41(U41(isNatIList(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNatIList(z0), x1), x2)) MARK(U41(U41(isNatIList(z0), x1), x2)) -> c2(MARK(U41(isNatIList(z0), x1))) MARK(U41(U41(isNatList(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNatList(z0), x1), x2)) MARK(U41(U41(isNatList(z0), x1), x2)) -> c2(MARK(U41(isNatList(z0), x1))) MARK(U41(U41(isNat(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNat(z0), x1), x2)) MARK(U41(U41(isNat(z0), x1), x2)) -> c2(MARK(U41(isNat(z0), x1))) MARK(U41(U41(tt, x1), x2)) -> c2(A__U41(a__U41(tt, x1), x2)) MARK(U41(U41(tt, x1), x2)) -> c2(MARK(U41(tt, x1))) MARK(U41(U42(zeros), x1)) -> c38(A__U41(a__U42(a__zeros), x1), MARK(U42(zeros))) MARK(U41(U42(U11(z0)), x1)) -> c38(A__U41(a__U42(a__U11(mark(z0))), x1), MARK(U42(U11(z0)))) MARK(U41(U42(U21(z0)), x1)) -> c38(A__U41(a__U42(a__U21(mark(z0))), x1), MARK(U42(U21(z0)))) MARK(U41(U42(U31(z0)), x1)) -> c38(A__U41(a__U42(a__U31(mark(z0))), x1), MARK(U42(U31(z0)))) MARK(U41(U42(U41(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U41(mark(z0), z1)), x1), MARK(U42(U41(z0, z1)))) MARK(U41(U42(U42(z0)), x1)) -> c38(A__U41(a__U42(a__U42(mark(z0))), x1), MARK(U42(U42(z0)))) MARK(U41(U42(isNatIList(z0)), x1)) -> c38(A__U41(a__U42(a__isNatIList(z0)), x1), MARK(U42(isNatIList(z0)))) MARK(U41(U42(U51(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U51(mark(z0), z1)), x1), MARK(U42(U51(z0, z1)))) MARK(U41(U42(U52(z0)), x1)) -> c38(A__U41(a__U42(a__U52(mark(z0))), x1), MARK(U42(U52(z0)))) MARK(U41(U42(isNatList(z0)), x1)) -> c38(A__U41(a__U42(a__isNatList(z0)), x1), MARK(U42(isNatList(z0)))) MARK(U41(U42(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U42(a__U61(mark(z0), z1, z2)), x1), MARK(U42(U61(z0, z1, z2)))) MARK(U41(U42(U62(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U62(mark(z0), z1)), x1), MARK(U42(U62(z0, z1)))) MARK(U41(U42(isNat(z0)), x1)) -> c38(A__U41(a__U42(a__isNat(z0)), x1), MARK(U42(isNat(z0)))) MARK(U41(U42(length(z0)), x1)) -> c38(A__U41(a__U42(a__length(mark(z0))), x1), MARK(U42(length(z0)))) MARK(U41(U42(cons(z0, z1)), x1)) -> c38(A__U41(a__U42(cons(mark(z0), z1)), x1), MARK(U42(cons(z0, z1)))) MARK(U41(U42(0), x1)) -> c38(A__U41(a__U42(0), x1), MARK(U42(0))) MARK(U41(U42(tt), x1)) -> c38(A__U41(a__U42(tt), x1), MARK(U42(tt))) MARK(U41(U42(s(z0)), x1)) -> c38(A__U41(a__U42(s(mark(z0))), x1), MARK(U42(s(z0)))) MARK(U41(U42(nil), x1)) -> c38(A__U41(a__U42(nil), x1), MARK(U42(nil))) MARK(U41(U42(x0), x1)) -> c38(MARK(U42(x0))) MARK(U41(U51(U11(z0), x1), x2)) -> c38(A__U41(a__U51(a__U11(mark(z0)), x1), x2), MARK(U51(U11(z0), x1))) MARK(U41(U51(U21(z0), x1), x2)) -> c38(A__U41(a__U51(a__U21(mark(z0)), x1), x2), MARK(U51(U21(z0), x1))) MARK(U41(U51(U31(z0), x1), x2)) -> c38(A__U41(a__U51(a__U31(mark(z0)), x1), x2), MARK(U51(U31(z0), x1))) MARK(U41(U51(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U41(mark(z0), z1), x1), x2), MARK(U51(U41(z0, z1), x1))) MARK(U41(U51(U42(z0), x1), x2)) -> c38(A__U41(a__U51(a__U42(mark(z0)), x1), x2), MARK(U51(U42(z0), x1))) MARK(U41(U51(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U51(mark(z0), z1), x1), x2), MARK(U51(U51(z0, z1), x1))) MARK(U41(U51(U52(z0), x1), x2)) -> c38(A__U41(a__U51(a__U52(mark(z0)), x1), x2), MARK(U51(U52(z0), x1))) MARK(U41(U51(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U51(a__U61(mark(z0), z1, z2), x1), x2), MARK(U51(U61(z0, z1, z2), x1))) MARK(U41(U51(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U62(mark(z0), z1), x1), x2), MARK(U51(U62(z0, z1), x1))) MARK(U41(U51(length(z0), x1), x2)) -> c38(A__U41(a__U51(a__length(mark(z0)), x1), x2), MARK(U51(length(z0), x1))) MARK(U41(U51(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U51(cons(mark(z0), z1), x1), x2), MARK(U51(cons(z0, z1), x1))) MARK(U41(U51(s(z0), x1), x2)) -> c38(A__U41(a__U51(s(mark(z0)), x1), x2), MARK(U51(s(z0), x1))) MARK(U41(U51(x0, z1), x2)) -> c38(MARK(U51(x0, z1))) MARK(U41(U51(0, x1), x2)) -> c38(A__U41(a__U51(0, x1), x2)) MARK(U41(U51(nil, x1), x2)) -> c38(A__U41(a__U51(nil, x1), x2)) MARK(U41(U51(zeros, x1), x2)) -> c3(A__U41(a__U51(a__zeros, x1), x2)) MARK(U41(U51(zeros, x1), x2)) -> c3(MARK(U51(zeros, x1))) MARK(U41(U51(isNatIList(z0), x1), x2)) -> c3(A__U41(a__U51(a__isNatIList(z0), x1), x2)) MARK(U41(U51(isNatIList(z0), x1), x2)) -> c3(MARK(U51(isNatIList(z0), x1))) MARK(U41(U51(isNatList(z0), x1), x2)) -> c3(A__U41(a__U51(a__isNatList(z0), x1), x2)) MARK(U41(U51(isNatList(z0), x1), x2)) -> c3(MARK(U51(isNatList(z0), x1))) MARK(U41(U51(isNat(z0), x1), x2)) -> c3(A__U41(a__U51(a__isNat(z0), x1), x2)) MARK(U41(U51(isNat(z0), x1), x2)) -> c3(MARK(U51(isNat(z0), x1))) MARK(U41(U51(tt, x1), x2)) -> c3(A__U41(a__U51(tt, x1), x2)) MARK(U41(U51(tt, x1), x2)) -> c3(MARK(U51(tt, x1))) MARK(U41(U52(zeros), x1)) -> c38(A__U41(a__U52(a__zeros), x1), MARK(U52(zeros))) MARK(U41(U52(U11(z0)), x1)) -> c38(A__U41(a__U52(a__U11(mark(z0))), x1), MARK(U52(U11(z0)))) MARK(U41(U52(U21(z0)), x1)) -> c38(A__U41(a__U52(a__U21(mark(z0))), x1), MARK(U52(U21(z0)))) MARK(U41(U52(U31(z0)), x1)) -> c38(A__U41(a__U52(a__U31(mark(z0))), x1), MARK(U52(U31(z0)))) MARK(U41(U52(U41(z0, z1)), x1)) -> c38(A__U41(a__U52(a__U41(mark(z0), z1)), x1), MARK(U52(U41(z0, z1)))) MARK(U41(U52(U42(z0)), x1)) -> c38(A__U41(a__U52(a__U42(mark(z0))), x1), MARK(U52(U42(z0)))) MARK(U41(U52(isNatIList(z0)), x1)) -> c38(A__U41(a__U52(a__isNatIList(z0)), x1), MARK(U52(isNatIList(z0)))) MARK(U41(U52(U51(z0, z1)), x1)) -> c38(A__U41(a__U52(a__U51(mark(z0), z1)), x1), MARK(U52(U51(z0, z1)))) MARK(U41(U52(U52(z0)), x1)) -> c38(A__U41(a__U52(a__U52(mark(z0))), x1), MARK(U52(U52(z0)))) MARK(U41(U52(isNatList(z0)), x1)) -> c38(A__U41(a__U52(a__isNatList(z0)), x1), MARK(U52(isNatList(z0)))) MARK(U41(U52(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U52(a__U61(mark(z0), z1, z2)), x1), MARK(U52(U61(z0, z1, z2)))) MARK(U41(U52(U62(z0, z1)), x1)) -> c38(A__U41(a__U52(a__U62(mark(z0), z1)), x1), MARK(U52(U62(z0, z1)))) MARK(U41(U52(isNat(z0)), x1)) -> c38(A__U41(a__U52(a__isNat(z0)), x1), MARK(U52(isNat(z0)))) MARK(U41(U52(length(z0)), x1)) -> c38(A__U41(a__U52(a__length(mark(z0))), x1), MARK(U52(length(z0)))) MARK(U41(U52(cons(z0, z1)), x1)) -> c38(A__U41(a__U52(cons(mark(z0), z1)), x1), MARK(U52(cons(z0, z1)))) MARK(U41(U52(0), x1)) -> c38(A__U41(a__U52(0), x1), MARK(U52(0))) MARK(U41(U52(tt), x1)) -> c38(A__U41(a__U52(tt), x1), MARK(U52(tt))) MARK(U41(U52(s(z0)), x1)) -> c38(A__U41(a__U52(s(mark(z0))), x1), MARK(U52(s(z0)))) MARK(U41(U52(nil), x1)) -> c38(A__U41(a__U52(nil), x1), MARK(U52(nil))) MARK(U41(U52(x0), x1)) -> c38(MARK(U52(x0))) MARK(U41(U61(zeros, x1, x2), x3)) -> c38(A__U41(a__U61(a__zeros, x1, x2), x3), MARK(U61(zeros, x1, x2))) MARK(U41(U61(U11(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U11(mark(z0)), x1, x2), x3), MARK(U61(U11(z0), x1, x2))) MARK(U41(U61(U21(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U21(mark(z0)), x1, x2), x3), MARK(U61(U21(z0), x1, x2))) MARK(U41(U61(U31(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U31(mark(z0)), x1, x2), x3), MARK(U61(U31(z0), x1, x2))) MARK(U41(U61(U41(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(a__U41(mark(z0), z1), x1, x2), x3), MARK(U61(U41(z0, z1), x1, x2))) MARK(U41(U61(U42(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U42(mark(z0)), x1, x2), x3), MARK(U61(U42(z0), x1, x2))) MARK(U41(U61(isNatIList(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__isNatIList(z0), x1, x2), x3), MARK(U61(isNatIList(z0), x1, x2))) MARK(U41(U61(U51(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(a__U51(mark(z0), z1), x1, x2), x3), MARK(U61(U51(z0, z1), x1, x2))) MARK(U41(U61(U52(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U52(mark(z0)), x1, x2), x3), MARK(U61(U52(z0), x1, x2))) MARK(U41(U61(isNatList(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__isNatList(z0), x1, x2), x3), MARK(U61(isNatList(z0), x1, x2))) MARK(U41(U61(U61(z0, z1, z2), x1, x2), x3)) -> c38(A__U41(a__U61(a__U61(mark(z0), z1, z2), x1, x2), x3), MARK(U61(U61(z0, z1, z2), x1, x2))) MARK(U41(U61(U62(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(a__U62(mark(z0), z1), x1, x2), x3), MARK(U61(U62(z0, z1), x1, x2))) MARK(U41(U61(isNat(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__isNat(z0), x1, x2), x3), MARK(U61(isNat(z0), x1, x2))) MARK(U41(U61(length(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__length(mark(z0)), x1, x2), x3), MARK(U61(length(z0), x1, x2))) MARK(U41(U61(cons(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(cons(mark(z0), z1), x1, x2), x3), MARK(U61(cons(z0, z1), x1, x2))) MARK(U41(U61(tt, x1, x2), x3)) -> c38(A__U41(a__U61(tt, x1, x2), x3), MARK(U61(tt, x1, x2))) MARK(U41(U61(s(z0), x1, x2), x3)) -> c38(A__U41(a__U61(s(mark(z0)), x1, x2), x3), MARK(U61(s(z0), x1, x2))) MARK(U41(U61(x0, z1, z2), x3)) -> c38(MARK(U61(x0, z1, z2))) MARK(U41(U61(0, x1, x2), x3)) -> c38(A__U41(a__U61(0, x1, x2), x3)) MARK(U41(U61(nil, x1, x2), x3)) -> c38(A__U41(a__U61(nil, x1, x2), x3)) MARK(U41(U62(zeros, x1), x2)) -> c38(A__U41(a__U62(a__zeros, x1), x2), MARK(U62(zeros, x1))) MARK(U41(U62(U11(z0), x1), x2)) -> c38(A__U41(a__U62(a__U11(mark(z0)), x1), x2), MARK(U62(U11(z0), x1))) MARK(U41(U62(U21(z0), x1), x2)) -> c38(A__U41(a__U62(a__U21(mark(z0)), x1), x2), MARK(U62(U21(z0), x1))) MARK(U41(U62(U31(z0), x1), x2)) -> c38(A__U41(a__U62(a__U31(mark(z0)), x1), x2), MARK(U62(U31(z0), x1))) MARK(U41(U62(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U62(a__U41(mark(z0), z1), x1), x2), MARK(U62(U41(z0, z1), x1))) MARK(U41(U62(U42(z0), x1), x2)) -> c38(A__U41(a__U62(a__U42(mark(z0)), x1), x2), MARK(U62(U42(z0), x1))) MARK(U41(U62(isNatIList(z0), x1), x2)) -> c38(A__U41(a__U62(a__isNatIList(z0), x1), x2), MARK(U62(isNatIList(z0), x1))) MARK(U41(U62(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U62(a__U51(mark(z0), z1), x1), x2), MARK(U62(U51(z0, z1), x1))) MARK(U41(U62(U52(z0), x1), x2)) -> c38(A__U41(a__U62(a__U52(mark(z0)), x1), x2), MARK(U62(U52(z0), x1))) MARK(U41(U62(isNatList(z0), x1), x2)) -> c38(A__U41(a__U62(a__isNatList(z0), x1), x2), MARK(U62(isNatList(z0), x1))) MARK(U41(U62(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U62(a__U61(mark(z0), z1, z2), x1), x2), MARK(U62(U61(z0, z1, z2), x1))) MARK(U41(U62(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U62(a__U62(mark(z0), z1), x1), x2), MARK(U62(U62(z0, z1), x1))) MARK(U41(U62(isNat(z0), x1), x2)) -> c38(A__U41(a__U62(a__isNat(z0), x1), x2), MARK(U62(isNat(z0), x1))) MARK(U41(U62(length(z0), x1), x2)) -> c38(A__U41(a__U62(a__length(mark(z0)), x1), x2), MARK(U62(length(z0), x1))) MARK(U41(U62(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U62(cons(mark(z0), z1), x1), x2), MARK(U62(cons(z0, z1), x1))) MARK(U41(U62(tt, x1), x2)) -> c38(A__U41(a__U62(tt, x1), x2), MARK(U62(tt, x1))) MARK(U41(U62(s(z0), x1), x2)) -> c38(A__U41(a__U62(s(mark(z0)), x1), x2), MARK(U62(s(z0), x1))) MARK(U41(U62(x0, z1), x2)) -> c38(MARK(U62(x0, z1))) MARK(U41(U62(0, x1), x2)) -> c38(A__U41(a__U62(0, x1), x2)) MARK(U41(U62(nil, x1), x2)) -> c38(A__U41(a__U62(nil, x1), x2)) MARK(U41(length(x0), x1)) -> c38(A__U41(length(mark(x0)), x1), MARK(length(x0))) MARK(U41(length(zeros), x1)) -> c38(A__U41(a__length(a__zeros), x1), MARK(length(zeros))) MARK(U41(length(U11(z0)), x1)) -> c38(A__U41(a__length(a__U11(mark(z0))), x1), MARK(length(U11(z0)))) MARK(U41(length(U21(z0)), x1)) -> c38(A__U41(a__length(a__U21(mark(z0))), x1), MARK(length(U21(z0)))) MARK(U41(length(U31(z0)), x1)) -> c38(A__U41(a__length(a__U31(mark(z0))), x1), MARK(length(U31(z0)))) MARK(U41(length(U41(z0, z1)), x1)) -> c38(A__U41(a__length(a__U41(mark(z0), z1)), x1), MARK(length(U41(z0, z1)))) MARK(U41(length(U42(z0)), x1)) -> c38(A__U41(a__length(a__U42(mark(z0))), x1), MARK(length(U42(z0)))) MARK(U41(length(isNatIList(z0)), x1)) -> c38(A__U41(a__length(a__isNatIList(z0)), x1), MARK(length(isNatIList(z0)))) MARK(U41(length(U51(z0, z1)), x1)) -> c38(A__U41(a__length(a__U51(mark(z0), z1)), x1), MARK(length(U51(z0, z1)))) MARK(U41(length(U52(z0)), x1)) -> c38(A__U41(a__length(a__U52(mark(z0))), x1), MARK(length(U52(z0)))) MARK(U41(length(isNatList(z0)), x1)) -> c38(A__U41(a__length(a__isNatList(z0)), x1), MARK(length(isNatList(z0)))) MARK(U41(length(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__length(a__U61(mark(z0), z1, z2)), x1), MARK(length(U61(z0, z1, z2)))) MARK(U41(length(U62(z0, z1)), x1)) -> c38(A__U41(a__length(a__U62(mark(z0), z1)), x1), MARK(length(U62(z0, z1)))) MARK(U41(length(isNat(z0)), x1)) -> c38(A__U41(a__length(a__isNat(z0)), x1), MARK(length(isNat(z0)))) MARK(U41(length(length(z0)), x1)) -> c38(A__U41(a__length(a__length(mark(z0))), x1), MARK(length(length(z0)))) MARK(U41(length(cons(z0, z1)), x1)) -> c38(A__U41(a__length(cons(mark(z0), z1)), x1), MARK(length(cons(z0, z1)))) MARK(U41(length(0), x1)) -> c38(A__U41(a__length(0), x1), MARK(length(0))) MARK(U41(length(tt), x1)) -> c38(A__U41(a__length(tt), x1), MARK(length(tt))) MARK(U41(length(s(z0)), x1)) -> c38(A__U41(a__length(s(mark(z0))), x1), MARK(length(s(z0)))) MARK(U41(length(nil), x1)) -> c38(A__U41(a__length(nil), x1), MARK(length(nil))) K tuples:none Defined Rule Symbols: a__zeros, a__U11_1, a__U21_1, a__U31_1, a__U41_2, a__U42_1, a__U51_2, a__U52_1, a__U61_3, a__U62_2, a__isNat_1, a__isNatIList_1, a__isNatList_1, a__length_1, mark_1 Defined Pair Symbols: MARK_1, A__U41_2, A__U51_2, A__ISNAT_1, A__ISNATILIST_1, A__U61_3, A__U62_2, A__ISNATLIST_1, A__LENGTH_1 Compound Symbols: c40_1, c43_1, c46_1, c48_1, c51_1, c8_1, c12_1, c21_1, c22_1, c24_1, c35_1, c36_1, c37_1, c39_1, c42_1, c16_1, c18_2, c18_1, c26_1, c29_1, c32_1, c38_1, c_1, c41_2, c41_1, c1_1, c44_2, c44_1, c45_2, c45_1, c47_2, c47_1, c16_2, c26_2, c29_2, c32_2, c38_2, c2_1, c3_1 ---------------------------------------- (211) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 4 trailing tuple parts ---------------------------------------- (212) Obligation: Complexity Dependency Tuples Problem Rules: a__zeros -> cons(0, zeros) a__zeros -> zeros a__U11(tt) -> tt a__U11(z0) -> U11(z0) a__U21(tt) -> tt a__U21(z0) -> U21(z0) a__U31(tt) -> tt a__U31(z0) -> U31(z0) a__U41(tt, z0) -> a__U42(a__isNatIList(z0)) a__U41(z0, z1) -> U41(z0, z1) a__U42(tt) -> tt a__U42(z0) -> U42(z0) a__U51(tt, z0) -> a__U52(a__isNatList(z0)) a__U51(z0, z1) -> U51(z0, z1) a__U52(tt) -> tt a__U52(z0) -> U52(z0) a__U61(tt, z0, z1) -> a__U62(a__isNat(z1), z0) a__U61(z0, z1, z2) -> U61(z0, z1, z2) a__U62(tt, z0) -> s(a__length(mark(z0))) a__U62(z0, z1) -> U62(z0, z1) a__isNat(0) -> tt a__isNat(length(z0)) -> a__U11(a__isNatList(z0)) a__isNat(s(z0)) -> a__U21(a__isNat(z0)) a__isNat(z0) -> isNat(z0) a__isNatIList(z0) -> a__U31(a__isNatList(z0)) a__isNatIList(zeros) -> tt a__isNatIList(cons(z0, z1)) -> a__U41(a__isNat(z0), z1) a__isNatIList(z0) -> isNatIList(z0) a__isNatList(nil) -> tt a__isNatList(cons(z0, z1)) -> a__U51(a__isNat(z0), z1) a__isNatList(z0) -> isNatList(z0) a__length(nil) -> 0 a__length(cons(z0, z1)) -> a__U61(a__isNatList(z1), z1, z0) a__length(z0) -> length(z0) mark(zeros) -> a__zeros mark(U11(z0)) -> a__U11(mark(z0)) mark(U21(z0)) -> a__U21(mark(z0)) mark(U31(z0)) -> a__U31(mark(z0)) mark(U41(z0, z1)) -> a__U41(mark(z0), z1) mark(U42(z0)) -> a__U42(mark(z0)) mark(isNatIList(z0)) -> a__isNatIList(z0) mark(U51(z0, z1)) -> a__U51(mark(z0), z1) mark(U52(z0)) -> a__U52(mark(z0)) mark(isNatList(z0)) -> a__isNatList(z0) mark(U61(z0, z1, z2)) -> a__U61(mark(z0), z1, z2) mark(U62(z0, z1)) -> a__U62(mark(z0), z1) mark(isNat(z0)) -> a__isNat(z0) mark(length(z0)) -> a__length(mark(z0)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(0) -> 0 mark(tt) -> tt mark(s(z0)) -> s(mark(z0)) mark(nil) -> nil Tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) A__U62(tt, isNatList(cons(z0, z1))) -> c18(A__LENGTH(a__U51(a__isNat(z0), z1)), MARK(isNatList(cons(z0, z1)))) A__U62(tt, isNatList(nil)) -> c18(MARK(isNatList(nil))) A__U62(tt, isNatList(z0)) -> c18(MARK(isNatList(z0))) A__U62(tt, U61(zeros, x1, x2)) -> c18(A__LENGTH(a__U61(a__zeros, x1, x2)), MARK(U61(zeros, x1, x2))) A__U62(tt, U61(U11(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U11(mark(z0)), x1, x2)), MARK(U61(U11(z0), x1, x2))) A__U62(tt, U61(U21(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U21(mark(z0)), x1, x2)), MARK(U61(U21(z0), x1, x2))) A__U62(tt, U61(U31(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U31(mark(z0)), x1, x2)), MARK(U61(U31(z0), x1, x2))) A__U62(tt, U61(U41(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U41(mark(z0), z1), x1, x2)), MARK(U61(U41(z0, z1), x1, x2))) A__U62(tt, U61(U42(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U42(mark(z0)), x1, x2)), MARK(U61(U42(z0), x1, x2))) A__U62(tt, U61(isNatIList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatIList(z0), x1, x2)), MARK(U61(isNatIList(z0), x1, x2))) A__U62(tt, U61(U51(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U51(mark(z0), z1), x1, x2)), MARK(U61(U51(z0, z1), x1, x2))) A__U62(tt, U61(U52(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U52(mark(z0)), x1, x2)), MARK(U61(U52(z0), x1, x2))) A__U62(tt, U61(isNatList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatList(z0), x1, x2)), MARK(U61(isNatList(z0), x1, x2))) A__U62(tt, U61(U61(z0, z1, z2), x1, x2)) -> c18(A__LENGTH(a__U61(a__U61(mark(z0), z1, z2), x1, x2)), MARK(U61(U61(z0, z1, z2), x1, x2))) A__U62(tt, U61(U62(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U62(mark(z0), z1), x1, x2)), MARK(U61(U62(z0, z1), x1, x2))) A__U62(tt, U61(isNat(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNat(z0), x1, x2)), MARK(U61(isNat(z0), x1, x2))) A__U62(tt, U61(length(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__length(mark(z0)), x1, x2)), MARK(U61(length(z0), x1, x2))) A__U62(tt, U61(cons(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(cons(mark(z0), z1), x1, x2)), MARK(U61(cons(z0, z1), x1, x2))) A__U62(tt, U61(tt, x1, x2)) -> c18(A__LENGTH(a__U61(tt, x1, x2)), MARK(U61(tt, x1, x2))) A__U62(tt, U61(s(z0), x1, x2)) -> c18(A__LENGTH(a__U61(s(mark(z0)), x1, x2)), MARK(U61(s(z0), x1, x2))) A__U62(tt, U61(x0, z1, z2)) -> c18(MARK(U61(x0, z1, z2))) A__U62(tt, U61(0, x1, x2)) -> c18(A__LENGTH(a__U61(0, x1, x2))) A__U62(tt, U61(nil, x1, x2)) -> c18(A__LENGTH(a__U61(nil, x1, x2))) A__U62(tt, U62(zeros, x1)) -> c18(A__LENGTH(a__U62(a__zeros, x1)), MARK(U62(zeros, x1))) A__U62(tt, U62(U11(z0), x1)) -> c18(A__LENGTH(a__U62(a__U11(mark(z0)), x1)), MARK(U62(U11(z0), x1))) A__U62(tt, U62(U21(z0), x1)) -> c18(A__LENGTH(a__U62(a__U21(mark(z0)), x1)), MARK(U62(U21(z0), x1))) A__U62(tt, U62(U31(z0), x1)) -> c18(A__LENGTH(a__U62(a__U31(mark(z0)), x1)), MARK(U62(U31(z0), x1))) A__U62(tt, U62(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U41(mark(z0), z1), x1)), MARK(U62(U41(z0, z1), x1))) A__U62(tt, U62(U42(z0), x1)) -> c18(A__LENGTH(a__U62(a__U42(mark(z0)), x1)), MARK(U62(U42(z0), x1))) A__U62(tt, U62(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatIList(z0), x1)), MARK(U62(isNatIList(z0), x1))) A__U62(tt, U62(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U51(mark(z0), z1), x1)), MARK(U62(U51(z0, z1), x1))) A__U62(tt, U62(U52(z0), x1)) -> c18(A__LENGTH(a__U62(a__U52(mark(z0)), x1)), MARK(U62(U52(z0), x1))) A__U62(tt, U62(isNatList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatList(z0), x1)), MARK(U62(isNatList(z0), x1))) A__U62(tt, U62(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U62(a__U61(mark(z0), z1, z2), x1)), MARK(U62(U61(z0, z1, z2), x1))) A__U62(tt, U62(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U62(mark(z0), z1), x1)), MARK(U62(U62(z0, z1), x1))) A__U62(tt, U62(isNat(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNat(z0), x1)), MARK(U62(isNat(z0), x1))) A__U62(tt, U62(length(z0), x1)) -> c18(A__LENGTH(a__U62(a__length(mark(z0)), x1)), MARK(U62(length(z0), x1))) A__U62(tt, U62(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U62(cons(mark(z0), z1), x1)), MARK(U62(cons(z0, z1), x1))) A__U62(tt, U62(tt, x1)) -> c18(A__LENGTH(a__U62(tt, x1)), MARK(U62(tt, x1))) A__U62(tt, U62(s(z0), x1)) -> c18(A__LENGTH(a__U62(s(mark(z0)), x1)), MARK(U62(s(z0), x1))) A__U62(tt, U62(x0, z1)) -> c18(MARK(U62(x0, z1))) A__U62(tt, U62(0, x1)) -> c18(A__LENGTH(a__U62(0, x1))) A__U62(tt, U62(nil, x1)) -> c18(A__LENGTH(a__U62(nil, x1))) A__U62(tt, isNat(length(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(isNat(length(z0)))) A__U62(tt, isNat(s(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(isNat(s(z0)))) A__U62(tt, isNat(0)) -> c18(MARK(isNat(0))) A__U62(tt, isNat(z0)) -> c18(MARK(isNat(z0))) A__U62(tt, length(zeros)) -> c18(A__LENGTH(a__length(a__zeros)), MARK(length(zeros))) A__U62(tt, length(U11(z0))) -> c18(A__LENGTH(a__length(a__U11(mark(z0)))), MARK(length(U11(z0)))) A__U62(tt, length(U21(z0))) -> c18(A__LENGTH(a__length(a__U21(mark(z0)))), MARK(length(U21(z0)))) A__U62(tt, length(U31(z0))) -> c18(A__LENGTH(a__length(a__U31(mark(z0)))), MARK(length(U31(z0)))) A__U62(tt, length(U41(z0, z1))) -> c18(A__LENGTH(a__length(a__U41(mark(z0), z1))), MARK(length(U41(z0, z1)))) A__U62(tt, length(U42(z0))) -> c18(A__LENGTH(a__length(a__U42(mark(z0)))), MARK(length(U42(z0)))) A__U62(tt, length(isNatIList(z0))) -> c18(A__LENGTH(a__length(a__isNatIList(z0))), MARK(length(isNatIList(z0)))) A__U62(tt, length(U51(z0, z1))) -> c18(A__LENGTH(a__length(a__U51(mark(z0), z1))), MARK(length(U51(z0, z1)))) A__U62(tt, length(U52(z0))) -> c18(A__LENGTH(a__length(a__U52(mark(z0)))), MARK(length(U52(z0)))) A__U62(tt, length(isNatList(z0))) -> c18(A__LENGTH(a__length(a__isNatList(z0))), MARK(length(isNatList(z0)))) A__U62(tt, length(U61(z0, z1, z2))) -> c18(A__LENGTH(a__length(a__U61(mark(z0), z1, z2))), MARK(length(U61(z0, z1, z2)))) A__U62(tt, length(U62(z0, z1))) -> c18(A__LENGTH(a__length(a__U62(mark(z0), z1))), MARK(length(U62(z0, z1)))) A__U62(tt, length(isNat(z0))) -> c18(A__LENGTH(a__length(a__isNat(z0))), MARK(length(isNat(z0)))) A__U62(tt, length(length(z0))) -> c18(A__LENGTH(a__length(a__length(mark(z0)))), MARK(length(length(z0)))) A__U62(tt, length(cons(z0, z1))) -> c18(A__LENGTH(a__length(cons(mark(z0), z1))), MARK(length(cons(z0, z1)))) A__U62(tt, length(s(z0))) -> c18(A__LENGTH(a__length(s(mark(z0)))), MARK(length(s(z0)))) A__U62(tt, length(x0)) -> c18(MARK(length(x0))) A__U62(tt, length(0)) -> c18(A__LENGTH(a__length(0))) A__U62(tt, length(tt)) -> c18(A__LENGTH(a__length(tt))) A__U62(tt, length(nil)) -> c18(A__LENGTH(a__length(nil))) A__U62(tt, zeros) -> c18(A__LENGTH(cons(0, zeros))) A__ISNATILIST(cons(length(nil), x1)) -> c26(A__U41(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATILIST(cons(length(cons(z0, z1)), x1)) -> c26(A__U41(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(length(x0), x1)) -> c26(A__ISNAT(length(x0))) A__ISNATILIST(cons(s(0), x1)) -> c26(A__U41(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATILIST(cons(s(length(z0)), x1)) -> c26(A__U41(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATILIST(cons(s(s(z0)), x1)) -> c26(A__U41(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(s(x0), x1)) -> c26(A__ISNAT(s(x0))) A__ISNATLIST(cons(length(nil), x1)) -> c29(A__U51(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATLIST(cons(length(cons(z0, z1)), x1)) -> c29(A__U51(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(length(x0), x1)) -> c29(A__ISNAT(length(x0))) A__ISNATLIST(cons(s(0), x1)) -> c29(A__U51(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATLIST(cons(s(length(z0)), x1)) -> c29(A__U51(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATLIST(cons(s(s(z0)), x1)) -> c29(A__U51(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(s(x0), x1)) -> c29(A__ISNAT(s(x0))) A__LENGTH(cons(x0, cons(0, x2))) -> c32(A__U61(a__U51(tt, x2), cons(0, x2), x0), A__ISNATLIST(cons(0, x2))) A__LENGTH(cons(x0, cons(length(z0), x2))) -> c32(A__U61(a__U51(a__U11(a__isNatList(z0)), x2), cons(length(z0), x2), x0), A__ISNATLIST(cons(length(z0), x2))) A__LENGTH(cons(x0, cons(s(z0), x2))) -> c32(A__U61(a__U51(a__U21(a__isNat(z0)), x2), cons(s(z0), x2), x0), A__ISNATLIST(cons(s(z0), x2))) A__LENGTH(cons(x0, cons(z0, x2))) -> c32(A__U61(a__U51(isNat(z0), x2), cons(z0, x2), x0), A__ISNATLIST(cons(z0, x2))) A__LENGTH(cons(x0, cons(x1, z1))) -> c32(A__ISNATLIST(cons(x1, z1))) MARK(U41(U11(zeros), x1)) -> c38(A__U41(a__U11(a__zeros), x1), MARK(U11(zeros))) MARK(U41(U11(U11(z0)), x1)) -> c38(A__U41(a__U11(a__U11(mark(z0))), x1), MARK(U11(U11(z0)))) MARK(U41(U11(U21(z0)), x1)) -> c38(A__U41(a__U11(a__U21(mark(z0))), x1), MARK(U11(U21(z0)))) MARK(U41(U11(U31(z0)), x1)) -> c38(A__U41(a__U11(a__U31(mark(z0))), x1), MARK(U11(U31(z0)))) MARK(U41(U11(U41(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U41(mark(z0), z1)), x1), MARK(U11(U41(z0, z1)))) MARK(U41(U11(U42(z0)), x1)) -> c38(A__U41(a__U11(a__U42(mark(z0))), x1), MARK(U11(U42(z0)))) MARK(U41(U11(isNatIList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatIList(z0)), x1), MARK(U11(isNatIList(z0)))) MARK(U41(U11(U51(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U51(mark(z0), z1)), x1), MARK(U11(U51(z0, z1)))) MARK(U41(U11(U52(z0)), x1)) -> c38(A__U41(a__U11(a__U52(mark(z0))), x1), MARK(U11(U52(z0)))) MARK(U41(U11(isNatList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatList(z0)), x1), MARK(U11(isNatList(z0)))) MARK(U41(U11(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U11(a__U61(mark(z0), z1, z2)), x1), MARK(U11(U61(z0, z1, z2)))) MARK(U41(U11(U62(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U62(mark(z0), z1)), x1), MARK(U11(U62(z0, z1)))) MARK(U41(U11(isNat(z0)), x1)) -> c38(A__U41(a__U11(a__isNat(z0)), x1), MARK(U11(isNat(z0)))) MARK(U41(U11(length(z0)), x1)) -> c38(A__U41(a__U11(a__length(mark(z0))), x1), MARK(U11(length(z0)))) MARK(U41(U11(cons(z0, z1)), x1)) -> c38(A__U41(a__U11(cons(mark(z0), z1)), x1), MARK(U11(cons(z0, z1)))) MARK(U41(U11(0), x1)) -> c38(A__U41(a__U11(0), x1), MARK(U11(0))) MARK(U41(U11(tt), x1)) -> c38(A__U41(a__U11(tt), x1), MARK(U11(tt))) MARK(U41(U11(s(z0)), x1)) -> c38(A__U41(a__U11(s(mark(z0))), x1), MARK(U11(s(z0)))) MARK(U41(U11(nil), x1)) -> c38(A__U41(a__U11(nil), x1), MARK(U11(nil))) MARK(U41(U11(x0), x1)) -> c38(MARK(U11(x0))) MARK(U41(U21(zeros), x1)) -> c38(A__U41(a__U21(a__zeros), x1), MARK(U21(zeros))) MARK(U41(U21(U11(z0)), x1)) -> c38(A__U41(a__U21(a__U11(mark(z0))), x1), MARK(U21(U11(z0)))) MARK(U41(U21(U21(z0)), x1)) -> c38(A__U41(a__U21(a__U21(mark(z0))), x1), MARK(U21(U21(z0)))) MARK(U41(U21(U31(z0)), x1)) -> c38(A__U41(a__U21(a__U31(mark(z0))), x1), MARK(U21(U31(z0)))) MARK(U41(U21(U41(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U41(mark(z0), z1)), x1), MARK(U21(U41(z0, z1)))) MARK(U41(U21(U42(z0)), x1)) -> c38(A__U41(a__U21(a__U42(mark(z0))), x1), MARK(U21(U42(z0)))) MARK(U41(U21(isNatIList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatIList(z0)), x1), MARK(U21(isNatIList(z0)))) MARK(U41(U21(U51(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U51(mark(z0), z1)), x1), MARK(U21(U51(z0, z1)))) MARK(U41(U21(U52(z0)), x1)) -> c38(A__U41(a__U21(a__U52(mark(z0))), x1), MARK(U21(U52(z0)))) MARK(U41(U21(isNatList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatList(z0)), x1), MARK(U21(isNatList(z0)))) MARK(U41(U21(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U21(a__U61(mark(z0), z1, z2)), x1), MARK(U21(U61(z0, z1, z2)))) MARK(U41(U21(U62(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U62(mark(z0), z1)), x1), MARK(U21(U62(z0, z1)))) MARK(U41(U21(isNat(z0)), x1)) -> c38(A__U41(a__U21(a__isNat(z0)), x1), MARK(U21(isNat(z0)))) MARK(U41(U21(length(z0)), x1)) -> c38(A__U41(a__U21(a__length(mark(z0))), x1), MARK(U21(length(z0)))) MARK(U41(U21(cons(z0, z1)), x1)) -> c38(A__U41(a__U21(cons(mark(z0), z1)), x1), MARK(U21(cons(z0, z1)))) MARK(U41(U21(0), x1)) -> c38(A__U41(a__U21(0), x1), MARK(U21(0))) MARK(U41(U21(tt), x1)) -> c38(A__U41(a__U21(tt), x1), MARK(U21(tt))) MARK(U41(U21(s(z0)), x1)) -> c38(A__U41(a__U21(s(mark(z0))), x1), MARK(U21(s(z0)))) MARK(U41(U21(nil), x1)) -> c38(A__U41(a__U21(nil), x1), MARK(U21(nil))) MARK(U41(U21(x0), x1)) -> c38(MARK(U21(x0))) MARK(U41(U31(zeros), x1)) -> c38(A__U41(a__U31(a__zeros), x1), MARK(U31(zeros))) MARK(U41(U31(U11(z0)), x1)) -> c38(A__U41(a__U31(a__U11(mark(z0))), x1), MARK(U31(U11(z0)))) MARK(U41(U31(U21(z0)), x1)) -> c38(A__U41(a__U31(a__U21(mark(z0))), x1), MARK(U31(U21(z0)))) MARK(U41(U31(U31(z0)), x1)) -> c38(A__U41(a__U31(a__U31(mark(z0))), x1), MARK(U31(U31(z0)))) MARK(U41(U31(U41(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U41(mark(z0), z1)), x1), MARK(U31(U41(z0, z1)))) MARK(U41(U31(U42(z0)), x1)) -> c38(A__U41(a__U31(a__U42(mark(z0))), x1), MARK(U31(U42(z0)))) MARK(U41(U31(isNatIList(z0)), x1)) -> c38(A__U41(a__U31(a__isNatIList(z0)), x1), MARK(U31(isNatIList(z0)))) MARK(U41(U31(U51(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U51(mark(z0), z1)), x1), MARK(U31(U51(z0, z1)))) MARK(U41(U31(U52(z0)), x1)) -> c38(A__U41(a__U31(a__U52(mark(z0))), x1), MARK(U31(U52(z0)))) MARK(U41(U31(isNatList(z0)), x1)) -> c38(A__U41(a__U31(a__isNatList(z0)), x1), MARK(U31(isNatList(z0)))) MARK(U41(U31(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U31(a__U61(mark(z0), z1, z2)), x1), MARK(U31(U61(z0, z1, z2)))) MARK(U41(U31(U62(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U62(mark(z0), z1)), x1), MARK(U31(U62(z0, z1)))) MARK(U41(U31(isNat(z0)), x1)) -> c38(A__U41(a__U31(a__isNat(z0)), x1), MARK(U31(isNat(z0)))) MARK(U41(U31(length(z0)), x1)) -> c38(A__U41(a__U31(a__length(mark(z0))), x1), MARK(U31(length(z0)))) MARK(U41(U31(cons(z0, z1)), x1)) -> c38(A__U41(a__U31(cons(mark(z0), z1)), x1), MARK(U31(cons(z0, z1)))) MARK(U41(U31(0), x1)) -> c38(A__U41(a__U31(0), x1), MARK(U31(0))) MARK(U41(U31(tt), x1)) -> c38(A__U41(a__U31(tt), x1), MARK(U31(tt))) MARK(U41(U31(s(z0)), x1)) -> c38(A__U41(a__U31(s(mark(z0))), x1), MARK(U31(s(z0)))) MARK(U41(U31(nil), x1)) -> c38(A__U41(a__U31(nil), x1), MARK(U31(nil))) MARK(U41(U31(x0), x1)) -> c38(MARK(U31(x0))) MARK(U41(U41(U11(z0), x1), x2)) -> c38(A__U41(a__U41(a__U11(mark(z0)), x1), x2), MARK(U41(U11(z0), x1))) MARK(U41(U41(U21(z0), x1), x2)) -> c38(A__U41(a__U41(a__U21(mark(z0)), x1), x2), MARK(U41(U21(z0), x1))) MARK(U41(U41(U31(z0), x1), x2)) -> c38(A__U41(a__U41(a__U31(mark(z0)), x1), x2), MARK(U41(U31(z0), x1))) MARK(U41(U41(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U41(mark(z0), z1), x1), x2), MARK(U41(U41(z0, z1), x1))) MARK(U41(U41(U42(z0), x1), x2)) -> c38(A__U41(a__U41(a__U42(mark(z0)), x1), x2), MARK(U41(U42(z0), x1))) MARK(U41(U41(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U51(mark(z0), z1), x1), x2), MARK(U41(U51(z0, z1), x1))) MARK(U41(U41(U52(z0), x1), x2)) -> c38(A__U41(a__U41(a__U52(mark(z0)), x1), x2), MARK(U41(U52(z0), x1))) MARK(U41(U41(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U41(a__U61(mark(z0), z1, z2), x1), x2), MARK(U41(U61(z0, z1, z2), x1))) MARK(U41(U41(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U62(mark(z0), z1), x1), x2), MARK(U41(U62(z0, z1), x1))) MARK(U41(U41(length(z0), x1), x2)) -> c38(A__U41(a__U41(a__length(mark(z0)), x1), x2), MARK(U41(length(z0), x1))) MARK(U41(U41(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U41(cons(mark(z0), z1), x1), x2), MARK(U41(cons(z0, z1), x1))) MARK(U41(U41(s(z0), x1), x2)) -> c38(A__U41(a__U41(s(mark(z0)), x1), x2), MARK(U41(s(z0), x1))) MARK(U41(U41(x0, z1), x2)) -> c38(MARK(U41(x0, z1))) MARK(U41(U41(0, x1), x2)) -> c38(A__U41(a__U41(0, x1), x2)) MARK(U41(U41(nil, x1), x2)) -> c38(A__U41(a__U41(nil, x1), x2)) MARK(U41(U41(zeros, x1), x2)) -> c2(A__U41(a__U41(a__zeros, x1), x2)) MARK(U41(U41(zeros, x1), x2)) -> c2(MARK(U41(zeros, x1))) MARK(U41(U41(isNatIList(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNatIList(z0), x1), x2)) MARK(U41(U41(isNatIList(z0), x1), x2)) -> c2(MARK(U41(isNatIList(z0), x1))) MARK(U41(U41(isNatList(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNatList(z0), x1), x2)) MARK(U41(U41(isNatList(z0), x1), x2)) -> c2(MARK(U41(isNatList(z0), x1))) MARK(U41(U41(isNat(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNat(z0), x1), x2)) MARK(U41(U41(isNat(z0), x1), x2)) -> c2(MARK(U41(isNat(z0), x1))) MARK(U41(U41(tt, x1), x2)) -> c2(A__U41(a__U41(tt, x1), x2)) MARK(U41(U41(tt, x1), x2)) -> c2(MARK(U41(tt, x1))) MARK(U41(U42(zeros), x1)) -> c38(A__U41(a__U42(a__zeros), x1), MARK(U42(zeros))) MARK(U41(U42(U11(z0)), x1)) -> c38(A__U41(a__U42(a__U11(mark(z0))), x1), MARK(U42(U11(z0)))) MARK(U41(U42(U21(z0)), x1)) -> c38(A__U41(a__U42(a__U21(mark(z0))), x1), MARK(U42(U21(z0)))) MARK(U41(U42(U31(z0)), x1)) -> c38(A__U41(a__U42(a__U31(mark(z0))), x1), MARK(U42(U31(z0)))) MARK(U41(U42(U41(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U41(mark(z0), z1)), x1), MARK(U42(U41(z0, z1)))) MARK(U41(U42(U42(z0)), x1)) -> c38(A__U41(a__U42(a__U42(mark(z0))), x1), MARK(U42(U42(z0)))) MARK(U41(U42(isNatIList(z0)), x1)) -> c38(A__U41(a__U42(a__isNatIList(z0)), x1), MARK(U42(isNatIList(z0)))) MARK(U41(U42(U51(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U51(mark(z0), z1)), x1), MARK(U42(U51(z0, z1)))) MARK(U41(U42(U52(z0)), x1)) -> c38(A__U41(a__U42(a__U52(mark(z0))), x1), MARK(U42(U52(z0)))) MARK(U41(U42(isNatList(z0)), x1)) -> c38(A__U41(a__U42(a__isNatList(z0)), x1), MARK(U42(isNatList(z0)))) MARK(U41(U42(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U42(a__U61(mark(z0), z1, z2)), x1), MARK(U42(U61(z0, z1, z2)))) MARK(U41(U42(U62(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U62(mark(z0), z1)), x1), MARK(U42(U62(z0, z1)))) MARK(U41(U42(isNat(z0)), x1)) -> c38(A__U41(a__U42(a__isNat(z0)), x1), MARK(U42(isNat(z0)))) MARK(U41(U42(length(z0)), x1)) -> c38(A__U41(a__U42(a__length(mark(z0))), x1), MARK(U42(length(z0)))) MARK(U41(U42(cons(z0, z1)), x1)) -> c38(A__U41(a__U42(cons(mark(z0), z1)), x1), MARK(U42(cons(z0, z1)))) MARK(U41(U42(0), x1)) -> c38(A__U41(a__U42(0), x1), MARK(U42(0))) MARK(U41(U42(tt), x1)) -> c38(A__U41(a__U42(tt), x1), MARK(U42(tt))) MARK(U41(U42(s(z0)), x1)) -> c38(A__U41(a__U42(s(mark(z0))), x1), MARK(U42(s(z0)))) MARK(U41(U42(nil), x1)) -> c38(A__U41(a__U42(nil), x1), MARK(U42(nil))) MARK(U41(U42(x0), x1)) -> c38(MARK(U42(x0))) MARK(U41(U51(U11(z0), x1), x2)) -> c38(A__U41(a__U51(a__U11(mark(z0)), x1), x2), MARK(U51(U11(z0), x1))) MARK(U41(U51(U21(z0), x1), x2)) -> c38(A__U41(a__U51(a__U21(mark(z0)), x1), x2), MARK(U51(U21(z0), x1))) MARK(U41(U51(U31(z0), x1), x2)) -> c38(A__U41(a__U51(a__U31(mark(z0)), x1), x2), MARK(U51(U31(z0), x1))) MARK(U41(U51(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U41(mark(z0), z1), x1), x2), MARK(U51(U41(z0, z1), x1))) MARK(U41(U51(U42(z0), x1), x2)) -> c38(A__U41(a__U51(a__U42(mark(z0)), x1), x2), MARK(U51(U42(z0), x1))) MARK(U41(U51(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U51(mark(z0), z1), x1), x2), MARK(U51(U51(z0, z1), x1))) MARK(U41(U51(U52(z0), x1), x2)) -> c38(A__U41(a__U51(a__U52(mark(z0)), x1), x2), MARK(U51(U52(z0), x1))) MARK(U41(U51(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U51(a__U61(mark(z0), z1, z2), x1), x2), MARK(U51(U61(z0, z1, z2), x1))) MARK(U41(U51(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U62(mark(z0), z1), x1), x2), MARK(U51(U62(z0, z1), x1))) MARK(U41(U51(length(z0), x1), x2)) -> c38(A__U41(a__U51(a__length(mark(z0)), x1), x2), MARK(U51(length(z0), x1))) MARK(U41(U51(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U51(cons(mark(z0), z1), x1), x2), MARK(U51(cons(z0, z1), x1))) MARK(U41(U51(s(z0), x1), x2)) -> c38(A__U41(a__U51(s(mark(z0)), x1), x2), MARK(U51(s(z0), x1))) MARK(U41(U51(x0, z1), x2)) -> c38(MARK(U51(x0, z1))) MARK(U41(U51(0, x1), x2)) -> c38(A__U41(a__U51(0, x1), x2)) MARK(U41(U51(nil, x1), x2)) -> c38(A__U41(a__U51(nil, x1), x2)) MARK(U41(U51(zeros, x1), x2)) -> c3(A__U41(a__U51(a__zeros, x1), x2)) MARK(U41(U51(zeros, x1), x2)) -> c3(MARK(U51(zeros, x1))) MARK(U41(U51(isNatIList(z0), x1), x2)) -> c3(A__U41(a__U51(a__isNatIList(z0), x1), x2)) MARK(U41(U51(isNatIList(z0), x1), x2)) -> c3(MARK(U51(isNatIList(z0), x1))) MARK(U41(U51(isNatList(z0), x1), x2)) -> c3(A__U41(a__U51(a__isNatList(z0), x1), x2)) MARK(U41(U51(isNatList(z0), x1), x2)) -> c3(MARK(U51(isNatList(z0), x1))) MARK(U41(U51(isNat(z0), x1), x2)) -> c3(A__U41(a__U51(a__isNat(z0), x1), x2)) MARK(U41(U51(isNat(z0), x1), x2)) -> c3(MARK(U51(isNat(z0), x1))) MARK(U41(U51(tt, x1), x2)) -> c3(A__U41(a__U51(tt, x1), x2)) MARK(U41(U51(tt, x1), x2)) -> c3(MARK(U51(tt, x1))) MARK(U41(U52(zeros), x1)) -> c38(A__U41(a__U52(a__zeros), x1), MARK(U52(zeros))) MARK(U41(U52(U11(z0)), x1)) -> c38(A__U41(a__U52(a__U11(mark(z0))), x1), MARK(U52(U11(z0)))) MARK(U41(U52(U21(z0)), x1)) -> c38(A__U41(a__U52(a__U21(mark(z0))), x1), MARK(U52(U21(z0)))) MARK(U41(U52(U31(z0)), x1)) -> c38(A__U41(a__U52(a__U31(mark(z0))), x1), MARK(U52(U31(z0)))) MARK(U41(U52(U41(z0, z1)), x1)) -> c38(A__U41(a__U52(a__U41(mark(z0), z1)), x1), MARK(U52(U41(z0, z1)))) MARK(U41(U52(U42(z0)), x1)) -> c38(A__U41(a__U52(a__U42(mark(z0))), x1), MARK(U52(U42(z0)))) MARK(U41(U52(isNatIList(z0)), x1)) -> c38(A__U41(a__U52(a__isNatIList(z0)), x1), MARK(U52(isNatIList(z0)))) MARK(U41(U52(U51(z0, z1)), x1)) -> c38(A__U41(a__U52(a__U51(mark(z0), z1)), x1), MARK(U52(U51(z0, z1)))) MARK(U41(U52(U52(z0)), x1)) -> c38(A__U41(a__U52(a__U52(mark(z0))), x1), MARK(U52(U52(z0)))) MARK(U41(U52(isNatList(z0)), x1)) -> c38(A__U41(a__U52(a__isNatList(z0)), x1), MARK(U52(isNatList(z0)))) MARK(U41(U52(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U52(a__U61(mark(z0), z1, z2)), x1), MARK(U52(U61(z0, z1, z2)))) MARK(U41(U52(U62(z0, z1)), x1)) -> c38(A__U41(a__U52(a__U62(mark(z0), z1)), x1), MARK(U52(U62(z0, z1)))) MARK(U41(U52(isNat(z0)), x1)) -> c38(A__U41(a__U52(a__isNat(z0)), x1), MARK(U52(isNat(z0)))) MARK(U41(U52(length(z0)), x1)) -> c38(A__U41(a__U52(a__length(mark(z0))), x1), MARK(U52(length(z0)))) MARK(U41(U52(cons(z0, z1)), x1)) -> c38(A__U41(a__U52(cons(mark(z0), z1)), x1), MARK(U52(cons(z0, z1)))) MARK(U41(U52(0), x1)) -> c38(A__U41(a__U52(0), x1), MARK(U52(0))) MARK(U41(U52(tt), x1)) -> c38(A__U41(a__U52(tt), x1), MARK(U52(tt))) MARK(U41(U52(s(z0)), x1)) -> c38(A__U41(a__U52(s(mark(z0))), x1), MARK(U52(s(z0)))) MARK(U41(U52(nil), x1)) -> c38(A__U41(a__U52(nil), x1), MARK(U52(nil))) MARK(U41(U52(x0), x1)) -> c38(MARK(U52(x0))) MARK(U41(U61(zeros, x1, x2), x3)) -> c38(A__U41(a__U61(a__zeros, x1, x2), x3), MARK(U61(zeros, x1, x2))) MARK(U41(U61(U11(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U11(mark(z0)), x1, x2), x3), MARK(U61(U11(z0), x1, x2))) MARK(U41(U61(U21(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U21(mark(z0)), x1, x2), x3), MARK(U61(U21(z0), x1, x2))) MARK(U41(U61(U31(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U31(mark(z0)), x1, x2), x3), MARK(U61(U31(z0), x1, x2))) MARK(U41(U61(U41(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(a__U41(mark(z0), z1), x1, x2), x3), MARK(U61(U41(z0, z1), x1, x2))) MARK(U41(U61(U42(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U42(mark(z0)), x1, x2), x3), MARK(U61(U42(z0), x1, x2))) MARK(U41(U61(isNatIList(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__isNatIList(z0), x1, x2), x3), MARK(U61(isNatIList(z0), x1, x2))) MARK(U41(U61(U51(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(a__U51(mark(z0), z1), x1, x2), x3), MARK(U61(U51(z0, z1), x1, x2))) MARK(U41(U61(U52(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U52(mark(z0)), x1, x2), x3), MARK(U61(U52(z0), x1, x2))) MARK(U41(U61(isNatList(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__isNatList(z0), x1, x2), x3), MARK(U61(isNatList(z0), x1, x2))) MARK(U41(U61(U61(z0, z1, z2), x1, x2), x3)) -> c38(A__U41(a__U61(a__U61(mark(z0), z1, z2), x1, x2), x3), MARK(U61(U61(z0, z1, z2), x1, x2))) MARK(U41(U61(U62(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(a__U62(mark(z0), z1), x1, x2), x3), MARK(U61(U62(z0, z1), x1, x2))) MARK(U41(U61(isNat(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__isNat(z0), x1, x2), x3), MARK(U61(isNat(z0), x1, x2))) MARK(U41(U61(length(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__length(mark(z0)), x1, x2), x3), MARK(U61(length(z0), x1, x2))) MARK(U41(U61(cons(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(cons(mark(z0), z1), x1, x2), x3), MARK(U61(cons(z0, z1), x1, x2))) MARK(U41(U61(tt, x1, x2), x3)) -> c38(A__U41(a__U61(tt, x1, x2), x3), MARK(U61(tt, x1, x2))) MARK(U41(U61(s(z0), x1, x2), x3)) -> c38(A__U41(a__U61(s(mark(z0)), x1, x2), x3), MARK(U61(s(z0), x1, x2))) MARK(U41(U61(x0, z1, z2), x3)) -> c38(MARK(U61(x0, z1, z2))) MARK(U41(U61(0, x1, x2), x3)) -> c38(A__U41(a__U61(0, x1, x2), x3)) MARK(U41(U61(nil, x1, x2), x3)) -> c38(A__U41(a__U61(nil, x1, x2), x3)) MARK(U41(U62(zeros, x1), x2)) -> c38(A__U41(a__U62(a__zeros, x1), x2), MARK(U62(zeros, x1))) MARK(U41(U62(U11(z0), x1), x2)) -> c38(A__U41(a__U62(a__U11(mark(z0)), x1), x2), MARK(U62(U11(z0), x1))) MARK(U41(U62(U21(z0), x1), x2)) -> c38(A__U41(a__U62(a__U21(mark(z0)), x1), x2), MARK(U62(U21(z0), x1))) MARK(U41(U62(U31(z0), x1), x2)) -> c38(A__U41(a__U62(a__U31(mark(z0)), x1), x2), MARK(U62(U31(z0), x1))) MARK(U41(U62(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U62(a__U41(mark(z0), z1), x1), x2), MARK(U62(U41(z0, z1), x1))) MARK(U41(U62(U42(z0), x1), x2)) -> c38(A__U41(a__U62(a__U42(mark(z0)), x1), x2), MARK(U62(U42(z0), x1))) MARK(U41(U62(isNatIList(z0), x1), x2)) -> c38(A__U41(a__U62(a__isNatIList(z0), x1), x2), MARK(U62(isNatIList(z0), x1))) MARK(U41(U62(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U62(a__U51(mark(z0), z1), x1), x2), MARK(U62(U51(z0, z1), x1))) MARK(U41(U62(U52(z0), x1), x2)) -> c38(A__U41(a__U62(a__U52(mark(z0)), x1), x2), MARK(U62(U52(z0), x1))) MARK(U41(U62(isNatList(z0), x1), x2)) -> c38(A__U41(a__U62(a__isNatList(z0), x1), x2), MARK(U62(isNatList(z0), x1))) MARK(U41(U62(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U62(a__U61(mark(z0), z1, z2), x1), x2), MARK(U62(U61(z0, z1, z2), x1))) MARK(U41(U62(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U62(a__U62(mark(z0), z1), x1), x2), MARK(U62(U62(z0, z1), x1))) MARK(U41(U62(isNat(z0), x1), x2)) -> c38(A__U41(a__U62(a__isNat(z0), x1), x2), MARK(U62(isNat(z0), x1))) MARK(U41(U62(length(z0), x1), x2)) -> c38(A__U41(a__U62(a__length(mark(z0)), x1), x2), MARK(U62(length(z0), x1))) MARK(U41(U62(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U62(cons(mark(z0), z1), x1), x2), MARK(U62(cons(z0, z1), x1))) MARK(U41(U62(tt, x1), x2)) -> c38(A__U41(a__U62(tt, x1), x2), MARK(U62(tt, x1))) MARK(U41(U62(s(z0), x1), x2)) -> c38(A__U41(a__U62(s(mark(z0)), x1), x2), MARK(U62(s(z0), x1))) MARK(U41(U62(x0, z1), x2)) -> c38(MARK(U62(x0, z1))) MARK(U41(U62(0, x1), x2)) -> c38(A__U41(a__U62(0, x1), x2)) MARK(U41(U62(nil, x1), x2)) -> c38(A__U41(a__U62(nil, x1), x2)) MARK(U41(length(zeros), x1)) -> c38(A__U41(a__length(a__zeros), x1), MARK(length(zeros))) MARK(U41(length(U11(z0)), x1)) -> c38(A__U41(a__length(a__U11(mark(z0))), x1), MARK(length(U11(z0)))) MARK(U41(length(U21(z0)), x1)) -> c38(A__U41(a__length(a__U21(mark(z0))), x1), MARK(length(U21(z0)))) MARK(U41(length(U31(z0)), x1)) -> c38(A__U41(a__length(a__U31(mark(z0))), x1), MARK(length(U31(z0)))) MARK(U41(length(U41(z0, z1)), x1)) -> c38(A__U41(a__length(a__U41(mark(z0), z1)), x1), MARK(length(U41(z0, z1)))) MARK(U41(length(U42(z0)), x1)) -> c38(A__U41(a__length(a__U42(mark(z0))), x1), MARK(length(U42(z0)))) MARK(U41(length(isNatIList(z0)), x1)) -> c38(A__U41(a__length(a__isNatIList(z0)), x1), MARK(length(isNatIList(z0)))) MARK(U41(length(U51(z0, z1)), x1)) -> c38(A__U41(a__length(a__U51(mark(z0), z1)), x1), MARK(length(U51(z0, z1)))) MARK(U41(length(U52(z0)), x1)) -> c38(A__U41(a__length(a__U52(mark(z0))), x1), MARK(length(U52(z0)))) MARK(U41(length(isNatList(z0)), x1)) -> c38(A__U41(a__length(a__isNatList(z0)), x1), MARK(length(isNatList(z0)))) MARK(U41(length(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__length(a__U61(mark(z0), z1, z2)), x1), MARK(length(U61(z0, z1, z2)))) MARK(U41(length(U62(z0, z1)), x1)) -> c38(A__U41(a__length(a__U62(mark(z0), z1)), x1), MARK(length(U62(z0, z1)))) MARK(U41(length(isNat(z0)), x1)) -> c38(A__U41(a__length(a__isNat(z0)), x1), MARK(length(isNat(z0)))) MARK(U41(length(length(z0)), x1)) -> c38(A__U41(a__length(a__length(mark(z0))), x1), MARK(length(length(z0)))) MARK(U41(length(cons(z0, z1)), x1)) -> c38(A__U41(a__length(cons(mark(z0), z1)), x1), MARK(length(cons(z0, z1)))) MARK(U41(length(s(z0)), x1)) -> c38(A__U41(a__length(s(mark(z0))), x1), MARK(length(s(z0)))) MARK(U41(length(x0), x1)) -> c38(MARK(length(x0))) MARK(U41(length(0), x1)) -> c38(A__U41(a__length(0), x1)) MARK(U41(length(tt), x1)) -> c38(A__U41(a__length(tt), x1)) MARK(U41(length(nil), x1)) -> c38(A__U41(a__length(nil), x1)) S tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) A__U62(tt, isNatList(cons(z0, z1))) -> c18(A__LENGTH(a__U51(a__isNat(z0), z1)), MARK(isNatList(cons(z0, z1)))) A__U62(tt, isNatList(nil)) -> c18(MARK(isNatList(nil))) A__U62(tt, isNatList(z0)) -> c18(MARK(isNatList(z0))) A__U62(tt, U61(zeros, x1, x2)) -> c18(A__LENGTH(a__U61(a__zeros, x1, x2)), MARK(U61(zeros, x1, x2))) A__U62(tt, U61(U11(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U11(mark(z0)), x1, x2)), MARK(U61(U11(z0), x1, x2))) A__U62(tt, U61(U21(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U21(mark(z0)), x1, x2)), MARK(U61(U21(z0), x1, x2))) A__U62(tt, U61(U31(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U31(mark(z0)), x1, x2)), MARK(U61(U31(z0), x1, x2))) A__U62(tt, U61(U41(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U41(mark(z0), z1), x1, x2)), MARK(U61(U41(z0, z1), x1, x2))) A__U62(tt, U61(U42(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U42(mark(z0)), x1, x2)), MARK(U61(U42(z0), x1, x2))) A__U62(tt, U61(isNatIList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatIList(z0), x1, x2)), MARK(U61(isNatIList(z0), x1, x2))) A__U62(tt, U61(U51(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U51(mark(z0), z1), x1, x2)), MARK(U61(U51(z0, z1), x1, x2))) A__U62(tt, U61(U52(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U52(mark(z0)), x1, x2)), MARK(U61(U52(z0), x1, x2))) A__U62(tt, U61(isNatList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatList(z0), x1, x2)), MARK(U61(isNatList(z0), x1, x2))) A__U62(tt, U61(U61(z0, z1, z2), x1, x2)) -> c18(A__LENGTH(a__U61(a__U61(mark(z0), z1, z2), x1, x2)), MARK(U61(U61(z0, z1, z2), x1, x2))) A__U62(tt, U61(U62(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U62(mark(z0), z1), x1, x2)), MARK(U61(U62(z0, z1), x1, x2))) A__U62(tt, U61(isNat(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNat(z0), x1, x2)), MARK(U61(isNat(z0), x1, x2))) A__U62(tt, U61(length(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__length(mark(z0)), x1, x2)), MARK(U61(length(z0), x1, x2))) A__U62(tt, U61(cons(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(cons(mark(z0), z1), x1, x2)), MARK(U61(cons(z0, z1), x1, x2))) A__U62(tt, U61(tt, x1, x2)) -> c18(A__LENGTH(a__U61(tt, x1, x2)), MARK(U61(tt, x1, x2))) A__U62(tt, U61(s(z0), x1, x2)) -> c18(A__LENGTH(a__U61(s(mark(z0)), x1, x2)), MARK(U61(s(z0), x1, x2))) A__U62(tt, U61(x0, z1, z2)) -> c18(MARK(U61(x0, z1, z2))) A__U62(tt, U61(0, x1, x2)) -> c18(A__LENGTH(a__U61(0, x1, x2))) A__U62(tt, U61(nil, x1, x2)) -> c18(A__LENGTH(a__U61(nil, x1, x2))) A__U62(tt, U62(zeros, x1)) -> c18(A__LENGTH(a__U62(a__zeros, x1)), MARK(U62(zeros, x1))) A__U62(tt, U62(U11(z0), x1)) -> c18(A__LENGTH(a__U62(a__U11(mark(z0)), x1)), MARK(U62(U11(z0), x1))) A__U62(tt, U62(U21(z0), x1)) -> c18(A__LENGTH(a__U62(a__U21(mark(z0)), x1)), MARK(U62(U21(z0), x1))) A__U62(tt, U62(U31(z0), x1)) -> c18(A__LENGTH(a__U62(a__U31(mark(z0)), x1)), MARK(U62(U31(z0), x1))) A__U62(tt, U62(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U41(mark(z0), z1), x1)), MARK(U62(U41(z0, z1), x1))) A__U62(tt, U62(U42(z0), x1)) -> c18(A__LENGTH(a__U62(a__U42(mark(z0)), x1)), MARK(U62(U42(z0), x1))) A__U62(tt, U62(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatIList(z0), x1)), MARK(U62(isNatIList(z0), x1))) A__U62(tt, U62(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U51(mark(z0), z1), x1)), MARK(U62(U51(z0, z1), x1))) A__U62(tt, U62(U52(z0), x1)) -> c18(A__LENGTH(a__U62(a__U52(mark(z0)), x1)), MARK(U62(U52(z0), x1))) A__U62(tt, U62(isNatList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatList(z0), x1)), MARK(U62(isNatList(z0), x1))) A__U62(tt, U62(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U62(a__U61(mark(z0), z1, z2), x1)), MARK(U62(U61(z0, z1, z2), x1))) A__U62(tt, U62(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U62(mark(z0), z1), x1)), MARK(U62(U62(z0, z1), x1))) A__U62(tt, U62(isNat(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNat(z0), x1)), MARK(U62(isNat(z0), x1))) A__U62(tt, U62(length(z0), x1)) -> c18(A__LENGTH(a__U62(a__length(mark(z0)), x1)), MARK(U62(length(z0), x1))) A__U62(tt, U62(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U62(cons(mark(z0), z1), x1)), MARK(U62(cons(z0, z1), x1))) A__U62(tt, U62(tt, x1)) -> c18(A__LENGTH(a__U62(tt, x1)), MARK(U62(tt, x1))) A__U62(tt, U62(s(z0), x1)) -> c18(A__LENGTH(a__U62(s(mark(z0)), x1)), MARK(U62(s(z0), x1))) A__U62(tt, U62(x0, z1)) -> c18(MARK(U62(x0, z1))) A__U62(tt, U62(0, x1)) -> c18(A__LENGTH(a__U62(0, x1))) A__U62(tt, U62(nil, x1)) -> c18(A__LENGTH(a__U62(nil, x1))) A__U62(tt, isNat(length(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(isNat(length(z0)))) A__U62(tt, isNat(s(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(isNat(s(z0)))) A__U62(tt, isNat(0)) -> c18(MARK(isNat(0))) A__U62(tt, isNat(z0)) -> c18(MARK(isNat(z0))) A__U62(tt, length(zeros)) -> c18(A__LENGTH(a__length(a__zeros)), MARK(length(zeros))) A__U62(tt, length(U11(z0))) -> c18(A__LENGTH(a__length(a__U11(mark(z0)))), MARK(length(U11(z0)))) A__U62(tt, length(U21(z0))) -> c18(A__LENGTH(a__length(a__U21(mark(z0)))), MARK(length(U21(z0)))) A__U62(tt, length(U31(z0))) -> c18(A__LENGTH(a__length(a__U31(mark(z0)))), MARK(length(U31(z0)))) A__U62(tt, length(U41(z0, z1))) -> c18(A__LENGTH(a__length(a__U41(mark(z0), z1))), MARK(length(U41(z0, z1)))) A__U62(tt, length(U42(z0))) -> c18(A__LENGTH(a__length(a__U42(mark(z0)))), MARK(length(U42(z0)))) A__U62(tt, length(isNatIList(z0))) -> c18(A__LENGTH(a__length(a__isNatIList(z0))), MARK(length(isNatIList(z0)))) A__U62(tt, length(U51(z0, z1))) -> c18(A__LENGTH(a__length(a__U51(mark(z0), z1))), MARK(length(U51(z0, z1)))) A__U62(tt, length(U52(z0))) -> c18(A__LENGTH(a__length(a__U52(mark(z0)))), MARK(length(U52(z0)))) A__U62(tt, length(isNatList(z0))) -> c18(A__LENGTH(a__length(a__isNatList(z0))), MARK(length(isNatList(z0)))) A__U62(tt, length(U61(z0, z1, z2))) -> c18(A__LENGTH(a__length(a__U61(mark(z0), z1, z2))), MARK(length(U61(z0, z1, z2)))) A__U62(tt, length(U62(z0, z1))) -> c18(A__LENGTH(a__length(a__U62(mark(z0), z1))), MARK(length(U62(z0, z1)))) A__U62(tt, length(isNat(z0))) -> c18(A__LENGTH(a__length(a__isNat(z0))), MARK(length(isNat(z0)))) A__U62(tt, length(length(z0))) -> c18(A__LENGTH(a__length(a__length(mark(z0)))), MARK(length(length(z0)))) A__U62(tt, length(cons(z0, z1))) -> c18(A__LENGTH(a__length(cons(mark(z0), z1))), MARK(length(cons(z0, z1)))) A__U62(tt, length(s(z0))) -> c18(A__LENGTH(a__length(s(mark(z0)))), MARK(length(s(z0)))) A__U62(tt, length(x0)) -> c18(MARK(length(x0))) A__U62(tt, length(0)) -> c18(A__LENGTH(a__length(0))) A__U62(tt, length(tt)) -> c18(A__LENGTH(a__length(tt))) A__U62(tt, length(nil)) -> c18(A__LENGTH(a__length(nil))) A__U62(tt, zeros) -> c18(A__LENGTH(cons(0, zeros))) A__ISNATILIST(cons(length(nil), x1)) -> c26(A__U41(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATILIST(cons(length(cons(z0, z1)), x1)) -> c26(A__U41(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(length(x0), x1)) -> c26(A__ISNAT(length(x0))) A__ISNATILIST(cons(s(0), x1)) -> c26(A__U41(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATILIST(cons(s(length(z0)), x1)) -> c26(A__U41(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATILIST(cons(s(s(z0)), x1)) -> c26(A__U41(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(s(x0), x1)) -> c26(A__ISNAT(s(x0))) A__ISNATLIST(cons(length(nil), x1)) -> c29(A__U51(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATLIST(cons(length(cons(z0, z1)), x1)) -> c29(A__U51(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(length(x0), x1)) -> c29(A__ISNAT(length(x0))) A__ISNATLIST(cons(s(0), x1)) -> c29(A__U51(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATLIST(cons(s(length(z0)), x1)) -> c29(A__U51(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATLIST(cons(s(s(z0)), x1)) -> c29(A__U51(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(s(x0), x1)) -> c29(A__ISNAT(s(x0))) A__LENGTH(cons(x0, cons(0, x2))) -> c32(A__U61(a__U51(tt, x2), cons(0, x2), x0), A__ISNATLIST(cons(0, x2))) A__LENGTH(cons(x0, cons(length(z0), x2))) -> c32(A__U61(a__U51(a__U11(a__isNatList(z0)), x2), cons(length(z0), x2), x0), A__ISNATLIST(cons(length(z0), x2))) A__LENGTH(cons(x0, cons(s(z0), x2))) -> c32(A__U61(a__U51(a__U21(a__isNat(z0)), x2), cons(s(z0), x2), x0), A__ISNATLIST(cons(s(z0), x2))) A__LENGTH(cons(x0, cons(z0, x2))) -> c32(A__U61(a__U51(isNat(z0), x2), cons(z0, x2), x0), A__ISNATLIST(cons(z0, x2))) A__LENGTH(cons(x0, cons(x1, z1))) -> c32(A__ISNATLIST(cons(x1, z1))) MARK(U41(U11(zeros), x1)) -> c38(A__U41(a__U11(a__zeros), x1), MARK(U11(zeros))) MARK(U41(U11(U11(z0)), x1)) -> c38(A__U41(a__U11(a__U11(mark(z0))), x1), MARK(U11(U11(z0)))) MARK(U41(U11(U21(z0)), x1)) -> c38(A__U41(a__U11(a__U21(mark(z0))), x1), MARK(U11(U21(z0)))) MARK(U41(U11(U31(z0)), x1)) -> c38(A__U41(a__U11(a__U31(mark(z0))), x1), MARK(U11(U31(z0)))) MARK(U41(U11(U41(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U41(mark(z0), z1)), x1), MARK(U11(U41(z0, z1)))) MARK(U41(U11(U42(z0)), x1)) -> c38(A__U41(a__U11(a__U42(mark(z0))), x1), MARK(U11(U42(z0)))) MARK(U41(U11(isNatIList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatIList(z0)), x1), MARK(U11(isNatIList(z0)))) MARK(U41(U11(U51(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U51(mark(z0), z1)), x1), MARK(U11(U51(z0, z1)))) MARK(U41(U11(U52(z0)), x1)) -> c38(A__U41(a__U11(a__U52(mark(z0))), x1), MARK(U11(U52(z0)))) MARK(U41(U11(isNatList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatList(z0)), x1), MARK(U11(isNatList(z0)))) MARK(U41(U11(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U11(a__U61(mark(z0), z1, z2)), x1), MARK(U11(U61(z0, z1, z2)))) MARK(U41(U11(U62(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U62(mark(z0), z1)), x1), MARK(U11(U62(z0, z1)))) MARK(U41(U11(isNat(z0)), x1)) -> c38(A__U41(a__U11(a__isNat(z0)), x1), MARK(U11(isNat(z0)))) MARK(U41(U11(length(z0)), x1)) -> c38(A__U41(a__U11(a__length(mark(z0))), x1), MARK(U11(length(z0)))) MARK(U41(U11(cons(z0, z1)), x1)) -> c38(A__U41(a__U11(cons(mark(z0), z1)), x1), MARK(U11(cons(z0, z1)))) MARK(U41(U11(0), x1)) -> c38(A__U41(a__U11(0), x1), MARK(U11(0))) MARK(U41(U11(tt), x1)) -> c38(A__U41(a__U11(tt), x1), MARK(U11(tt))) MARK(U41(U11(s(z0)), x1)) -> c38(A__U41(a__U11(s(mark(z0))), x1), MARK(U11(s(z0)))) MARK(U41(U11(nil), x1)) -> c38(A__U41(a__U11(nil), x1), MARK(U11(nil))) MARK(U41(U11(x0), x1)) -> c38(MARK(U11(x0))) MARK(U41(U21(zeros), x1)) -> c38(A__U41(a__U21(a__zeros), x1), MARK(U21(zeros))) MARK(U41(U21(U11(z0)), x1)) -> c38(A__U41(a__U21(a__U11(mark(z0))), x1), MARK(U21(U11(z0)))) MARK(U41(U21(U21(z0)), x1)) -> c38(A__U41(a__U21(a__U21(mark(z0))), x1), MARK(U21(U21(z0)))) MARK(U41(U21(U31(z0)), x1)) -> c38(A__U41(a__U21(a__U31(mark(z0))), x1), MARK(U21(U31(z0)))) MARK(U41(U21(U41(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U41(mark(z0), z1)), x1), MARK(U21(U41(z0, z1)))) MARK(U41(U21(U42(z0)), x1)) -> c38(A__U41(a__U21(a__U42(mark(z0))), x1), MARK(U21(U42(z0)))) MARK(U41(U21(isNatIList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatIList(z0)), x1), MARK(U21(isNatIList(z0)))) MARK(U41(U21(U51(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U51(mark(z0), z1)), x1), MARK(U21(U51(z0, z1)))) MARK(U41(U21(U52(z0)), x1)) -> c38(A__U41(a__U21(a__U52(mark(z0))), x1), MARK(U21(U52(z0)))) MARK(U41(U21(isNatList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatList(z0)), x1), MARK(U21(isNatList(z0)))) MARK(U41(U21(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U21(a__U61(mark(z0), z1, z2)), x1), MARK(U21(U61(z0, z1, z2)))) MARK(U41(U21(U62(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U62(mark(z0), z1)), x1), MARK(U21(U62(z0, z1)))) MARK(U41(U21(isNat(z0)), x1)) -> c38(A__U41(a__U21(a__isNat(z0)), x1), MARK(U21(isNat(z0)))) MARK(U41(U21(length(z0)), x1)) -> c38(A__U41(a__U21(a__length(mark(z0))), x1), MARK(U21(length(z0)))) MARK(U41(U21(cons(z0, z1)), x1)) -> c38(A__U41(a__U21(cons(mark(z0), z1)), x1), MARK(U21(cons(z0, z1)))) MARK(U41(U21(0), x1)) -> c38(A__U41(a__U21(0), x1), MARK(U21(0))) MARK(U41(U21(tt), x1)) -> c38(A__U41(a__U21(tt), x1), MARK(U21(tt))) MARK(U41(U21(s(z0)), x1)) -> c38(A__U41(a__U21(s(mark(z0))), x1), MARK(U21(s(z0)))) MARK(U41(U21(nil), x1)) -> c38(A__U41(a__U21(nil), x1), MARK(U21(nil))) MARK(U41(U21(x0), x1)) -> c38(MARK(U21(x0))) MARK(U41(U31(zeros), x1)) -> c38(A__U41(a__U31(a__zeros), x1), MARK(U31(zeros))) MARK(U41(U31(U11(z0)), x1)) -> c38(A__U41(a__U31(a__U11(mark(z0))), x1), MARK(U31(U11(z0)))) MARK(U41(U31(U21(z0)), x1)) -> c38(A__U41(a__U31(a__U21(mark(z0))), x1), MARK(U31(U21(z0)))) MARK(U41(U31(U31(z0)), x1)) -> c38(A__U41(a__U31(a__U31(mark(z0))), x1), MARK(U31(U31(z0)))) MARK(U41(U31(U41(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U41(mark(z0), z1)), x1), MARK(U31(U41(z0, z1)))) MARK(U41(U31(U42(z0)), x1)) -> c38(A__U41(a__U31(a__U42(mark(z0))), x1), MARK(U31(U42(z0)))) MARK(U41(U31(isNatIList(z0)), x1)) -> c38(A__U41(a__U31(a__isNatIList(z0)), x1), MARK(U31(isNatIList(z0)))) MARK(U41(U31(U51(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U51(mark(z0), z1)), x1), MARK(U31(U51(z0, z1)))) MARK(U41(U31(U52(z0)), x1)) -> c38(A__U41(a__U31(a__U52(mark(z0))), x1), MARK(U31(U52(z0)))) MARK(U41(U31(isNatList(z0)), x1)) -> c38(A__U41(a__U31(a__isNatList(z0)), x1), MARK(U31(isNatList(z0)))) MARK(U41(U31(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U31(a__U61(mark(z0), z1, z2)), x1), MARK(U31(U61(z0, z1, z2)))) MARK(U41(U31(U62(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U62(mark(z0), z1)), x1), MARK(U31(U62(z0, z1)))) MARK(U41(U31(isNat(z0)), x1)) -> c38(A__U41(a__U31(a__isNat(z0)), x1), MARK(U31(isNat(z0)))) MARK(U41(U31(length(z0)), x1)) -> c38(A__U41(a__U31(a__length(mark(z0))), x1), MARK(U31(length(z0)))) MARK(U41(U31(cons(z0, z1)), x1)) -> c38(A__U41(a__U31(cons(mark(z0), z1)), x1), MARK(U31(cons(z0, z1)))) MARK(U41(U31(0), x1)) -> c38(A__U41(a__U31(0), x1), MARK(U31(0))) MARK(U41(U31(tt), x1)) -> c38(A__U41(a__U31(tt), x1), MARK(U31(tt))) MARK(U41(U31(s(z0)), x1)) -> c38(A__U41(a__U31(s(mark(z0))), x1), MARK(U31(s(z0)))) MARK(U41(U31(nil), x1)) -> c38(A__U41(a__U31(nil), x1), MARK(U31(nil))) MARK(U41(U31(x0), x1)) -> c38(MARK(U31(x0))) MARK(U41(U41(U11(z0), x1), x2)) -> c38(A__U41(a__U41(a__U11(mark(z0)), x1), x2), MARK(U41(U11(z0), x1))) MARK(U41(U41(U21(z0), x1), x2)) -> c38(A__U41(a__U41(a__U21(mark(z0)), x1), x2), MARK(U41(U21(z0), x1))) MARK(U41(U41(U31(z0), x1), x2)) -> c38(A__U41(a__U41(a__U31(mark(z0)), x1), x2), MARK(U41(U31(z0), x1))) MARK(U41(U41(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U41(mark(z0), z1), x1), x2), MARK(U41(U41(z0, z1), x1))) MARK(U41(U41(U42(z0), x1), x2)) -> c38(A__U41(a__U41(a__U42(mark(z0)), x1), x2), MARK(U41(U42(z0), x1))) MARK(U41(U41(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U51(mark(z0), z1), x1), x2), MARK(U41(U51(z0, z1), x1))) MARK(U41(U41(U52(z0), x1), x2)) -> c38(A__U41(a__U41(a__U52(mark(z0)), x1), x2), MARK(U41(U52(z0), x1))) MARK(U41(U41(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U41(a__U61(mark(z0), z1, z2), x1), x2), MARK(U41(U61(z0, z1, z2), x1))) MARK(U41(U41(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U62(mark(z0), z1), x1), x2), MARK(U41(U62(z0, z1), x1))) MARK(U41(U41(length(z0), x1), x2)) -> c38(A__U41(a__U41(a__length(mark(z0)), x1), x2), MARK(U41(length(z0), x1))) MARK(U41(U41(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U41(cons(mark(z0), z1), x1), x2), MARK(U41(cons(z0, z1), x1))) MARK(U41(U41(s(z0), x1), x2)) -> c38(A__U41(a__U41(s(mark(z0)), x1), x2), MARK(U41(s(z0), x1))) MARK(U41(U41(x0, z1), x2)) -> c38(MARK(U41(x0, z1))) MARK(U41(U41(0, x1), x2)) -> c38(A__U41(a__U41(0, x1), x2)) MARK(U41(U41(nil, x1), x2)) -> c38(A__U41(a__U41(nil, x1), x2)) MARK(U41(U41(zeros, x1), x2)) -> c2(A__U41(a__U41(a__zeros, x1), x2)) MARK(U41(U41(zeros, x1), x2)) -> c2(MARK(U41(zeros, x1))) MARK(U41(U41(isNatIList(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNatIList(z0), x1), x2)) MARK(U41(U41(isNatIList(z0), x1), x2)) -> c2(MARK(U41(isNatIList(z0), x1))) MARK(U41(U41(isNatList(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNatList(z0), x1), x2)) MARK(U41(U41(isNatList(z0), x1), x2)) -> c2(MARK(U41(isNatList(z0), x1))) MARK(U41(U41(isNat(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNat(z0), x1), x2)) MARK(U41(U41(isNat(z0), x1), x2)) -> c2(MARK(U41(isNat(z0), x1))) MARK(U41(U41(tt, x1), x2)) -> c2(A__U41(a__U41(tt, x1), x2)) MARK(U41(U41(tt, x1), x2)) -> c2(MARK(U41(tt, x1))) MARK(U41(U42(zeros), x1)) -> c38(A__U41(a__U42(a__zeros), x1), MARK(U42(zeros))) MARK(U41(U42(U11(z0)), x1)) -> c38(A__U41(a__U42(a__U11(mark(z0))), x1), MARK(U42(U11(z0)))) MARK(U41(U42(U21(z0)), x1)) -> c38(A__U41(a__U42(a__U21(mark(z0))), x1), MARK(U42(U21(z0)))) MARK(U41(U42(U31(z0)), x1)) -> c38(A__U41(a__U42(a__U31(mark(z0))), x1), MARK(U42(U31(z0)))) MARK(U41(U42(U41(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U41(mark(z0), z1)), x1), MARK(U42(U41(z0, z1)))) MARK(U41(U42(U42(z0)), x1)) -> c38(A__U41(a__U42(a__U42(mark(z0))), x1), MARK(U42(U42(z0)))) MARK(U41(U42(isNatIList(z0)), x1)) -> c38(A__U41(a__U42(a__isNatIList(z0)), x1), MARK(U42(isNatIList(z0)))) MARK(U41(U42(U51(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U51(mark(z0), z1)), x1), MARK(U42(U51(z0, z1)))) MARK(U41(U42(U52(z0)), x1)) -> c38(A__U41(a__U42(a__U52(mark(z0))), x1), MARK(U42(U52(z0)))) MARK(U41(U42(isNatList(z0)), x1)) -> c38(A__U41(a__U42(a__isNatList(z0)), x1), MARK(U42(isNatList(z0)))) MARK(U41(U42(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U42(a__U61(mark(z0), z1, z2)), x1), MARK(U42(U61(z0, z1, z2)))) MARK(U41(U42(U62(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U62(mark(z0), z1)), x1), MARK(U42(U62(z0, z1)))) MARK(U41(U42(isNat(z0)), x1)) -> c38(A__U41(a__U42(a__isNat(z0)), x1), MARK(U42(isNat(z0)))) MARK(U41(U42(length(z0)), x1)) -> c38(A__U41(a__U42(a__length(mark(z0))), x1), MARK(U42(length(z0)))) MARK(U41(U42(cons(z0, z1)), x1)) -> c38(A__U41(a__U42(cons(mark(z0), z1)), x1), MARK(U42(cons(z0, z1)))) MARK(U41(U42(0), x1)) -> c38(A__U41(a__U42(0), x1), MARK(U42(0))) MARK(U41(U42(tt), x1)) -> c38(A__U41(a__U42(tt), x1), MARK(U42(tt))) MARK(U41(U42(s(z0)), x1)) -> c38(A__U41(a__U42(s(mark(z0))), x1), MARK(U42(s(z0)))) MARK(U41(U42(nil), x1)) -> c38(A__U41(a__U42(nil), x1), MARK(U42(nil))) MARK(U41(U42(x0), x1)) -> c38(MARK(U42(x0))) MARK(U41(U51(U11(z0), x1), x2)) -> c38(A__U41(a__U51(a__U11(mark(z0)), x1), x2), MARK(U51(U11(z0), x1))) MARK(U41(U51(U21(z0), x1), x2)) -> c38(A__U41(a__U51(a__U21(mark(z0)), x1), x2), MARK(U51(U21(z0), x1))) MARK(U41(U51(U31(z0), x1), x2)) -> c38(A__U41(a__U51(a__U31(mark(z0)), x1), x2), MARK(U51(U31(z0), x1))) MARK(U41(U51(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U41(mark(z0), z1), x1), x2), MARK(U51(U41(z0, z1), x1))) MARK(U41(U51(U42(z0), x1), x2)) -> c38(A__U41(a__U51(a__U42(mark(z0)), x1), x2), MARK(U51(U42(z0), x1))) MARK(U41(U51(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U51(mark(z0), z1), x1), x2), MARK(U51(U51(z0, z1), x1))) MARK(U41(U51(U52(z0), x1), x2)) -> c38(A__U41(a__U51(a__U52(mark(z0)), x1), x2), MARK(U51(U52(z0), x1))) MARK(U41(U51(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U51(a__U61(mark(z0), z1, z2), x1), x2), MARK(U51(U61(z0, z1, z2), x1))) MARK(U41(U51(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U62(mark(z0), z1), x1), x2), MARK(U51(U62(z0, z1), x1))) MARK(U41(U51(length(z0), x1), x2)) -> c38(A__U41(a__U51(a__length(mark(z0)), x1), x2), MARK(U51(length(z0), x1))) MARK(U41(U51(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U51(cons(mark(z0), z1), x1), x2), MARK(U51(cons(z0, z1), x1))) MARK(U41(U51(s(z0), x1), x2)) -> c38(A__U41(a__U51(s(mark(z0)), x1), x2), MARK(U51(s(z0), x1))) MARK(U41(U51(x0, z1), x2)) -> c38(MARK(U51(x0, z1))) MARK(U41(U51(0, x1), x2)) -> c38(A__U41(a__U51(0, x1), x2)) MARK(U41(U51(nil, x1), x2)) -> c38(A__U41(a__U51(nil, x1), x2)) MARK(U41(U51(zeros, x1), x2)) -> c3(A__U41(a__U51(a__zeros, x1), x2)) MARK(U41(U51(zeros, x1), x2)) -> c3(MARK(U51(zeros, x1))) MARK(U41(U51(isNatIList(z0), x1), x2)) -> c3(A__U41(a__U51(a__isNatIList(z0), x1), x2)) MARK(U41(U51(isNatIList(z0), x1), x2)) -> c3(MARK(U51(isNatIList(z0), x1))) MARK(U41(U51(isNatList(z0), x1), x2)) -> c3(A__U41(a__U51(a__isNatList(z0), x1), x2)) MARK(U41(U51(isNatList(z0), x1), x2)) -> c3(MARK(U51(isNatList(z0), x1))) MARK(U41(U51(isNat(z0), x1), x2)) -> c3(A__U41(a__U51(a__isNat(z0), x1), x2)) MARK(U41(U51(isNat(z0), x1), x2)) -> c3(MARK(U51(isNat(z0), x1))) MARK(U41(U51(tt, x1), x2)) -> c3(A__U41(a__U51(tt, x1), x2)) MARK(U41(U51(tt, x1), x2)) -> c3(MARK(U51(tt, x1))) MARK(U41(U52(zeros), x1)) -> c38(A__U41(a__U52(a__zeros), x1), MARK(U52(zeros))) MARK(U41(U52(U11(z0)), x1)) -> c38(A__U41(a__U52(a__U11(mark(z0))), x1), MARK(U52(U11(z0)))) MARK(U41(U52(U21(z0)), x1)) -> c38(A__U41(a__U52(a__U21(mark(z0))), x1), MARK(U52(U21(z0)))) MARK(U41(U52(U31(z0)), x1)) -> c38(A__U41(a__U52(a__U31(mark(z0))), x1), MARK(U52(U31(z0)))) MARK(U41(U52(U41(z0, z1)), x1)) -> c38(A__U41(a__U52(a__U41(mark(z0), z1)), x1), MARK(U52(U41(z0, z1)))) MARK(U41(U52(U42(z0)), x1)) -> c38(A__U41(a__U52(a__U42(mark(z0))), x1), MARK(U52(U42(z0)))) MARK(U41(U52(isNatIList(z0)), x1)) -> c38(A__U41(a__U52(a__isNatIList(z0)), x1), MARK(U52(isNatIList(z0)))) MARK(U41(U52(U51(z0, z1)), x1)) -> c38(A__U41(a__U52(a__U51(mark(z0), z1)), x1), MARK(U52(U51(z0, z1)))) MARK(U41(U52(U52(z0)), x1)) -> c38(A__U41(a__U52(a__U52(mark(z0))), x1), MARK(U52(U52(z0)))) MARK(U41(U52(isNatList(z0)), x1)) -> c38(A__U41(a__U52(a__isNatList(z0)), x1), MARK(U52(isNatList(z0)))) MARK(U41(U52(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U52(a__U61(mark(z0), z1, z2)), x1), MARK(U52(U61(z0, z1, z2)))) MARK(U41(U52(U62(z0, z1)), x1)) -> c38(A__U41(a__U52(a__U62(mark(z0), z1)), x1), MARK(U52(U62(z0, z1)))) MARK(U41(U52(isNat(z0)), x1)) -> c38(A__U41(a__U52(a__isNat(z0)), x1), MARK(U52(isNat(z0)))) MARK(U41(U52(length(z0)), x1)) -> c38(A__U41(a__U52(a__length(mark(z0))), x1), MARK(U52(length(z0)))) MARK(U41(U52(cons(z0, z1)), x1)) -> c38(A__U41(a__U52(cons(mark(z0), z1)), x1), MARK(U52(cons(z0, z1)))) MARK(U41(U52(0), x1)) -> c38(A__U41(a__U52(0), x1), MARK(U52(0))) MARK(U41(U52(tt), x1)) -> c38(A__U41(a__U52(tt), x1), MARK(U52(tt))) MARK(U41(U52(s(z0)), x1)) -> c38(A__U41(a__U52(s(mark(z0))), x1), MARK(U52(s(z0)))) MARK(U41(U52(nil), x1)) -> c38(A__U41(a__U52(nil), x1), MARK(U52(nil))) MARK(U41(U52(x0), x1)) -> c38(MARK(U52(x0))) MARK(U41(U61(zeros, x1, x2), x3)) -> c38(A__U41(a__U61(a__zeros, x1, x2), x3), MARK(U61(zeros, x1, x2))) MARK(U41(U61(U11(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U11(mark(z0)), x1, x2), x3), MARK(U61(U11(z0), x1, x2))) MARK(U41(U61(U21(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U21(mark(z0)), x1, x2), x3), MARK(U61(U21(z0), x1, x2))) MARK(U41(U61(U31(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U31(mark(z0)), x1, x2), x3), MARK(U61(U31(z0), x1, x2))) MARK(U41(U61(U41(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(a__U41(mark(z0), z1), x1, x2), x3), MARK(U61(U41(z0, z1), x1, x2))) MARK(U41(U61(U42(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U42(mark(z0)), x1, x2), x3), MARK(U61(U42(z0), x1, x2))) MARK(U41(U61(isNatIList(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__isNatIList(z0), x1, x2), x3), MARK(U61(isNatIList(z0), x1, x2))) MARK(U41(U61(U51(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(a__U51(mark(z0), z1), x1, x2), x3), MARK(U61(U51(z0, z1), x1, x2))) MARK(U41(U61(U52(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U52(mark(z0)), x1, x2), x3), MARK(U61(U52(z0), x1, x2))) MARK(U41(U61(isNatList(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__isNatList(z0), x1, x2), x3), MARK(U61(isNatList(z0), x1, x2))) MARK(U41(U61(U61(z0, z1, z2), x1, x2), x3)) -> c38(A__U41(a__U61(a__U61(mark(z0), z1, z2), x1, x2), x3), MARK(U61(U61(z0, z1, z2), x1, x2))) MARK(U41(U61(U62(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(a__U62(mark(z0), z1), x1, x2), x3), MARK(U61(U62(z0, z1), x1, x2))) MARK(U41(U61(isNat(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__isNat(z0), x1, x2), x3), MARK(U61(isNat(z0), x1, x2))) MARK(U41(U61(length(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__length(mark(z0)), x1, x2), x3), MARK(U61(length(z0), x1, x2))) MARK(U41(U61(cons(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(cons(mark(z0), z1), x1, x2), x3), MARK(U61(cons(z0, z1), x1, x2))) MARK(U41(U61(tt, x1, x2), x3)) -> c38(A__U41(a__U61(tt, x1, x2), x3), MARK(U61(tt, x1, x2))) MARK(U41(U61(s(z0), x1, x2), x3)) -> c38(A__U41(a__U61(s(mark(z0)), x1, x2), x3), MARK(U61(s(z0), x1, x2))) MARK(U41(U61(x0, z1, z2), x3)) -> c38(MARK(U61(x0, z1, z2))) MARK(U41(U61(0, x1, x2), x3)) -> c38(A__U41(a__U61(0, x1, x2), x3)) MARK(U41(U61(nil, x1, x2), x3)) -> c38(A__U41(a__U61(nil, x1, x2), x3)) MARK(U41(U62(zeros, x1), x2)) -> c38(A__U41(a__U62(a__zeros, x1), x2), MARK(U62(zeros, x1))) MARK(U41(U62(U11(z0), x1), x2)) -> c38(A__U41(a__U62(a__U11(mark(z0)), x1), x2), MARK(U62(U11(z0), x1))) MARK(U41(U62(U21(z0), x1), x2)) -> c38(A__U41(a__U62(a__U21(mark(z0)), x1), x2), MARK(U62(U21(z0), x1))) MARK(U41(U62(U31(z0), x1), x2)) -> c38(A__U41(a__U62(a__U31(mark(z0)), x1), x2), MARK(U62(U31(z0), x1))) MARK(U41(U62(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U62(a__U41(mark(z0), z1), x1), x2), MARK(U62(U41(z0, z1), x1))) MARK(U41(U62(U42(z0), x1), x2)) -> c38(A__U41(a__U62(a__U42(mark(z0)), x1), x2), MARK(U62(U42(z0), x1))) MARK(U41(U62(isNatIList(z0), x1), x2)) -> c38(A__U41(a__U62(a__isNatIList(z0), x1), x2), MARK(U62(isNatIList(z0), x1))) MARK(U41(U62(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U62(a__U51(mark(z0), z1), x1), x2), MARK(U62(U51(z0, z1), x1))) MARK(U41(U62(U52(z0), x1), x2)) -> c38(A__U41(a__U62(a__U52(mark(z0)), x1), x2), MARK(U62(U52(z0), x1))) MARK(U41(U62(isNatList(z0), x1), x2)) -> c38(A__U41(a__U62(a__isNatList(z0), x1), x2), MARK(U62(isNatList(z0), x1))) MARK(U41(U62(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U62(a__U61(mark(z0), z1, z2), x1), x2), MARK(U62(U61(z0, z1, z2), x1))) MARK(U41(U62(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U62(a__U62(mark(z0), z1), x1), x2), MARK(U62(U62(z0, z1), x1))) MARK(U41(U62(isNat(z0), x1), x2)) -> c38(A__U41(a__U62(a__isNat(z0), x1), x2), MARK(U62(isNat(z0), x1))) MARK(U41(U62(length(z0), x1), x2)) -> c38(A__U41(a__U62(a__length(mark(z0)), x1), x2), MARK(U62(length(z0), x1))) MARK(U41(U62(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U62(cons(mark(z0), z1), x1), x2), MARK(U62(cons(z0, z1), x1))) MARK(U41(U62(tt, x1), x2)) -> c38(A__U41(a__U62(tt, x1), x2), MARK(U62(tt, x1))) MARK(U41(U62(s(z0), x1), x2)) -> c38(A__U41(a__U62(s(mark(z0)), x1), x2), MARK(U62(s(z0), x1))) MARK(U41(U62(x0, z1), x2)) -> c38(MARK(U62(x0, z1))) MARK(U41(U62(0, x1), x2)) -> c38(A__U41(a__U62(0, x1), x2)) MARK(U41(U62(nil, x1), x2)) -> c38(A__U41(a__U62(nil, x1), x2)) MARK(U41(length(zeros), x1)) -> c38(A__U41(a__length(a__zeros), x1), MARK(length(zeros))) MARK(U41(length(U11(z0)), x1)) -> c38(A__U41(a__length(a__U11(mark(z0))), x1), MARK(length(U11(z0)))) MARK(U41(length(U21(z0)), x1)) -> c38(A__U41(a__length(a__U21(mark(z0))), x1), MARK(length(U21(z0)))) MARK(U41(length(U31(z0)), x1)) -> c38(A__U41(a__length(a__U31(mark(z0))), x1), MARK(length(U31(z0)))) MARK(U41(length(U41(z0, z1)), x1)) -> c38(A__U41(a__length(a__U41(mark(z0), z1)), x1), MARK(length(U41(z0, z1)))) MARK(U41(length(U42(z0)), x1)) -> c38(A__U41(a__length(a__U42(mark(z0))), x1), MARK(length(U42(z0)))) MARK(U41(length(isNatIList(z0)), x1)) -> c38(A__U41(a__length(a__isNatIList(z0)), x1), MARK(length(isNatIList(z0)))) MARK(U41(length(U51(z0, z1)), x1)) -> c38(A__U41(a__length(a__U51(mark(z0), z1)), x1), MARK(length(U51(z0, z1)))) MARK(U41(length(U52(z0)), x1)) -> c38(A__U41(a__length(a__U52(mark(z0))), x1), MARK(length(U52(z0)))) MARK(U41(length(isNatList(z0)), x1)) -> c38(A__U41(a__length(a__isNatList(z0)), x1), MARK(length(isNatList(z0)))) MARK(U41(length(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__length(a__U61(mark(z0), z1, z2)), x1), MARK(length(U61(z0, z1, z2)))) MARK(U41(length(U62(z0, z1)), x1)) -> c38(A__U41(a__length(a__U62(mark(z0), z1)), x1), MARK(length(U62(z0, z1)))) MARK(U41(length(isNat(z0)), x1)) -> c38(A__U41(a__length(a__isNat(z0)), x1), MARK(length(isNat(z0)))) MARK(U41(length(length(z0)), x1)) -> c38(A__U41(a__length(a__length(mark(z0))), x1), MARK(length(length(z0)))) MARK(U41(length(cons(z0, z1)), x1)) -> c38(A__U41(a__length(cons(mark(z0), z1)), x1), MARK(length(cons(z0, z1)))) MARK(U41(length(s(z0)), x1)) -> c38(A__U41(a__length(s(mark(z0))), x1), MARK(length(s(z0)))) MARK(U41(length(x0), x1)) -> c38(MARK(length(x0))) MARK(U41(length(0), x1)) -> c38(A__U41(a__length(0), x1)) MARK(U41(length(tt), x1)) -> c38(A__U41(a__length(tt), x1)) MARK(U41(length(nil), x1)) -> c38(A__U41(a__length(nil), x1)) K tuples:none Defined Rule Symbols: a__zeros, a__U11_1, a__U21_1, a__U31_1, a__U41_2, a__U42_1, a__U51_2, a__U52_1, a__U61_3, a__U62_2, a__isNat_1, a__isNatIList_1, a__isNatList_1, a__length_1, mark_1 Defined Pair Symbols: MARK_1, A__U41_2, A__U51_2, A__ISNAT_1, A__ISNATILIST_1, A__U61_3, A__U62_2, A__ISNATLIST_1, A__LENGTH_1 Compound Symbols: c40_1, c43_1, c46_1, c48_1, c51_1, c8_1, c12_1, c21_1, c22_1, c24_1, c35_1, c36_1, c37_1, c39_1, c42_1, c16_1, c18_2, c18_1, c26_1, c29_1, c32_1, c38_1, c_1, c41_2, c41_1, c1_1, c44_2, c44_1, c45_2, c45_1, c47_2, c47_1, c16_2, c26_2, c29_2, c32_2, c38_2, c2_1, c3_1 ---------------------------------------- (213) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace MARK(U41(zeros, x1)) -> c38(A__U41(a__zeros, x1)) by MARK(U41(zeros, x0)) -> c38(A__U41(cons(0, zeros), x0)) MARK(U41(zeros, x0)) -> c38(A__U41(zeros, x0)) ---------------------------------------- (214) Obligation: Complexity Dependency Tuples Problem Rules: a__zeros -> cons(0, zeros) a__zeros -> zeros a__U11(tt) -> tt a__U11(z0) -> U11(z0) a__U21(tt) -> tt a__U21(z0) -> U21(z0) a__U31(tt) -> tt a__U31(z0) -> U31(z0) a__U41(tt, z0) -> a__U42(a__isNatIList(z0)) a__U41(z0, z1) -> U41(z0, z1) a__U42(tt) -> tt a__U42(z0) -> U42(z0) a__U51(tt, z0) -> a__U52(a__isNatList(z0)) a__U51(z0, z1) -> U51(z0, z1) a__U52(tt) -> tt a__U52(z0) -> U52(z0) a__U61(tt, z0, z1) -> a__U62(a__isNat(z1), z0) a__U61(z0, z1, z2) -> U61(z0, z1, z2) a__U62(tt, z0) -> s(a__length(mark(z0))) a__U62(z0, z1) -> U62(z0, z1) a__isNat(0) -> tt a__isNat(length(z0)) -> a__U11(a__isNatList(z0)) a__isNat(s(z0)) -> a__U21(a__isNat(z0)) a__isNat(z0) -> isNat(z0) a__isNatIList(z0) -> a__U31(a__isNatList(z0)) a__isNatIList(zeros) -> tt a__isNatIList(cons(z0, z1)) -> a__U41(a__isNat(z0), z1) a__isNatIList(z0) -> isNatIList(z0) a__isNatList(nil) -> tt a__isNatList(cons(z0, z1)) -> a__U51(a__isNat(z0), z1) a__isNatList(z0) -> isNatList(z0) a__length(nil) -> 0 a__length(cons(z0, z1)) -> a__U61(a__isNatList(z1), z1, z0) a__length(z0) -> length(z0) mark(zeros) -> a__zeros mark(U11(z0)) -> a__U11(mark(z0)) mark(U21(z0)) -> a__U21(mark(z0)) mark(U31(z0)) -> a__U31(mark(z0)) mark(U41(z0, z1)) -> a__U41(mark(z0), z1) mark(U42(z0)) -> a__U42(mark(z0)) mark(isNatIList(z0)) -> a__isNatIList(z0) mark(U51(z0, z1)) -> a__U51(mark(z0), z1) mark(U52(z0)) -> a__U52(mark(z0)) mark(isNatList(z0)) -> a__isNatList(z0) mark(U61(z0, z1, z2)) -> a__U61(mark(z0), z1, z2) mark(U62(z0, z1)) -> a__U62(mark(z0), z1) mark(isNat(z0)) -> a__isNat(z0) mark(length(z0)) -> a__length(mark(z0)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(0) -> 0 mark(tt) -> tt mark(s(z0)) -> s(mark(z0)) mark(nil) -> nil Tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) A__U62(tt, isNatList(cons(z0, z1))) -> c18(A__LENGTH(a__U51(a__isNat(z0), z1)), MARK(isNatList(cons(z0, z1)))) A__U62(tt, isNatList(nil)) -> c18(MARK(isNatList(nil))) A__U62(tt, isNatList(z0)) -> c18(MARK(isNatList(z0))) A__U62(tt, U61(zeros, x1, x2)) -> c18(A__LENGTH(a__U61(a__zeros, x1, x2)), MARK(U61(zeros, x1, x2))) A__U62(tt, U61(U11(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U11(mark(z0)), x1, x2)), MARK(U61(U11(z0), x1, x2))) A__U62(tt, U61(U21(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U21(mark(z0)), x1, x2)), MARK(U61(U21(z0), x1, x2))) A__U62(tt, U61(U31(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U31(mark(z0)), x1, x2)), MARK(U61(U31(z0), x1, x2))) A__U62(tt, U61(U41(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U41(mark(z0), z1), x1, x2)), MARK(U61(U41(z0, z1), x1, x2))) A__U62(tt, U61(U42(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U42(mark(z0)), x1, x2)), MARK(U61(U42(z0), x1, x2))) A__U62(tt, U61(isNatIList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatIList(z0), x1, x2)), MARK(U61(isNatIList(z0), x1, x2))) A__U62(tt, U61(U51(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U51(mark(z0), z1), x1, x2)), MARK(U61(U51(z0, z1), x1, x2))) A__U62(tt, U61(U52(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U52(mark(z0)), x1, x2)), MARK(U61(U52(z0), x1, x2))) A__U62(tt, U61(isNatList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatList(z0), x1, x2)), MARK(U61(isNatList(z0), x1, x2))) A__U62(tt, U61(U61(z0, z1, z2), x1, x2)) -> c18(A__LENGTH(a__U61(a__U61(mark(z0), z1, z2), x1, x2)), MARK(U61(U61(z0, z1, z2), x1, x2))) A__U62(tt, U61(U62(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U62(mark(z0), z1), x1, x2)), MARK(U61(U62(z0, z1), x1, x2))) A__U62(tt, U61(isNat(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNat(z0), x1, x2)), MARK(U61(isNat(z0), x1, x2))) A__U62(tt, U61(length(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__length(mark(z0)), x1, x2)), MARK(U61(length(z0), x1, x2))) A__U62(tt, U61(cons(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(cons(mark(z0), z1), x1, x2)), MARK(U61(cons(z0, z1), x1, x2))) A__U62(tt, U61(tt, x1, x2)) -> c18(A__LENGTH(a__U61(tt, x1, x2)), MARK(U61(tt, x1, x2))) A__U62(tt, U61(s(z0), x1, x2)) -> c18(A__LENGTH(a__U61(s(mark(z0)), x1, x2)), MARK(U61(s(z0), x1, x2))) A__U62(tt, U61(x0, z1, z2)) -> c18(MARK(U61(x0, z1, z2))) A__U62(tt, U61(0, x1, x2)) -> c18(A__LENGTH(a__U61(0, x1, x2))) A__U62(tt, U61(nil, x1, x2)) -> c18(A__LENGTH(a__U61(nil, x1, x2))) A__U62(tt, U62(zeros, x1)) -> c18(A__LENGTH(a__U62(a__zeros, x1)), MARK(U62(zeros, x1))) A__U62(tt, U62(U11(z0), x1)) -> c18(A__LENGTH(a__U62(a__U11(mark(z0)), x1)), MARK(U62(U11(z0), x1))) A__U62(tt, U62(U21(z0), x1)) -> c18(A__LENGTH(a__U62(a__U21(mark(z0)), x1)), MARK(U62(U21(z0), x1))) A__U62(tt, U62(U31(z0), x1)) -> c18(A__LENGTH(a__U62(a__U31(mark(z0)), x1)), MARK(U62(U31(z0), x1))) A__U62(tt, U62(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U41(mark(z0), z1), x1)), MARK(U62(U41(z0, z1), x1))) A__U62(tt, U62(U42(z0), x1)) -> c18(A__LENGTH(a__U62(a__U42(mark(z0)), x1)), MARK(U62(U42(z0), x1))) A__U62(tt, U62(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatIList(z0), x1)), MARK(U62(isNatIList(z0), x1))) A__U62(tt, U62(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U51(mark(z0), z1), x1)), MARK(U62(U51(z0, z1), x1))) A__U62(tt, U62(U52(z0), x1)) -> c18(A__LENGTH(a__U62(a__U52(mark(z0)), x1)), MARK(U62(U52(z0), x1))) A__U62(tt, U62(isNatList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatList(z0), x1)), MARK(U62(isNatList(z0), x1))) A__U62(tt, U62(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U62(a__U61(mark(z0), z1, z2), x1)), MARK(U62(U61(z0, z1, z2), x1))) A__U62(tt, U62(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U62(mark(z0), z1), x1)), MARK(U62(U62(z0, z1), x1))) A__U62(tt, U62(isNat(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNat(z0), x1)), MARK(U62(isNat(z0), x1))) A__U62(tt, U62(length(z0), x1)) -> c18(A__LENGTH(a__U62(a__length(mark(z0)), x1)), MARK(U62(length(z0), x1))) A__U62(tt, U62(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U62(cons(mark(z0), z1), x1)), MARK(U62(cons(z0, z1), x1))) A__U62(tt, U62(tt, x1)) -> c18(A__LENGTH(a__U62(tt, x1)), MARK(U62(tt, x1))) A__U62(tt, U62(s(z0), x1)) -> c18(A__LENGTH(a__U62(s(mark(z0)), x1)), MARK(U62(s(z0), x1))) A__U62(tt, U62(x0, z1)) -> c18(MARK(U62(x0, z1))) A__U62(tt, U62(0, x1)) -> c18(A__LENGTH(a__U62(0, x1))) A__U62(tt, U62(nil, x1)) -> c18(A__LENGTH(a__U62(nil, x1))) A__U62(tt, isNat(length(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(isNat(length(z0)))) A__U62(tt, isNat(s(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(isNat(s(z0)))) A__U62(tt, isNat(0)) -> c18(MARK(isNat(0))) A__U62(tt, isNat(z0)) -> c18(MARK(isNat(z0))) A__U62(tt, length(zeros)) -> c18(A__LENGTH(a__length(a__zeros)), MARK(length(zeros))) A__U62(tt, length(U11(z0))) -> c18(A__LENGTH(a__length(a__U11(mark(z0)))), MARK(length(U11(z0)))) A__U62(tt, length(U21(z0))) -> c18(A__LENGTH(a__length(a__U21(mark(z0)))), MARK(length(U21(z0)))) A__U62(tt, length(U31(z0))) -> c18(A__LENGTH(a__length(a__U31(mark(z0)))), MARK(length(U31(z0)))) A__U62(tt, length(U41(z0, z1))) -> c18(A__LENGTH(a__length(a__U41(mark(z0), z1))), MARK(length(U41(z0, z1)))) A__U62(tt, length(U42(z0))) -> c18(A__LENGTH(a__length(a__U42(mark(z0)))), MARK(length(U42(z0)))) A__U62(tt, length(isNatIList(z0))) -> c18(A__LENGTH(a__length(a__isNatIList(z0))), MARK(length(isNatIList(z0)))) A__U62(tt, length(U51(z0, z1))) -> c18(A__LENGTH(a__length(a__U51(mark(z0), z1))), MARK(length(U51(z0, z1)))) A__U62(tt, length(U52(z0))) -> c18(A__LENGTH(a__length(a__U52(mark(z0)))), MARK(length(U52(z0)))) A__U62(tt, length(isNatList(z0))) -> c18(A__LENGTH(a__length(a__isNatList(z0))), MARK(length(isNatList(z0)))) A__U62(tt, length(U61(z0, z1, z2))) -> c18(A__LENGTH(a__length(a__U61(mark(z0), z1, z2))), MARK(length(U61(z0, z1, z2)))) A__U62(tt, length(U62(z0, z1))) -> c18(A__LENGTH(a__length(a__U62(mark(z0), z1))), MARK(length(U62(z0, z1)))) A__U62(tt, length(isNat(z0))) -> c18(A__LENGTH(a__length(a__isNat(z0))), MARK(length(isNat(z0)))) A__U62(tt, length(length(z0))) -> c18(A__LENGTH(a__length(a__length(mark(z0)))), MARK(length(length(z0)))) A__U62(tt, length(cons(z0, z1))) -> c18(A__LENGTH(a__length(cons(mark(z0), z1))), MARK(length(cons(z0, z1)))) A__U62(tt, length(s(z0))) -> c18(A__LENGTH(a__length(s(mark(z0)))), MARK(length(s(z0)))) A__U62(tt, length(x0)) -> c18(MARK(length(x0))) A__U62(tt, length(0)) -> c18(A__LENGTH(a__length(0))) A__U62(tt, length(tt)) -> c18(A__LENGTH(a__length(tt))) A__U62(tt, length(nil)) -> c18(A__LENGTH(a__length(nil))) A__U62(tt, zeros) -> c18(A__LENGTH(cons(0, zeros))) A__ISNATILIST(cons(length(nil), x1)) -> c26(A__U41(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATILIST(cons(length(cons(z0, z1)), x1)) -> c26(A__U41(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(length(x0), x1)) -> c26(A__ISNAT(length(x0))) A__ISNATILIST(cons(s(0), x1)) -> c26(A__U41(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATILIST(cons(s(length(z0)), x1)) -> c26(A__U41(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATILIST(cons(s(s(z0)), x1)) -> c26(A__U41(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(s(x0), x1)) -> c26(A__ISNAT(s(x0))) A__ISNATLIST(cons(length(nil), x1)) -> c29(A__U51(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATLIST(cons(length(cons(z0, z1)), x1)) -> c29(A__U51(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(length(x0), x1)) -> c29(A__ISNAT(length(x0))) A__ISNATLIST(cons(s(0), x1)) -> c29(A__U51(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATLIST(cons(s(length(z0)), x1)) -> c29(A__U51(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATLIST(cons(s(s(z0)), x1)) -> c29(A__U51(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(s(x0), x1)) -> c29(A__ISNAT(s(x0))) A__LENGTH(cons(x0, cons(0, x2))) -> c32(A__U61(a__U51(tt, x2), cons(0, x2), x0), A__ISNATLIST(cons(0, x2))) A__LENGTH(cons(x0, cons(length(z0), x2))) -> c32(A__U61(a__U51(a__U11(a__isNatList(z0)), x2), cons(length(z0), x2), x0), A__ISNATLIST(cons(length(z0), x2))) A__LENGTH(cons(x0, cons(s(z0), x2))) -> c32(A__U61(a__U51(a__U21(a__isNat(z0)), x2), cons(s(z0), x2), x0), A__ISNATLIST(cons(s(z0), x2))) A__LENGTH(cons(x0, cons(z0, x2))) -> c32(A__U61(a__U51(isNat(z0), x2), cons(z0, x2), x0), A__ISNATLIST(cons(z0, x2))) A__LENGTH(cons(x0, cons(x1, z1))) -> c32(A__ISNATLIST(cons(x1, z1))) MARK(U41(U11(zeros), x1)) -> c38(A__U41(a__U11(a__zeros), x1), MARK(U11(zeros))) MARK(U41(U11(U11(z0)), x1)) -> c38(A__U41(a__U11(a__U11(mark(z0))), x1), MARK(U11(U11(z0)))) MARK(U41(U11(U21(z0)), x1)) -> c38(A__U41(a__U11(a__U21(mark(z0))), x1), MARK(U11(U21(z0)))) MARK(U41(U11(U31(z0)), x1)) -> c38(A__U41(a__U11(a__U31(mark(z0))), x1), MARK(U11(U31(z0)))) MARK(U41(U11(U41(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U41(mark(z0), z1)), x1), MARK(U11(U41(z0, z1)))) MARK(U41(U11(U42(z0)), x1)) -> c38(A__U41(a__U11(a__U42(mark(z0))), x1), MARK(U11(U42(z0)))) MARK(U41(U11(isNatIList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatIList(z0)), x1), MARK(U11(isNatIList(z0)))) MARK(U41(U11(U51(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U51(mark(z0), z1)), x1), MARK(U11(U51(z0, z1)))) MARK(U41(U11(U52(z0)), x1)) -> c38(A__U41(a__U11(a__U52(mark(z0))), x1), MARK(U11(U52(z0)))) MARK(U41(U11(isNatList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatList(z0)), x1), MARK(U11(isNatList(z0)))) MARK(U41(U11(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U11(a__U61(mark(z0), z1, z2)), x1), MARK(U11(U61(z0, z1, z2)))) MARK(U41(U11(U62(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U62(mark(z0), z1)), x1), MARK(U11(U62(z0, z1)))) MARK(U41(U11(isNat(z0)), x1)) -> c38(A__U41(a__U11(a__isNat(z0)), x1), MARK(U11(isNat(z0)))) MARK(U41(U11(length(z0)), x1)) -> c38(A__U41(a__U11(a__length(mark(z0))), x1), MARK(U11(length(z0)))) MARK(U41(U11(cons(z0, z1)), x1)) -> c38(A__U41(a__U11(cons(mark(z0), z1)), x1), MARK(U11(cons(z0, z1)))) MARK(U41(U11(0), x1)) -> c38(A__U41(a__U11(0), x1), MARK(U11(0))) MARK(U41(U11(tt), x1)) -> c38(A__U41(a__U11(tt), x1), MARK(U11(tt))) MARK(U41(U11(s(z0)), x1)) -> c38(A__U41(a__U11(s(mark(z0))), x1), MARK(U11(s(z0)))) MARK(U41(U11(nil), x1)) -> c38(A__U41(a__U11(nil), x1), MARK(U11(nil))) MARK(U41(U11(x0), x1)) -> c38(MARK(U11(x0))) MARK(U41(U21(zeros), x1)) -> c38(A__U41(a__U21(a__zeros), x1), MARK(U21(zeros))) MARK(U41(U21(U11(z0)), x1)) -> c38(A__U41(a__U21(a__U11(mark(z0))), x1), MARK(U21(U11(z0)))) MARK(U41(U21(U21(z0)), x1)) -> c38(A__U41(a__U21(a__U21(mark(z0))), x1), MARK(U21(U21(z0)))) MARK(U41(U21(U31(z0)), x1)) -> c38(A__U41(a__U21(a__U31(mark(z0))), x1), MARK(U21(U31(z0)))) MARK(U41(U21(U41(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U41(mark(z0), z1)), x1), MARK(U21(U41(z0, z1)))) MARK(U41(U21(U42(z0)), x1)) -> c38(A__U41(a__U21(a__U42(mark(z0))), x1), MARK(U21(U42(z0)))) MARK(U41(U21(isNatIList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatIList(z0)), x1), MARK(U21(isNatIList(z0)))) MARK(U41(U21(U51(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U51(mark(z0), z1)), x1), MARK(U21(U51(z0, z1)))) MARK(U41(U21(U52(z0)), x1)) -> c38(A__U41(a__U21(a__U52(mark(z0))), x1), MARK(U21(U52(z0)))) MARK(U41(U21(isNatList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatList(z0)), x1), MARK(U21(isNatList(z0)))) MARK(U41(U21(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U21(a__U61(mark(z0), z1, z2)), x1), MARK(U21(U61(z0, z1, z2)))) MARK(U41(U21(U62(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U62(mark(z0), z1)), x1), MARK(U21(U62(z0, z1)))) MARK(U41(U21(isNat(z0)), x1)) -> c38(A__U41(a__U21(a__isNat(z0)), x1), MARK(U21(isNat(z0)))) MARK(U41(U21(length(z0)), x1)) -> c38(A__U41(a__U21(a__length(mark(z0))), x1), MARK(U21(length(z0)))) MARK(U41(U21(cons(z0, z1)), x1)) -> c38(A__U41(a__U21(cons(mark(z0), z1)), x1), MARK(U21(cons(z0, z1)))) MARK(U41(U21(0), x1)) -> c38(A__U41(a__U21(0), x1), MARK(U21(0))) MARK(U41(U21(tt), x1)) -> c38(A__U41(a__U21(tt), x1), MARK(U21(tt))) MARK(U41(U21(s(z0)), x1)) -> c38(A__U41(a__U21(s(mark(z0))), x1), MARK(U21(s(z0)))) MARK(U41(U21(nil), x1)) -> c38(A__U41(a__U21(nil), x1), MARK(U21(nil))) MARK(U41(U21(x0), x1)) -> c38(MARK(U21(x0))) MARK(U41(U31(zeros), x1)) -> c38(A__U41(a__U31(a__zeros), x1), MARK(U31(zeros))) MARK(U41(U31(U11(z0)), x1)) -> c38(A__U41(a__U31(a__U11(mark(z0))), x1), MARK(U31(U11(z0)))) MARK(U41(U31(U21(z0)), x1)) -> c38(A__U41(a__U31(a__U21(mark(z0))), x1), MARK(U31(U21(z0)))) MARK(U41(U31(U31(z0)), x1)) -> c38(A__U41(a__U31(a__U31(mark(z0))), x1), MARK(U31(U31(z0)))) MARK(U41(U31(U41(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U41(mark(z0), z1)), x1), MARK(U31(U41(z0, z1)))) MARK(U41(U31(U42(z0)), x1)) -> c38(A__U41(a__U31(a__U42(mark(z0))), x1), MARK(U31(U42(z0)))) MARK(U41(U31(isNatIList(z0)), x1)) -> c38(A__U41(a__U31(a__isNatIList(z0)), x1), MARK(U31(isNatIList(z0)))) MARK(U41(U31(U51(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U51(mark(z0), z1)), x1), MARK(U31(U51(z0, z1)))) MARK(U41(U31(U52(z0)), x1)) -> c38(A__U41(a__U31(a__U52(mark(z0))), x1), MARK(U31(U52(z0)))) MARK(U41(U31(isNatList(z0)), x1)) -> c38(A__U41(a__U31(a__isNatList(z0)), x1), MARK(U31(isNatList(z0)))) MARK(U41(U31(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U31(a__U61(mark(z0), z1, z2)), x1), MARK(U31(U61(z0, z1, z2)))) MARK(U41(U31(U62(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U62(mark(z0), z1)), x1), MARK(U31(U62(z0, z1)))) MARK(U41(U31(isNat(z0)), x1)) -> c38(A__U41(a__U31(a__isNat(z0)), x1), MARK(U31(isNat(z0)))) MARK(U41(U31(length(z0)), x1)) -> c38(A__U41(a__U31(a__length(mark(z0))), x1), MARK(U31(length(z0)))) MARK(U41(U31(cons(z0, z1)), x1)) -> c38(A__U41(a__U31(cons(mark(z0), z1)), x1), MARK(U31(cons(z0, z1)))) MARK(U41(U31(0), x1)) -> c38(A__U41(a__U31(0), x1), MARK(U31(0))) MARK(U41(U31(tt), x1)) -> c38(A__U41(a__U31(tt), x1), MARK(U31(tt))) MARK(U41(U31(s(z0)), x1)) -> c38(A__U41(a__U31(s(mark(z0))), x1), MARK(U31(s(z0)))) MARK(U41(U31(nil), x1)) -> c38(A__U41(a__U31(nil), x1), MARK(U31(nil))) MARK(U41(U31(x0), x1)) -> c38(MARK(U31(x0))) MARK(U41(U41(U11(z0), x1), x2)) -> c38(A__U41(a__U41(a__U11(mark(z0)), x1), x2), MARK(U41(U11(z0), x1))) MARK(U41(U41(U21(z0), x1), x2)) -> c38(A__U41(a__U41(a__U21(mark(z0)), x1), x2), MARK(U41(U21(z0), x1))) MARK(U41(U41(U31(z0), x1), x2)) -> c38(A__U41(a__U41(a__U31(mark(z0)), x1), x2), MARK(U41(U31(z0), x1))) MARK(U41(U41(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U41(mark(z0), z1), x1), x2), MARK(U41(U41(z0, z1), x1))) MARK(U41(U41(U42(z0), x1), x2)) -> c38(A__U41(a__U41(a__U42(mark(z0)), x1), x2), MARK(U41(U42(z0), x1))) MARK(U41(U41(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U51(mark(z0), z1), x1), x2), MARK(U41(U51(z0, z1), x1))) MARK(U41(U41(U52(z0), x1), x2)) -> c38(A__U41(a__U41(a__U52(mark(z0)), x1), x2), MARK(U41(U52(z0), x1))) MARK(U41(U41(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U41(a__U61(mark(z0), z1, z2), x1), x2), MARK(U41(U61(z0, z1, z2), x1))) MARK(U41(U41(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U62(mark(z0), z1), x1), x2), MARK(U41(U62(z0, z1), x1))) MARK(U41(U41(length(z0), x1), x2)) -> c38(A__U41(a__U41(a__length(mark(z0)), x1), x2), MARK(U41(length(z0), x1))) MARK(U41(U41(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U41(cons(mark(z0), z1), x1), x2), MARK(U41(cons(z0, z1), x1))) MARK(U41(U41(s(z0), x1), x2)) -> c38(A__U41(a__U41(s(mark(z0)), x1), x2), MARK(U41(s(z0), x1))) MARK(U41(U41(x0, z1), x2)) -> c38(MARK(U41(x0, z1))) MARK(U41(U41(0, x1), x2)) -> c38(A__U41(a__U41(0, x1), x2)) MARK(U41(U41(nil, x1), x2)) -> c38(A__U41(a__U41(nil, x1), x2)) MARK(U41(U41(zeros, x1), x2)) -> c2(A__U41(a__U41(a__zeros, x1), x2)) MARK(U41(U41(zeros, x1), x2)) -> c2(MARK(U41(zeros, x1))) MARK(U41(U41(isNatIList(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNatIList(z0), x1), x2)) MARK(U41(U41(isNatIList(z0), x1), x2)) -> c2(MARK(U41(isNatIList(z0), x1))) MARK(U41(U41(isNatList(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNatList(z0), x1), x2)) MARK(U41(U41(isNatList(z0), x1), x2)) -> c2(MARK(U41(isNatList(z0), x1))) MARK(U41(U41(isNat(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNat(z0), x1), x2)) MARK(U41(U41(isNat(z0), x1), x2)) -> c2(MARK(U41(isNat(z0), x1))) MARK(U41(U41(tt, x1), x2)) -> c2(A__U41(a__U41(tt, x1), x2)) MARK(U41(U41(tt, x1), x2)) -> c2(MARK(U41(tt, x1))) MARK(U41(U42(zeros), x1)) -> c38(A__U41(a__U42(a__zeros), x1), MARK(U42(zeros))) MARK(U41(U42(U11(z0)), x1)) -> c38(A__U41(a__U42(a__U11(mark(z0))), x1), MARK(U42(U11(z0)))) MARK(U41(U42(U21(z0)), x1)) -> c38(A__U41(a__U42(a__U21(mark(z0))), x1), MARK(U42(U21(z0)))) MARK(U41(U42(U31(z0)), x1)) -> c38(A__U41(a__U42(a__U31(mark(z0))), x1), MARK(U42(U31(z0)))) MARK(U41(U42(U41(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U41(mark(z0), z1)), x1), MARK(U42(U41(z0, z1)))) MARK(U41(U42(U42(z0)), x1)) -> c38(A__U41(a__U42(a__U42(mark(z0))), x1), MARK(U42(U42(z0)))) MARK(U41(U42(isNatIList(z0)), x1)) -> c38(A__U41(a__U42(a__isNatIList(z0)), x1), MARK(U42(isNatIList(z0)))) MARK(U41(U42(U51(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U51(mark(z0), z1)), x1), MARK(U42(U51(z0, z1)))) MARK(U41(U42(U52(z0)), x1)) -> c38(A__U41(a__U42(a__U52(mark(z0))), x1), MARK(U42(U52(z0)))) MARK(U41(U42(isNatList(z0)), x1)) -> c38(A__U41(a__U42(a__isNatList(z0)), x1), MARK(U42(isNatList(z0)))) MARK(U41(U42(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U42(a__U61(mark(z0), z1, z2)), x1), MARK(U42(U61(z0, z1, z2)))) MARK(U41(U42(U62(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U62(mark(z0), z1)), x1), MARK(U42(U62(z0, z1)))) MARK(U41(U42(isNat(z0)), x1)) -> c38(A__U41(a__U42(a__isNat(z0)), x1), MARK(U42(isNat(z0)))) MARK(U41(U42(length(z0)), x1)) -> c38(A__U41(a__U42(a__length(mark(z0))), x1), MARK(U42(length(z0)))) MARK(U41(U42(cons(z0, z1)), x1)) -> c38(A__U41(a__U42(cons(mark(z0), z1)), x1), MARK(U42(cons(z0, z1)))) MARK(U41(U42(0), x1)) -> c38(A__U41(a__U42(0), x1), MARK(U42(0))) MARK(U41(U42(tt), x1)) -> c38(A__U41(a__U42(tt), x1), MARK(U42(tt))) MARK(U41(U42(s(z0)), x1)) -> c38(A__U41(a__U42(s(mark(z0))), x1), MARK(U42(s(z0)))) MARK(U41(U42(nil), x1)) -> c38(A__U41(a__U42(nil), x1), MARK(U42(nil))) MARK(U41(U42(x0), x1)) -> c38(MARK(U42(x0))) MARK(U41(U51(U11(z0), x1), x2)) -> c38(A__U41(a__U51(a__U11(mark(z0)), x1), x2), MARK(U51(U11(z0), x1))) MARK(U41(U51(U21(z0), x1), x2)) -> c38(A__U41(a__U51(a__U21(mark(z0)), x1), x2), MARK(U51(U21(z0), x1))) MARK(U41(U51(U31(z0), x1), x2)) -> c38(A__U41(a__U51(a__U31(mark(z0)), x1), x2), MARK(U51(U31(z0), x1))) MARK(U41(U51(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U41(mark(z0), z1), x1), x2), MARK(U51(U41(z0, z1), x1))) MARK(U41(U51(U42(z0), x1), x2)) -> c38(A__U41(a__U51(a__U42(mark(z0)), x1), x2), MARK(U51(U42(z0), x1))) MARK(U41(U51(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U51(mark(z0), z1), x1), x2), MARK(U51(U51(z0, z1), x1))) MARK(U41(U51(U52(z0), x1), x2)) -> c38(A__U41(a__U51(a__U52(mark(z0)), x1), x2), MARK(U51(U52(z0), x1))) MARK(U41(U51(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U51(a__U61(mark(z0), z1, z2), x1), x2), MARK(U51(U61(z0, z1, z2), x1))) MARK(U41(U51(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U62(mark(z0), z1), x1), x2), MARK(U51(U62(z0, z1), x1))) MARK(U41(U51(length(z0), x1), x2)) -> c38(A__U41(a__U51(a__length(mark(z0)), x1), x2), MARK(U51(length(z0), x1))) MARK(U41(U51(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U51(cons(mark(z0), z1), x1), x2), MARK(U51(cons(z0, z1), x1))) MARK(U41(U51(s(z0), x1), x2)) -> c38(A__U41(a__U51(s(mark(z0)), x1), x2), MARK(U51(s(z0), x1))) MARK(U41(U51(x0, z1), x2)) -> c38(MARK(U51(x0, z1))) MARK(U41(U51(0, x1), x2)) -> c38(A__U41(a__U51(0, x1), x2)) MARK(U41(U51(nil, x1), x2)) -> c38(A__U41(a__U51(nil, x1), x2)) MARK(U41(U51(zeros, x1), x2)) -> c3(A__U41(a__U51(a__zeros, x1), x2)) MARK(U41(U51(zeros, x1), x2)) -> c3(MARK(U51(zeros, x1))) MARK(U41(U51(isNatIList(z0), x1), x2)) -> c3(A__U41(a__U51(a__isNatIList(z0), x1), x2)) MARK(U41(U51(isNatIList(z0), x1), x2)) -> c3(MARK(U51(isNatIList(z0), x1))) MARK(U41(U51(isNatList(z0), x1), x2)) -> c3(A__U41(a__U51(a__isNatList(z0), x1), x2)) MARK(U41(U51(isNatList(z0), x1), x2)) -> c3(MARK(U51(isNatList(z0), x1))) MARK(U41(U51(isNat(z0), x1), x2)) -> c3(A__U41(a__U51(a__isNat(z0), x1), x2)) MARK(U41(U51(isNat(z0), x1), x2)) -> c3(MARK(U51(isNat(z0), x1))) MARK(U41(U51(tt, x1), x2)) -> c3(A__U41(a__U51(tt, x1), x2)) MARK(U41(U51(tt, x1), x2)) -> c3(MARK(U51(tt, x1))) MARK(U41(U52(zeros), x1)) -> c38(A__U41(a__U52(a__zeros), x1), MARK(U52(zeros))) MARK(U41(U52(U11(z0)), x1)) -> c38(A__U41(a__U52(a__U11(mark(z0))), x1), MARK(U52(U11(z0)))) MARK(U41(U52(U21(z0)), x1)) -> c38(A__U41(a__U52(a__U21(mark(z0))), x1), MARK(U52(U21(z0)))) MARK(U41(U52(U31(z0)), x1)) -> c38(A__U41(a__U52(a__U31(mark(z0))), x1), MARK(U52(U31(z0)))) MARK(U41(U52(U41(z0, z1)), x1)) -> c38(A__U41(a__U52(a__U41(mark(z0), z1)), x1), MARK(U52(U41(z0, z1)))) MARK(U41(U52(U42(z0)), x1)) -> c38(A__U41(a__U52(a__U42(mark(z0))), x1), MARK(U52(U42(z0)))) MARK(U41(U52(isNatIList(z0)), x1)) -> c38(A__U41(a__U52(a__isNatIList(z0)), x1), MARK(U52(isNatIList(z0)))) MARK(U41(U52(U51(z0, z1)), x1)) -> c38(A__U41(a__U52(a__U51(mark(z0), z1)), x1), MARK(U52(U51(z0, z1)))) MARK(U41(U52(U52(z0)), x1)) -> c38(A__U41(a__U52(a__U52(mark(z0))), x1), MARK(U52(U52(z0)))) MARK(U41(U52(isNatList(z0)), x1)) -> c38(A__U41(a__U52(a__isNatList(z0)), x1), MARK(U52(isNatList(z0)))) MARK(U41(U52(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U52(a__U61(mark(z0), z1, z2)), x1), MARK(U52(U61(z0, z1, z2)))) MARK(U41(U52(U62(z0, z1)), x1)) -> c38(A__U41(a__U52(a__U62(mark(z0), z1)), x1), MARK(U52(U62(z0, z1)))) MARK(U41(U52(isNat(z0)), x1)) -> c38(A__U41(a__U52(a__isNat(z0)), x1), MARK(U52(isNat(z0)))) MARK(U41(U52(length(z0)), x1)) -> c38(A__U41(a__U52(a__length(mark(z0))), x1), MARK(U52(length(z0)))) MARK(U41(U52(cons(z0, z1)), x1)) -> c38(A__U41(a__U52(cons(mark(z0), z1)), x1), MARK(U52(cons(z0, z1)))) MARK(U41(U52(0), x1)) -> c38(A__U41(a__U52(0), x1), MARK(U52(0))) MARK(U41(U52(tt), x1)) -> c38(A__U41(a__U52(tt), x1), MARK(U52(tt))) MARK(U41(U52(s(z0)), x1)) -> c38(A__U41(a__U52(s(mark(z0))), x1), MARK(U52(s(z0)))) MARK(U41(U52(nil), x1)) -> c38(A__U41(a__U52(nil), x1), MARK(U52(nil))) MARK(U41(U52(x0), x1)) -> c38(MARK(U52(x0))) MARK(U41(U61(zeros, x1, x2), x3)) -> c38(A__U41(a__U61(a__zeros, x1, x2), x3), MARK(U61(zeros, x1, x2))) MARK(U41(U61(U11(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U11(mark(z0)), x1, x2), x3), MARK(U61(U11(z0), x1, x2))) MARK(U41(U61(U21(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U21(mark(z0)), x1, x2), x3), MARK(U61(U21(z0), x1, x2))) MARK(U41(U61(U31(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U31(mark(z0)), x1, x2), x3), MARK(U61(U31(z0), x1, x2))) MARK(U41(U61(U41(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(a__U41(mark(z0), z1), x1, x2), x3), MARK(U61(U41(z0, z1), x1, x2))) MARK(U41(U61(U42(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U42(mark(z0)), x1, x2), x3), MARK(U61(U42(z0), x1, x2))) MARK(U41(U61(isNatIList(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__isNatIList(z0), x1, x2), x3), MARK(U61(isNatIList(z0), x1, x2))) MARK(U41(U61(U51(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(a__U51(mark(z0), z1), x1, x2), x3), MARK(U61(U51(z0, z1), x1, x2))) MARK(U41(U61(U52(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U52(mark(z0)), x1, x2), x3), MARK(U61(U52(z0), x1, x2))) MARK(U41(U61(isNatList(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__isNatList(z0), x1, x2), x3), MARK(U61(isNatList(z0), x1, x2))) MARK(U41(U61(U61(z0, z1, z2), x1, x2), x3)) -> c38(A__U41(a__U61(a__U61(mark(z0), z1, z2), x1, x2), x3), MARK(U61(U61(z0, z1, z2), x1, x2))) MARK(U41(U61(U62(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(a__U62(mark(z0), z1), x1, x2), x3), MARK(U61(U62(z0, z1), x1, x2))) MARK(U41(U61(isNat(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__isNat(z0), x1, x2), x3), MARK(U61(isNat(z0), x1, x2))) MARK(U41(U61(length(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__length(mark(z0)), x1, x2), x3), MARK(U61(length(z0), x1, x2))) MARK(U41(U61(cons(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(cons(mark(z0), z1), x1, x2), x3), MARK(U61(cons(z0, z1), x1, x2))) MARK(U41(U61(tt, x1, x2), x3)) -> c38(A__U41(a__U61(tt, x1, x2), x3), MARK(U61(tt, x1, x2))) MARK(U41(U61(s(z0), x1, x2), x3)) -> c38(A__U41(a__U61(s(mark(z0)), x1, x2), x3), MARK(U61(s(z0), x1, x2))) MARK(U41(U61(x0, z1, z2), x3)) -> c38(MARK(U61(x0, z1, z2))) MARK(U41(U61(0, x1, x2), x3)) -> c38(A__U41(a__U61(0, x1, x2), x3)) MARK(U41(U61(nil, x1, x2), x3)) -> c38(A__U41(a__U61(nil, x1, x2), x3)) MARK(U41(U62(zeros, x1), x2)) -> c38(A__U41(a__U62(a__zeros, x1), x2), MARK(U62(zeros, x1))) MARK(U41(U62(U11(z0), x1), x2)) -> c38(A__U41(a__U62(a__U11(mark(z0)), x1), x2), MARK(U62(U11(z0), x1))) MARK(U41(U62(U21(z0), x1), x2)) -> c38(A__U41(a__U62(a__U21(mark(z0)), x1), x2), MARK(U62(U21(z0), x1))) MARK(U41(U62(U31(z0), x1), x2)) -> c38(A__U41(a__U62(a__U31(mark(z0)), x1), x2), MARK(U62(U31(z0), x1))) MARK(U41(U62(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U62(a__U41(mark(z0), z1), x1), x2), MARK(U62(U41(z0, z1), x1))) MARK(U41(U62(U42(z0), x1), x2)) -> c38(A__U41(a__U62(a__U42(mark(z0)), x1), x2), MARK(U62(U42(z0), x1))) MARK(U41(U62(isNatIList(z0), x1), x2)) -> c38(A__U41(a__U62(a__isNatIList(z0), x1), x2), MARK(U62(isNatIList(z0), x1))) MARK(U41(U62(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U62(a__U51(mark(z0), z1), x1), x2), MARK(U62(U51(z0, z1), x1))) MARK(U41(U62(U52(z0), x1), x2)) -> c38(A__U41(a__U62(a__U52(mark(z0)), x1), x2), MARK(U62(U52(z0), x1))) MARK(U41(U62(isNatList(z0), x1), x2)) -> c38(A__U41(a__U62(a__isNatList(z0), x1), x2), MARK(U62(isNatList(z0), x1))) MARK(U41(U62(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U62(a__U61(mark(z0), z1, z2), x1), x2), MARK(U62(U61(z0, z1, z2), x1))) MARK(U41(U62(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U62(a__U62(mark(z0), z1), x1), x2), MARK(U62(U62(z0, z1), x1))) MARK(U41(U62(isNat(z0), x1), x2)) -> c38(A__U41(a__U62(a__isNat(z0), x1), x2), MARK(U62(isNat(z0), x1))) MARK(U41(U62(length(z0), x1), x2)) -> c38(A__U41(a__U62(a__length(mark(z0)), x1), x2), MARK(U62(length(z0), x1))) MARK(U41(U62(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U62(cons(mark(z0), z1), x1), x2), MARK(U62(cons(z0, z1), x1))) MARK(U41(U62(tt, x1), x2)) -> c38(A__U41(a__U62(tt, x1), x2), MARK(U62(tt, x1))) MARK(U41(U62(s(z0), x1), x2)) -> c38(A__U41(a__U62(s(mark(z0)), x1), x2), MARK(U62(s(z0), x1))) MARK(U41(U62(x0, z1), x2)) -> c38(MARK(U62(x0, z1))) MARK(U41(U62(0, x1), x2)) -> c38(A__U41(a__U62(0, x1), x2)) MARK(U41(U62(nil, x1), x2)) -> c38(A__U41(a__U62(nil, x1), x2)) MARK(U41(length(zeros), x1)) -> c38(A__U41(a__length(a__zeros), x1), MARK(length(zeros))) MARK(U41(length(U11(z0)), x1)) -> c38(A__U41(a__length(a__U11(mark(z0))), x1), MARK(length(U11(z0)))) MARK(U41(length(U21(z0)), x1)) -> c38(A__U41(a__length(a__U21(mark(z0))), x1), MARK(length(U21(z0)))) MARK(U41(length(U31(z0)), x1)) -> c38(A__U41(a__length(a__U31(mark(z0))), x1), MARK(length(U31(z0)))) MARK(U41(length(U41(z0, z1)), x1)) -> c38(A__U41(a__length(a__U41(mark(z0), z1)), x1), MARK(length(U41(z0, z1)))) MARK(U41(length(U42(z0)), x1)) -> c38(A__U41(a__length(a__U42(mark(z0))), x1), MARK(length(U42(z0)))) MARK(U41(length(isNatIList(z0)), x1)) -> c38(A__U41(a__length(a__isNatIList(z0)), x1), MARK(length(isNatIList(z0)))) MARK(U41(length(U51(z0, z1)), x1)) -> c38(A__U41(a__length(a__U51(mark(z0), z1)), x1), MARK(length(U51(z0, z1)))) MARK(U41(length(U52(z0)), x1)) -> c38(A__U41(a__length(a__U52(mark(z0))), x1), MARK(length(U52(z0)))) MARK(U41(length(isNatList(z0)), x1)) -> c38(A__U41(a__length(a__isNatList(z0)), x1), MARK(length(isNatList(z0)))) MARK(U41(length(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__length(a__U61(mark(z0), z1, z2)), x1), MARK(length(U61(z0, z1, z2)))) MARK(U41(length(U62(z0, z1)), x1)) -> c38(A__U41(a__length(a__U62(mark(z0), z1)), x1), MARK(length(U62(z0, z1)))) MARK(U41(length(isNat(z0)), x1)) -> c38(A__U41(a__length(a__isNat(z0)), x1), MARK(length(isNat(z0)))) MARK(U41(length(length(z0)), x1)) -> c38(A__U41(a__length(a__length(mark(z0))), x1), MARK(length(length(z0)))) MARK(U41(length(cons(z0, z1)), x1)) -> c38(A__U41(a__length(cons(mark(z0), z1)), x1), MARK(length(cons(z0, z1)))) MARK(U41(length(s(z0)), x1)) -> c38(A__U41(a__length(s(mark(z0))), x1), MARK(length(s(z0)))) MARK(U41(length(x0), x1)) -> c38(MARK(length(x0))) MARK(U41(length(0), x1)) -> c38(A__U41(a__length(0), x1)) MARK(U41(length(tt), x1)) -> c38(A__U41(a__length(tt), x1)) MARK(U41(length(nil), x1)) -> c38(A__U41(a__length(nil), x1)) MARK(U41(zeros, x0)) -> c38(A__U41(cons(0, zeros), x0)) MARK(U41(zeros, x0)) -> c38(A__U41(zeros, x0)) S tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) A__U62(tt, isNatList(cons(z0, z1))) -> c18(A__LENGTH(a__U51(a__isNat(z0), z1)), MARK(isNatList(cons(z0, z1)))) A__U62(tt, isNatList(nil)) -> c18(MARK(isNatList(nil))) A__U62(tt, isNatList(z0)) -> c18(MARK(isNatList(z0))) A__U62(tt, U61(zeros, x1, x2)) -> c18(A__LENGTH(a__U61(a__zeros, x1, x2)), MARK(U61(zeros, x1, x2))) A__U62(tt, U61(U11(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U11(mark(z0)), x1, x2)), MARK(U61(U11(z0), x1, x2))) A__U62(tt, U61(U21(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U21(mark(z0)), x1, x2)), MARK(U61(U21(z0), x1, x2))) A__U62(tt, U61(U31(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U31(mark(z0)), x1, x2)), MARK(U61(U31(z0), x1, x2))) A__U62(tt, U61(U41(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U41(mark(z0), z1), x1, x2)), MARK(U61(U41(z0, z1), x1, x2))) A__U62(tt, U61(U42(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U42(mark(z0)), x1, x2)), MARK(U61(U42(z0), x1, x2))) A__U62(tt, U61(isNatIList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatIList(z0), x1, x2)), MARK(U61(isNatIList(z0), x1, x2))) A__U62(tt, U61(U51(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U51(mark(z0), z1), x1, x2)), MARK(U61(U51(z0, z1), x1, x2))) A__U62(tt, U61(U52(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U52(mark(z0)), x1, x2)), MARK(U61(U52(z0), x1, x2))) A__U62(tt, U61(isNatList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatList(z0), x1, x2)), MARK(U61(isNatList(z0), x1, x2))) A__U62(tt, U61(U61(z0, z1, z2), x1, x2)) -> c18(A__LENGTH(a__U61(a__U61(mark(z0), z1, z2), x1, x2)), MARK(U61(U61(z0, z1, z2), x1, x2))) A__U62(tt, U61(U62(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U62(mark(z0), z1), x1, x2)), MARK(U61(U62(z0, z1), x1, x2))) A__U62(tt, U61(isNat(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNat(z0), x1, x2)), MARK(U61(isNat(z0), x1, x2))) A__U62(tt, U61(length(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__length(mark(z0)), x1, x2)), MARK(U61(length(z0), x1, x2))) A__U62(tt, U61(cons(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(cons(mark(z0), z1), x1, x2)), MARK(U61(cons(z0, z1), x1, x2))) A__U62(tt, U61(tt, x1, x2)) -> c18(A__LENGTH(a__U61(tt, x1, x2)), MARK(U61(tt, x1, x2))) A__U62(tt, U61(s(z0), x1, x2)) -> c18(A__LENGTH(a__U61(s(mark(z0)), x1, x2)), MARK(U61(s(z0), x1, x2))) A__U62(tt, U61(x0, z1, z2)) -> c18(MARK(U61(x0, z1, z2))) A__U62(tt, U61(0, x1, x2)) -> c18(A__LENGTH(a__U61(0, x1, x2))) A__U62(tt, U61(nil, x1, x2)) -> c18(A__LENGTH(a__U61(nil, x1, x2))) A__U62(tt, U62(zeros, x1)) -> c18(A__LENGTH(a__U62(a__zeros, x1)), MARK(U62(zeros, x1))) A__U62(tt, U62(U11(z0), x1)) -> c18(A__LENGTH(a__U62(a__U11(mark(z0)), x1)), MARK(U62(U11(z0), x1))) A__U62(tt, U62(U21(z0), x1)) -> c18(A__LENGTH(a__U62(a__U21(mark(z0)), x1)), MARK(U62(U21(z0), x1))) A__U62(tt, U62(U31(z0), x1)) -> c18(A__LENGTH(a__U62(a__U31(mark(z0)), x1)), MARK(U62(U31(z0), x1))) A__U62(tt, U62(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U41(mark(z0), z1), x1)), MARK(U62(U41(z0, z1), x1))) A__U62(tt, U62(U42(z0), x1)) -> c18(A__LENGTH(a__U62(a__U42(mark(z0)), x1)), MARK(U62(U42(z0), x1))) A__U62(tt, U62(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatIList(z0), x1)), MARK(U62(isNatIList(z0), x1))) A__U62(tt, U62(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U51(mark(z0), z1), x1)), MARK(U62(U51(z0, z1), x1))) A__U62(tt, U62(U52(z0), x1)) -> c18(A__LENGTH(a__U62(a__U52(mark(z0)), x1)), MARK(U62(U52(z0), x1))) A__U62(tt, U62(isNatList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatList(z0), x1)), MARK(U62(isNatList(z0), x1))) A__U62(tt, U62(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U62(a__U61(mark(z0), z1, z2), x1)), MARK(U62(U61(z0, z1, z2), x1))) A__U62(tt, U62(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U62(mark(z0), z1), x1)), MARK(U62(U62(z0, z1), x1))) A__U62(tt, U62(isNat(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNat(z0), x1)), MARK(U62(isNat(z0), x1))) A__U62(tt, U62(length(z0), x1)) -> c18(A__LENGTH(a__U62(a__length(mark(z0)), x1)), MARK(U62(length(z0), x1))) A__U62(tt, U62(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U62(cons(mark(z0), z1), x1)), MARK(U62(cons(z0, z1), x1))) A__U62(tt, U62(tt, x1)) -> c18(A__LENGTH(a__U62(tt, x1)), MARK(U62(tt, x1))) A__U62(tt, U62(s(z0), x1)) -> c18(A__LENGTH(a__U62(s(mark(z0)), x1)), MARK(U62(s(z0), x1))) A__U62(tt, U62(x0, z1)) -> c18(MARK(U62(x0, z1))) A__U62(tt, U62(0, x1)) -> c18(A__LENGTH(a__U62(0, x1))) A__U62(tt, U62(nil, x1)) -> c18(A__LENGTH(a__U62(nil, x1))) A__U62(tt, isNat(length(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(isNat(length(z0)))) A__U62(tt, isNat(s(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(isNat(s(z0)))) A__U62(tt, isNat(0)) -> c18(MARK(isNat(0))) A__U62(tt, isNat(z0)) -> c18(MARK(isNat(z0))) A__U62(tt, length(zeros)) -> c18(A__LENGTH(a__length(a__zeros)), MARK(length(zeros))) A__U62(tt, length(U11(z0))) -> c18(A__LENGTH(a__length(a__U11(mark(z0)))), MARK(length(U11(z0)))) A__U62(tt, length(U21(z0))) -> c18(A__LENGTH(a__length(a__U21(mark(z0)))), MARK(length(U21(z0)))) A__U62(tt, length(U31(z0))) -> c18(A__LENGTH(a__length(a__U31(mark(z0)))), MARK(length(U31(z0)))) A__U62(tt, length(U41(z0, z1))) -> c18(A__LENGTH(a__length(a__U41(mark(z0), z1))), MARK(length(U41(z0, z1)))) A__U62(tt, length(U42(z0))) -> c18(A__LENGTH(a__length(a__U42(mark(z0)))), MARK(length(U42(z0)))) A__U62(tt, length(isNatIList(z0))) -> c18(A__LENGTH(a__length(a__isNatIList(z0))), MARK(length(isNatIList(z0)))) A__U62(tt, length(U51(z0, z1))) -> c18(A__LENGTH(a__length(a__U51(mark(z0), z1))), MARK(length(U51(z0, z1)))) A__U62(tt, length(U52(z0))) -> c18(A__LENGTH(a__length(a__U52(mark(z0)))), MARK(length(U52(z0)))) A__U62(tt, length(isNatList(z0))) -> c18(A__LENGTH(a__length(a__isNatList(z0))), MARK(length(isNatList(z0)))) A__U62(tt, length(U61(z0, z1, z2))) -> c18(A__LENGTH(a__length(a__U61(mark(z0), z1, z2))), MARK(length(U61(z0, z1, z2)))) A__U62(tt, length(U62(z0, z1))) -> c18(A__LENGTH(a__length(a__U62(mark(z0), z1))), MARK(length(U62(z0, z1)))) A__U62(tt, length(isNat(z0))) -> c18(A__LENGTH(a__length(a__isNat(z0))), MARK(length(isNat(z0)))) A__U62(tt, length(length(z0))) -> c18(A__LENGTH(a__length(a__length(mark(z0)))), MARK(length(length(z0)))) A__U62(tt, length(cons(z0, z1))) -> c18(A__LENGTH(a__length(cons(mark(z0), z1))), MARK(length(cons(z0, z1)))) A__U62(tt, length(s(z0))) -> c18(A__LENGTH(a__length(s(mark(z0)))), MARK(length(s(z0)))) A__U62(tt, length(x0)) -> c18(MARK(length(x0))) A__U62(tt, length(0)) -> c18(A__LENGTH(a__length(0))) A__U62(tt, length(tt)) -> c18(A__LENGTH(a__length(tt))) A__U62(tt, length(nil)) -> c18(A__LENGTH(a__length(nil))) A__U62(tt, zeros) -> c18(A__LENGTH(cons(0, zeros))) A__ISNATILIST(cons(length(nil), x1)) -> c26(A__U41(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATILIST(cons(length(cons(z0, z1)), x1)) -> c26(A__U41(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(length(x0), x1)) -> c26(A__ISNAT(length(x0))) A__ISNATILIST(cons(s(0), x1)) -> c26(A__U41(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATILIST(cons(s(length(z0)), x1)) -> c26(A__U41(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATILIST(cons(s(s(z0)), x1)) -> c26(A__U41(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(s(x0), x1)) -> c26(A__ISNAT(s(x0))) A__ISNATLIST(cons(length(nil), x1)) -> c29(A__U51(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATLIST(cons(length(cons(z0, z1)), x1)) -> c29(A__U51(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(length(x0), x1)) -> c29(A__ISNAT(length(x0))) A__ISNATLIST(cons(s(0), x1)) -> c29(A__U51(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATLIST(cons(s(length(z0)), x1)) -> c29(A__U51(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATLIST(cons(s(s(z0)), x1)) -> c29(A__U51(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(s(x0), x1)) -> c29(A__ISNAT(s(x0))) A__LENGTH(cons(x0, cons(0, x2))) -> c32(A__U61(a__U51(tt, x2), cons(0, x2), x0), A__ISNATLIST(cons(0, x2))) A__LENGTH(cons(x0, cons(length(z0), x2))) -> c32(A__U61(a__U51(a__U11(a__isNatList(z0)), x2), cons(length(z0), x2), x0), A__ISNATLIST(cons(length(z0), x2))) A__LENGTH(cons(x0, cons(s(z0), x2))) -> c32(A__U61(a__U51(a__U21(a__isNat(z0)), x2), cons(s(z0), x2), x0), A__ISNATLIST(cons(s(z0), x2))) A__LENGTH(cons(x0, cons(z0, x2))) -> c32(A__U61(a__U51(isNat(z0), x2), cons(z0, x2), x0), A__ISNATLIST(cons(z0, x2))) A__LENGTH(cons(x0, cons(x1, z1))) -> c32(A__ISNATLIST(cons(x1, z1))) MARK(U41(U11(zeros), x1)) -> c38(A__U41(a__U11(a__zeros), x1), MARK(U11(zeros))) MARK(U41(U11(U11(z0)), x1)) -> c38(A__U41(a__U11(a__U11(mark(z0))), x1), MARK(U11(U11(z0)))) MARK(U41(U11(U21(z0)), x1)) -> c38(A__U41(a__U11(a__U21(mark(z0))), x1), MARK(U11(U21(z0)))) MARK(U41(U11(U31(z0)), x1)) -> c38(A__U41(a__U11(a__U31(mark(z0))), x1), MARK(U11(U31(z0)))) MARK(U41(U11(U41(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U41(mark(z0), z1)), x1), MARK(U11(U41(z0, z1)))) MARK(U41(U11(U42(z0)), x1)) -> c38(A__U41(a__U11(a__U42(mark(z0))), x1), MARK(U11(U42(z0)))) MARK(U41(U11(isNatIList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatIList(z0)), x1), MARK(U11(isNatIList(z0)))) MARK(U41(U11(U51(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U51(mark(z0), z1)), x1), MARK(U11(U51(z0, z1)))) MARK(U41(U11(U52(z0)), x1)) -> c38(A__U41(a__U11(a__U52(mark(z0))), x1), MARK(U11(U52(z0)))) MARK(U41(U11(isNatList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatList(z0)), x1), MARK(U11(isNatList(z0)))) MARK(U41(U11(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U11(a__U61(mark(z0), z1, z2)), x1), MARK(U11(U61(z0, z1, z2)))) MARK(U41(U11(U62(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U62(mark(z0), z1)), x1), MARK(U11(U62(z0, z1)))) MARK(U41(U11(isNat(z0)), x1)) -> c38(A__U41(a__U11(a__isNat(z0)), x1), MARK(U11(isNat(z0)))) MARK(U41(U11(length(z0)), x1)) -> c38(A__U41(a__U11(a__length(mark(z0))), x1), MARK(U11(length(z0)))) MARK(U41(U11(cons(z0, z1)), x1)) -> c38(A__U41(a__U11(cons(mark(z0), z1)), x1), MARK(U11(cons(z0, z1)))) MARK(U41(U11(0), x1)) -> c38(A__U41(a__U11(0), x1), MARK(U11(0))) MARK(U41(U11(tt), x1)) -> c38(A__U41(a__U11(tt), x1), MARK(U11(tt))) MARK(U41(U11(s(z0)), x1)) -> c38(A__U41(a__U11(s(mark(z0))), x1), MARK(U11(s(z0)))) MARK(U41(U11(nil), x1)) -> c38(A__U41(a__U11(nil), x1), MARK(U11(nil))) MARK(U41(U11(x0), x1)) -> c38(MARK(U11(x0))) MARK(U41(U21(zeros), x1)) -> c38(A__U41(a__U21(a__zeros), x1), MARK(U21(zeros))) MARK(U41(U21(U11(z0)), x1)) -> c38(A__U41(a__U21(a__U11(mark(z0))), x1), MARK(U21(U11(z0)))) MARK(U41(U21(U21(z0)), x1)) -> c38(A__U41(a__U21(a__U21(mark(z0))), x1), MARK(U21(U21(z0)))) MARK(U41(U21(U31(z0)), x1)) -> c38(A__U41(a__U21(a__U31(mark(z0))), x1), MARK(U21(U31(z0)))) MARK(U41(U21(U41(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U41(mark(z0), z1)), x1), MARK(U21(U41(z0, z1)))) MARK(U41(U21(U42(z0)), x1)) -> c38(A__U41(a__U21(a__U42(mark(z0))), x1), MARK(U21(U42(z0)))) MARK(U41(U21(isNatIList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatIList(z0)), x1), MARK(U21(isNatIList(z0)))) MARK(U41(U21(U51(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U51(mark(z0), z1)), x1), MARK(U21(U51(z0, z1)))) MARK(U41(U21(U52(z0)), x1)) -> c38(A__U41(a__U21(a__U52(mark(z0))), x1), MARK(U21(U52(z0)))) MARK(U41(U21(isNatList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatList(z0)), x1), MARK(U21(isNatList(z0)))) MARK(U41(U21(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U21(a__U61(mark(z0), z1, z2)), x1), MARK(U21(U61(z0, z1, z2)))) MARK(U41(U21(U62(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U62(mark(z0), z1)), x1), MARK(U21(U62(z0, z1)))) MARK(U41(U21(isNat(z0)), x1)) -> c38(A__U41(a__U21(a__isNat(z0)), x1), MARK(U21(isNat(z0)))) MARK(U41(U21(length(z0)), x1)) -> c38(A__U41(a__U21(a__length(mark(z0))), x1), MARK(U21(length(z0)))) MARK(U41(U21(cons(z0, z1)), x1)) -> c38(A__U41(a__U21(cons(mark(z0), z1)), x1), MARK(U21(cons(z0, z1)))) MARK(U41(U21(0), x1)) -> c38(A__U41(a__U21(0), x1), MARK(U21(0))) MARK(U41(U21(tt), x1)) -> c38(A__U41(a__U21(tt), x1), MARK(U21(tt))) MARK(U41(U21(s(z0)), x1)) -> c38(A__U41(a__U21(s(mark(z0))), x1), MARK(U21(s(z0)))) MARK(U41(U21(nil), x1)) -> c38(A__U41(a__U21(nil), x1), MARK(U21(nil))) MARK(U41(U21(x0), x1)) -> c38(MARK(U21(x0))) MARK(U41(U31(zeros), x1)) -> c38(A__U41(a__U31(a__zeros), x1), MARK(U31(zeros))) MARK(U41(U31(U11(z0)), x1)) -> c38(A__U41(a__U31(a__U11(mark(z0))), x1), MARK(U31(U11(z0)))) MARK(U41(U31(U21(z0)), x1)) -> c38(A__U41(a__U31(a__U21(mark(z0))), x1), MARK(U31(U21(z0)))) MARK(U41(U31(U31(z0)), x1)) -> c38(A__U41(a__U31(a__U31(mark(z0))), x1), MARK(U31(U31(z0)))) MARK(U41(U31(U41(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U41(mark(z0), z1)), x1), MARK(U31(U41(z0, z1)))) MARK(U41(U31(U42(z0)), x1)) -> c38(A__U41(a__U31(a__U42(mark(z0))), x1), MARK(U31(U42(z0)))) MARK(U41(U31(isNatIList(z0)), x1)) -> c38(A__U41(a__U31(a__isNatIList(z0)), x1), MARK(U31(isNatIList(z0)))) MARK(U41(U31(U51(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U51(mark(z0), z1)), x1), MARK(U31(U51(z0, z1)))) MARK(U41(U31(U52(z0)), x1)) -> c38(A__U41(a__U31(a__U52(mark(z0))), x1), MARK(U31(U52(z0)))) MARK(U41(U31(isNatList(z0)), x1)) -> c38(A__U41(a__U31(a__isNatList(z0)), x1), MARK(U31(isNatList(z0)))) MARK(U41(U31(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U31(a__U61(mark(z0), z1, z2)), x1), MARK(U31(U61(z0, z1, z2)))) MARK(U41(U31(U62(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U62(mark(z0), z1)), x1), MARK(U31(U62(z0, z1)))) MARK(U41(U31(isNat(z0)), x1)) -> c38(A__U41(a__U31(a__isNat(z0)), x1), MARK(U31(isNat(z0)))) MARK(U41(U31(length(z0)), x1)) -> c38(A__U41(a__U31(a__length(mark(z0))), x1), MARK(U31(length(z0)))) MARK(U41(U31(cons(z0, z1)), x1)) -> c38(A__U41(a__U31(cons(mark(z0), z1)), x1), MARK(U31(cons(z0, z1)))) MARK(U41(U31(0), x1)) -> c38(A__U41(a__U31(0), x1), MARK(U31(0))) MARK(U41(U31(tt), x1)) -> c38(A__U41(a__U31(tt), x1), MARK(U31(tt))) MARK(U41(U31(s(z0)), x1)) -> c38(A__U41(a__U31(s(mark(z0))), x1), MARK(U31(s(z0)))) MARK(U41(U31(nil), x1)) -> c38(A__U41(a__U31(nil), x1), MARK(U31(nil))) MARK(U41(U31(x0), x1)) -> c38(MARK(U31(x0))) MARK(U41(U41(U11(z0), x1), x2)) -> c38(A__U41(a__U41(a__U11(mark(z0)), x1), x2), MARK(U41(U11(z0), x1))) MARK(U41(U41(U21(z0), x1), x2)) -> c38(A__U41(a__U41(a__U21(mark(z0)), x1), x2), MARK(U41(U21(z0), x1))) MARK(U41(U41(U31(z0), x1), x2)) -> c38(A__U41(a__U41(a__U31(mark(z0)), x1), x2), MARK(U41(U31(z0), x1))) MARK(U41(U41(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U41(mark(z0), z1), x1), x2), MARK(U41(U41(z0, z1), x1))) MARK(U41(U41(U42(z0), x1), x2)) -> c38(A__U41(a__U41(a__U42(mark(z0)), x1), x2), MARK(U41(U42(z0), x1))) MARK(U41(U41(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U51(mark(z0), z1), x1), x2), MARK(U41(U51(z0, z1), x1))) MARK(U41(U41(U52(z0), x1), x2)) -> c38(A__U41(a__U41(a__U52(mark(z0)), x1), x2), MARK(U41(U52(z0), x1))) MARK(U41(U41(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U41(a__U61(mark(z0), z1, z2), x1), x2), MARK(U41(U61(z0, z1, z2), x1))) MARK(U41(U41(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U62(mark(z0), z1), x1), x2), MARK(U41(U62(z0, z1), x1))) MARK(U41(U41(length(z0), x1), x2)) -> c38(A__U41(a__U41(a__length(mark(z0)), x1), x2), MARK(U41(length(z0), x1))) MARK(U41(U41(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U41(cons(mark(z0), z1), x1), x2), MARK(U41(cons(z0, z1), x1))) MARK(U41(U41(s(z0), x1), x2)) -> c38(A__U41(a__U41(s(mark(z0)), x1), x2), MARK(U41(s(z0), x1))) MARK(U41(U41(x0, z1), x2)) -> c38(MARK(U41(x0, z1))) MARK(U41(U41(0, x1), x2)) -> c38(A__U41(a__U41(0, x1), x2)) MARK(U41(U41(nil, x1), x2)) -> c38(A__U41(a__U41(nil, x1), x2)) MARK(U41(U41(zeros, x1), x2)) -> c2(A__U41(a__U41(a__zeros, x1), x2)) MARK(U41(U41(zeros, x1), x2)) -> c2(MARK(U41(zeros, x1))) MARK(U41(U41(isNatIList(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNatIList(z0), x1), x2)) MARK(U41(U41(isNatIList(z0), x1), x2)) -> c2(MARK(U41(isNatIList(z0), x1))) MARK(U41(U41(isNatList(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNatList(z0), x1), x2)) MARK(U41(U41(isNatList(z0), x1), x2)) -> c2(MARK(U41(isNatList(z0), x1))) MARK(U41(U41(isNat(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNat(z0), x1), x2)) MARK(U41(U41(isNat(z0), x1), x2)) -> c2(MARK(U41(isNat(z0), x1))) MARK(U41(U41(tt, x1), x2)) -> c2(A__U41(a__U41(tt, x1), x2)) MARK(U41(U41(tt, x1), x2)) -> c2(MARK(U41(tt, x1))) MARK(U41(U42(zeros), x1)) -> c38(A__U41(a__U42(a__zeros), x1), MARK(U42(zeros))) MARK(U41(U42(U11(z0)), x1)) -> c38(A__U41(a__U42(a__U11(mark(z0))), x1), MARK(U42(U11(z0)))) MARK(U41(U42(U21(z0)), x1)) -> c38(A__U41(a__U42(a__U21(mark(z0))), x1), MARK(U42(U21(z0)))) MARK(U41(U42(U31(z0)), x1)) -> c38(A__U41(a__U42(a__U31(mark(z0))), x1), MARK(U42(U31(z0)))) MARK(U41(U42(U41(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U41(mark(z0), z1)), x1), MARK(U42(U41(z0, z1)))) MARK(U41(U42(U42(z0)), x1)) -> c38(A__U41(a__U42(a__U42(mark(z0))), x1), MARK(U42(U42(z0)))) MARK(U41(U42(isNatIList(z0)), x1)) -> c38(A__U41(a__U42(a__isNatIList(z0)), x1), MARK(U42(isNatIList(z0)))) MARK(U41(U42(U51(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U51(mark(z0), z1)), x1), MARK(U42(U51(z0, z1)))) MARK(U41(U42(U52(z0)), x1)) -> c38(A__U41(a__U42(a__U52(mark(z0))), x1), MARK(U42(U52(z0)))) MARK(U41(U42(isNatList(z0)), x1)) -> c38(A__U41(a__U42(a__isNatList(z0)), x1), MARK(U42(isNatList(z0)))) MARK(U41(U42(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U42(a__U61(mark(z0), z1, z2)), x1), MARK(U42(U61(z0, z1, z2)))) MARK(U41(U42(U62(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U62(mark(z0), z1)), x1), MARK(U42(U62(z0, z1)))) MARK(U41(U42(isNat(z0)), x1)) -> c38(A__U41(a__U42(a__isNat(z0)), x1), MARK(U42(isNat(z0)))) MARK(U41(U42(length(z0)), x1)) -> c38(A__U41(a__U42(a__length(mark(z0))), x1), MARK(U42(length(z0)))) MARK(U41(U42(cons(z0, z1)), x1)) -> c38(A__U41(a__U42(cons(mark(z0), z1)), x1), MARK(U42(cons(z0, z1)))) MARK(U41(U42(0), x1)) -> c38(A__U41(a__U42(0), x1), MARK(U42(0))) MARK(U41(U42(tt), x1)) -> c38(A__U41(a__U42(tt), x1), MARK(U42(tt))) MARK(U41(U42(s(z0)), x1)) -> c38(A__U41(a__U42(s(mark(z0))), x1), MARK(U42(s(z0)))) MARK(U41(U42(nil), x1)) -> c38(A__U41(a__U42(nil), x1), MARK(U42(nil))) MARK(U41(U42(x0), x1)) -> c38(MARK(U42(x0))) MARK(U41(U51(U11(z0), x1), x2)) -> c38(A__U41(a__U51(a__U11(mark(z0)), x1), x2), MARK(U51(U11(z0), x1))) MARK(U41(U51(U21(z0), x1), x2)) -> c38(A__U41(a__U51(a__U21(mark(z0)), x1), x2), MARK(U51(U21(z0), x1))) MARK(U41(U51(U31(z0), x1), x2)) -> c38(A__U41(a__U51(a__U31(mark(z0)), x1), x2), MARK(U51(U31(z0), x1))) MARK(U41(U51(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U41(mark(z0), z1), x1), x2), MARK(U51(U41(z0, z1), x1))) MARK(U41(U51(U42(z0), x1), x2)) -> c38(A__U41(a__U51(a__U42(mark(z0)), x1), x2), MARK(U51(U42(z0), x1))) MARK(U41(U51(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U51(mark(z0), z1), x1), x2), MARK(U51(U51(z0, z1), x1))) MARK(U41(U51(U52(z0), x1), x2)) -> c38(A__U41(a__U51(a__U52(mark(z0)), x1), x2), MARK(U51(U52(z0), x1))) MARK(U41(U51(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U51(a__U61(mark(z0), z1, z2), x1), x2), MARK(U51(U61(z0, z1, z2), x1))) MARK(U41(U51(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U62(mark(z0), z1), x1), x2), MARK(U51(U62(z0, z1), x1))) MARK(U41(U51(length(z0), x1), x2)) -> c38(A__U41(a__U51(a__length(mark(z0)), x1), x2), MARK(U51(length(z0), x1))) MARK(U41(U51(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U51(cons(mark(z0), z1), x1), x2), MARK(U51(cons(z0, z1), x1))) MARK(U41(U51(s(z0), x1), x2)) -> c38(A__U41(a__U51(s(mark(z0)), x1), x2), MARK(U51(s(z0), x1))) MARK(U41(U51(x0, z1), x2)) -> c38(MARK(U51(x0, z1))) MARK(U41(U51(0, x1), x2)) -> c38(A__U41(a__U51(0, x1), x2)) MARK(U41(U51(nil, x1), x2)) -> c38(A__U41(a__U51(nil, x1), x2)) MARK(U41(U51(zeros, x1), x2)) -> c3(A__U41(a__U51(a__zeros, x1), x2)) MARK(U41(U51(zeros, x1), x2)) -> c3(MARK(U51(zeros, x1))) MARK(U41(U51(isNatIList(z0), x1), x2)) -> c3(A__U41(a__U51(a__isNatIList(z0), x1), x2)) MARK(U41(U51(isNatIList(z0), x1), x2)) -> c3(MARK(U51(isNatIList(z0), x1))) MARK(U41(U51(isNatList(z0), x1), x2)) -> c3(A__U41(a__U51(a__isNatList(z0), x1), x2)) MARK(U41(U51(isNatList(z0), x1), x2)) -> c3(MARK(U51(isNatList(z0), x1))) MARK(U41(U51(isNat(z0), x1), x2)) -> c3(A__U41(a__U51(a__isNat(z0), x1), x2)) MARK(U41(U51(isNat(z0), x1), x2)) -> c3(MARK(U51(isNat(z0), x1))) MARK(U41(U51(tt, x1), x2)) -> c3(A__U41(a__U51(tt, x1), x2)) MARK(U41(U51(tt, x1), x2)) -> c3(MARK(U51(tt, x1))) MARK(U41(U52(zeros), x1)) -> c38(A__U41(a__U52(a__zeros), x1), MARK(U52(zeros))) MARK(U41(U52(U11(z0)), x1)) -> c38(A__U41(a__U52(a__U11(mark(z0))), x1), MARK(U52(U11(z0)))) MARK(U41(U52(U21(z0)), x1)) -> c38(A__U41(a__U52(a__U21(mark(z0))), x1), MARK(U52(U21(z0)))) MARK(U41(U52(U31(z0)), x1)) -> c38(A__U41(a__U52(a__U31(mark(z0))), x1), MARK(U52(U31(z0)))) MARK(U41(U52(U41(z0, z1)), x1)) -> c38(A__U41(a__U52(a__U41(mark(z0), z1)), x1), MARK(U52(U41(z0, z1)))) MARK(U41(U52(U42(z0)), x1)) -> c38(A__U41(a__U52(a__U42(mark(z0))), x1), MARK(U52(U42(z0)))) MARK(U41(U52(isNatIList(z0)), x1)) -> c38(A__U41(a__U52(a__isNatIList(z0)), x1), MARK(U52(isNatIList(z0)))) MARK(U41(U52(U51(z0, z1)), x1)) -> c38(A__U41(a__U52(a__U51(mark(z0), z1)), x1), MARK(U52(U51(z0, z1)))) MARK(U41(U52(U52(z0)), x1)) -> c38(A__U41(a__U52(a__U52(mark(z0))), x1), MARK(U52(U52(z0)))) MARK(U41(U52(isNatList(z0)), x1)) -> c38(A__U41(a__U52(a__isNatList(z0)), x1), MARK(U52(isNatList(z0)))) MARK(U41(U52(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U52(a__U61(mark(z0), z1, z2)), x1), MARK(U52(U61(z0, z1, z2)))) MARK(U41(U52(U62(z0, z1)), x1)) -> c38(A__U41(a__U52(a__U62(mark(z0), z1)), x1), MARK(U52(U62(z0, z1)))) MARK(U41(U52(isNat(z0)), x1)) -> c38(A__U41(a__U52(a__isNat(z0)), x1), MARK(U52(isNat(z0)))) MARK(U41(U52(length(z0)), x1)) -> c38(A__U41(a__U52(a__length(mark(z0))), x1), MARK(U52(length(z0)))) MARK(U41(U52(cons(z0, z1)), x1)) -> c38(A__U41(a__U52(cons(mark(z0), z1)), x1), MARK(U52(cons(z0, z1)))) MARK(U41(U52(0), x1)) -> c38(A__U41(a__U52(0), x1), MARK(U52(0))) MARK(U41(U52(tt), x1)) -> c38(A__U41(a__U52(tt), x1), MARK(U52(tt))) MARK(U41(U52(s(z0)), x1)) -> c38(A__U41(a__U52(s(mark(z0))), x1), MARK(U52(s(z0)))) MARK(U41(U52(nil), x1)) -> c38(A__U41(a__U52(nil), x1), MARK(U52(nil))) MARK(U41(U52(x0), x1)) -> c38(MARK(U52(x0))) MARK(U41(U61(zeros, x1, x2), x3)) -> c38(A__U41(a__U61(a__zeros, x1, x2), x3), MARK(U61(zeros, x1, x2))) MARK(U41(U61(U11(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U11(mark(z0)), x1, x2), x3), MARK(U61(U11(z0), x1, x2))) MARK(U41(U61(U21(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U21(mark(z0)), x1, x2), x3), MARK(U61(U21(z0), x1, x2))) MARK(U41(U61(U31(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U31(mark(z0)), x1, x2), x3), MARK(U61(U31(z0), x1, x2))) MARK(U41(U61(U41(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(a__U41(mark(z0), z1), x1, x2), x3), MARK(U61(U41(z0, z1), x1, x2))) MARK(U41(U61(U42(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U42(mark(z0)), x1, x2), x3), MARK(U61(U42(z0), x1, x2))) MARK(U41(U61(isNatIList(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__isNatIList(z0), x1, x2), x3), MARK(U61(isNatIList(z0), x1, x2))) MARK(U41(U61(U51(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(a__U51(mark(z0), z1), x1, x2), x3), MARK(U61(U51(z0, z1), x1, x2))) MARK(U41(U61(U52(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U52(mark(z0)), x1, x2), x3), MARK(U61(U52(z0), x1, x2))) MARK(U41(U61(isNatList(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__isNatList(z0), x1, x2), x3), MARK(U61(isNatList(z0), x1, x2))) MARK(U41(U61(U61(z0, z1, z2), x1, x2), x3)) -> c38(A__U41(a__U61(a__U61(mark(z0), z1, z2), x1, x2), x3), MARK(U61(U61(z0, z1, z2), x1, x2))) MARK(U41(U61(U62(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(a__U62(mark(z0), z1), x1, x2), x3), MARK(U61(U62(z0, z1), x1, x2))) MARK(U41(U61(isNat(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__isNat(z0), x1, x2), x3), MARK(U61(isNat(z0), x1, x2))) MARK(U41(U61(length(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__length(mark(z0)), x1, x2), x3), MARK(U61(length(z0), x1, x2))) MARK(U41(U61(cons(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(cons(mark(z0), z1), x1, x2), x3), MARK(U61(cons(z0, z1), x1, x2))) MARK(U41(U61(tt, x1, x2), x3)) -> c38(A__U41(a__U61(tt, x1, x2), x3), MARK(U61(tt, x1, x2))) MARK(U41(U61(s(z0), x1, x2), x3)) -> c38(A__U41(a__U61(s(mark(z0)), x1, x2), x3), MARK(U61(s(z0), x1, x2))) MARK(U41(U61(x0, z1, z2), x3)) -> c38(MARK(U61(x0, z1, z2))) MARK(U41(U61(0, x1, x2), x3)) -> c38(A__U41(a__U61(0, x1, x2), x3)) MARK(U41(U61(nil, x1, x2), x3)) -> c38(A__U41(a__U61(nil, x1, x2), x3)) MARK(U41(U62(zeros, x1), x2)) -> c38(A__U41(a__U62(a__zeros, x1), x2), MARK(U62(zeros, x1))) MARK(U41(U62(U11(z0), x1), x2)) -> c38(A__U41(a__U62(a__U11(mark(z0)), x1), x2), MARK(U62(U11(z0), x1))) MARK(U41(U62(U21(z0), x1), x2)) -> c38(A__U41(a__U62(a__U21(mark(z0)), x1), x2), MARK(U62(U21(z0), x1))) MARK(U41(U62(U31(z0), x1), x2)) -> c38(A__U41(a__U62(a__U31(mark(z0)), x1), x2), MARK(U62(U31(z0), x1))) MARK(U41(U62(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U62(a__U41(mark(z0), z1), x1), x2), MARK(U62(U41(z0, z1), x1))) MARK(U41(U62(U42(z0), x1), x2)) -> c38(A__U41(a__U62(a__U42(mark(z0)), x1), x2), MARK(U62(U42(z0), x1))) MARK(U41(U62(isNatIList(z0), x1), x2)) -> c38(A__U41(a__U62(a__isNatIList(z0), x1), x2), MARK(U62(isNatIList(z0), x1))) MARK(U41(U62(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U62(a__U51(mark(z0), z1), x1), x2), MARK(U62(U51(z0, z1), x1))) MARK(U41(U62(U52(z0), x1), x2)) -> c38(A__U41(a__U62(a__U52(mark(z0)), x1), x2), MARK(U62(U52(z0), x1))) MARK(U41(U62(isNatList(z0), x1), x2)) -> c38(A__U41(a__U62(a__isNatList(z0), x1), x2), MARK(U62(isNatList(z0), x1))) MARK(U41(U62(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U62(a__U61(mark(z0), z1, z2), x1), x2), MARK(U62(U61(z0, z1, z2), x1))) MARK(U41(U62(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U62(a__U62(mark(z0), z1), x1), x2), MARK(U62(U62(z0, z1), x1))) MARK(U41(U62(isNat(z0), x1), x2)) -> c38(A__U41(a__U62(a__isNat(z0), x1), x2), MARK(U62(isNat(z0), x1))) MARK(U41(U62(length(z0), x1), x2)) -> c38(A__U41(a__U62(a__length(mark(z0)), x1), x2), MARK(U62(length(z0), x1))) MARK(U41(U62(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U62(cons(mark(z0), z1), x1), x2), MARK(U62(cons(z0, z1), x1))) MARK(U41(U62(tt, x1), x2)) -> c38(A__U41(a__U62(tt, x1), x2), MARK(U62(tt, x1))) MARK(U41(U62(s(z0), x1), x2)) -> c38(A__U41(a__U62(s(mark(z0)), x1), x2), MARK(U62(s(z0), x1))) MARK(U41(U62(x0, z1), x2)) -> c38(MARK(U62(x0, z1))) MARK(U41(U62(0, x1), x2)) -> c38(A__U41(a__U62(0, x1), x2)) MARK(U41(U62(nil, x1), x2)) -> c38(A__U41(a__U62(nil, x1), x2)) MARK(U41(length(zeros), x1)) -> c38(A__U41(a__length(a__zeros), x1), MARK(length(zeros))) MARK(U41(length(U11(z0)), x1)) -> c38(A__U41(a__length(a__U11(mark(z0))), x1), MARK(length(U11(z0)))) MARK(U41(length(U21(z0)), x1)) -> c38(A__U41(a__length(a__U21(mark(z0))), x1), MARK(length(U21(z0)))) MARK(U41(length(U31(z0)), x1)) -> c38(A__U41(a__length(a__U31(mark(z0))), x1), MARK(length(U31(z0)))) MARK(U41(length(U41(z0, z1)), x1)) -> c38(A__U41(a__length(a__U41(mark(z0), z1)), x1), MARK(length(U41(z0, z1)))) MARK(U41(length(U42(z0)), x1)) -> c38(A__U41(a__length(a__U42(mark(z0))), x1), MARK(length(U42(z0)))) MARK(U41(length(isNatIList(z0)), x1)) -> c38(A__U41(a__length(a__isNatIList(z0)), x1), MARK(length(isNatIList(z0)))) MARK(U41(length(U51(z0, z1)), x1)) -> c38(A__U41(a__length(a__U51(mark(z0), z1)), x1), MARK(length(U51(z0, z1)))) MARK(U41(length(U52(z0)), x1)) -> c38(A__U41(a__length(a__U52(mark(z0))), x1), MARK(length(U52(z0)))) MARK(U41(length(isNatList(z0)), x1)) -> c38(A__U41(a__length(a__isNatList(z0)), x1), MARK(length(isNatList(z0)))) MARK(U41(length(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__length(a__U61(mark(z0), z1, z2)), x1), MARK(length(U61(z0, z1, z2)))) MARK(U41(length(U62(z0, z1)), x1)) -> c38(A__U41(a__length(a__U62(mark(z0), z1)), x1), MARK(length(U62(z0, z1)))) MARK(U41(length(isNat(z0)), x1)) -> c38(A__U41(a__length(a__isNat(z0)), x1), MARK(length(isNat(z0)))) MARK(U41(length(length(z0)), x1)) -> c38(A__U41(a__length(a__length(mark(z0))), x1), MARK(length(length(z0)))) MARK(U41(length(cons(z0, z1)), x1)) -> c38(A__U41(a__length(cons(mark(z0), z1)), x1), MARK(length(cons(z0, z1)))) MARK(U41(length(s(z0)), x1)) -> c38(A__U41(a__length(s(mark(z0))), x1), MARK(length(s(z0)))) MARK(U41(length(x0), x1)) -> c38(MARK(length(x0))) MARK(U41(length(0), x1)) -> c38(A__U41(a__length(0), x1)) MARK(U41(length(tt), x1)) -> c38(A__U41(a__length(tt), x1)) MARK(U41(length(nil), x1)) -> c38(A__U41(a__length(nil), x1)) MARK(U41(zeros, x0)) -> c38(A__U41(cons(0, zeros), x0)) MARK(U41(zeros, x0)) -> c38(A__U41(zeros, x0)) K tuples:none Defined Rule Symbols: a__zeros, a__U11_1, a__U21_1, a__U31_1, a__U41_2, a__U42_1, a__U51_2, a__U52_1, a__U61_3, a__U62_2, a__isNat_1, a__isNatIList_1, a__isNatList_1, a__length_1, mark_1 Defined Pair Symbols: MARK_1, A__U41_2, A__U51_2, A__ISNAT_1, A__ISNATILIST_1, A__U61_3, A__U62_2, A__ISNATLIST_1, A__LENGTH_1 Compound Symbols: c40_1, c43_1, c46_1, c48_1, c51_1, c8_1, c12_1, c21_1, c22_1, c24_1, c35_1, c36_1, c37_1, c39_1, c42_1, c16_1, c18_2, c18_1, c26_1, c29_1, c32_1, c38_1, c_1, c41_2, c41_1, c1_1, c44_2, c44_1, c45_2, c45_1, c47_2, c47_1, c16_2, c26_2, c29_2, c32_2, c38_2, c2_1, c3_1 ---------------------------------------- (215) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 3 trailing nodes: MARK(U41(zeros, x0)) -> c38(A__U41(cons(0, zeros), x0)) MARK(U41(zeros, x0)) -> c38(A__U41(zeros, x0)) MARK(U41(U41(zeros, x1), x2)) -> c2(MARK(U41(zeros, x1))) ---------------------------------------- (216) Obligation: Complexity Dependency Tuples Problem Rules: a__zeros -> cons(0, zeros) a__zeros -> zeros a__U11(tt) -> tt a__U11(z0) -> U11(z0) a__U21(tt) -> tt a__U21(z0) -> U21(z0) a__U31(tt) -> tt a__U31(z0) -> U31(z0) a__U41(tt, z0) -> a__U42(a__isNatIList(z0)) a__U41(z0, z1) -> U41(z0, z1) a__U42(tt) -> tt a__U42(z0) -> U42(z0) a__U51(tt, z0) -> a__U52(a__isNatList(z0)) a__U51(z0, z1) -> U51(z0, z1) a__U52(tt) -> tt a__U52(z0) -> U52(z0) a__U61(tt, z0, z1) -> a__U62(a__isNat(z1), z0) a__U61(z0, z1, z2) -> U61(z0, z1, z2) a__U62(tt, z0) -> s(a__length(mark(z0))) a__U62(z0, z1) -> U62(z0, z1) a__isNat(0) -> tt a__isNat(length(z0)) -> a__U11(a__isNatList(z0)) a__isNat(s(z0)) -> a__U21(a__isNat(z0)) a__isNat(z0) -> isNat(z0) a__isNatIList(z0) -> a__U31(a__isNatList(z0)) a__isNatIList(zeros) -> tt a__isNatIList(cons(z0, z1)) -> a__U41(a__isNat(z0), z1) a__isNatIList(z0) -> isNatIList(z0) a__isNatList(nil) -> tt a__isNatList(cons(z0, z1)) -> a__U51(a__isNat(z0), z1) a__isNatList(z0) -> isNatList(z0) a__length(nil) -> 0 a__length(cons(z0, z1)) -> a__U61(a__isNatList(z1), z1, z0) a__length(z0) -> length(z0) mark(zeros) -> a__zeros mark(U11(z0)) -> a__U11(mark(z0)) mark(U21(z0)) -> a__U21(mark(z0)) mark(U31(z0)) -> a__U31(mark(z0)) mark(U41(z0, z1)) -> a__U41(mark(z0), z1) mark(U42(z0)) -> a__U42(mark(z0)) mark(isNatIList(z0)) -> a__isNatIList(z0) mark(U51(z0, z1)) -> a__U51(mark(z0), z1) mark(U52(z0)) -> a__U52(mark(z0)) mark(isNatList(z0)) -> a__isNatList(z0) mark(U61(z0, z1, z2)) -> a__U61(mark(z0), z1, z2) mark(U62(z0, z1)) -> a__U62(mark(z0), z1) mark(isNat(z0)) -> a__isNat(z0) mark(length(z0)) -> a__length(mark(z0)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(0) -> 0 mark(tt) -> tt mark(s(z0)) -> s(mark(z0)) mark(nil) -> nil Tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) A__U62(tt, isNatList(cons(z0, z1))) -> c18(A__LENGTH(a__U51(a__isNat(z0), z1)), MARK(isNatList(cons(z0, z1)))) A__U62(tt, isNatList(nil)) -> c18(MARK(isNatList(nil))) A__U62(tt, isNatList(z0)) -> c18(MARK(isNatList(z0))) A__U62(tt, U61(zeros, x1, x2)) -> c18(A__LENGTH(a__U61(a__zeros, x1, x2)), MARK(U61(zeros, x1, x2))) A__U62(tt, U61(U11(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U11(mark(z0)), x1, x2)), MARK(U61(U11(z0), x1, x2))) A__U62(tt, U61(U21(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U21(mark(z0)), x1, x2)), MARK(U61(U21(z0), x1, x2))) A__U62(tt, U61(U31(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U31(mark(z0)), x1, x2)), MARK(U61(U31(z0), x1, x2))) A__U62(tt, U61(U41(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U41(mark(z0), z1), x1, x2)), MARK(U61(U41(z0, z1), x1, x2))) A__U62(tt, U61(U42(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U42(mark(z0)), x1, x2)), MARK(U61(U42(z0), x1, x2))) A__U62(tt, U61(isNatIList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatIList(z0), x1, x2)), MARK(U61(isNatIList(z0), x1, x2))) A__U62(tt, U61(U51(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U51(mark(z0), z1), x1, x2)), MARK(U61(U51(z0, z1), x1, x2))) A__U62(tt, U61(U52(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U52(mark(z0)), x1, x2)), MARK(U61(U52(z0), x1, x2))) A__U62(tt, U61(isNatList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatList(z0), x1, x2)), MARK(U61(isNatList(z0), x1, x2))) A__U62(tt, U61(U61(z0, z1, z2), x1, x2)) -> c18(A__LENGTH(a__U61(a__U61(mark(z0), z1, z2), x1, x2)), MARK(U61(U61(z0, z1, z2), x1, x2))) A__U62(tt, U61(U62(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U62(mark(z0), z1), x1, x2)), MARK(U61(U62(z0, z1), x1, x2))) A__U62(tt, U61(isNat(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNat(z0), x1, x2)), MARK(U61(isNat(z0), x1, x2))) A__U62(tt, U61(length(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__length(mark(z0)), x1, x2)), MARK(U61(length(z0), x1, x2))) A__U62(tt, U61(cons(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(cons(mark(z0), z1), x1, x2)), MARK(U61(cons(z0, z1), x1, x2))) A__U62(tt, U61(tt, x1, x2)) -> c18(A__LENGTH(a__U61(tt, x1, x2)), MARK(U61(tt, x1, x2))) A__U62(tt, U61(s(z0), x1, x2)) -> c18(A__LENGTH(a__U61(s(mark(z0)), x1, x2)), MARK(U61(s(z0), x1, x2))) A__U62(tt, U61(x0, z1, z2)) -> c18(MARK(U61(x0, z1, z2))) A__U62(tt, U61(0, x1, x2)) -> c18(A__LENGTH(a__U61(0, x1, x2))) A__U62(tt, U61(nil, x1, x2)) -> c18(A__LENGTH(a__U61(nil, x1, x2))) A__U62(tt, U62(zeros, x1)) -> c18(A__LENGTH(a__U62(a__zeros, x1)), MARK(U62(zeros, x1))) A__U62(tt, U62(U11(z0), x1)) -> c18(A__LENGTH(a__U62(a__U11(mark(z0)), x1)), MARK(U62(U11(z0), x1))) A__U62(tt, U62(U21(z0), x1)) -> c18(A__LENGTH(a__U62(a__U21(mark(z0)), x1)), MARK(U62(U21(z0), x1))) A__U62(tt, U62(U31(z0), x1)) -> c18(A__LENGTH(a__U62(a__U31(mark(z0)), x1)), MARK(U62(U31(z0), x1))) A__U62(tt, U62(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U41(mark(z0), z1), x1)), MARK(U62(U41(z0, z1), x1))) A__U62(tt, U62(U42(z0), x1)) -> c18(A__LENGTH(a__U62(a__U42(mark(z0)), x1)), MARK(U62(U42(z0), x1))) A__U62(tt, U62(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatIList(z0), x1)), MARK(U62(isNatIList(z0), x1))) A__U62(tt, U62(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U51(mark(z0), z1), x1)), MARK(U62(U51(z0, z1), x1))) A__U62(tt, U62(U52(z0), x1)) -> c18(A__LENGTH(a__U62(a__U52(mark(z0)), x1)), MARK(U62(U52(z0), x1))) A__U62(tt, U62(isNatList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatList(z0), x1)), MARK(U62(isNatList(z0), x1))) A__U62(tt, U62(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U62(a__U61(mark(z0), z1, z2), x1)), MARK(U62(U61(z0, z1, z2), x1))) A__U62(tt, U62(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U62(mark(z0), z1), x1)), MARK(U62(U62(z0, z1), x1))) A__U62(tt, U62(isNat(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNat(z0), x1)), MARK(U62(isNat(z0), x1))) A__U62(tt, U62(length(z0), x1)) -> c18(A__LENGTH(a__U62(a__length(mark(z0)), x1)), MARK(U62(length(z0), x1))) A__U62(tt, U62(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U62(cons(mark(z0), z1), x1)), MARK(U62(cons(z0, z1), x1))) A__U62(tt, U62(tt, x1)) -> c18(A__LENGTH(a__U62(tt, x1)), MARK(U62(tt, x1))) A__U62(tt, U62(s(z0), x1)) -> c18(A__LENGTH(a__U62(s(mark(z0)), x1)), MARK(U62(s(z0), x1))) A__U62(tt, U62(x0, z1)) -> c18(MARK(U62(x0, z1))) A__U62(tt, U62(0, x1)) -> c18(A__LENGTH(a__U62(0, x1))) A__U62(tt, U62(nil, x1)) -> c18(A__LENGTH(a__U62(nil, x1))) A__U62(tt, isNat(length(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(isNat(length(z0)))) A__U62(tt, isNat(s(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(isNat(s(z0)))) A__U62(tt, isNat(0)) -> c18(MARK(isNat(0))) A__U62(tt, isNat(z0)) -> c18(MARK(isNat(z0))) A__U62(tt, length(zeros)) -> c18(A__LENGTH(a__length(a__zeros)), MARK(length(zeros))) A__U62(tt, length(U11(z0))) -> c18(A__LENGTH(a__length(a__U11(mark(z0)))), MARK(length(U11(z0)))) A__U62(tt, length(U21(z0))) -> c18(A__LENGTH(a__length(a__U21(mark(z0)))), MARK(length(U21(z0)))) A__U62(tt, length(U31(z0))) -> c18(A__LENGTH(a__length(a__U31(mark(z0)))), MARK(length(U31(z0)))) A__U62(tt, length(U41(z0, z1))) -> c18(A__LENGTH(a__length(a__U41(mark(z0), z1))), MARK(length(U41(z0, z1)))) A__U62(tt, length(U42(z0))) -> c18(A__LENGTH(a__length(a__U42(mark(z0)))), MARK(length(U42(z0)))) A__U62(tt, length(isNatIList(z0))) -> c18(A__LENGTH(a__length(a__isNatIList(z0))), MARK(length(isNatIList(z0)))) A__U62(tt, length(U51(z0, z1))) -> c18(A__LENGTH(a__length(a__U51(mark(z0), z1))), MARK(length(U51(z0, z1)))) A__U62(tt, length(U52(z0))) -> c18(A__LENGTH(a__length(a__U52(mark(z0)))), MARK(length(U52(z0)))) A__U62(tt, length(isNatList(z0))) -> c18(A__LENGTH(a__length(a__isNatList(z0))), MARK(length(isNatList(z0)))) A__U62(tt, length(U61(z0, z1, z2))) -> c18(A__LENGTH(a__length(a__U61(mark(z0), z1, z2))), MARK(length(U61(z0, z1, z2)))) A__U62(tt, length(U62(z0, z1))) -> c18(A__LENGTH(a__length(a__U62(mark(z0), z1))), MARK(length(U62(z0, z1)))) A__U62(tt, length(isNat(z0))) -> c18(A__LENGTH(a__length(a__isNat(z0))), MARK(length(isNat(z0)))) A__U62(tt, length(length(z0))) -> c18(A__LENGTH(a__length(a__length(mark(z0)))), MARK(length(length(z0)))) A__U62(tt, length(cons(z0, z1))) -> c18(A__LENGTH(a__length(cons(mark(z0), z1))), MARK(length(cons(z0, z1)))) A__U62(tt, length(s(z0))) -> c18(A__LENGTH(a__length(s(mark(z0)))), MARK(length(s(z0)))) A__U62(tt, length(x0)) -> c18(MARK(length(x0))) A__U62(tt, length(0)) -> c18(A__LENGTH(a__length(0))) A__U62(tt, length(tt)) -> c18(A__LENGTH(a__length(tt))) A__U62(tt, length(nil)) -> c18(A__LENGTH(a__length(nil))) A__U62(tt, zeros) -> c18(A__LENGTH(cons(0, zeros))) A__ISNATILIST(cons(length(nil), x1)) -> c26(A__U41(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATILIST(cons(length(cons(z0, z1)), x1)) -> c26(A__U41(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(length(x0), x1)) -> c26(A__ISNAT(length(x0))) A__ISNATILIST(cons(s(0), x1)) -> c26(A__U41(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATILIST(cons(s(length(z0)), x1)) -> c26(A__U41(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATILIST(cons(s(s(z0)), x1)) -> c26(A__U41(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(s(x0), x1)) -> c26(A__ISNAT(s(x0))) A__ISNATLIST(cons(length(nil), x1)) -> c29(A__U51(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATLIST(cons(length(cons(z0, z1)), x1)) -> c29(A__U51(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(length(x0), x1)) -> c29(A__ISNAT(length(x0))) A__ISNATLIST(cons(s(0), x1)) -> c29(A__U51(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATLIST(cons(s(length(z0)), x1)) -> c29(A__U51(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATLIST(cons(s(s(z0)), x1)) -> c29(A__U51(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(s(x0), x1)) -> c29(A__ISNAT(s(x0))) A__LENGTH(cons(x0, cons(0, x2))) -> c32(A__U61(a__U51(tt, x2), cons(0, x2), x0), A__ISNATLIST(cons(0, x2))) A__LENGTH(cons(x0, cons(length(z0), x2))) -> c32(A__U61(a__U51(a__U11(a__isNatList(z0)), x2), cons(length(z0), x2), x0), A__ISNATLIST(cons(length(z0), x2))) A__LENGTH(cons(x0, cons(s(z0), x2))) -> c32(A__U61(a__U51(a__U21(a__isNat(z0)), x2), cons(s(z0), x2), x0), A__ISNATLIST(cons(s(z0), x2))) A__LENGTH(cons(x0, cons(z0, x2))) -> c32(A__U61(a__U51(isNat(z0), x2), cons(z0, x2), x0), A__ISNATLIST(cons(z0, x2))) A__LENGTH(cons(x0, cons(x1, z1))) -> c32(A__ISNATLIST(cons(x1, z1))) MARK(U41(U11(zeros), x1)) -> c38(A__U41(a__U11(a__zeros), x1), MARK(U11(zeros))) MARK(U41(U11(U11(z0)), x1)) -> c38(A__U41(a__U11(a__U11(mark(z0))), x1), MARK(U11(U11(z0)))) MARK(U41(U11(U21(z0)), x1)) -> c38(A__U41(a__U11(a__U21(mark(z0))), x1), MARK(U11(U21(z0)))) MARK(U41(U11(U31(z0)), x1)) -> c38(A__U41(a__U11(a__U31(mark(z0))), x1), MARK(U11(U31(z0)))) MARK(U41(U11(U41(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U41(mark(z0), z1)), x1), MARK(U11(U41(z0, z1)))) MARK(U41(U11(U42(z0)), x1)) -> c38(A__U41(a__U11(a__U42(mark(z0))), x1), MARK(U11(U42(z0)))) MARK(U41(U11(isNatIList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatIList(z0)), x1), MARK(U11(isNatIList(z0)))) MARK(U41(U11(U51(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U51(mark(z0), z1)), x1), MARK(U11(U51(z0, z1)))) MARK(U41(U11(U52(z0)), x1)) -> c38(A__U41(a__U11(a__U52(mark(z0))), x1), MARK(U11(U52(z0)))) MARK(U41(U11(isNatList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatList(z0)), x1), MARK(U11(isNatList(z0)))) MARK(U41(U11(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U11(a__U61(mark(z0), z1, z2)), x1), MARK(U11(U61(z0, z1, z2)))) MARK(U41(U11(U62(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U62(mark(z0), z1)), x1), MARK(U11(U62(z0, z1)))) MARK(U41(U11(isNat(z0)), x1)) -> c38(A__U41(a__U11(a__isNat(z0)), x1), MARK(U11(isNat(z0)))) MARK(U41(U11(length(z0)), x1)) -> c38(A__U41(a__U11(a__length(mark(z0))), x1), MARK(U11(length(z0)))) MARK(U41(U11(cons(z0, z1)), x1)) -> c38(A__U41(a__U11(cons(mark(z0), z1)), x1), MARK(U11(cons(z0, z1)))) MARK(U41(U11(0), x1)) -> c38(A__U41(a__U11(0), x1), MARK(U11(0))) MARK(U41(U11(tt), x1)) -> c38(A__U41(a__U11(tt), x1), MARK(U11(tt))) MARK(U41(U11(s(z0)), x1)) -> c38(A__U41(a__U11(s(mark(z0))), x1), MARK(U11(s(z0)))) MARK(U41(U11(nil), x1)) -> c38(A__U41(a__U11(nil), x1), MARK(U11(nil))) MARK(U41(U11(x0), x1)) -> c38(MARK(U11(x0))) MARK(U41(U21(zeros), x1)) -> c38(A__U41(a__U21(a__zeros), x1), MARK(U21(zeros))) MARK(U41(U21(U11(z0)), x1)) -> c38(A__U41(a__U21(a__U11(mark(z0))), x1), MARK(U21(U11(z0)))) MARK(U41(U21(U21(z0)), x1)) -> c38(A__U41(a__U21(a__U21(mark(z0))), x1), MARK(U21(U21(z0)))) MARK(U41(U21(U31(z0)), x1)) -> c38(A__U41(a__U21(a__U31(mark(z0))), x1), MARK(U21(U31(z0)))) MARK(U41(U21(U41(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U41(mark(z0), z1)), x1), MARK(U21(U41(z0, z1)))) MARK(U41(U21(U42(z0)), x1)) -> c38(A__U41(a__U21(a__U42(mark(z0))), x1), MARK(U21(U42(z0)))) MARK(U41(U21(isNatIList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatIList(z0)), x1), MARK(U21(isNatIList(z0)))) MARK(U41(U21(U51(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U51(mark(z0), z1)), x1), MARK(U21(U51(z0, z1)))) MARK(U41(U21(U52(z0)), x1)) -> c38(A__U41(a__U21(a__U52(mark(z0))), x1), MARK(U21(U52(z0)))) MARK(U41(U21(isNatList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatList(z0)), x1), MARK(U21(isNatList(z0)))) MARK(U41(U21(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U21(a__U61(mark(z0), z1, z2)), x1), MARK(U21(U61(z0, z1, z2)))) MARK(U41(U21(U62(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U62(mark(z0), z1)), x1), MARK(U21(U62(z0, z1)))) MARK(U41(U21(isNat(z0)), x1)) -> c38(A__U41(a__U21(a__isNat(z0)), x1), MARK(U21(isNat(z0)))) MARK(U41(U21(length(z0)), x1)) -> c38(A__U41(a__U21(a__length(mark(z0))), x1), MARK(U21(length(z0)))) MARK(U41(U21(cons(z0, z1)), x1)) -> c38(A__U41(a__U21(cons(mark(z0), z1)), x1), MARK(U21(cons(z0, z1)))) MARK(U41(U21(0), x1)) -> c38(A__U41(a__U21(0), x1), MARK(U21(0))) MARK(U41(U21(tt), x1)) -> c38(A__U41(a__U21(tt), x1), MARK(U21(tt))) MARK(U41(U21(s(z0)), x1)) -> c38(A__U41(a__U21(s(mark(z0))), x1), MARK(U21(s(z0)))) MARK(U41(U21(nil), x1)) -> c38(A__U41(a__U21(nil), x1), MARK(U21(nil))) MARK(U41(U21(x0), x1)) -> c38(MARK(U21(x0))) MARK(U41(U31(zeros), x1)) -> c38(A__U41(a__U31(a__zeros), x1), MARK(U31(zeros))) MARK(U41(U31(U11(z0)), x1)) -> c38(A__U41(a__U31(a__U11(mark(z0))), x1), MARK(U31(U11(z0)))) MARK(U41(U31(U21(z0)), x1)) -> c38(A__U41(a__U31(a__U21(mark(z0))), x1), MARK(U31(U21(z0)))) MARK(U41(U31(U31(z0)), x1)) -> c38(A__U41(a__U31(a__U31(mark(z0))), x1), MARK(U31(U31(z0)))) MARK(U41(U31(U41(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U41(mark(z0), z1)), x1), MARK(U31(U41(z0, z1)))) MARK(U41(U31(U42(z0)), x1)) -> c38(A__U41(a__U31(a__U42(mark(z0))), x1), MARK(U31(U42(z0)))) MARK(U41(U31(isNatIList(z0)), x1)) -> c38(A__U41(a__U31(a__isNatIList(z0)), x1), MARK(U31(isNatIList(z0)))) MARK(U41(U31(U51(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U51(mark(z0), z1)), x1), MARK(U31(U51(z0, z1)))) MARK(U41(U31(U52(z0)), x1)) -> c38(A__U41(a__U31(a__U52(mark(z0))), x1), MARK(U31(U52(z0)))) MARK(U41(U31(isNatList(z0)), x1)) -> c38(A__U41(a__U31(a__isNatList(z0)), x1), MARK(U31(isNatList(z0)))) MARK(U41(U31(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U31(a__U61(mark(z0), z1, z2)), x1), MARK(U31(U61(z0, z1, z2)))) MARK(U41(U31(U62(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U62(mark(z0), z1)), x1), MARK(U31(U62(z0, z1)))) MARK(U41(U31(isNat(z0)), x1)) -> c38(A__U41(a__U31(a__isNat(z0)), x1), MARK(U31(isNat(z0)))) MARK(U41(U31(length(z0)), x1)) -> c38(A__U41(a__U31(a__length(mark(z0))), x1), MARK(U31(length(z0)))) MARK(U41(U31(cons(z0, z1)), x1)) -> c38(A__U41(a__U31(cons(mark(z0), z1)), x1), MARK(U31(cons(z0, z1)))) MARK(U41(U31(0), x1)) -> c38(A__U41(a__U31(0), x1), MARK(U31(0))) MARK(U41(U31(tt), x1)) -> c38(A__U41(a__U31(tt), x1), MARK(U31(tt))) MARK(U41(U31(s(z0)), x1)) -> c38(A__U41(a__U31(s(mark(z0))), x1), MARK(U31(s(z0)))) MARK(U41(U31(nil), x1)) -> c38(A__U41(a__U31(nil), x1), MARK(U31(nil))) MARK(U41(U31(x0), x1)) -> c38(MARK(U31(x0))) MARK(U41(U41(U11(z0), x1), x2)) -> c38(A__U41(a__U41(a__U11(mark(z0)), x1), x2), MARK(U41(U11(z0), x1))) MARK(U41(U41(U21(z0), x1), x2)) -> c38(A__U41(a__U41(a__U21(mark(z0)), x1), x2), MARK(U41(U21(z0), x1))) MARK(U41(U41(U31(z0), x1), x2)) -> c38(A__U41(a__U41(a__U31(mark(z0)), x1), x2), MARK(U41(U31(z0), x1))) MARK(U41(U41(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U41(mark(z0), z1), x1), x2), MARK(U41(U41(z0, z1), x1))) MARK(U41(U41(U42(z0), x1), x2)) -> c38(A__U41(a__U41(a__U42(mark(z0)), x1), x2), MARK(U41(U42(z0), x1))) MARK(U41(U41(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U51(mark(z0), z1), x1), x2), MARK(U41(U51(z0, z1), x1))) MARK(U41(U41(U52(z0), x1), x2)) -> c38(A__U41(a__U41(a__U52(mark(z0)), x1), x2), MARK(U41(U52(z0), x1))) MARK(U41(U41(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U41(a__U61(mark(z0), z1, z2), x1), x2), MARK(U41(U61(z0, z1, z2), x1))) MARK(U41(U41(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U62(mark(z0), z1), x1), x2), MARK(U41(U62(z0, z1), x1))) MARK(U41(U41(length(z0), x1), x2)) -> c38(A__U41(a__U41(a__length(mark(z0)), x1), x2), MARK(U41(length(z0), x1))) MARK(U41(U41(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U41(cons(mark(z0), z1), x1), x2), MARK(U41(cons(z0, z1), x1))) MARK(U41(U41(s(z0), x1), x2)) -> c38(A__U41(a__U41(s(mark(z0)), x1), x2), MARK(U41(s(z0), x1))) MARK(U41(U41(x0, z1), x2)) -> c38(MARK(U41(x0, z1))) MARK(U41(U41(0, x1), x2)) -> c38(A__U41(a__U41(0, x1), x2)) MARK(U41(U41(nil, x1), x2)) -> c38(A__U41(a__U41(nil, x1), x2)) MARK(U41(U41(zeros, x1), x2)) -> c2(A__U41(a__U41(a__zeros, x1), x2)) MARK(U41(U41(isNatIList(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNatIList(z0), x1), x2)) MARK(U41(U41(isNatIList(z0), x1), x2)) -> c2(MARK(U41(isNatIList(z0), x1))) MARK(U41(U41(isNatList(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNatList(z0), x1), x2)) MARK(U41(U41(isNatList(z0), x1), x2)) -> c2(MARK(U41(isNatList(z0), x1))) MARK(U41(U41(isNat(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNat(z0), x1), x2)) MARK(U41(U41(isNat(z0), x1), x2)) -> c2(MARK(U41(isNat(z0), x1))) MARK(U41(U41(tt, x1), x2)) -> c2(A__U41(a__U41(tt, x1), x2)) MARK(U41(U41(tt, x1), x2)) -> c2(MARK(U41(tt, x1))) MARK(U41(U42(zeros), x1)) -> c38(A__U41(a__U42(a__zeros), x1), MARK(U42(zeros))) MARK(U41(U42(U11(z0)), x1)) -> c38(A__U41(a__U42(a__U11(mark(z0))), x1), MARK(U42(U11(z0)))) MARK(U41(U42(U21(z0)), x1)) -> c38(A__U41(a__U42(a__U21(mark(z0))), x1), MARK(U42(U21(z0)))) MARK(U41(U42(U31(z0)), x1)) -> c38(A__U41(a__U42(a__U31(mark(z0))), x1), MARK(U42(U31(z0)))) MARK(U41(U42(U41(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U41(mark(z0), z1)), x1), MARK(U42(U41(z0, z1)))) MARK(U41(U42(U42(z0)), x1)) -> c38(A__U41(a__U42(a__U42(mark(z0))), x1), MARK(U42(U42(z0)))) MARK(U41(U42(isNatIList(z0)), x1)) -> c38(A__U41(a__U42(a__isNatIList(z0)), x1), MARK(U42(isNatIList(z0)))) MARK(U41(U42(U51(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U51(mark(z0), z1)), x1), MARK(U42(U51(z0, z1)))) MARK(U41(U42(U52(z0)), x1)) -> c38(A__U41(a__U42(a__U52(mark(z0))), x1), MARK(U42(U52(z0)))) MARK(U41(U42(isNatList(z0)), x1)) -> c38(A__U41(a__U42(a__isNatList(z0)), x1), MARK(U42(isNatList(z0)))) MARK(U41(U42(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U42(a__U61(mark(z0), z1, z2)), x1), MARK(U42(U61(z0, z1, z2)))) MARK(U41(U42(U62(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U62(mark(z0), z1)), x1), MARK(U42(U62(z0, z1)))) MARK(U41(U42(isNat(z0)), x1)) -> c38(A__U41(a__U42(a__isNat(z0)), x1), MARK(U42(isNat(z0)))) MARK(U41(U42(length(z0)), x1)) -> c38(A__U41(a__U42(a__length(mark(z0))), x1), MARK(U42(length(z0)))) MARK(U41(U42(cons(z0, z1)), x1)) -> c38(A__U41(a__U42(cons(mark(z0), z1)), x1), MARK(U42(cons(z0, z1)))) MARK(U41(U42(0), x1)) -> c38(A__U41(a__U42(0), x1), MARK(U42(0))) MARK(U41(U42(tt), x1)) -> c38(A__U41(a__U42(tt), x1), MARK(U42(tt))) MARK(U41(U42(s(z0)), x1)) -> c38(A__U41(a__U42(s(mark(z0))), x1), MARK(U42(s(z0)))) MARK(U41(U42(nil), x1)) -> c38(A__U41(a__U42(nil), x1), MARK(U42(nil))) MARK(U41(U42(x0), x1)) -> c38(MARK(U42(x0))) MARK(U41(U51(U11(z0), x1), x2)) -> c38(A__U41(a__U51(a__U11(mark(z0)), x1), x2), MARK(U51(U11(z0), x1))) MARK(U41(U51(U21(z0), x1), x2)) -> c38(A__U41(a__U51(a__U21(mark(z0)), x1), x2), MARK(U51(U21(z0), x1))) MARK(U41(U51(U31(z0), x1), x2)) -> c38(A__U41(a__U51(a__U31(mark(z0)), x1), x2), MARK(U51(U31(z0), x1))) MARK(U41(U51(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U41(mark(z0), z1), x1), x2), MARK(U51(U41(z0, z1), x1))) MARK(U41(U51(U42(z0), x1), x2)) -> c38(A__U41(a__U51(a__U42(mark(z0)), x1), x2), MARK(U51(U42(z0), x1))) MARK(U41(U51(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U51(mark(z0), z1), x1), x2), MARK(U51(U51(z0, z1), x1))) MARK(U41(U51(U52(z0), x1), x2)) -> c38(A__U41(a__U51(a__U52(mark(z0)), x1), x2), MARK(U51(U52(z0), x1))) MARK(U41(U51(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U51(a__U61(mark(z0), z1, z2), x1), x2), MARK(U51(U61(z0, z1, z2), x1))) MARK(U41(U51(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U62(mark(z0), z1), x1), x2), MARK(U51(U62(z0, z1), x1))) MARK(U41(U51(length(z0), x1), x2)) -> c38(A__U41(a__U51(a__length(mark(z0)), x1), x2), MARK(U51(length(z0), x1))) MARK(U41(U51(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U51(cons(mark(z0), z1), x1), x2), MARK(U51(cons(z0, z1), x1))) MARK(U41(U51(s(z0), x1), x2)) -> c38(A__U41(a__U51(s(mark(z0)), x1), x2), MARK(U51(s(z0), x1))) MARK(U41(U51(x0, z1), x2)) -> c38(MARK(U51(x0, z1))) MARK(U41(U51(0, x1), x2)) -> c38(A__U41(a__U51(0, x1), x2)) MARK(U41(U51(nil, x1), x2)) -> c38(A__U41(a__U51(nil, x1), x2)) MARK(U41(U51(zeros, x1), x2)) -> c3(A__U41(a__U51(a__zeros, x1), x2)) MARK(U41(U51(zeros, x1), x2)) -> c3(MARK(U51(zeros, x1))) MARK(U41(U51(isNatIList(z0), x1), x2)) -> c3(A__U41(a__U51(a__isNatIList(z0), x1), x2)) MARK(U41(U51(isNatIList(z0), x1), x2)) -> c3(MARK(U51(isNatIList(z0), x1))) MARK(U41(U51(isNatList(z0), x1), x2)) -> c3(A__U41(a__U51(a__isNatList(z0), x1), x2)) MARK(U41(U51(isNatList(z0), x1), x2)) -> c3(MARK(U51(isNatList(z0), x1))) MARK(U41(U51(isNat(z0), x1), x2)) -> c3(A__U41(a__U51(a__isNat(z0), x1), x2)) MARK(U41(U51(isNat(z0), x1), x2)) -> c3(MARK(U51(isNat(z0), x1))) MARK(U41(U51(tt, x1), x2)) -> c3(A__U41(a__U51(tt, x1), x2)) MARK(U41(U51(tt, x1), x2)) -> c3(MARK(U51(tt, x1))) MARK(U41(U52(zeros), x1)) -> c38(A__U41(a__U52(a__zeros), x1), MARK(U52(zeros))) MARK(U41(U52(U11(z0)), x1)) -> c38(A__U41(a__U52(a__U11(mark(z0))), x1), MARK(U52(U11(z0)))) MARK(U41(U52(U21(z0)), x1)) -> c38(A__U41(a__U52(a__U21(mark(z0))), x1), MARK(U52(U21(z0)))) MARK(U41(U52(U31(z0)), x1)) -> c38(A__U41(a__U52(a__U31(mark(z0))), x1), MARK(U52(U31(z0)))) MARK(U41(U52(U41(z0, z1)), x1)) -> c38(A__U41(a__U52(a__U41(mark(z0), z1)), x1), MARK(U52(U41(z0, z1)))) MARK(U41(U52(U42(z0)), x1)) -> c38(A__U41(a__U52(a__U42(mark(z0))), x1), MARK(U52(U42(z0)))) MARK(U41(U52(isNatIList(z0)), x1)) -> c38(A__U41(a__U52(a__isNatIList(z0)), x1), MARK(U52(isNatIList(z0)))) MARK(U41(U52(U51(z0, z1)), x1)) -> c38(A__U41(a__U52(a__U51(mark(z0), z1)), x1), MARK(U52(U51(z0, z1)))) MARK(U41(U52(U52(z0)), x1)) -> c38(A__U41(a__U52(a__U52(mark(z0))), x1), MARK(U52(U52(z0)))) MARK(U41(U52(isNatList(z0)), x1)) -> c38(A__U41(a__U52(a__isNatList(z0)), x1), MARK(U52(isNatList(z0)))) MARK(U41(U52(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U52(a__U61(mark(z0), z1, z2)), x1), MARK(U52(U61(z0, z1, z2)))) MARK(U41(U52(U62(z0, z1)), x1)) -> c38(A__U41(a__U52(a__U62(mark(z0), z1)), x1), MARK(U52(U62(z0, z1)))) MARK(U41(U52(isNat(z0)), x1)) -> c38(A__U41(a__U52(a__isNat(z0)), x1), MARK(U52(isNat(z0)))) MARK(U41(U52(length(z0)), x1)) -> c38(A__U41(a__U52(a__length(mark(z0))), x1), MARK(U52(length(z0)))) MARK(U41(U52(cons(z0, z1)), x1)) -> c38(A__U41(a__U52(cons(mark(z0), z1)), x1), MARK(U52(cons(z0, z1)))) MARK(U41(U52(0), x1)) -> c38(A__U41(a__U52(0), x1), MARK(U52(0))) MARK(U41(U52(tt), x1)) -> c38(A__U41(a__U52(tt), x1), MARK(U52(tt))) MARK(U41(U52(s(z0)), x1)) -> c38(A__U41(a__U52(s(mark(z0))), x1), MARK(U52(s(z0)))) MARK(U41(U52(nil), x1)) -> c38(A__U41(a__U52(nil), x1), MARK(U52(nil))) MARK(U41(U52(x0), x1)) -> c38(MARK(U52(x0))) MARK(U41(U61(zeros, x1, x2), x3)) -> c38(A__U41(a__U61(a__zeros, x1, x2), x3), MARK(U61(zeros, x1, x2))) MARK(U41(U61(U11(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U11(mark(z0)), x1, x2), x3), MARK(U61(U11(z0), x1, x2))) MARK(U41(U61(U21(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U21(mark(z0)), x1, x2), x3), MARK(U61(U21(z0), x1, x2))) MARK(U41(U61(U31(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U31(mark(z0)), x1, x2), x3), MARK(U61(U31(z0), x1, x2))) MARK(U41(U61(U41(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(a__U41(mark(z0), z1), x1, x2), x3), MARK(U61(U41(z0, z1), x1, x2))) MARK(U41(U61(U42(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U42(mark(z0)), x1, x2), x3), MARK(U61(U42(z0), x1, x2))) MARK(U41(U61(isNatIList(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__isNatIList(z0), x1, x2), x3), MARK(U61(isNatIList(z0), x1, x2))) MARK(U41(U61(U51(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(a__U51(mark(z0), z1), x1, x2), x3), MARK(U61(U51(z0, z1), x1, x2))) MARK(U41(U61(U52(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U52(mark(z0)), x1, x2), x3), MARK(U61(U52(z0), x1, x2))) MARK(U41(U61(isNatList(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__isNatList(z0), x1, x2), x3), MARK(U61(isNatList(z0), x1, x2))) MARK(U41(U61(U61(z0, z1, z2), x1, x2), x3)) -> c38(A__U41(a__U61(a__U61(mark(z0), z1, z2), x1, x2), x3), MARK(U61(U61(z0, z1, z2), x1, x2))) MARK(U41(U61(U62(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(a__U62(mark(z0), z1), x1, x2), x3), MARK(U61(U62(z0, z1), x1, x2))) MARK(U41(U61(isNat(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__isNat(z0), x1, x2), x3), MARK(U61(isNat(z0), x1, x2))) MARK(U41(U61(length(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__length(mark(z0)), x1, x2), x3), MARK(U61(length(z0), x1, x2))) MARK(U41(U61(cons(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(cons(mark(z0), z1), x1, x2), x3), MARK(U61(cons(z0, z1), x1, x2))) MARK(U41(U61(tt, x1, x2), x3)) -> c38(A__U41(a__U61(tt, x1, x2), x3), MARK(U61(tt, x1, x2))) MARK(U41(U61(s(z0), x1, x2), x3)) -> c38(A__U41(a__U61(s(mark(z0)), x1, x2), x3), MARK(U61(s(z0), x1, x2))) MARK(U41(U61(x0, z1, z2), x3)) -> c38(MARK(U61(x0, z1, z2))) MARK(U41(U61(0, x1, x2), x3)) -> c38(A__U41(a__U61(0, x1, x2), x3)) MARK(U41(U61(nil, x1, x2), x3)) -> c38(A__U41(a__U61(nil, x1, x2), x3)) MARK(U41(U62(zeros, x1), x2)) -> c38(A__U41(a__U62(a__zeros, x1), x2), MARK(U62(zeros, x1))) MARK(U41(U62(U11(z0), x1), x2)) -> c38(A__U41(a__U62(a__U11(mark(z0)), x1), x2), MARK(U62(U11(z0), x1))) MARK(U41(U62(U21(z0), x1), x2)) -> c38(A__U41(a__U62(a__U21(mark(z0)), x1), x2), MARK(U62(U21(z0), x1))) MARK(U41(U62(U31(z0), x1), x2)) -> c38(A__U41(a__U62(a__U31(mark(z0)), x1), x2), MARK(U62(U31(z0), x1))) MARK(U41(U62(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U62(a__U41(mark(z0), z1), x1), x2), MARK(U62(U41(z0, z1), x1))) MARK(U41(U62(U42(z0), x1), x2)) -> c38(A__U41(a__U62(a__U42(mark(z0)), x1), x2), MARK(U62(U42(z0), x1))) MARK(U41(U62(isNatIList(z0), x1), x2)) -> c38(A__U41(a__U62(a__isNatIList(z0), x1), x2), MARK(U62(isNatIList(z0), x1))) MARK(U41(U62(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U62(a__U51(mark(z0), z1), x1), x2), MARK(U62(U51(z0, z1), x1))) MARK(U41(U62(U52(z0), x1), x2)) -> c38(A__U41(a__U62(a__U52(mark(z0)), x1), x2), MARK(U62(U52(z0), x1))) MARK(U41(U62(isNatList(z0), x1), x2)) -> c38(A__U41(a__U62(a__isNatList(z0), x1), x2), MARK(U62(isNatList(z0), x1))) MARK(U41(U62(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U62(a__U61(mark(z0), z1, z2), x1), x2), MARK(U62(U61(z0, z1, z2), x1))) MARK(U41(U62(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U62(a__U62(mark(z0), z1), x1), x2), MARK(U62(U62(z0, z1), x1))) MARK(U41(U62(isNat(z0), x1), x2)) -> c38(A__U41(a__U62(a__isNat(z0), x1), x2), MARK(U62(isNat(z0), x1))) MARK(U41(U62(length(z0), x1), x2)) -> c38(A__U41(a__U62(a__length(mark(z0)), x1), x2), MARK(U62(length(z0), x1))) MARK(U41(U62(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U62(cons(mark(z0), z1), x1), x2), MARK(U62(cons(z0, z1), x1))) MARK(U41(U62(tt, x1), x2)) -> c38(A__U41(a__U62(tt, x1), x2), MARK(U62(tt, x1))) MARK(U41(U62(s(z0), x1), x2)) -> c38(A__U41(a__U62(s(mark(z0)), x1), x2), MARK(U62(s(z0), x1))) MARK(U41(U62(x0, z1), x2)) -> c38(MARK(U62(x0, z1))) MARK(U41(U62(0, x1), x2)) -> c38(A__U41(a__U62(0, x1), x2)) MARK(U41(U62(nil, x1), x2)) -> c38(A__U41(a__U62(nil, x1), x2)) MARK(U41(length(zeros), x1)) -> c38(A__U41(a__length(a__zeros), x1), MARK(length(zeros))) MARK(U41(length(U11(z0)), x1)) -> c38(A__U41(a__length(a__U11(mark(z0))), x1), MARK(length(U11(z0)))) MARK(U41(length(U21(z0)), x1)) -> c38(A__U41(a__length(a__U21(mark(z0))), x1), MARK(length(U21(z0)))) MARK(U41(length(U31(z0)), x1)) -> c38(A__U41(a__length(a__U31(mark(z0))), x1), MARK(length(U31(z0)))) MARK(U41(length(U41(z0, z1)), x1)) -> c38(A__U41(a__length(a__U41(mark(z0), z1)), x1), MARK(length(U41(z0, z1)))) MARK(U41(length(U42(z0)), x1)) -> c38(A__U41(a__length(a__U42(mark(z0))), x1), MARK(length(U42(z0)))) MARK(U41(length(isNatIList(z0)), x1)) -> c38(A__U41(a__length(a__isNatIList(z0)), x1), MARK(length(isNatIList(z0)))) MARK(U41(length(U51(z0, z1)), x1)) -> c38(A__U41(a__length(a__U51(mark(z0), z1)), x1), MARK(length(U51(z0, z1)))) MARK(U41(length(U52(z0)), x1)) -> c38(A__U41(a__length(a__U52(mark(z0))), x1), MARK(length(U52(z0)))) MARK(U41(length(isNatList(z0)), x1)) -> c38(A__U41(a__length(a__isNatList(z0)), x1), MARK(length(isNatList(z0)))) MARK(U41(length(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__length(a__U61(mark(z0), z1, z2)), x1), MARK(length(U61(z0, z1, z2)))) MARK(U41(length(U62(z0, z1)), x1)) -> c38(A__U41(a__length(a__U62(mark(z0), z1)), x1), MARK(length(U62(z0, z1)))) MARK(U41(length(isNat(z0)), x1)) -> c38(A__U41(a__length(a__isNat(z0)), x1), MARK(length(isNat(z0)))) MARK(U41(length(length(z0)), x1)) -> c38(A__U41(a__length(a__length(mark(z0))), x1), MARK(length(length(z0)))) MARK(U41(length(cons(z0, z1)), x1)) -> c38(A__U41(a__length(cons(mark(z0), z1)), x1), MARK(length(cons(z0, z1)))) MARK(U41(length(s(z0)), x1)) -> c38(A__U41(a__length(s(mark(z0))), x1), MARK(length(s(z0)))) MARK(U41(length(x0), x1)) -> c38(MARK(length(x0))) MARK(U41(length(0), x1)) -> c38(A__U41(a__length(0), x1)) MARK(U41(length(tt), x1)) -> c38(A__U41(a__length(tt), x1)) MARK(U41(length(nil), x1)) -> c38(A__U41(a__length(nil), x1)) S tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1)), MARK(U41(zeros, x1))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) A__U62(tt, isNatList(cons(z0, z1))) -> c18(A__LENGTH(a__U51(a__isNat(z0), z1)), MARK(isNatList(cons(z0, z1)))) A__U62(tt, isNatList(nil)) -> c18(MARK(isNatList(nil))) A__U62(tt, isNatList(z0)) -> c18(MARK(isNatList(z0))) A__U62(tt, U61(zeros, x1, x2)) -> c18(A__LENGTH(a__U61(a__zeros, x1, x2)), MARK(U61(zeros, x1, x2))) A__U62(tt, U61(U11(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U11(mark(z0)), x1, x2)), MARK(U61(U11(z0), x1, x2))) A__U62(tt, U61(U21(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U21(mark(z0)), x1, x2)), MARK(U61(U21(z0), x1, x2))) A__U62(tt, U61(U31(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U31(mark(z0)), x1, x2)), MARK(U61(U31(z0), x1, x2))) A__U62(tt, U61(U41(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U41(mark(z0), z1), x1, x2)), MARK(U61(U41(z0, z1), x1, x2))) A__U62(tt, U61(U42(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U42(mark(z0)), x1, x2)), MARK(U61(U42(z0), x1, x2))) A__U62(tt, U61(isNatIList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatIList(z0), x1, x2)), MARK(U61(isNatIList(z0), x1, x2))) A__U62(tt, U61(U51(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U51(mark(z0), z1), x1, x2)), MARK(U61(U51(z0, z1), x1, x2))) A__U62(tt, U61(U52(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U52(mark(z0)), x1, x2)), MARK(U61(U52(z0), x1, x2))) A__U62(tt, U61(isNatList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatList(z0), x1, x2)), MARK(U61(isNatList(z0), x1, x2))) A__U62(tt, U61(U61(z0, z1, z2), x1, x2)) -> c18(A__LENGTH(a__U61(a__U61(mark(z0), z1, z2), x1, x2)), MARK(U61(U61(z0, z1, z2), x1, x2))) A__U62(tt, U61(U62(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U62(mark(z0), z1), x1, x2)), MARK(U61(U62(z0, z1), x1, x2))) A__U62(tt, U61(isNat(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNat(z0), x1, x2)), MARK(U61(isNat(z0), x1, x2))) A__U62(tt, U61(length(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__length(mark(z0)), x1, x2)), MARK(U61(length(z0), x1, x2))) A__U62(tt, U61(cons(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(cons(mark(z0), z1), x1, x2)), MARK(U61(cons(z0, z1), x1, x2))) A__U62(tt, U61(tt, x1, x2)) -> c18(A__LENGTH(a__U61(tt, x1, x2)), MARK(U61(tt, x1, x2))) A__U62(tt, U61(s(z0), x1, x2)) -> c18(A__LENGTH(a__U61(s(mark(z0)), x1, x2)), MARK(U61(s(z0), x1, x2))) A__U62(tt, U61(x0, z1, z2)) -> c18(MARK(U61(x0, z1, z2))) A__U62(tt, U61(0, x1, x2)) -> c18(A__LENGTH(a__U61(0, x1, x2))) A__U62(tt, U61(nil, x1, x2)) -> c18(A__LENGTH(a__U61(nil, x1, x2))) A__U62(tt, U62(zeros, x1)) -> c18(A__LENGTH(a__U62(a__zeros, x1)), MARK(U62(zeros, x1))) A__U62(tt, U62(U11(z0), x1)) -> c18(A__LENGTH(a__U62(a__U11(mark(z0)), x1)), MARK(U62(U11(z0), x1))) A__U62(tt, U62(U21(z0), x1)) -> c18(A__LENGTH(a__U62(a__U21(mark(z0)), x1)), MARK(U62(U21(z0), x1))) A__U62(tt, U62(U31(z0), x1)) -> c18(A__LENGTH(a__U62(a__U31(mark(z0)), x1)), MARK(U62(U31(z0), x1))) A__U62(tt, U62(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U41(mark(z0), z1), x1)), MARK(U62(U41(z0, z1), x1))) A__U62(tt, U62(U42(z0), x1)) -> c18(A__LENGTH(a__U62(a__U42(mark(z0)), x1)), MARK(U62(U42(z0), x1))) A__U62(tt, U62(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatIList(z0), x1)), MARK(U62(isNatIList(z0), x1))) A__U62(tt, U62(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U51(mark(z0), z1), x1)), MARK(U62(U51(z0, z1), x1))) A__U62(tt, U62(U52(z0), x1)) -> c18(A__LENGTH(a__U62(a__U52(mark(z0)), x1)), MARK(U62(U52(z0), x1))) A__U62(tt, U62(isNatList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatList(z0), x1)), MARK(U62(isNatList(z0), x1))) A__U62(tt, U62(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U62(a__U61(mark(z0), z1, z2), x1)), MARK(U62(U61(z0, z1, z2), x1))) A__U62(tt, U62(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U62(mark(z0), z1), x1)), MARK(U62(U62(z0, z1), x1))) A__U62(tt, U62(isNat(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNat(z0), x1)), MARK(U62(isNat(z0), x1))) A__U62(tt, U62(length(z0), x1)) -> c18(A__LENGTH(a__U62(a__length(mark(z0)), x1)), MARK(U62(length(z0), x1))) A__U62(tt, U62(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U62(cons(mark(z0), z1), x1)), MARK(U62(cons(z0, z1), x1))) A__U62(tt, U62(tt, x1)) -> c18(A__LENGTH(a__U62(tt, x1)), MARK(U62(tt, x1))) A__U62(tt, U62(s(z0), x1)) -> c18(A__LENGTH(a__U62(s(mark(z0)), x1)), MARK(U62(s(z0), x1))) A__U62(tt, U62(x0, z1)) -> c18(MARK(U62(x0, z1))) A__U62(tt, U62(0, x1)) -> c18(A__LENGTH(a__U62(0, x1))) A__U62(tt, U62(nil, x1)) -> c18(A__LENGTH(a__U62(nil, x1))) A__U62(tt, isNat(length(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(isNat(length(z0)))) A__U62(tt, isNat(s(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(isNat(s(z0)))) A__U62(tt, isNat(0)) -> c18(MARK(isNat(0))) A__U62(tt, isNat(z0)) -> c18(MARK(isNat(z0))) A__U62(tt, length(zeros)) -> c18(A__LENGTH(a__length(a__zeros)), MARK(length(zeros))) A__U62(tt, length(U11(z0))) -> c18(A__LENGTH(a__length(a__U11(mark(z0)))), MARK(length(U11(z0)))) A__U62(tt, length(U21(z0))) -> c18(A__LENGTH(a__length(a__U21(mark(z0)))), MARK(length(U21(z0)))) A__U62(tt, length(U31(z0))) -> c18(A__LENGTH(a__length(a__U31(mark(z0)))), MARK(length(U31(z0)))) A__U62(tt, length(U41(z0, z1))) -> c18(A__LENGTH(a__length(a__U41(mark(z0), z1))), MARK(length(U41(z0, z1)))) A__U62(tt, length(U42(z0))) -> c18(A__LENGTH(a__length(a__U42(mark(z0)))), MARK(length(U42(z0)))) A__U62(tt, length(isNatIList(z0))) -> c18(A__LENGTH(a__length(a__isNatIList(z0))), MARK(length(isNatIList(z0)))) A__U62(tt, length(U51(z0, z1))) -> c18(A__LENGTH(a__length(a__U51(mark(z0), z1))), MARK(length(U51(z0, z1)))) A__U62(tt, length(U52(z0))) -> c18(A__LENGTH(a__length(a__U52(mark(z0)))), MARK(length(U52(z0)))) A__U62(tt, length(isNatList(z0))) -> c18(A__LENGTH(a__length(a__isNatList(z0))), MARK(length(isNatList(z0)))) A__U62(tt, length(U61(z0, z1, z2))) -> c18(A__LENGTH(a__length(a__U61(mark(z0), z1, z2))), MARK(length(U61(z0, z1, z2)))) A__U62(tt, length(U62(z0, z1))) -> c18(A__LENGTH(a__length(a__U62(mark(z0), z1))), MARK(length(U62(z0, z1)))) A__U62(tt, length(isNat(z0))) -> c18(A__LENGTH(a__length(a__isNat(z0))), MARK(length(isNat(z0)))) A__U62(tt, length(length(z0))) -> c18(A__LENGTH(a__length(a__length(mark(z0)))), MARK(length(length(z0)))) A__U62(tt, length(cons(z0, z1))) -> c18(A__LENGTH(a__length(cons(mark(z0), z1))), MARK(length(cons(z0, z1)))) A__U62(tt, length(s(z0))) -> c18(A__LENGTH(a__length(s(mark(z0)))), MARK(length(s(z0)))) A__U62(tt, length(x0)) -> c18(MARK(length(x0))) A__U62(tt, length(0)) -> c18(A__LENGTH(a__length(0))) A__U62(tt, length(tt)) -> c18(A__LENGTH(a__length(tt))) A__U62(tt, length(nil)) -> c18(A__LENGTH(a__length(nil))) A__U62(tt, zeros) -> c18(A__LENGTH(cons(0, zeros))) A__ISNATILIST(cons(length(nil), x1)) -> c26(A__U41(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATILIST(cons(length(cons(z0, z1)), x1)) -> c26(A__U41(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(length(x0), x1)) -> c26(A__ISNAT(length(x0))) A__ISNATILIST(cons(s(0), x1)) -> c26(A__U41(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATILIST(cons(s(length(z0)), x1)) -> c26(A__U41(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATILIST(cons(s(s(z0)), x1)) -> c26(A__U41(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(s(x0), x1)) -> c26(A__ISNAT(s(x0))) A__ISNATLIST(cons(length(nil), x1)) -> c29(A__U51(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATLIST(cons(length(cons(z0, z1)), x1)) -> c29(A__U51(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(length(x0), x1)) -> c29(A__ISNAT(length(x0))) A__ISNATLIST(cons(s(0), x1)) -> c29(A__U51(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATLIST(cons(s(length(z0)), x1)) -> c29(A__U51(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATLIST(cons(s(s(z0)), x1)) -> c29(A__U51(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(s(x0), x1)) -> c29(A__ISNAT(s(x0))) A__LENGTH(cons(x0, cons(0, x2))) -> c32(A__U61(a__U51(tt, x2), cons(0, x2), x0), A__ISNATLIST(cons(0, x2))) A__LENGTH(cons(x0, cons(length(z0), x2))) -> c32(A__U61(a__U51(a__U11(a__isNatList(z0)), x2), cons(length(z0), x2), x0), A__ISNATLIST(cons(length(z0), x2))) A__LENGTH(cons(x0, cons(s(z0), x2))) -> c32(A__U61(a__U51(a__U21(a__isNat(z0)), x2), cons(s(z0), x2), x0), A__ISNATLIST(cons(s(z0), x2))) A__LENGTH(cons(x0, cons(z0, x2))) -> c32(A__U61(a__U51(isNat(z0), x2), cons(z0, x2), x0), A__ISNATLIST(cons(z0, x2))) A__LENGTH(cons(x0, cons(x1, z1))) -> c32(A__ISNATLIST(cons(x1, z1))) MARK(U41(U11(zeros), x1)) -> c38(A__U41(a__U11(a__zeros), x1), MARK(U11(zeros))) MARK(U41(U11(U11(z0)), x1)) -> c38(A__U41(a__U11(a__U11(mark(z0))), x1), MARK(U11(U11(z0)))) MARK(U41(U11(U21(z0)), x1)) -> c38(A__U41(a__U11(a__U21(mark(z0))), x1), MARK(U11(U21(z0)))) MARK(U41(U11(U31(z0)), x1)) -> c38(A__U41(a__U11(a__U31(mark(z0))), x1), MARK(U11(U31(z0)))) MARK(U41(U11(U41(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U41(mark(z0), z1)), x1), MARK(U11(U41(z0, z1)))) MARK(U41(U11(U42(z0)), x1)) -> c38(A__U41(a__U11(a__U42(mark(z0))), x1), MARK(U11(U42(z0)))) MARK(U41(U11(isNatIList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatIList(z0)), x1), MARK(U11(isNatIList(z0)))) MARK(U41(U11(U51(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U51(mark(z0), z1)), x1), MARK(U11(U51(z0, z1)))) MARK(U41(U11(U52(z0)), x1)) -> c38(A__U41(a__U11(a__U52(mark(z0))), x1), MARK(U11(U52(z0)))) MARK(U41(U11(isNatList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatList(z0)), x1), MARK(U11(isNatList(z0)))) MARK(U41(U11(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U11(a__U61(mark(z0), z1, z2)), x1), MARK(U11(U61(z0, z1, z2)))) MARK(U41(U11(U62(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U62(mark(z0), z1)), x1), MARK(U11(U62(z0, z1)))) MARK(U41(U11(isNat(z0)), x1)) -> c38(A__U41(a__U11(a__isNat(z0)), x1), MARK(U11(isNat(z0)))) MARK(U41(U11(length(z0)), x1)) -> c38(A__U41(a__U11(a__length(mark(z0))), x1), MARK(U11(length(z0)))) MARK(U41(U11(cons(z0, z1)), x1)) -> c38(A__U41(a__U11(cons(mark(z0), z1)), x1), MARK(U11(cons(z0, z1)))) MARK(U41(U11(0), x1)) -> c38(A__U41(a__U11(0), x1), MARK(U11(0))) MARK(U41(U11(tt), x1)) -> c38(A__U41(a__U11(tt), x1), MARK(U11(tt))) MARK(U41(U11(s(z0)), x1)) -> c38(A__U41(a__U11(s(mark(z0))), x1), MARK(U11(s(z0)))) MARK(U41(U11(nil), x1)) -> c38(A__U41(a__U11(nil), x1), MARK(U11(nil))) MARK(U41(U11(x0), x1)) -> c38(MARK(U11(x0))) MARK(U41(U21(zeros), x1)) -> c38(A__U41(a__U21(a__zeros), x1), MARK(U21(zeros))) MARK(U41(U21(U11(z0)), x1)) -> c38(A__U41(a__U21(a__U11(mark(z0))), x1), MARK(U21(U11(z0)))) MARK(U41(U21(U21(z0)), x1)) -> c38(A__U41(a__U21(a__U21(mark(z0))), x1), MARK(U21(U21(z0)))) MARK(U41(U21(U31(z0)), x1)) -> c38(A__U41(a__U21(a__U31(mark(z0))), x1), MARK(U21(U31(z0)))) MARK(U41(U21(U41(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U41(mark(z0), z1)), x1), MARK(U21(U41(z0, z1)))) MARK(U41(U21(U42(z0)), x1)) -> c38(A__U41(a__U21(a__U42(mark(z0))), x1), MARK(U21(U42(z0)))) MARK(U41(U21(isNatIList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatIList(z0)), x1), MARK(U21(isNatIList(z0)))) MARK(U41(U21(U51(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U51(mark(z0), z1)), x1), MARK(U21(U51(z0, z1)))) MARK(U41(U21(U52(z0)), x1)) -> c38(A__U41(a__U21(a__U52(mark(z0))), x1), MARK(U21(U52(z0)))) MARK(U41(U21(isNatList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatList(z0)), x1), MARK(U21(isNatList(z0)))) MARK(U41(U21(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U21(a__U61(mark(z0), z1, z2)), x1), MARK(U21(U61(z0, z1, z2)))) MARK(U41(U21(U62(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U62(mark(z0), z1)), x1), MARK(U21(U62(z0, z1)))) MARK(U41(U21(isNat(z0)), x1)) -> c38(A__U41(a__U21(a__isNat(z0)), x1), MARK(U21(isNat(z0)))) MARK(U41(U21(length(z0)), x1)) -> c38(A__U41(a__U21(a__length(mark(z0))), x1), MARK(U21(length(z0)))) MARK(U41(U21(cons(z0, z1)), x1)) -> c38(A__U41(a__U21(cons(mark(z0), z1)), x1), MARK(U21(cons(z0, z1)))) MARK(U41(U21(0), x1)) -> c38(A__U41(a__U21(0), x1), MARK(U21(0))) MARK(U41(U21(tt), x1)) -> c38(A__U41(a__U21(tt), x1), MARK(U21(tt))) MARK(U41(U21(s(z0)), x1)) -> c38(A__U41(a__U21(s(mark(z0))), x1), MARK(U21(s(z0)))) MARK(U41(U21(nil), x1)) -> c38(A__U41(a__U21(nil), x1), MARK(U21(nil))) MARK(U41(U21(x0), x1)) -> c38(MARK(U21(x0))) MARK(U41(U31(zeros), x1)) -> c38(A__U41(a__U31(a__zeros), x1), MARK(U31(zeros))) MARK(U41(U31(U11(z0)), x1)) -> c38(A__U41(a__U31(a__U11(mark(z0))), x1), MARK(U31(U11(z0)))) MARK(U41(U31(U21(z0)), x1)) -> c38(A__U41(a__U31(a__U21(mark(z0))), x1), MARK(U31(U21(z0)))) MARK(U41(U31(U31(z0)), x1)) -> c38(A__U41(a__U31(a__U31(mark(z0))), x1), MARK(U31(U31(z0)))) MARK(U41(U31(U41(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U41(mark(z0), z1)), x1), MARK(U31(U41(z0, z1)))) MARK(U41(U31(U42(z0)), x1)) -> c38(A__U41(a__U31(a__U42(mark(z0))), x1), MARK(U31(U42(z0)))) MARK(U41(U31(isNatIList(z0)), x1)) -> c38(A__U41(a__U31(a__isNatIList(z0)), x1), MARK(U31(isNatIList(z0)))) MARK(U41(U31(U51(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U51(mark(z0), z1)), x1), MARK(U31(U51(z0, z1)))) MARK(U41(U31(U52(z0)), x1)) -> c38(A__U41(a__U31(a__U52(mark(z0))), x1), MARK(U31(U52(z0)))) MARK(U41(U31(isNatList(z0)), x1)) -> c38(A__U41(a__U31(a__isNatList(z0)), x1), MARK(U31(isNatList(z0)))) MARK(U41(U31(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U31(a__U61(mark(z0), z1, z2)), x1), MARK(U31(U61(z0, z1, z2)))) MARK(U41(U31(U62(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U62(mark(z0), z1)), x1), MARK(U31(U62(z0, z1)))) MARK(U41(U31(isNat(z0)), x1)) -> c38(A__U41(a__U31(a__isNat(z0)), x1), MARK(U31(isNat(z0)))) MARK(U41(U31(length(z0)), x1)) -> c38(A__U41(a__U31(a__length(mark(z0))), x1), MARK(U31(length(z0)))) MARK(U41(U31(cons(z0, z1)), x1)) -> c38(A__U41(a__U31(cons(mark(z0), z1)), x1), MARK(U31(cons(z0, z1)))) MARK(U41(U31(0), x1)) -> c38(A__U41(a__U31(0), x1), MARK(U31(0))) MARK(U41(U31(tt), x1)) -> c38(A__U41(a__U31(tt), x1), MARK(U31(tt))) MARK(U41(U31(s(z0)), x1)) -> c38(A__U41(a__U31(s(mark(z0))), x1), MARK(U31(s(z0)))) MARK(U41(U31(nil), x1)) -> c38(A__U41(a__U31(nil), x1), MARK(U31(nil))) MARK(U41(U31(x0), x1)) -> c38(MARK(U31(x0))) MARK(U41(U41(U11(z0), x1), x2)) -> c38(A__U41(a__U41(a__U11(mark(z0)), x1), x2), MARK(U41(U11(z0), x1))) MARK(U41(U41(U21(z0), x1), x2)) -> c38(A__U41(a__U41(a__U21(mark(z0)), x1), x2), MARK(U41(U21(z0), x1))) MARK(U41(U41(U31(z0), x1), x2)) -> c38(A__U41(a__U41(a__U31(mark(z0)), x1), x2), MARK(U41(U31(z0), x1))) MARK(U41(U41(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U41(mark(z0), z1), x1), x2), MARK(U41(U41(z0, z1), x1))) MARK(U41(U41(U42(z0), x1), x2)) -> c38(A__U41(a__U41(a__U42(mark(z0)), x1), x2), MARK(U41(U42(z0), x1))) MARK(U41(U41(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U51(mark(z0), z1), x1), x2), MARK(U41(U51(z0, z1), x1))) MARK(U41(U41(U52(z0), x1), x2)) -> c38(A__U41(a__U41(a__U52(mark(z0)), x1), x2), MARK(U41(U52(z0), x1))) MARK(U41(U41(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U41(a__U61(mark(z0), z1, z2), x1), x2), MARK(U41(U61(z0, z1, z2), x1))) MARK(U41(U41(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U62(mark(z0), z1), x1), x2), MARK(U41(U62(z0, z1), x1))) MARK(U41(U41(length(z0), x1), x2)) -> c38(A__U41(a__U41(a__length(mark(z0)), x1), x2), MARK(U41(length(z0), x1))) MARK(U41(U41(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U41(cons(mark(z0), z1), x1), x2), MARK(U41(cons(z0, z1), x1))) MARK(U41(U41(s(z0), x1), x2)) -> c38(A__U41(a__U41(s(mark(z0)), x1), x2), MARK(U41(s(z0), x1))) MARK(U41(U41(x0, z1), x2)) -> c38(MARK(U41(x0, z1))) MARK(U41(U41(0, x1), x2)) -> c38(A__U41(a__U41(0, x1), x2)) MARK(U41(U41(nil, x1), x2)) -> c38(A__U41(a__U41(nil, x1), x2)) MARK(U41(U41(zeros, x1), x2)) -> c2(A__U41(a__U41(a__zeros, x1), x2)) MARK(U41(U41(isNatIList(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNatIList(z0), x1), x2)) MARK(U41(U41(isNatIList(z0), x1), x2)) -> c2(MARK(U41(isNatIList(z0), x1))) MARK(U41(U41(isNatList(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNatList(z0), x1), x2)) MARK(U41(U41(isNatList(z0), x1), x2)) -> c2(MARK(U41(isNatList(z0), x1))) MARK(U41(U41(isNat(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNat(z0), x1), x2)) MARK(U41(U41(isNat(z0), x1), x2)) -> c2(MARK(U41(isNat(z0), x1))) MARK(U41(U41(tt, x1), x2)) -> c2(A__U41(a__U41(tt, x1), x2)) MARK(U41(U41(tt, x1), x2)) -> c2(MARK(U41(tt, x1))) MARK(U41(U42(zeros), x1)) -> c38(A__U41(a__U42(a__zeros), x1), MARK(U42(zeros))) MARK(U41(U42(U11(z0)), x1)) -> c38(A__U41(a__U42(a__U11(mark(z0))), x1), MARK(U42(U11(z0)))) MARK(U41(U42(U21(z0)), x1)) -> c38(A__U41(a__U42(a__U21(mark(z0))), x1), MARK(U42(U21(z0)))) MARK(U41(U42(U31(z0)), x1)) -> c38(A__U41(a__U42(a__U31(mark(z0))), x1), MARK(U42(U31(z0)))) MARK(U41(U42(U41(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U41(mark(z0), z1)), x1), MARK(U42(U41(z0, z1)))) MARK(U41(U42(U42(z0)), x1)) -> c38(A__U41(a__U42(a__U42(mark(z0))), x1), MARK(U42(U42(z0)))) MARK(U41(U42(isNatIList(z0)), x1)) -> c38(A__U41(a__U42(a__isNatIList(z0)), x1), MARK(U42(isNatIList(z0)))) MARK(U41(U42(U51(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U51(mark(z0), z1)), x1), MARK(U42(U51(z0, z1)))) MARK(U41(U42(U52(z0)), x1)) -> c38(A__U41(a__U42(a__U52(mark(z0))), x1), MARK(U42(U52(z0)))) MARK(U41(U42(isNatList(z0)), x1)) -> c38(A__U41(a__U42(a__isNatList(z0)), x1), MARK(U42(isNatList(z0)))) MARK(U41(U42(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U42(a__U61(mark(z0), z1, z2)), x1), MARK(U42(U61(z0, z1, z2)))) MARK(U41(U42(U62(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U62(mark(z0), z1)), x1), MARK(U42(U62(z0, z1)))) MARK(U41(U42(isNat(z0)), x1)) -> c38(A__U41(a__U42(a__isNat(z0)), x1), MARK(U42(isNat(z0)))) MARK(U41(U42(length(z0)), x1)) -> c38(A__U41(a__U42(a__length(mark(z0))), x1), MARK(U42(length(z0)))) MARK(U41(U42(cons(z0, z1)), x1)) -> c38(A__U41(a__U42(cons(mark(z0), z1)), x1), MARK(U42(cons(z0, z1)))) MARK(U41(U42(0), x1)) -> c38(A__U41(a__U42(0), x1), MARK(U42(0))) MARK(U41(U42(tt), x1)) -> c38(A__U41(a__U42(tt), x1), MARK(U42(tt))) MARK(U41(U42(s(z0)), x1)) -> c38(A__U41(a__U42(s(mark(z0))), x1), MARK(U42(s(z0)))) MARK(U41(U42(nil), x1)) -> c38(A__U41(a__U42(nil), x1), MARK(U42(nil))) MARK(U41(U42(x0), x1)) -> c38(MARK(U42(x0))) MARK(U41(U51(U11(z0), x1), x2)) -> c38(A__U41(a__U51(a__U11(mark(z0)), x1), x2), MARK(U51(U11(z0), x1))) MARK(U41(U51(U21(z0), x1), x2)) -> c38(A__U41(a__U51(a__U21(mark(z0)), x1), x2), MARK(U51(U21(z0), x1))) MARK(U41(U51(U31(z0), x1), x2)) -> c38(A__U41(a__U51(a__U31(mark(z0)), x1), x2), MARK(U51(U31(z0), x1))) MARK(U41(U51(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U41(mark(z0), z1), x1), x2), MARK(U51(U41(z0, z1), x1))) MARK(U41(U51(U42(z0), x1), x2)) -> c38(A__U41(a__U51(a__U42(mark(z0)), x1), x2), MARK(U51(U42(z0), x1))) MARK(U41(U51(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U51(mark(z0), z1), x1), x2), MARK(U51(U51(z0, z1), x1))) MARK(U41(U51(U52(z0), x1), x2)) -> c38(A__U41(a__U51(a__U52(mark(z0)), x1), x2), MARK(U51(U52(z0), x1))) MARK(U41(U51(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U51(a__U61(mark(z0), z1, z2), x1), x2), MARK(U51(U61(z0, z1, z2), x1))) MARK(U41(U51(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U62(mark(z0), z1), x1), x2), MARK(U51(U62(z0, z1), x1))) MARK(U41(U51(length(z0), x1), x2)) -> c38(A__U41(a__U51(a__length(mark(z0)), x1), x2), MARK(U51(length(z0), x1))) MARK(U41(U51(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U51(cons(mark(z0), z1), x1), x2), MARK(U51(cons(z0, z1), x1))) MARK(U41(U51(s(z0), x1), x2)) -> c38(A__U41(a__U51(s(mark(z0)), x1), x2), MARK(U51(s(z0), x1))) MARK(U41(U51(x0, z1), x2)) -> c38(MARK(U51(x0, z1))) MARK(U41(U51(0, x1), x2)) -> c38(A__U41(a__U51(0, x1), x2)) MARK(U41(U51(nil, x1), x2)) -> c38(A__U41(a__U51(nil, x1), x2)) MARK(U41(U51(zeros, x1), x2)) -> c3(A__U41(a__U51(a__zeros, x1), x2)) MARK(U41(U51(zeros, x1), x2)) -> c3(MARK(U51(zeros, x1))) MARK(U41(U51(isNatIList(z0), x1), x2)) -> c3(A__U41(a__U51(a__isNatIList(z0), x1), x2)) MARK(U41(U51(isNatIList(z0), x1), x2)) -> c3(MARK(U51(isNatIList(z0), x1))) MARK(U41(U51(isNatList(z0), x1), x2)) -> c3(A__U41(a__U51(a__isNatList(z0), x1), x2)) MARK(U41(U51(isNatList(z0), x1), x2)) -> c3(MARK(U51(isNatList(z0), x1))) MARK(U41(U51(isNat(z0), x1), x2)) -> c3(A__U41(a__U51(a__isNat(z0), x1), x2)) MARK(U41(U51(isNat(z0), x1), x2)) -> c3(MARK(U51(isNat(z0), x1))) MARK(U41(U51(tt, x1), x2)) -> c3(A__U41(a__U51(tt, x1), x2)) MARK(U41(U51(tt, x1), x2)) -> c3(MARK(U51(tt, x1))) MARK(U41(U52(zeros), x1)) -> c38(A__U41(a__U52(a__zeros), x1), MARK(U52(zeros))) MARK(U41(U52(U11(z0)), x1)) -> c38(A__U41(a__U52(a__U11(mark(z0))), x1), MARK(U52(U11(z0)))) MARK(U41(U52(U21(z0)), x1)) -> c38(A__U41(a__U52(a__U21(mark(z0))), x1), MARK(U52(U21(z0)))) MARK(U41(U52(U31(z0)), x1)) -> c38(A__U41(a__U52(a__U31(mark(z0))), x1), MARK(U52(U31(z0)))) MARK(U41(U52(U41(z0, z1)), x1)) -> c38(A__U41(a__U52(a__U41(mark(z0), z1)), x1), MARK(U52(U41(z0, z1)))) MARK(U41(U52(U42(z0)), x1)) -> c38(A__U41(a__U52(a__U42(mark(z0))), x1), MARK(U52(U42(z0)))) MARK(U41(U52(isNatIList(z0)), x1)) -> c38(A__U41(a__U52(a__isNatIList(z0)), x1), MARK(U52(isNatIList(z0)))) MARK(U41(U52(U51(z0, z1)), x1)) -> c38(A__U41(a__U52(a__U51(mark(z0), z1)), x1), MARK(U52(U51(z0, z1)))) MARK(U41(U52(U52(z0)), x1)) -> c38(A__U41(a__U52(a__U52(mark(z0))), x1), MARK(U52(U52(z0)))) MARK(U41(U52(isNatList(z0)), x1)) -> c38(A__U41(a__U52(a__isNatList(z0)), x1), MARK(U52(isNatList(z0)))) MARK(U41(U52(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U52(a__U61(mark(z0), z1, z2)), x1), MARK(U52(U61(z0, z1, z2)))) MARK(U41(U52(U62(z0, z1)), x1)) -> c38(A__U41(a__U52(a__U62(mark(z0), z1)), x1), MARK(U52(U62(z0, z1)))) MARK(U41(U52(isNat(z0)), x1)) -> c38(A__U41(a__U52(a__isNat(z0)), x1), MARK(U52(isNat(z0)))) MARK(U41(U52(length(z0)), x1)) -> c38(A__U41(a__U52(a__length(mark(z0))), x1), MARK(U52(length(z0)))) MARK(U41(U52(cons(z0, z1)), x1)) -> c38(A__U41(a__U52(cons(mark(z0), z1)), x1), MARK(U52(cons(z0, z1)))) MARK(U41(U52(0), x1)) -> c38(A__U41(a__U52(0), x1), MARK(U52(0))) MARK(U41(U52(tt), x1)) -> c38(A__U41(a__U52(tt), x1), MARK(U52(tt))) MARK(U41(U52(s(z0)), x1)) -> c38(A__U41(a__U52(s(mark(z0))), x1), MARK(U52(s(z0)))) MARK(U41(U52(nil), x1)) -> c38(A__U41(a__U52(nil), x1), MARK(U52(nil))) MARK(U41(U52(x0), x1)) -> c38(MARK(U52(x0))) MARK(U41(U61(zeros, x1, x2), x3)) -> c38(A__U41(a__U61(a__zeros, x1, x2), x3), MARK(U61(zeros, x1, x2))) MARK(U41(U61(U11(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U11(mark(z0)), x1, x2), x3), MARK(U61(U11(z0), x1, x2))) MARK(U41(U61(U21(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U21(mark(z0)), x1, x2), x3), MARK(U61(U21(z0), x1, x2))) MARK(U41(U61(U31(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U31(mark(z0)), x1, x2), x3), MARK(U61(U31(z0), x1, x2))) MARK(U41(U61(U41(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(a__U41(mark(z0), z1), x1, x2), x3), MARK(U61(U41(z0, z1), x1, x2))) MARK(U41(U61(U42(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U42(mark(z0)), x1, x2), x3), MARK(U61(U42(z0), x1, x2))) MARK(U41(U61(isNatIList(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__isNatIList(z0), x1, x2), x3), MARK(U61(isNatIList(z0), x1, x2))) MARK(U41(U61(U51(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(a__U51(mark(z0), z1), x1, x2), x3), MARK(U61(U51(z0, z1), x1, x2))) MARK(U41(U61(U52(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U52(mark(z0)), x1, x2), x3), MARK(U61(U52(z0), x1, x2))) MARK(U41(U61(isNatList(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__isNatList(z0), x1, x2), x3), MARK(U61(isNatList(z0), x1, x2))) MARK(U41(U61(U61(z0, z1, z2), x1, x2), x3)) -> c38(A__U41(a__U61(a__U61(mark(z0), z1, z2), x1, x2), x3), MARK(U61(U61(z0, z1, z2), x1, x2))) MARK(U41(U61(U62(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(a__U62(mark(z0), z1), x1, x2), x3), MARK(U61(U62(z0, z1), x1, x2))) MARK(U41(U61(isNat(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__isNat(z0), x1, x2), x3), MARK(U61(isNat(z0), x1, x2))) MARK(U41(U61(length(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__length(mark(z0)), x1, x2), x3), MARK(U61(length(z0), x1, x2))) MARK(U41(U61(cons(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(cons(mark(z0), z1), x1, x2), x3), MARK(U61(cons(z0, z1), x1, x2))) MARK(U41(U61(tt, x1, x2), x3)) -> c38(A__U41(a__U61(tt, x1, x2), x3), MARK(U61(tt, x1, x2))) MARK(U41(U61(s(z0), x1, x2), x3)) -> c38(A__U41(a__U61(s(mark(z0)), x1, x2), x3), MARK(U61(s(z0), x1, x2))) MARK(U41(U61(x0, z1, z2), x3)) -> c38(MARK(U61(x0, z1, z2))) MARK(U41(U61(0, x1, x2), x3)) -> c38(A__U41(a__U61(0, x1, x2), x3)) MARK(U41(U61(nil, x1, x2), x3)) -> c38(A__U41(a__U61(nil, x1, x2), x3)) MARK(U41(U62(zeros, x1), x2)) -> c38(A__U41(a__U62(a__zeros, x1), x2), MARK(U62(zeros, x1))) MARK(U41(U62(U11(z0), x1), x2)) -> c38(A__U41(a__U62(a__U11(mark(z0)), x1), x2), MARK(U62(U11(z0), x1))) MARK(U41(U62(U21(z0), x1), x2)) -> c38(A__U41(a__U62(a__U21(mark(z0)), x1), x2), MARK(U62(U21(z0), x1))) MARK(U41(U62(U31(z0), x1), x2)) -> c38(A__U41(a__U62(a__U31(mark(z0)), x1), x2), MARK(U62(U31(z0), x1))) MARK(U41(U62(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U62(a__U41(mark(z0), z1), x1), x2), MARK(U62(U41(z0, z1), x1))) MARK(U41(U62(U42(z0), x1), x2)) -> c38(A__U41(a__U62(a__U42(mark(z0)), x1), x2), MARK(U62(U42(z0), x1))) MARK(U41(U62(isNatIList(z0), x1), x2)) -> c38(A__U41(a__U62(a__isNatIList(z0), x1), x2), MARK(U62(isNatIList(z0), x1))) MARK(U41(U62(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U62(a__U51(mark(z0), z1), x1), x2), MARK(U62(U51(z0, z1), x1))) MARK(U41(U62(U52(z0), x1), x2)) -> c38(A__U41(a__U62(a__U52(mark(z0)), x1), x2), MARK(U62(U52(z0), x1))) MARK(U41(U62(isNatList(z0), x1), x2)) -> c38(A__U41(a__U62(a__isNatList(z0), x1), x2), MARK(U62(isNatList(z0), x1))) MARK(U41(U62(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U62(a__U61(mark(z0), z1, z2), x1), x2), MARK(U62(U61(z0, z1, z2), x1))) MARK(U41(U62(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U62(a__U62(mark(z0), z1), x1), x2), MARK(U62(U62(z0, z1), x1))) MARK(U41(U62(isNat(z0), x1), x2)) -> c38(A__U41(a__U62(a__isNat(z0), x1), x2), MARK(U62(isNat(z0), x1))) MARK(U41(U62(length(z0), x1), x2)) -> c38(A__U41(a__U62(a__length(mark(z0)), x1), x2), MARK(U62(length(z0), x1))) MARK(U41(U62(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U62(cons(mark(z0), z1), x1), x2), MARK(U62(cons(z0, z1), x1))) MARK(U41(U62(tt, x1), x2)) -> c38(A__U41(a__U62(tt, x1), x2), MARK(U62(tt, x1))) MARK(U41(U62(s(z0), x1), x2)) -> c38(A__U41(a__U62(s(mark(z0)), x1), x2), MARK(U62(s(z0), x1))) MARK(U41(U62(x0, z1), x2)) -> c38(MARK(U62(x0, z1))) MARK(U41(U62(0, x1), x2)) -> c38(A__U41(a__U62(0, x1), x2)) MARK(U41(U62(nil, x1), x2)) -> c38(A__U41(a__U62(nil, x1), x2)) MARK(U41(length(zeros), x1)) -> c38(A__U41(a__length(a__zeros), x1), MARK(length(zeros))) MARK(U41(length(U11(z0)), x1)) -> c38(A__U41(a__length(a__U11(mark(z0))), x1), MARK(length(U11(z0)))) MARK(U41(length(U21(z0)), x1)) -> c38(A__U41(a__length(a__U21(mark(z0))), x1), MARK(length(U21(z0)))) MARK(U41(length(U31(z0)), x1)) -> c38(A__U41(a__length(a__U31(mark(z0))), x1), MARK(length(U31(z0)))) MARK(U41(length(U41(z0, z1)), x1)) -> c38(A__U41(a__length(a__U41(mark(z0), z1)), x1), MARK(length(U41(z0, z1)))) MARK(U41(length(U42(z0)), x1)) -> c38(A__U41(a__length(a__U42(mark(z0))), x1), MARK(length(U42(z0)))) MARK(U41(length(isNatIList(z0)), x1)) -> c38(A__U41(a__length(a__isNatIList(z0)), x1), MARK(length(isNatIList(z0)))) MARK(U41(length(U51(z0, z1)), x1)) -> c38(A__U41(a__length(a__U51(mark(z0), z1)), x1), MARK(length(U51(z0, z1)))) MARK(U41(length(U52(z0)), x1)) -> c38(A__U41(a__length(a__U52(mark(z0))), x1), MARK(length(U52(z0)))) MARK(U41(length(isNatList(z0)), x1)) -> c38(A__U41(a__length(a__isNatList(z0)), x1), MARK(length(isNatList(z0)))) MARK(U41(length(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__length(a__U61(mark(z0), z1, z2)), x1), MARK(length(U61(z0, z1, z2)))) MARK(U41(length(U62(z0, z1)), x1)) -> c38(A__U41(a__length(a__U62(mark(z0), z1)), x1), MARK(length(U62(z0, z1)))) MARK(U41(length(isNat(z0)), x1)) -> c38(A__U41(a__length(a__isNat(z0)), x1), MARK(length(isNat(z0)))) MARK(U41(length(length(z0)), x1)) -> c38(A__U41(a__length(a__length(mark(z0))), x1), MARK(length(length(z0)))) MARK(U41(length(cons(z0, z1)), x1)) -> c38(A__U41(a__length(cons(mark(z0), z1)), x1), MARK(length(cons(z0, z1)))) MARK(U41(length(s(z0)), x1)) -> c38(A__U41(a__length(s(mark(z0))), x1), MARK(length(s(z0)))) MARK(U41(length(x0), x1)) -> c38(MARK(length(x0))) MARK(U41(length(0), x1)) -> c38(A__U41(a__length(0), x1)) MARK(U41(length(tt), x1)) -> c38(A__U41(a__length(tt), x1)) MARK(U41(length(nil), x1)) -> c38(A__U41(a__length(nil), x1)) K tuples:none Defined Rule Symbols: a__zeros, a__U11_1, a__U21_1, a__U31_1, a__U41_2, a__U42_1, a__U51_2, a__U52_1, a__U61_3, a__U62_2, a__isNat_1, a__isNatIList_1, a__isNatList_1, a__length_1, mark_1 Defined Pair Symbols: MARK_1, A__U41_2, A__U51_2, A__ISNAT_1, A__ISNATILIST_1, A__U61_3, A__U62_2, A__ISNATLIST_1, A__LENGTH_1 Compound Symbols: c40_1, c43_1, c46_1, c48_1, c51_1, c8_1, c12_1, c21_1, c22_1, c24_1, c35_1, c36_1, c37_1, c39_1, c42_1, c16_1, c18_2, c18_1, c26_1, c29_1, c32_1, c38_1, c_1, c41_2, c41_1, c1_1, c44_2, c44_1, c45_2, c45_1, c47_2, c47_1, c16_2, c26_2, c29_2, c32_2, c38_2, c2_1, c3_1 ---------------------------------------- (217) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 1 trailing tuple parts ---------------------------------------- (218) Obligation: Complexity Dependency Tuples Problem Rules: a__zeros -> cons(0, zeros) a__zeros -> zeros a__U11(tt) -> tt a__U11(z0) -> U11(z0) a__U21(tt) -> tt a__U21(z0) -> U21(z0) a__U31(tt) -> tt a__U31(z0) -> U31(z0) a__U41(tt, z0) -> a__U42(a__isNatIList(z0)) a__U41(z0, z1) -> U41(z0, z1) a__U42(tt) -> tt a__U42(z0) -> U42(z0) a__U51(tt, z0) -> a__U52(a__isNatList(z0)) a__U51(z0, z1) -> U51(z0, z1) a__U52(tt) -> tt a__U52(z0) -> U52(z0) a__U61(tt, z0, z1) -> a__U62(a__isNat(z1), z0) a__U61(z0, z1, z2) -> U61(z0, z1, z2) a__U62(tt, z0) -> s(a__length(mark(z0))) a__U62(z0, z1) -> U62(z0, z1) a__isNat(0) -> tt a__isNat(length(z0)) -> a__U11(a__isNatList(z0)) a__isNat(s(z0)) -> a__U21(a__isNat(z0)) a__isNat(z0) -> isNat(z0) a__isNatIList(z0) -> a__U31(a__isNatList(z0)) a__isNatIList(zeros) -> tt a__isNatIList(cons(z0, z1)) -> a__U41(a__isNat(z0), z1) a__isNatIList(z0) -> isNatIList(z0) a__isNatList(nil) -> tt a__isNatList(cons(z0, z1)) -> a__U51(a__isNat(z0), z1) a__isNatList(z0) -> isNatList(z0) a__length(nil) -> 0 a__length(cons(z0, z1)) -> a__U61(a__isNatList(z1), z1, z0) a__length(z0) -> length(z0) mark(zeros) -> a__zeros mark(U11(z0)) -> a__U11(mark(z0)) mark(U21(z0)) -> a__U21(mark(z0)) mark(U31(z0)) -> a__U31(mark(z0)) mark(U41(z0, z1)) -> a__U41(mark(z0), z1) mark(U42(z0)) -> a__U42(mark(z0)) mark(isNatIList(z0)) -> a__isNatIList(z0) mark(U51(z0, z1)) -> a__U51(mark(z0), z1) mark(U52(z0)) -> a__U52(mark(z0)) mark(isNatList(z0)) -> a__isNatList(z0) mark(U61(z0, z1, z2)) -> a__U61(mark(z0), z1, z2) mark(U62(z0, z1)) -> a__U62(mark(z0), z1) mark(isNat(z0)) -> a__isNat(z0) mark(length(z0)) -> a__length(mark(z0)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(0) -> 0 mark(tt) -> tt mark(s(z0)) -> s(mark(z0)) mark(nil) -> nil Tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) A__U62(tt, isNatList(cons(z0, z1))) -> c18(A__LENGTH(a__U51(a__isNat(z0), z1)), MARK(isNatList(cons(z0, z1)))) A__U62(tt, isNatList(nil)) -> c18(MARK(isNatList(nil))) A__U62(tt, isNatList(z0)) -> c18(MARK(isNatList(z0))) A__U62(tt, U61(zeros, x1, x2)) -> c18(A__LENGTH(a__U61(a__zeros, x1, x2)), MARK(U61(zeros, x1, x2))) A__U62(tt, U61(U11(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U11(mark(z0)), x1, x2)), MARK(U61(U11(z0), x1, x2))) A__U62(tt, U61(U21(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U21(mark(z0)), x1, x2)), MARK(U61(U21(z0), x1, x2))) A__U62(tt, U61(U31(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U31(mark(z0)), x1, x2)), MARK(U61(U31(z0), x1, x2))) A__U62(tt, U61(U41(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U41(mark(z0), z1), x1, x2)), MARK(U61(U41(z0, z1), x1, x2))) A__U62(tt, U61(U42(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U42(mark(z0)), x1, x2)), MARK(U61(U42(z0), x1, x2))) A__U62(tt, U61(isNatIList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatIList(z0), x1, x2)), MARK(U61(isNatIList(z0), x1, x2))) A__U62(tt, U61(U51(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U51(mark(z0), z1), x1, x2)), MARK(U61(U51(z0, z1), x1, x2))) A__U62(tt, U61(U52(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U52(mark(z0)), x1, x2)), MARK(U61(U52(z0), x1, x2))) A__U62(tt, U61(isNatList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatList(z0), x1, x2)), MARK(U61(isNatList(z0), x1, x2))) A__U62(tt, U61(U61(z0, z1, z2), x1, x2)) -> c18(A__LENGTH(a__U61(a__U61(mark(z0), z1, z2), x1, x2)), MARK(U61(U61(z0, z1, z2), x1, x2))) A__U62(tt, U61(U62(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U62(mark(z0), z1), x1, x2)), MARK(U61(U62(z0, z1), x1, x2))) A__U62(tt, U61(isNat(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNat(z0), x1, x2)), MARK(U61(isNat(z0), x1, x2))) A__U62(tt, U61(length(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__length(mark(z0)), x1, x2)), MARK(U61(length(z0), x1, x2))) A__U62(tt, U61(cons(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(cons(mark(z0), z1), x1, x2)), MARK(U61(cons(z0, z1), x1, x2))) A__U62(tt, U61(tt, x1, x2)) -> c18(A__LENGTH(a__U61(tt, x1, x2)), MARK(U61(tt, x1, x2))) A__U62(tt, U61(s(z0), x1, x2)) -> c18(A__LENGTH(a__U61(s(mark(z0)), x1, x2)), MARK(U61(s(z0), x1, x2))) A__U62(tt, U61(x0, z1, z2)) -> c18(MARK(U61(x0, z1, z2))) A__U62(tt, U61(0, x1, x2)) -> c18(A__LENGTH(a__U61(0, x1, x2))) A__U62(tt, U61(nil, x1, x2)) -> c18(A__LENGTH(a__U61(nil, x1, x2))) A__U62(tt, U62(zeros, x1)) -> c18(A__LENGTH(a__U62(a__zeros, x1)), MARK(U62(zeros, x1))) A__U62(tt, U62(U11(z0), x1)) -> c18(A__LENGTH(a__U62(a__U11(mark(z0)), x1)), MARK(U62(U11(z0), x1))) A__U62(tt, U62(U21(z0), x1)) -> c18(A__LENGTH(a__U62(a__U21(mark(z0)), x1)), MARK(U62(U21(z0), x1))) A__U62(tt, U62(U31(z0), x1)) -> c18(A__LENGTH(a__U62(a__U31(mark(z0)), x1)), MARK(U62(U31(z0), x1))) A__U62(tt, U62(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U41(mark(z0), z1), x1)), MARK(U62(U41(z0, z1), x1))) A__U62(tt, U62(U42(z0), x1)) -> c18(A__LENGTH(a__U62(a__U42(mark(z0)), x1)), MARK(U62(U42(z0), x1))) A__U62(tt, U62(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatIList(z0), x1)), MARK(U62(isNatIList(z0), x1))) A__U62(tt, U62(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U51(mark(z0), z1), x1)), MARK(U62(U51(z0, z1), x1))) A__U62(tt, U62(U52(z0), x1)) -> c18(A__LENGTH(a__U62(a__U52(mark(z0)), x1)), MARK(U62(U52(z0), x1))) A__U62(tt, U62(isNatList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatList(z0), x1)), MARK(U62(isNatList(z0), x1))) A__U62(tt, U62(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U62(a__U61(mark(z0), z1, z2), x1)), MARK(U62(U61(z0, z1, z2), x1))) A__U62(tt, U62(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U62(mark(z0), z1), x1)), MARK(U62(U62(z0, z1), x1))) A__U62(tt, U62(isNat(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNat(z0), x1)), MARK(U62(isNat(z0), x1))) A__U62(tt, U62(length(z0), x1)) -> c18(A__LENGTH(a__U62(a__length(mark(z0)), x1)), MARK(U62(length(z0), x1))) A__U62(tt, U62(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U62(cons(mark(z0), z1), x1)), MARK(U62(cons(z0, z1), x1))) A__U62(tt, U62(tt, x1)) -> c18(A__LENGTH(a__U62(tt, x1)), MARK(U62(tt, x1))) A__U62(tt, U62(s(z0), x1)) -> c18(A__LENGTH(a__U62(s(mark(z0)), x1)), MARK(U62(s(z0), x1))) A__U62(tt, U62(x0, z1)) -> c18(MARK(U62(x0, z1))) A__U62(tt, U62(0, x1)) -> c18(A__LENGTH(a__U62(0, x1))) A__U62(tt, U62(nil, x1)) -> c18(A__LENGTH(a__U62(nil, x1))) A__U62(tt, isNat(length(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(isNat(length(z0)))) A__U62(tt, isNat(s(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(isNat(s(z0)))) A__U62(tt, isNat(0)) -> c18(MARK(isNat(0))) A__U62(tt, isNat(z0)) -> c18(MARK(isNat(z0))) A__U62(tt, length(zeros)) -> c18(A__LENGTH(a__length(a__zeros)), MARK(length(zeros))) A__U62(tt, length(U11(z0))) -> c18(A__LENGTH(a__length(a__U11(mark(z0)))), MARK(length(U11(z0)))) A__U62(tt, length(U21(z0))) -> c18(A__LENGTH(a__length(a__U21(mark(z0)))), MARK(length(U21(z0)))) A__U62(tt, length(U31(z0))) -> c18(A__LENGTH(a__length(a__U31(mark(z0)))), MARK(length(U31(z0)))) A__U62(tt, length(U41(z0, z1))) -> c18(A__LENGTH(a__length(a__U41(mark(z0), z1))), MARK(length(U41(z0, z1)))) A__U62(tt, length(U42(z0))) -> c18(A__LENGTH(a__length(a__U42(mark(z0)))), MARK(length(U42(z0)))) A__U62(tt, length(isNatIList(z0))) -> c18(A__LENGTH(a__length(a__isNatIList(z0))), MARK(length(isNatIList(z0)))) A__U62(tt, length(U51(z0, z1))) -> c18(A__LENGTH(a__length(a__U51(mark(z0), z1))), MARK(length(U51(z0, z1)))) A__U62(tt, length(U52(z0))) -> c18(A__LENGTH(a__length(a__U52(mark(z0)))), MARK(length(U52(z0)))) A__U62(tt, length(isNatList(z0))) -> c18(A__LENGTH(a__length(a__isNatList(z0))), MARK(length(isNatList(z0)))) A__U62(tt, length(U61(z0, z1, z2))) -> c18(A__LENGTH(a__length(a__U61(mark(z0), z1, z2))), MARK(length(U61(z0, z1, z2)))) A__U62(tt, length(U62(z0, z1))) -> c18(A__LENGTH(a__length(a__U62(mark(z0), z1))), MARK(length(U62(z0, z1)))) A__U62(tt, length(isNat(z0))) -> c18(A__LENGTH(a__length(a__isNat(z0))), MARK(length(isNat(z0)))) A__U62(tt, length(length(z0))) -> c18(A__LENGTH(a__length(a__length(mark(z0)))), MARK(length(length(z0)))) A__U62(tt, length(cons(z0, z1))) -> c18(A__LENGTH(a__length(cons(mark(z0), z1))), MARK(length(cons(z0, z1)))) A__U62(tt, length(s(z0))) -> c18(A__LENGTH(a__length(s(mark(z0)))), MARK(length(s(z0)))) A__U62(tt, length(x0)) -> c18(MARK(length(x0))) A__U62(tt, length(0)) -> c18(A__LENGTH(a__length(0))) A__U62(tt, length(tt)) -> c18(A__LENGTH(a__length(tt))) A__U62(tt, length(nil)) -> c18(A__LENGTH(a__length(nil))) A__U62(tt, zeros) -> c18(A__LENGTH(cons(0, zeros))) A__ISNATILIST(cons(length(nil), x1)) -> c26(A__U41(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATILIST(cons(length(cons(z0, z1)), x1)) -> c26(A__U41(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(length(x0), x1)) -> c26(A__ISNAT(length(x0))) A__ISNATILIST(cons(s(0), x1)) -> c26(A__U41(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATILIST(cons(s(length(z0)), x1)) -> c26(A__U41(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATILIST(cons(s(s(z0)), x1)) -> c26(A__U41(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(s(x0), x1)) -> c26(A__ISNAT(s(x0))) A__ISNATLIST(cons(length(nil), x1)) -> c29(A__U51(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATLIST(cons(length(cons(z0, z1)), x1)) -> c29(A__U51(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(length(x0), x1)) -> c29(A__ISNAT(length(x0))) A__ISNATLIST(cons(s(0), x1)) -> c29(A__U51(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATLIST(cons(s(length(z0)), x1)) -> c29(A__U51(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATLIST(cons(s(s(z0)), x1)) -> c29(A__U51(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(s(x0), x1)) -> c29(A__ISNAT(s(x0))) A__LENGTH(cons(x0, cons(0, x2))) -> c32(A__U61(a__U51(tt, x2), cons(0, x2), x0), A__ISNATLIST(cons(0, x2))) A__LENGTH(cons(x0, cons(length(z0), x2))) -> c32(A__U61(a__U51(a__U11(a__isNatList(z0)), x2), cons(length(z0), x2), x0), A__ISNATLIST(cons(length(z0), x2))) A__LENGTH(cons(x0, cons(s(z0), x2))) -> c32(A__U61(a__U51(a__U21(a__isNat(z0)), x2), cons(s(z0), x2), x0), A__ISNATLIST(cons(s(z0), x2))) A__LENGTH(cons(x0, cons(z0, x2))) -> c32(A__U61(a__U51(isNat(z0), x2), cons(z0, x2), x0), A__ISNATLIST(cons(z0, x2))) A__LENGTH(cons(x0, cons(x1, z1))) -> c32(A__ISNATLIST(cons(x1, z1))) MARK(U41(U11(zeros), x1)) -> c38(A__U41(a__U11(a__zeros), x1), MARK(U11(zeros))) MARK(U41(U11(U11(z0)), x1)) -> c38(A__U41(a__U11(a__U11(mark(z0))), x1), MARK(U11(U11(z0)))) MARK(U41(U11(U21(z0)), x1)) -> c38(A__U41(a__U11(a__U21(mark(z0))), x1), MARK(U11(U21(z0)))) MARK(U41(U11(U31(z0)), x1)) -> c38(A__U41(a__U11(a__U31(mark(z0))), x1), MARK(U11(U31(z0)))) MARK(U41(U11(U41(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U41(mark(z0), z1)), x1), MARK(U11(U41(z0, z1)))) MARK(U41(U11(U42(z0)), x1)) -> c38(A__U41(a__U11(a__U42(mark(z0))), x1), MARK(U11(U42(z0)))) MARK(U41(U11(isNatIList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatIList(z0)), x1), MARK(U11(isNatIList(z0)))) MARK(U41(U11(U51(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U51(mark(z0), z1)), x1), MARK(U11(U51(z0, z1)))) MARK(U41(U11(U52(z0)), x1)) -> c38(A__U41(a__U11(a__U52(mark(z0))), x1), MARK(U11(U52(z0)))) MARK(U41(U11(isNatList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatList(z0)), x1), MARK(U11(isNatList(z0)))) MARK(U41(U11(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U11(a__U61(mark(z0), z1, z2)), x1), MARK(U11(U61(z0, z1, z2)))) MARK(U41(U11(U62(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U62(mark(z0), z1)), x1), MARK(U11(U62(z0, z1)))) MARK(U41(U11(isNat(z0)), x1)) -> c38(A__U41(a__U11(a__isNat(z0)), x1), MARK(U11(isNat(z0)))) MARK(U41(U11(length(z0)), x1)) -> c38(A__U41(a__U11(a__length(mark(z0))), x1), MARK(U11(length(z0)))) MARK(U41(U11(cons(z0, z1)), x1)) -> c38(A__U41(a__U11(cons(mark(z0), z1)), x1), MARK(U11(cons(z0, z1)))) MARK(U41(U11(0), x1)) -> c38(A__U41(a__U11(0), x1), MARK(U11(0))) MARK(U41(U11(tt), x1)) -> c38(A__U41(a__U11(tt), x1), MARK(U11(tt))) MARK(U41(U11(s(z0)), x1)) -> c38(A__U41(a__U11(s(mark(z0))), x1), MARK(U11(s(z0)))) MARK(U41(U11(nil), x1)) -> c38(A__U41(a__U11(nil), x1), MARK(U11(nil))) MARK(U41(U11(x0), x1)) -> c38(MARK(U11(x0))) MARK(U41(U21(zeros), x1)) -> c38(A__U41(a__U21(a__zeros), x1), MARK(U21(zeros))) MARK(U41(U21(U11(z0)), x1)) -> c38(A__U41(a__U21(a__U11(mark(z0))), x1), MARK(U21(U11(z0)))) MARK(U41(U21(U21(z0)), x1)) -> c38(A__U41(a__U21(a__U21(mark(z0))), x1), MARK(U21(U21(z0)))) MARK(U41(U21(U31(z0)), x1)) -> c38(A__U41(a__U21(a__U31(mark(z0))), x1), MARK(U21(U31(z0)))) MARK(U41(U21(U41(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U41(mark(z0), z1)), x1), MARK(U21(U41(z0, z1)))) MARK(U41(U21(U42(z0)), x1)) -> c38(A__U41(a__U21(a__U42(mark(z0))), x1), MARK(U21(U42(z0)))) MARK(U41(U21(isNatIList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatIList(z0)), x1), MARK(U21(isNatIList(z0)))) MARK(U41(U21(U51(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U51(mark(z0), z1)), x1), MARK(U21(U51(z0, z1)))) MARK(U41(U21(U52(z0)), x1)) -> c38(A__U41(a__U21(a__U52(mark(z0))), x1), MARK(U21(U52(z0)))) MARK(U41(U21(isNatList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatList(z0)), x1), MARK(U21(isNatList(z0)))) MARK(U41(U21(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U21(a__U61(mark(z0), z1, z2)), x1), MARK(U21(U61(z0, z1, z2)))) MARK(U41(U21(U62(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U62(mark(z0), z1)), x1), MARK(U21(U62(z0, z1)))) MARK(U41(U21(isNat(z0)), x1)) -> c38(A__U41(a__U21(a__isNat(z0)), x1), MARK(U21(isNat(z0)))) MARK(U41(U21(length(z0)), x1)) -> c38(A__U41(a__U21(a__length(mark(z0))), x1), MARK(U21(length(z0)))) MARK(U41(U21(cons(z0, z1)), x1)) -> c38(A__U41(a__U21(cons(mark(z0), z1)), x1), MARK(U21(cons(z0, z1)))) MARK(U41(U21(0), x1)) -> c38(A__U41(a__U21(0), x1), MARK(U21(0))) MARK(U41(U21(tt), x1)) -> c38(A__U41(a__U21(tt), x1), MARK(U21(tt))) MARK(U41(U21(s(z0)), x1)) -> c38(A__U41(a__U21(s(mark(z0))), x1), MARK(U21(s(z0)))) MARK(U41(U21(nil), x1)) -> c38(A__U41(a__U21(nil), x1), MARK(U21(nil))) MARK(U41(U21(x0), x1)) -> c38(MARK(U21(x0))) MARK(U41(U31(zeros), x1)) -> c38(A__U41(a__U31(a__zeros), x1), MARK(U31(zeros))) MARK(U41(U31(U11(z0)), x1)) -> c38(A__U41(a__U31(a__U11(mark(z0))), x1), MARK(U31(U11(z0)))) MARK(U41(U31(U21(z0)), x1)) -> c38(A__U41(a__U31(a__U21(mark(z0))), x1), MARK(U31(U21(z0)))) MARK(U41(U31(U31(z0)), x1)) -> c38(A__U41(a__U31(a__U31(mark(z0))), x1), MARK(U31(U31(z0)))) MARK(U41(U31(U41(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U41(mark(z0), z1)), x1), MARK(U31(U41(z0, z1)))) MARK(U41(U31(U42(z0)), x1)) -> c38(A__U41(a__U31(a__U42(mark(z0))), x1), MARK(U31(U42(z0)))) MARK(U41(U31(isNatIList(z0)), x1)) -> c38(A__U41(a__U31(a__isNatIList(z0)), x1), MARK(U31(isNatIList(z0)))) MARK(U41(U31(U51(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U51(mark(z0), z1)), x1), MARK(U31(U51(z0, z1)))) MARK(U41(U31(U52(z0)), x1)) -> c38(A__U41(a__U31(a__U52(mark(z0))), x1), MARK(U31(U52(z0)))) MARK(U41(U31(isNatList(z0)), x1)) -> c38(A__U41(a__U31(a__isNatList(z0)), x1), MARK(U31(isNatList(z0)))) MARK(U41(U31(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U31(a__U61(mark(z0), z1, z2)), x1), MARK(U31(U61(z0, z1, z2)))) MARK(U41(U31(U62(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U62(mark(z0), z1)), x1), MARK(U31(U62(z0, z1)))) MARK(U41(U31(isNat(z0)), x1)) -> c38(A__U41(a__U31(a__isNat(z0)), x1), MARK(U31(isNat(z0)))) MARK(U41(U31(length(z0)), x1)) -> c38(A__U41(a__U31(a__length(mark(z0))), x1), MARK(U31(length(z0)))) MARK(U41(U31(cons(z0, z1)), x1)) -> c38(A__U41(a__U31(cons(mark(z0), z1)), x1), MARK(U31(cons(z0, z1)))) MARK(U41(U31(0), x1)) -> c38(A__U41(a__U31(0), x1), MARK(U31(0))) MARK(U41(U31(tt), x1)) -> c38(A__U41(a__U31(tt), x1), MARK(U31(tt))) MARK(U41(U31(s(z0)), x1)) -> c38(A__U41(a__U31(s(mark(z0))), x1), MARK(U31(s(z0)))) MARK(U41(U31(nil), x1)) -> c38(A__U41(a__U31(nil), x1), MARK(U31(nil))) MARK(U41(U31(x0), x1)) -> c38(MARK(U31(x0))) MARK(U41(U41(U11(z0), x1), x2)) -> c38(A__U41(a__U41(a__U11(mark(z0)), x1), x2), MARK(U41(U11(z0), x1))) MARK(U41(U41(U21(z0), x1), x2)) -> c38(A__U41(a__U41(a__U21(mark(z0)), x1), x2), MARK(U41(U21(z0), x1))) MARK(U41(U41(U31(z0), x1), x2)) -> c38(A__U41(a__U41(a__U31(mark(z0)), x1), x2), MARK(U41(U31(z0), x1))) MARK(U41(U41(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U41(mark(z0), z1), x1), x2), MARK(U41(U41(z0, z1), x1))) MARK(U41(U41(U42(z0), x1), x2)) -> c38(A__U41(a__U41(a__U42(mark(z0)), x1), x2), MARK(U41(U42(z0), x1))) MARK(U41(U41(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U51(mark(z0), z1), x1), x2), MARK(U41(U51(z0, z1), x1))) MARK(U41(U41(U52(z0), x1), x2)) -> c38(A__U41(a__U41(a__U52(mark(z0)), x1), x2), MARK(U41(U52(z0), x1))) MARK(U41(U41(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U41(a__U61(mark(z0), z1, z2), x1), x2), MARK(U41(U61(z0, z1, z2), x1))) MARK(U41(U41(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U62(mark(z0), z1), x1), x2), MARK(U41(U62(z0, z1), x1))) MARK(U41(U41(length(z0), x1), x2)) -> c38(A__U41(a__U41(a__length(mark(z0)), x1), x2), MARK(U41(length(z0), x1))) MARK(U41(U41(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U41(cons(mark(z0), z1), x1), x2), MARK(U41(cons(z0, z1), x1))) MARK(U41(U41(s(z0), x1), x2)) -> c38(A__U41(a__U41(s(mark(z0)), x1), x2), MARK(U41(s(z0), x1))) MARK(U41(U41(x0, z1), x2)) -> c38(MARK(U41(x0, z1))) MARK(U41(U41(0, x1), x2)) -> c38(A__U41(a__U41(0, x1), x2)) MARK(U41(U41(nil, x1), x2)) -> c38(A__U41(a__U41(nil, x1), x2)) MARK(U41(U41(zeros, x1), x2)) -> c2(A__U41(a__U41(a__zeros, x1), x2)) MARK(U41(U41(isNatIList(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNatIList(z0), x1), x2)) MARK(U41(U41(isNatIList(z0), x1), x2)) -> c2(MARK(U41(isNatIList(z0), x1))) MARK(U41(U41(isNatList(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNatList(z0), x1), x2)) MARK(U41(U41(isNatList(z0), x1), x2)) -> c2(MARK(U41(isNatList(z0), x1))) MARK(U41(U41(isNat(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNat(z0), x1), x2)) MARK(U41(U41(isNat(z0), x1), x2)) -> c2(MARK(U41(isNat(z0), x1))) MARK(U41(U41(tt, x1), x2)) -> c2(A__U41(a__U41(tt, x1), x2)) MARK(U41(U41(tt, x1), x2)) -> c2(MARK(U41(tt, x1))) MARK(U41(U42(zeros), x1)) -> c38(A__U41(a__U42(a__zeros), x1), MARK(U42(zeros))) MARK(U41(U42(U11(z0)), x1)) -> c38(A__U41(a__U42(a__U11(mark(z0))), x1), MARK(U42(U11(z0)))) MARK(U41(U42(U21(z0)), x1)) -> c38(A__U41(a__U42(a__U21(mark(z0))), x1), MARK(U42(U21(z0)))) MARK(U41(U42(U31(z0)), x1)) -> c38(A__U41(a__U42(a__U31(mark(z0))), x1), MARK(U42(U31(z0)))) MARK(U41(U42(U41(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U41(mark(z0), z1)), x1), MARK(U42(U41(z0, z1)))) MARK(U41(U42(U42(z0)), x1)) -> c38(A__U41(a__U42(a__U42(mark(z0))), x1), MARK(U42(U42(z0)))) MARK(U41(U42(isNatIList(z0)), x1)) -> c38(A__U41(a__U42(a__isNatIList(z0)), x1), MARK(U42(isNatIList(z0)))) MARK(U41(U42(U51(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U51(mark(z0), z1)), x1), MARK(U42(U51(z0, z1)))) MARK(U41(U42(U52(z0)), x1)) -> c38(A__U41(a__U42(a__U52(mark(z0))), x1), MARK(U42(U52(z0)))) MARK(U41(U42(isNatList(z0)), x1)) -> c38(A__U41(a__U42(a__isNatList(z0)), x1), MARK(U42(isNatList(z0)))) MARK(U41(U42(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U42(a__U61(mark(z0), z1, z2)), x1), MARK(U42(U61(z0, z1, z2)))) MARK(U41(U42(U62(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U62(mark(z0), z1)), x1), MARK(U42(U62(z0, z1)))) MARK(U41(U42(isNat(z0)), x1)) -> c38(A__U41(a__U42(a__isNat(z0)), x1), MARK(U42(isNat(z0)))) MARK(U41(U42(length(z0)), x1)) -> c38(A__U41(a__U42(a__length(mark(z0))), x1), MARK(U42(length(z0)))) MARK(U41(U42(cons(z0, z1)), x1)) -> c38(A__U41(a__U42(cons(mark(z0), z1)), x1), MARK(U42(cons(z0, z1)))) MARK(U41(U42(0), x1)) -> c38(A__U41(a__U42(0), x1), MARK(U42(0))) MARK(U41(U42(tt), x1)) -> c38(A__U41(a__U42(tt), x1), MARK(U42(tt))) MARK(U41(U42(s(z0)), x1)) -> c38(A__U41(a__U42(s(mark(z0))), x1), MARK(U42(s(z0)))) MARK(U41(U42(nil), x1)) -> c38(A__U41(a__U42(nil), x1), MARK(U42(nil))) MARK(U41(U42(x0), x1)) -> c38(MARK(U42(x0))) MARK(U41(U51(U11(z0), x1), x2)) -> c38(A__U41(a__U51(a__U11(mark(z0)), x1), x2), MARK(U51(U11(z0), x1))) MARK(U41(U51(U21(z0), x1), x2)) -> c38(A__U41(a__U51(a__U21(mark(z0)), x1), x2), MARK(U51(U21(z0), x1))) MARK(U41(U51(U31(z0), x1), x2)) -> c38(A__U41(a__U51(a__U31(mark(z0)), x1), x2), MARK(U51(U31(z0), x1))) MARK(U41(U51(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U41(mark(z0), z1), x1), x2), MARK(U51(U41(z0, z1), x1))) MARK(U41(U51(U42(z0), x1), x2)) -> c38(A__U41(a__U51(a__U42(mark(z0)), x1), x2), MARK(U51(U42(z0), x1))) MARK(U41(U51(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U51(mark(z0), z1), x1), x2), MARK(U51(U51(z0, z1), x1))) MARK(U41(U51(U52(z0), x1), x2)) -> c38(A__U41(a__U51(a__U52(mark(z0)), x1), x2), MARK(U51(U52(z0), x1))) MARK(U41(U51(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U51(a__U61(mark(z0), z1, z2), x1), x2), MARK(U51(U61(z0, z1, z2), x1))) MARK(U41(U51(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U62(mark(z0), z1), x1), x2), MARK(U51(U62(z0, z1), x1))) MARK(U41(U51(length(z0), x1), x2)) -> c38(A__U41(a__U51(a__length(mark(z0)), x1), x2), MARK(U51(length(z0), x1))) MARK(U41(U51(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U51(cons(mark(z0), z1), x1), x2), MARK(U51(cons(z0, z1), x1))) MARK(U41(U51(s(z0), x1), x2)) -> c38(A__U41(a__U51(s(mark(z0)), x1), x2), MARK(U51(s(z0), x1))) MARK(U41(U51(x0, z1), x2)) -> c38(MARK(U51(x0, z1))) MARK(U41(U51(0, x1), x2)) -> c38(A__U41(a__U51(0, x1), x2)) MARK(U41(U51(nil, x1), x2)) -> c38(A__U41(a__U51(nil, x1), x2)) MARK(U41(U51(zeros, x1), x2)) -> c3(A__U41(a__U51(a__zeros, x1), x2)) MARK(U41(U51(zeros, x1), x2)) -> c3(MARK(U51(zeros, x1))) MARK(U41(U51(isNatIList(z0), x1), x2)) -> c3(A__U41(a__U51(a__isNatIList(z0), x1), x2)) MARK(U41(U51(isNatIList(z0), x1), x2)) -> c3(MARK(U51(isNatIList(z0), x1))) MARK(U41(U51(isNatList(z0), x1), x2)) -> c3(A__U41(a__U51(a__isNatList(z0), x1), x2)) MARK(U41(U51(isNatList(z0), x1), x2)) -> c3(MARK(U51(isNatList(z0), x1))) MARK(U41(U51(isNat(z0), x1), x2)) -> c3(A__U41(a__U51(a__isNat(z0), x1), x2)) MARK(U41(U51(isNat(z0), x1), x2)) -> c3(MARK(U51(isNat(z0), x1))) MARK(U41(U51(tt, x1), x2)) -> c3(A__U41(a__U51(tt, x1), x2)) MARK(U41(U51(tt, x1), x2)) -> c3(MARK(U51(tt, x1))) MARK(U41(U52(zeros), x1)) -> c38(A__U41(a__U52(a__zeros), x1), MARK(U52(zeros))) MARK(U41(U52(U11(z0)), x1)) -> c38(A__U41(a__U52(a__U11(mark(z0))), x1), MARK(U52(U11(z0)))) MARK(U41(U52(U21(z0)), x1)) -> c38(A__U41(a__U52(a__U21(mark(z0))), x1), MARK(U52(U21(z0)))) MARK(U41(U52(U31(z0)), x1)) -> c38(A__U41(a__U52(a__U31(mark(z0))), x1), MARK(U52(U31(z0)))) MARK(U41(U52(U41(z0, z1)), x1)) -> c38(A__U41(a__U52(a__U41(mark(z0), z1)), x1), MARK(U52(U41(z0, z1)))) MARK(U41(U52(U42(z0)), x1)) -> c38(A__U41(a__U52(a__U42(mark(z0))), x1), MARK(U52(U42(z0)))) MARK(U41(U52(isNatIList(z0)), x1)) -> c38(A__U41(a__U52(a__isNatIList(z0)), x1), MARK(U52(isNatIList(z0)))) MARK(U41(U52(U51(z0, z1)), x1)) -> c38(A__U41(a__U52(a__U51(mark(z0), z1)), x1), MARK(U52(U51(z0, z1)))) MARK(U41(U52(U52(z0)), x1)) -> c38(A__U41(a__U52(a__U52(mark(z0))), x1), MARK(U52(U52(z0)))) MARK(U41(U52(isNatList(z0)), x1)) -> c38(A__U41(a__U52(a__isNatList(z0)), x1), MARK(U52(isNatList(z0)))) MARK(U41(U52(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U52(a__U61(mark(z0), z1, z2)), x1), MARK(U52(U61(z0, z1, z2)))) MARK(U41(U52(U62(z0, z1)), x1)) -> c38(A__U41(a__U52(a__U62(mark(z0), z1)), x1), MARK(U52(U62(z0, z1)))) MARK(U41(U52(isNat(z0)), x1)) -> c38(A__U41(a__U52(a__isNat(z0)), x1), MARK(U52(isNat(z0)))) MARK(U41(U52(length(z0)), x1)) -> c38(A__U41(a__U52(a__length(mark(z0))), x1), MARK(U52(length(z0)))) MARK(U41(U52(cons(z0, z1)), x1)) -> c38(A__U41(a__U52(cons(mark(z0), z1)), x1), MARK(U52(cons(z0, z1)))) MARK(U41(U52(0), x1)) -> c38(A__U41(a__U52(0), x1), MARK(U52(0))) MARK(U41(U52(tt), x1)) -> c38(A__U41(a__U52(tt), x1), MARK(U52(tt))) MARK(U41(U52(s(z0)), x1)) -> c38(A__U41(a__U52(s(mark(z0))), x1), MARK(U52(s(z0)))) MARK(U41(U52(nil), x1)) -> c38(A__U41(a__U52(nil), x1), MARK(U52(nil))) MARK(U41(U52(x0), x1)) -> c38(MARK(U52(x0))) MARK(U41(U61(zeros, x1, x2), x3)) -> c38(A__U41(a__U61(a__zeros, x1, x2), x3), MARK(U61(zeros, x1, x2))) MARK(U41(U61(U11(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U11(mark(z0)), x1, x2), x3), MARK(U61(U11(z0), x1, x2))) MARK(U41(U61(U21(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U21(mark(z0)), x1, x2), x3), MARK(U61(U21(z0), x1, x2))) MARK(U41(U61(U31(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U31(mark(z0)), x1, x2), x3), MARK(U61(U31(z0), x1, x2))) MARK(U41(U61(U41(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(a__U41(mark(z0), z1), x1, x2), x3), MARK(U61(U41(z0, z1), x1, x2))) MARK(U41(U61(U42(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U42(mark(z0)), x1, x2), x3), MARK(U61(U42(z0), x1, x2))) MARK(U41(U61(isNatIList(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__isNatIList(z0), x1, x2), x3), MARK(U61(isNatIList(z0), x1, x2))) MARK(U41(U61(U51(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(a__U51(mark(z0), z1), x1, x2), x3), MARK(U61(U51(z0, z1), x1, x2))) MARK(U41(U61(U52(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U52(mark(z0)), x1, x2), x3), MARK(U61(U52(z0), x1, x2))) MARK(U41(U61(isNatList(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__isNatList(z0), x1, x2), x3), MARK(U61(isNatList(z0), x1, x2))) MARK(U41(U61(U61(z0, z1, z2), x1, x2), x3)) -> c38(A__U41(a__U61(a__U61(mark(z0), z1, z2), x1, x2), x3), MARK(U61(U61(z0, z1, z2), x1, x2))) MARK(U41(U61(U62(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(a__U62(mark(z0), z1), x1, x2), x3), MARK(U61(U62(z0, z1), x1, x2))) MARK(U41(U61(isNat(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__isNat(z0), x1, x2), x3), MARK(U61(isNat(z0), x1, x2))) MARK(U41(U61(length(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__length(mark(z0)), x1, x2), x3), MARK(U61(length(z0), x1, x2))) MARK(U41(U61(cons(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(cons(mark(z0), z1), x1, x2), x3), MARK(U61(cons(z0, z1), x1, x2))) MARK(U41(U61(tt, x1, x2), x3)) -> c38(A__U41(a__U61(tt, x1, x2), x3), MARK(U61(tt, x1, x2))) MARK(U41(U61(s(z0), x1, x2), x3)) -> c38(A__U41(a__U61(s(mark(z0)), x1, x2), x3), MARK(U61(s(z0), x1, x2))) MARK(U41(U61(x0, z1, z2), x3)) -> c38(MARK(U61(x0, z1, z2))) MARK(U41(U61(0, x1, x2), x3)) -> c38(A__U41(a__U61(0, x1, x2), x3)) MARK(U41(U61(nil, x1, x2), x3)) -> c38(A__U41(a__U61(nil, x1, x2), x3)) MARK(U41(U62(zeros, x1), x2)) -> c38(A__U41(a__U62(a__zeros, x1), x2), MARK(U62(zeros, x1))) MARK(U41(U62(U11(z0), x1), x2)) -> c38(A__U41(a__U62(a__U11(mark(z0)), x1), x2), MARK(U62(U11(z0), x1))) MARK(U41(U62(U21(z0), x1), x2)) -> c38(A__U41(a__U62(a__U21(mark(z0)), x1), x2), MARK(U62(U21(z0), x1))) MARK(U41(U62(U31(z0), x1), x2)) -> c38(A__U41(a__U62(a__U31(mark(z0)), x1), x2), MARK(U62(U31(z0), x1))) MARK(U41(U62(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U62(a__U41(mark(z0), z1), x1), x2), MARK(U62(U41(z0, z1), x1))) MARK(U41(U62(U42(z0), x1), x2)) -> c38(A__U41(a__U62(a__U42(mark(z0)), x1), x2), MARK(U62(U42(z0), x1))) MARK(U41(U62(isNatIList(z0), x1), x2)) -> c38(A__U41(a__U62(a__isNatIList(z0), x1), x2), MARK(U62(isNatIList(z0), x1))) MARK(U41(U62(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U62(a__U51(mark(z0), z1), x1), x2), MARK(U62(U51(z0, z1), x1))) MARK(U41(U62(U52(z0), x1), x2)) -> c38(A__U41(a__U62(a__U52(mark(z0)), x1), x2), MARK(U62(U52(z0), x1))) MARK(U41(U62(isNatList(z0), x1), x2)) -> c38(A__U41(a__U62(a__isNatList(z0), x1), x2), MARK(U62(isNatList(z0), x1))) MARK(U41(U62(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U62(a__U61(mark(z0), z1, z2), x1), x2), MARK(U62(U61(z0, z1, z2), x1))) MARK(U41(U62(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U62(a__U62(mark(z0), z1), x1), x2), MARK(U62(U62(z0, z1), x1))) MARK(U41(U62(isNat(z0), x1), x2)) -> c38(A__U41(a__U62(a__isNat(z0), x1), x2), MARK(U62(isNat(z0), x1))) MARK(U41(U62(length(z0), x1), x2)) -> c38(A__U41(a__U62(a__length(mark(z0)), x1), x2), MARK(U62(length(z0), x1))) MARK(U41(U62(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U62(cons(mark(z0), z1), x1), x2), MARK(U62(cons(z0, z1), x1))) MARK(U41(U62(tt, x1), x2)) -> c38(A__U41(a__U62(tt, x1), x2), MARK(U62(tt, x1))) MARK(U41(U62(s(z0), x1), x2)) -> c38(A__U41(a__U62(s(mark(z0)), x1), x2), MARK(U62(s(z0), x1))) MARK(U41(U62(x0, z1), x2)) -> c38(MARK(U62(x0, z1))) MARK(U41(U62(0, x1), x2)) -> c38(A__U41(a__U62(0, x1), x2)) MARK(U41(U62(nil, x1), x2)) -> c38(A__U41(a__U62(nil, x1), x2)) MARK(U41(length(zeros), x1)) -> c38(A__U41(a__length(a__zeros), x1), MARK(length(zeros))) MARK(U41(length(U11(z0)), x1)) -> c38(A__U41(a__length(a__U11(mark(z0))), x1), MARK(length(U11(z0)))) MARK(U41(length(U21(z0)), x1)) -> c38(A__U41(a__length(a__U21(mark(z0))), x1), MARK(length(U21(z0)))) MARK(U41(length(U31(z0)), x1)) -> c38(A__U41(a__length(a__U31(mark(z0))), x1), MARK(length(U31(z0)))) MARK(U41(length(U41(z0, z1)), x1)) -> c38(A__U41(a__length(a__U41(mark(z0), z1)), x1), MARK(length(U41(z0, z1)))) MARK(U41(length(U42(z0)), x1)) -> c38(A__U41(a__length(a__U42(mark(z0))), x1), MARK(length(U42(z0)))) MARK(U41(length(isNatIList(z0)), x1)) -> c38(A__U41(a__length(a__isNatIList(z0)), x1), MARK(length(isNatIList(z0)))) MARK(U41(length(U51(z0, z1)), x1)) -> c38(A__U41(a__length(a__U51(mark(z0), z1)), x1), MARK(length(U51(z0, z1)))) MARK(U41(length(U52(z0)), x1)) -> c38(A__U41(a__length(a__U52(mark(z0))), x1), MARK(length(U52(z0)))) MARK(U41(length(isNatList(z0)), x1)) -> c38(A__U41(a__length(a__isNatList(z0)), x1), MARK(length(isNatList(z0)))) MARK(U41(length(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__length(a__U61(mark(z0), z1, z2)), x1), MARK(length(U61(z0, z1, z2)))) MARK(U41(length(U62(z0, z1)), x1)) -> c38(A__U41(a__length(a__U62(mark(z0), z1)), x1), MARK(length(U62(z0, z1)))) MARK(U41(length(isNat(z0)), x1)) -> c38(A__U41(a__length(a__isNat(z0)), x1), MARK(length(isNat(z0)))) MARK(U41(length(length(z0)), x1)) -> c38(A__U41(a__length(a__length(mark(z0))), x1), MARK(length(length(z0)))) MARK(U41(length(cons(z0, z1)), x1)) -> c38(A__U41(a__length(cons(mark(z0), z1)), x1), MARK(length(cons(z0, z1)))) MARK(U41(length(s(z0)), x1)) -> c38(A__U41(a__length(s(mark(z0))), x1), MARK(length(s(z0)))) MARK(U41(length(x0), x1)) -> c38(MARK(length(x0))) MARK(U41(length(0), x1)) -> c38(A__U41(a__length(0), x1)) MARK(U41(length(tt), x1)) -> c38(A__U41(a__length(tt), x1)) MARK(U41(length(nil), x1)) -> c38(A__U41(a__length(nil), x1)) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1))) S tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) A__U62(tt, isNatList(cons(z0, z1))) -> c18(A__LENGTH(a__U51(a__isNat(z0), z1)), MARK(isNatList(cons(z0, z1)))) A__U62(tt, isNatList(nil)) -> c18(MARK(isNatList(nil))) A__U62(tt, isNatList(z0)) -> c18(MARK(isNatList(z0))) A__U62(tt, U61(zeros, x1, x2)) -> c18(A__LENGTH(a__U61(a__zeros, x1, x2)), MARK(U61(zeros, x1, x2))) A__U62(tt, U61(U11(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U11(mark(z0)), x1, x2)), MARK(U61(U11(z0), x1, x2))) A__U62(tt, U61(U21(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U21(mark(z0)), x1, x2)), MARK(U61(U21(z0), x1, x2))) A__U62(tt, U61(U31(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U31(mark(z0)), x1, x2)), MARK(U61(U31(z0), x1, x2))) A__U62(tt, U61(U41(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U41(mark(z0), z1), x1, x2)), MARK(U61(U41(z0, z1), x1, x2))) A__U62(tt, U61(U42(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U42(mark(z0)), x1, x2)), MARK(U61(U42(z0), x1, x2))) A__U62(tt, U61(isNatIList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatIList(z0), x1, x2)), MARK(U61(isNatIList(z0), x1, x2))) A__U62(tt, U61(U51(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U51(mark(z0), z1), x1, x2)), MARK(U61(U51(z0, z1), x1, x2))) A__U62(tt, U61(U52(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U52(mark(z0)), x1, x2)), MARK(U61(U52(z0), x1, x2))) A__U62(tt, U61(isNatList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatList(z0), x1, x2)), MARK(U61(isNatList(z0), x1, x2))) A__U62(tt, U61(U61(z0, z1, z2), x1, x2)) -> c18(A__LENGTH(a__U61(a__U61(mark(z0), z1, z2), x1, x2)), MARK(U61(U61(z0, z1, z2), x1, x2))) A__U62(tt, U61(U62(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U62(mark(z0), z1), x1, x2)), MARK(U61(U62(z0, z1), x1, x2))) A__U62(tt, U61(isNat(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNat(z0), x1, x2)), MARK(U61(isNat(z0), x1, x2))) A__U62(tt, U61(length(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__length(mark(z0)), x1, x2)), MARK(U61(length(z0), x1, x2))) A__U62(tt, U61(cons(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(cons(mark(z0), z1), x1, x2)), MARK(U61(cons(z0, z1), x1, x2))) A__U62(tt, U61(tt, x1, x2)) -> c18(A__LENGTH(a__U61(tt, x1, x2)), MARK(U61(tt, x1, x2))) A__U62(tt, U61(s(z0), x1, x2)) -> c18(A__LENGTH(a__U61(s(mark(z0)), x1, x2)), MARK(U61(s(z0), x1, x2))) A__U62(tt, U61(x0, z1, z2)) -> c18(MARK(U61(x0, z1, z2))) A__U62(tt, U61(0, x1, x2)) -> c18(A__LENGTH(a__U61(0, x1, x2))) A__U62(tt, U61(nil, x1, x2)) -> c18(A__LENGTH(a__U61(nil, x1, x2))) A__U62(tt, U62(zeros, x1)) -> c18(A__LENGTH(a__U62(a__zeros, x1)), MARK(U62(zeros, x1))) A__U62(tt, U62(U11(z0), x1)) -> c18(A__LENGTH(a__U62(a__U11(mark(z0)), x1)), MARK(U62(U11(z0), x1))) A__U62(tt, U62(U21(z0), x1)) -> c18(A__LENGTH(a__U62(a__U21(mark(z0)), x1)), MARK(U62(U21(z0), x1))) A__U62(tt, U62(U31(z0), x1)) -> c18(A__LENGTH(a__U62(a__U31(mark(z0)), x1)), MARK(U62(U31(z0), x1))) A__U62(tt, U62(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U41(mark(z0), z1), x1)), MARK(U62(U41(z0, z1), x1))) A__U62(tt, U62(U42(z0), x1)) -> c18(A__LENGTH(a__U62(a__U42(mark(z0)), x1)), MARK(U62(U42(z0), x1))) A__U62(tt, U62(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatIList(z0), x1)), MARK(U62(isNatIList(z0), x1))) A__U62(tt, U62(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U51(mark(z0), z1), x1)), MARK(U62(U51(z0, z1), x1))) A__U62(tt, U62(U52(z0), x1)) -> c18(A__LENGTH(a__U62(a__U52(mark(z0)), x1)), MARK(U62(U52(z0), x1))) A__U62(tt, U62(isNatList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatList(z0), x1)), MARK(U62(isNatList(z0), x1))) A__U62(tt, U62(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U62(a__U61(mark(z0), z1, z2), x1)), MARK(U62(U61(z0, z1, z2), x1))) A__U62(tt, U62(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U62(mark(z0), z1), x1)), MARK(U62(U62(z0, z1), x1))) A__U62(tt, U62(isNat(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNat(z0), x1)), MARK(U62(isNat(z0), x1))) A__U62(tt, U62(length(z0), x1)) -> c18(A__LENGTH(a__U62(a__length(mark(z0)), x1)), MARK(U62(length(z0), x1))) A__U62(tt, U62(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U62(cons(mark(z0), z1), x1)), MARK(U62(cons(z0, z1), x1))) A__U62(tt, U62(tt, x1)) -> c18(A__LENGTH(a__U62(tt, x1)), MARK(U62(tt, x1))) A__U62(tt, U62(s(z0), x1)) -> c18(A__LENGTH(a__U62(s(mark(z0)), x1)), MARK(U62(s(z0), x1))) A__U62(tt, U62(x0, z1)) -> c18(MARK(U62(x0, z1))) A__U62(tt, U62(0, x1)) -> c18(A__LENGTH(a__U62(0, x1))) A__U62(tt, U62(nil, x1)) -> c18(A__LENGTH(a__U62(nil, x1))) A__U62(tt, isNat(length(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(isNat(length(z0)))) A__U62(tt, isNat(s(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(isNat(s(z0)))) A__U62(tt, isNat(0)) -> c18(MARK(isNat(0))) A__U62(tt, isNat(z0)) -> c18(MARK(isNat(z0))) A__U62(tt, length(zeros)) -> c18(A__LENGTH(a__length(a__zeros)), MARK(length(zeros))) A__U62(tt, length(U11(z0))) -> c18(A__LENGTH(a__length(a__U11(mark(z0)))), MARK(length(U11(z0)))) A__U62(tt, length(U21(z0))) -> c18(A__LENGTH(a__length(a__U21(mark(z0)))), MARK(length(U21(z0)))) A__U62(tt, length(U31(z0))) -> c18(A__LENGTH(a__length(a__U31(mark(z0)))), MARK(length(U31(z0)))) A__U62(tt, length(U41(z0, z1))) -> c18(A__LENGTH(a__length(a__U41(mark(z0), z1))), MARK(length(U41(z0, z1)))) A__U62(tt, length(U42(z0))) -> c18(A__LENGTH(a__length(a__U42(mark(z0)))), MARK(length(U42(z0)))) A__U62(tt, length(isNatIList(z0))) -> c18(A__LENGTH(a__length(a__isNatIList(z0))), MARK(length(isNatIList(z0)))) A__U62(tt, length(U51(z0, z1))) -> c18(A__LENGTH(a__length(a__U51(mark(z0), z1))), MARK(length(U51(z0, z1)))) A__U62(tt, length(U52(z0))) -> c18(A__LENGTH(a__length(a__U52(mark(z0)))), MARK(length(U52(z0)))) A__U62(tt, length(isNatList(z0))) -> c18(A__LENGTH(a__length(a__isNatList(z0))), MARK(length(isNatList(z0)))) A__U62(tt, length(U61(z0, z1, z2))) -> c18(A__LENGTH(a__length(a__U61(mark(z0), z1, z2))), MARK(length(U61(z0, z1, z2)))) A__U62(tt, length(U62(z0, z1))) -> c18(A__LENGTH(a__length(a__U62(mark(z0), z1))), MARK(length(U62(z0, z1)))) A__U62(tt, length(isNat(z0))) -> c18(A__LENGTH(a__length(a__isNat(z0))), MARK(length(isNat(z0)))) A__U62(tt, length(length(z0))) -> c18(A__LENGTH(a__length(a__length(mark(z0)))), MARK(length(length(z0)))) A__U62(tt, length(cons(z0, z1))) -> c18(A__LENGTH(a__length(cons(mark(z0), z1))), MARK(length(cons(z0, z1)))) A__U62(tt, length(s(z0))) -> c18(A__LENGTH(a__length(s(mark(z0)))), MARK(length(s(z0)))) A__U62(tt, length(x0)) -> c18(MARK(length(x0))) A__U62(tt, length(0)) -> c18(A__LENGTH(a__length(0))) A__U62(tt, length(tt)) -> c18(A__LENGTH(a__length(tt))) A__U62(tt, length(nil)) -> c18(A__LENGTH(a__length(nil))) A__U62(tt, zeros) -> c18(A__LENGTH(cons(0, zeros))) A__ISNATILIST(cons(length(nil), x1)) -> c26(A__U41(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATILIST(cons(length(cons(z0, z1)), x1)) -> c26(A__U41(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(length(x0), x1)) -> c26(A__ISNAT(length(x0))) A__ISNATILIST(cons(s(0), x1)) -> c26(A__U41(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATILIST(cons(s(length(z0)), x1)) -> c26(A__U41(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATILIST(cons(s(s(z0)), x1)) -> c26(A__U41(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(s(x0), x1)) -> c26(A__ISNAT(s(x0))) A__ISNATLIST(cons(length(nil), x1)) -> c29(A__U51(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATLIST(cons(length(cons(z0, z1)), x1)) -> c29(A__U51(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(length(x0), x1)) -> c29(A__ISNAT(length(x0))) A__ISNATLIST(cons(s(0), x1)) -> c29(A__U51(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATLIST(cons(s(length(z0)), x1)) -> c29(A__U51(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATLIST(cons(s(s(z0)), x1)) -> c29(A__U51(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(s(x0), x1)) -> c29(A__ISNAT(s(x0))) A__LENGTH(cons(x0, cons(0, x2))) -> c32(A__U61(a__U51(tt, x2), cons(0, x2), x0), A__ISNATLIST(cons(0, x2))) A__LENGTH(cons(x0, cons(length(z0), x2))) -> c32(A__U61(a__U51(a__U11(a__isNatList(z0)), x2), cons(length(z0), x2), x0), A__ISNATLIST(cons(length(z0), x2))) A__LENGTH(cons(x0, cons(s(z0), x2))) -> c32(A__U61(a__U51(a__U21(a__isNat(z0)), x2), cons(s(z0), x2), x0), A__ISNATLIST(cons(s(z0), x2))) A__LENGTH(cons(x0, cons(z0, x2))) -> c32(A__U61(a__U51(isNat(z0), x2), cons(z0, x2), x0), A__ISNATLIST(cons(z0, x2))) A__LENGTH(cons(x0, cons(x1, z1))) -> c32(A__ISNATLIST(cons(x1, z1))) MARK(U41(U11(zeros), x1)) -> c38(A__U41(a__U11(a__zeros), x1), MARK(U11(zeros))) MARK(U41(U11(U11(z0)), x1)) -> c38(A__U41(a__U11(a__U11(mark(z0))), x1), MARK(U11(U11(z0)))) MARK(U41(U11(U21(z0)), x1)) -> c38(A__U41(a__U11(a__U21(mark(z0))), x1), MARK(U11(U21(z0)))) MARK(U41(U11(U31(z0)), x1)) -> c38(A__U41(a__U11(a__U31(mark(z0))), x1), MARK(U11(U31(z0)))) MARK(U41(U11(U41(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U41(mark(z0), z1)), x1), MARK(U11(U41(z0, z1)))) MARK(U41(U11(U42(z0)), x1)) -> c38(A__U41(a__U11(a__U42(mark(z0))), x1), MARK(U11(U42(z0)))) MARK(U41(U11(isNatIList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatIList(z0)), x1), MARK(U11(isNatIList(z0)))) MARK(U41(U11(U51(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U51(mark(z0), z1)), x1), MARK(U11(U51(z0, z1)))) MARK(U41(U11(U52(z0)), x1)) -> c38(A__U41(a__U11(a__U52(mark(z0))), x1), MARK(U11(U52(z0)))) MARK(U41(U11(isNatList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatList(z0)), x1), MARK(U11(isNatList(z0)))) MARK(U41(U11(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U11(a__U61(mark(z0), z1, z2)), x1), MARK(U11(U61(z0, z1, z2)))) MARK(U41(U11(U62(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U62(mark(z0), z1)), x1), MARK(U11(U62(z0, z1)))) MARK(U41(U11(isNat(z0)), x1)) -> c38(A__U41(a__U11(a__isNat(z0)), x1), MARK(U11(isNat(z0)))) MARK(U41(U11(length(z0)), x1)) -> c38(A__U41(a__U11(a__length(mark(z0))), x1), MARK(U11(length(z0)))) MARK(U41(U11(cons(z0, z1)), x1)) -> c38(A__U41(a__U11(cons(mark(z0), z1)), x1), MARK(U11(cons(z0, z1)))) MARK(U41(U11(0), x1)) -> c38(A__U41(a__U11(0), x1), MARK(U11(0))) MARK(U41(U11(tt), x1)) -> c38(A__U41(a__U11(tt), x1), MARK(U11(tt))) MARK(U41(U11(s(z0)), x1)) -> c38(A__U41(a__U11(s(mark(z0))), x1), MARK(U11(s(z0)))) MARK(U41(U11(nil), x1)) -> c38(A__U41(a__U11(nil), x1), MARK(U11(nil))) MARK(U41(U11(x0), x1)) -> c38(MARK(U11(x0))) MARK(U41(U21(zeros), x1)) -> c38(A__U41(a__U21(a__zeros), x1), MARK(U21(zeros))) MARK(U41(U21(U11(z0)), x1)) -> c38(A__U41(a__U21(a__U11(mark(z0))), x1), MARK(U21(U11(z0)))) MARK(U41(U21(U21(z0)), x1)) -> c38(A__U41(a__U21(a__U21(mark(z0))), x1), MARK(U21(U21(z0)))) MARK(U41(U21(U31(z0)), x1)) -> c38(A__U41(a__U21(a__U31(mark(z0))), x1), MARK(U21(U31(z0)))) MARK(U41(U21(U41(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U41(mark(z0), z1)), x1), MARK(U21(U41(z0, z1)))) MARK(U41(U21(U42(z0)), x1)) -> c38(A__U41(a__U21(a__U42(mark(z0))), x1), MARK(U21(U42(z0)))) MARK(U41(U21(isNatIList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatIList(z0)), x1), MARK(U21(isNatIList(z0)))) MARK(U41(U21(U51(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U51(mark(z0), z1)), x1), MARK(U21(U51(z0, z1)))) MARK(U41(U21(U52(z0)), x1)) -> c38(A__U41(a__U21(a__U52(mark(z0))), x1), MARK(U21(U52(z0)))) MARK(U41(U21(isNatList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatList(z0)), x1), MARK(U21(isNatList(z0)))) MARK(U41(U21(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U21(a__U61(mark(z0), z1, z2)), x1), MARK(U21(U61(z0, z1, z2)))) MARK(U41(U21(U62(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U62(mark(z0), z1)), x1), MARK(U21(U62(z0, z1)))) MARK(U41(U21(isNat(z0)), x1)) -> c38(A__U41(a__U21(a__isNat(z0)), x1), MARK(U21(isNat(z0)))) MARK(U41(U21(length(z0)), x1)) -> c38(A__U41(a__U21(a__length(mark(z0))), x1), MARK(U21(length(z0)))) MARK(U41(U21(cons(z0, z1)), x1)) -> c38(A__U41(a__U21(cons(mark(z0), z1)), x1), MARK(U21(cons(z0, z1)))) MARK(U41(U21(0), x1)) -> c38(A__U41(a__U21(0), x1), MARK(U21(0))) MARK(U41(U21(tt), x1)) -> c38(A__U41(a__U21(tt), x1), MARK(U21(tt))) MARK(U41(U21(s(z0)), x1)) -> c38(A__U41(a__U21(s(mark(z0))), x1), MARK(U21(s(z0)))) MARK(U41(U21(nil), x1)) -> c38(A__U41(a__U21(nil), x1), MARK(U21(nil))) MARK(U41(U21(x0), x1)) -> c38(MARK(U21(x0))) MARK(U41(U31(zeros), x1)) -> c38(A__U41(a__U31(a__zeros), x1), MARK(U31(zeros))) MARK(U41(U31(U11(z0)), x1)) -> c38(A__U41(a__U31(a__U11(mark(z0))), x1), MARK(U31(U11(z0)))) MARK(U41(U31(U21(z0)), x1)) -> c38(A__U41(a__U31(a__U21(mark(z0))), x1), MARK(U31(U21(z0)))) MARK(U41(U31(U31(z0)), x1)) -> c38(A__U41(a__U31(a__U31(mark(z0))), x1), MARK(U31(U31(z0)))) MARK(U41(U31(U41(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U41(mark(z0), z1)), x1), MARK(U31(U41(z0, z1)))) MARK(U41(U31(U42(z0)), x1)) -> c38(A__U41(a__U31(a__U42(mark(z0))), x1), MARK(U31(U42(z0)))) MARK(U41(U31(isNatIList(z0)), x1)) -> c38(A__U41(a__U31(a__isNatIList(z0)), x1), MARK(U31(isNatIList(z0)))) MARK(U41(U31(U51(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U51(mark(z0), z1)), x1), MARK(U31(U51(z0, z1)))) MARK(U41(U31(U52(z0)), x1)) -> c38(A__U41(a__U31(a__U52(mark(z0))), x1), MARK(U31(U52(z0)))) MARK(U41(U31(isNatList(z0)), x1)) -> c38(A__U41(a__U31(a__isNatList(z0)), x1), MARK(U31(isNatList(z0)))) MARK(U41(U31(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U31(a__U61(mark(z0), z1, z2)), x1), MARK(U31(U61(z0, z1, z2)))) MARK(U41(U31(U62(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U62(mark(z0), z1)), x1), MARK(U31(U62(z0, z1)))) MARK(U41(U31(isNat(z0)), x1)) -> c38(A__U41(a__U31(a__isNat(z0)), x1), MARK(U31(isNat(z0)))) MARK(U41(U31(length(z0)), x1)) -> c38(A__U41(a__U31(a__length(mark(z0))), x1), MARK(U31(length(z0)))) MARK(U41(U31(cons(z0, z1)), x1)) -> c38(A__U41(a__U31(cons(mark(z0), z1)), x1), MARK(U31(cons(z0, z1)))) MARK(U41(U31(0), x1)) -> c38(A__U41(a__U31(0), x1), MARK(U31(0))) MARK(U41(U31(tt), x1)) -> c38(A__U41(a__U31(tt), x1), MARK(U31(tt))) MARK(U41(U31(s(z0)), x1)) -> c38(A__U41(a__U31(s(mark(z0))), x1), MARK(U31(s(z0)))) MARK(U41(U31(nil), x1)) -> c38(A__U41(a__U31(nil), x1), MARK(U31(nil))) MARK(U41(U31(x0), x1)) -> c38(MARK(U31(x0))) MARK(U41(U41(U11(z0), x1), x2)) -> c38(A__U41(a__U41(a__U11(mark(z0)), x1), x2), MARK(U41(U11(z0), x1))) MARK(U41(U41(U21(z0), x1), x2)) -> c38(A__U41(a__U41(a__U21(mark(z0)), x1), x2), MARK(U41(U21(z0), x1))) MARK(U41(U41(U31(z0), x1), x2)) -> c38(A__U41(a__U41(a__U31(mark(z0)), x1), x2), MARK(U41(U31(z0), x1))) MARK(U41(U41(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U41(mark(z0), z1), x1), x2), MARK(U41(U41(z0, z1), x1))) MARK(U41(U41(U42(z0), x1), x2)) -> c38(A__U41(a__U41(a__U42(mark(z0)), x1), x2), MARK(U41(U42(z0), x1))) MARK(U41(U41(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U51(mark(z0), z1), x1), x2), MARK(U41(U51(z0, z1), x1))) MARK(U41(U41(U52(z0), x1), x2)) -> c38(A__U41(a__U41(a__U52(mark(z0)), x1), x2), MARK(U41(U52(z0), x1))) MARK(U41(U41(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U41(a__U61(mark(z0), z1, z2), x1), x2), MARK(U41(U61(z0, z1, z2), x1))) MARK(U41(U41(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U62(mark(z0), z1), x1), x2), MARK(U41(U62(z0, z1), x1))) MARK(U41(U41(length(z0), x1), x2)) -> c38(A__U41(a__U41(a__length(mark(z0)), x1), x2), MARK(U41(length(z0), x1))) MARK(U41(U41(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U41(cons(mark(z0), z1), x1), x2), MARK(U41(cons(z0, z1), x1))) MARK(U41(U41(s(z0), x1), x2)) -> c38(A__U41(a__U41(s(mark(z0)), x1), x2), MARK(U41(s(z0), x1))) MARK(U41(U41(x0, z1), x2)) -> c38(MARK(U41(x0, z1))) MARK(U41(U41(0, x1), x2)) -> c38(A__U41(a__U41(0, x1), x2)) MARK(U41(U41(nil, x1), x2)) -> c38(A__U41(a__U41(nil, x1), x2)) MARK(U41(U41(zeros, x1), x2)) -> c2(A__U41(a__U41(a__zeros, x1), x2)) MARK(U41(U41(isNatIList(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNatIList(z0), x1), x2)) MARK(U41(U41(isNatIList(z0), x1), x2)) -> c2(MARK(U41(isNatIList(z0), x1))) MARK(U41(U41(isNatList(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNatList(z0), x1), x2)) MARK(U41(U41(isNatList(z0), x1), x2)) -> c2(MARK(U41(isNatList(z0), x1))) MARK(U41(U41(isNat(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNat(z0), x1), x2)) MARK(U41(U41(isNat(z0), x1), x2)) -> c2(MARK(U41(isNat(z0), x1))) MARK(U41(U41(tt, x1), x2)) -> c2(A__U41(a__U41(tt, x1), x2)) MARK(U41(U41(tt, x1), x2)) -> c2(MARK(U41(tt, x1))) MARK(U41(U42(zeros), x1)) -> c38(A__U41(a__U42(a__zeros), x1), MARK(U42(zeros))) MARK(U41(U42(U11(z0)), x1)) -> c38(A__U41(a__U42(a__U11(mark(z0))), x1), MARK(U42(U11(z0)))) MARK(U41(U42(U21(z0)), x1)) -> c38(A__U41(a__U42(a__U21(mark(z0))), x1), MARK(U42(U21(z0)))) MARK(U41(U42(U31(z0)), x1)) -> c38(A__U41(a__U42(a__U31(mark(z0))), x1), MARK(U42(U31(z0)))) MARK(U41(U42(U41(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U41(mark(z0), z1)), x1), MARK(U42(U41(z0, z1)))) MARK(U41(U42(U42(z0)), x1)) -> c38(A__U41(a__U42(a__U42(mark(z0))), x1), MARK(U42(U42(z0)))) MARK(U41(U42(isNatIList(z0)), x1)) -> c38(A__U41(a__U42(a__isNatIList(z0)), x1), MARK(U42(isNatIList(z0)))) MARK(U41(U42(U51(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U51(mark(z0), z1)), x1), MARK(U42(U51(z0, z1)))) MARK(U41(U42(U52(z0)), x1)) -> c38(A__U41(a__U42(a__U52(mark(z0))), x1), MARK(U42(U52(z0)))) MARK(U41(U42(isNatList(z0)), x1)) -> c38(A__U41(a__U42(a__isNatList(z0)), x1), MARK(U42(isNatList(z0)))) MARK(U41(U42(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U42(a__U61(mark(z0), z1, z2)), x1), MARK(U42(U61(z0, z1, z2)))) MARK(U41(U42(U62(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U62(mark(z0), z1)), x1), MARK(U42(U62(z0, z1)))) MARK(U41(U42(isNat(z0)), x1)) -> c38(A__U41(a__U42(a__isNat(z0)), x1), MARK(U42(isNat(z0)))) MARK(U41(U42(length(z0)), x1)) -> c38(A__U41(a__U42(a__length(mark(z0))), x1), MARK(U42(length(z0)))) MARK(U41(U42(cons(z0, z1)), x1)) -> c38(A__U41(a__U42(cons(mark(z0), z1)), x1), MARK(U42(cons(z0, z1)))) MARK(U41(U42(0), x1)) -> c38(A__U41(a__U42(0), x1), MARK(U42(0))) MARK(U41(U42(tt), x1)) -> c38(A__U41(a__U42(tt), x1), MARK(U42(tt))) MARK(U41(U42(s(z0)), x1)) -> c38(A__U41(a__U42(s(mark(z0))), x1), MARK(U42(s(z0)))) MARK(U41(U42(nil), x1)) -> c38(A__U41(a__U42(nil), x1), MARK(U42(nil))) MARK(U41(U42(x0), x1)) -> c38(MARK(U42(x0))) MARK(U41(U51(U11(z0), x1), x2)) -> c38(A__U41(a__U51(a__U11(mark(z0)), x1), x2), MARK(U51(U11(z0), x1))) MARK(U41(U51(U21(z0), x1), x2)) -> c38(A__U41(a__U51(a__U21(mark(z0)), x1), x2), MARK(U51(U21(z0), x1))) MARK(U41(U51(U31(z0), x1), x2)) -> c38(A__U41(a__U51(a__U31(mark(z0)), x1), x2), MARK(U51(U31(z0), x1))) MARK(U41(U51(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U41(mark(z0), z1), x1), x2), MARK(U51(U41(z0, z1), x1))) MARK(U41(U51(U42(z0), x1), x2)) -> c38(A__U41(a__U51(a__U42(mark(z0)), x1), x2), MARK(U51(U42(z0), x1))) MARK(U41(U51(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U51(mark(z0), z1), x1), x2), MARK(U51(U51(z0, z1), x1))) MARK(U41(U51(U52(z0), x1), x2)) -> c38(A__U41(a__U51(a__U52(mark(z0)), x1), x2), MARK(U51(U52(z0), x1))) MARK(U41(U51(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U51(a__U61(mark(z0), z1, z2), x1), x2), MARK(U51(U61(z0, z1, z2), x1))) MARK(U41(U51(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U62(mark(z0), z1), x1), x2), MARK(U51(U62(z0, z1), x1))) MARK(U41(U51(length(z0), x1), x2)) -> c38(A__U41(a__U51(a__length(mark(z0)), x1), x2), MARK(U51(length(z0), x1))) MARK(U41(U51(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U51(cons(mark(z0), z1), x1), x2), MARK(U51(cons(z0, z1), x1))) MARK(U41(U51(s(z0), x1), x2)) -> c38(A__U41(a__U51(s(mark(z0)), x1), x2), MARK(U51(s(z0), x1))) MARK(U41(U51(x0, z1), x2)) -> c38(MARK(U51(x0, z1))) MARK(U41(U51(0, x1), x2)) -> c38(A__U41(a__U51(0, x1), x2)) MARK(U41(U51(nil, x1), x2)) -> c38(A__U41(a__U51(nil, x1), x2)) MARK(U41(U51(zeros, x1), x2)) -> c3(A__U41(a__U51(a__zeros, x1), x2)) MARK(U41(U51(zeros, x1), x2)) -> c3(MARK(U51(zeros, x1))) MARK(U41(U51(isNatIList(z0), x1), x2)) -> c3(A__U41(a__U51(a__isNatIList(z0), x1), x2)) MARK(U41(U51(isNatIList(z0), x1), x2)) -> c3(MARK(U51(isNatIList(z0), x1))) MARK(U41(U51(isNatList(z0), x1), x2)) -> c3(A__U41(a__U51(a__isNatList(z0), x1), x2)) MARK(U41(U51(isNatList(z0), x1), x2)) -> c3(MARK(U51(isNatList(z0), x1))) MARK(U41(U51(isNat(z0), x1), x2)) -> c3(A__U41(a__U51(a__isNat(z0), x1), x2)) MARK(U41(U51(isNat(z0), x1), x2)) -> c3(MARK(U51(isNat(z0), x1))) MARK(U41(U51(tt, x1), x2)) -> c3(A__U41(a__U51(tt, x1), x2)) MARK(U41(U51(tt, x1), x2)) -> c3(MARK(U51(tt, x1))) MARK(U41(U52(zeros), x1)) -> c38(A__U41(a__U52(a__zeros), x1), MARK(U52(zeros))) MARK(U41(U52(U11(z0)), x1)) -> c38(A__U41(a__U52(a__U11(mark(z0))), x1), MARK(U52(U11(z0)))) MARK(U41(U52(U21(z0)), x1)) -> c38(A__U41(a__U52(a__U21(mark(z0))), x1), MARK(U52(U21(z0)))) MARK(U41(U52(U31(z0)), x1)) -> c38(A__U41(a__U52(a__U31(mark(z0))), x1), MARK(U52(U31(z0)))) MARK(U41(U52(U41(z0, z1)), x1)) -> c38(A__U41(a__U52(a__U41(mark(z0), z1)), x1), MARK(U52(U41(z0, z1)))) MARK(U41(U52(U42(z0)), x1)) -> c38(A__U41(a__U52(a__U42(mark(z0))), x1), MARK(U52(U42(z0)))) MARK(U41(U52(isNatIList(z0)), x1)) -> c38(A__U41(a__U52(a__isNatIList(z0)), x1), MARK(U52(isNatIList(z0)))) MARK(U41(U52(U51(z0, z1)), x1)) -> c38(A__U41(a__U52(a__U51(mark(z0), z1)), x1), MARK(U52(U51(z0, z1)))) MARK(U41(U52(U52(z0)), x1)) -> c38(A__U41(a__U52(a__U52(mark(z0))), x1), MARK(U52(U52(z0)))) MARK(U41(U52(isNatList(z0)), x1)) -> c38(A__U41(a__U52(a__isNatList(z0)), x1), MARK(U52(isNatList(z0)))) MARK(U41(U52(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U52(a__U61(mark(z0), z1, z2)), x1), MARK(U52(U61(z0, z1, z2)))) MARK(U41(U52(U62(z0, z1)), x1)) -> c38(A__U41(a__U52(a__U62(mark(z0), z1)), x1), MARK(U52(U62(z0, z1)))) MARK(U41(U52(isNat(z0)), x1)) -> c38(A__U41(a__U52(a__isNat(z0)), x1), MARK(U52(isNat(z0)))) MARK(U41(U52(length(z0)), x1)) -> c38(A__U41(a__U52(a__length(mark(z0))), x1), MARK(U52(length(z0)))) MARK(U41(U52(cons(z0, z1)), x1)) -> c38(A__U41(a__U52(cons(mark(z0), z1)), x1), MARK(U52(cons(z0, z1)))) MARK(U41(U52(0), x1)) -> c38(A__U41(a__U52(0), x1), MARK(U52(0))) MARK(U41(U52(tt), x1)) -> c38(A__U41(a__U52(tt), x1), MARK(U52(tt))) MARK(U41(U52(s(z0)), x1)) -> c38(A__U41(a__U52(s(mark(z0))), x1), MARK(U52(s(z0)))) MARK(U41(U52(nil), x1)) -> c38(A__U41(a__U52(nil), x1), MARK(U52(nil))) MARK(U41(U52(x0), x1)) -> c38(MARK(U52(x0))) MARK(U41(U61(zeros, x1, x2), x3)) -> c38(A__U41(a__U61(a__zeros, x1, x2), x3), MARK(U61(zeros, x1, x2))) MARK(U41(U61(U11(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U11(mark(z0)), x1, x2), x3), MARK(U61(U11(z0), x1, x2))) MARK(U41(U61(U21(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U21(mark(z0)), x1, x2), x3), MARK(U61(U21(z0), x1, x2))) MARK(U41(U61(U31(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U31(mark(z0)), x1, x2), x3), MARK(U61(U31(z0), x1, x2))) MARK(U41(U61(U41(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(a__U41(mark(z0), z1), x1, x2), x3), MARK(U61(U41(z0, z1), x1, x2))) MARK(U41(U61(U42(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U42(mark(z0)), x1, x2), x3), MARK(U61(U42(z0), x1, x2))) MARK(U41(U61(isNatIList(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__isNatIList(z0), x1, x2), x3), MARK(U61(isNatIList(z0), x1, x2))) MARK(U41(U61(U51(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(a__U51(mark(z0), z1), x1, x2), x3), MARK(U61(U51(z0, z1), x1, x2))) MARK(U41(U61(U52(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U52(mark(z0)), x1, x2), x3), MARK(U61(U52(z0), x1, x2))) MARK(U41(U61(isNatList(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__isNatList(z0), x1, x2), x3), MARK(U61(isNatList(z0), x1, x2))) MARK(U41(U61(U61(z0, z1, z2), x1, x2), x3)) -> c38(A__U41(a__U61(a__U61(mark(z0), z1, z2), x1, x2), x3), MARK(U61(U61(z0, z1, z2), x1, x2))) MARK(U41(U61(U62(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(a__U62(mark(z0), z1), x1, x2), x3), MARK(U61(U62(z0, z1), x1, x2))) MARK(U41(U61(isNat(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__isNat(z0), x1, x2), x3), MARK(U61(isNat(z0), x1, x2))) MARK(U41(U61(length(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__length(mark(z0)), x1, x2), x3), MARK(U61(length(z0), x1, x2))) MARK(U41(U61(cons(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(cons(mark(z0), z1), x1, x2), x3), MARK(U61(cons(z0, z1), x1, x2))) MARK(U41(U61(tt, x1, x2), x3)) -> c38(A__U41(a__U61(tt, x1, x2), x3), MARK(U61(tt, x1, x2))) MARK(U41(U61(s(z0), x1, x2), x3)) -> c38(A__U41(a__U61(s(mark(z0)), x1, x2), x3), MARK(U61(s(z0), x1, x2))) MARK(U41(U61(x0, z1, z2), x3)) -> c38(MARK(U61(x0, z1, z2))) MARK(U41(U61(0, x1, x2), x3)) -> c38(A__U41(a__U61(0, x1, x2), x3)) MARK(U41(U61(nil, x1, x2), x3)) -> c38(A__U41(a__U61(nil, x1, x2), x3)) MARK(U41(U62(zeros, x1), x2)) -> c38(A__U41(a__U62(a__zeros, x1), x2), MARK(U62(zeros, x1))) MARK(U41(U62(U11(z0), x1), x2)) -> c38(A__U41(a__U62(a__U11(mark(z0)), x1), x2), MARK(U62(U11(z0), x1))) MARK(U41(U62(U21(z0), x1), x2)) -> c38(A__U41(a__U62(a__U21(mark(z0)), x1), x2), MARK(U62(U21(z0), x1))) MARK(U41(U62(U31(z0), x1), x2)) -> c38(A__U41(a__U62(a__U31(mark(z0)), x1), x2), MARK(U62(U31(z0), x1))) MARK(U41(U62(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U62(a__U41(mark(z0), z1), x1), x2), MARK(U62(U41(z0, z1), x1))) MARK(U41(U62(U42(z0), x1), x2)) -> c38(A__U41(a__U62(a__U42(mark(z0)), x1), x2), MARK(U62(U42(z0), x1))) MARK(U41(U62(isNatIList(z0), x1), x2)) -> c38(A__U41(a__U62(a__isNatIList(z0), x1), x2), MARK(U62(isNatIList(z0), x1))) MARK(U41(U62(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U62(a__U51(mark(z0), z1), x1), x2), MARK(U62(U51(z0, z1), x1))) MARK(U41(U62(U52(z0), x1), x2)) -> c38(A__U41(a__U62(a__U52(mark(z0)), x1), x2), MARK(U62(U52(z0), x1))) MARK(U41(U62(isNatList(z0), x1), x2)) -> c38(A__U41(a__U62(a__isNatList(z0), x1), x2), MARK(U62(isNatList(z0), x1))) MARK(U41(U62(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U62(a__U61(mark(z0), z1, z2), x1), x2), MARK(U62(U61(z0, z1, z2), x1))) MARK(U41(U62(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U62(a__U62(mark(z0), z1), x1), x2), MARK(U62(U62(z0, z1), x1))) MARK(U41(U62(isNat(z0), x1), x2)) -> c38(A__U41(a__U62(a__isNat(z0), x1), x2), MARK(U62(isNat(z0), x1))) MARK(U41(U62(length(z0), x1), x2)) -> c38(A__U41(a__U62(a__length(mark(z0)), x1), x2), MARK(U62(length(z0), x1))) MARK(U41(U62(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U62(cons(mark(z0), z1), x1), x2), MARK(U62(cons(z0, z1), x1))) MARK(U41(U62(tt, x1), x2)) -> c38(A__U41(a__U62(tt, x1), x2), MARK(U62(tt, x1))) MARK(U41(U62(s(z0), x1), x2)) -> c38(A__U41(a__U62(s(mark(z0)), x1), x2), MARK(U62(s(z0), x1))) MARK(U41(U62(x0, z1), x2)) -> c38(MARK(U62(x0, z1))) MARK(U41(U62(0, x1), x2)) -> c38(A__U41(a__U62(0, x1), x2)) MARK(U41(U62(nil, x1), x2)) -> c38(A__U41(a__U62(nil, x1), x2)) MARK(U41(length(zeros), x1)) -> c38(A__U41(a__length(a__zeros), x1), MARK(length(zeros))) MARK(U41(length(U11(z0)), x1)) -> c38(A__U41(a__length(a__U11(mark(z0))), x1), MARK(length(U11(z0)))) MARK(U41(length(U21(z0)), x1)) -> c38(A__U41(a__length(a__U21(mark(z0))), x1), MARK(length(U21(z0)))) MARK(U41(length(U31(z0)), x1)) -> c38(A__U41(a__length(a__U31(mark(z0))), x1), MARK(length(U31(z0)))) MARK(U41(length(U41(z0, z1)), x1)) -> c38(A__U41(a__length(a__U41(mark(z0), z1)), x1), MARK(length(U41(z0, z1)))) MARK(U41(length(U42(z0)), x1)) -> c38(A__U41(a__length(a__U42(mark(z0))), x1), MARK(length(U42(z0)))) MARK(U41(length(isNatIList(z0)), x1)) -> c38(A__U41(a__length(a__isNatIList(z0)), x1), MARK(length(isNatIList(z0)))) MARK(U41(length(U51(z0, z1)), x1)) -> c38(A__U41(a__length(a__U51(mark(z0), z1)), x1), MARK(length(U51(z0, z1)))) MARK(U41(length(U52(z0)), x1)) -> c38(A__U41(a__length(a__U52(mark(z0))), x1), MARK(length(U52(z0)))) MARK(U41(length(isNatList(z0)), x1)) -> c38(A__U41(a__length(a__isNatList(z0)), x1), MARK(length(isNatList(z0)))) MARK(U41(length(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__length(a__U61(mark(z0), z1, z2)), x1), MARK(length(U61(z0, z1, z2)))) MARK(U41(length(U62(z0, z1)), x1)) -> c38(A__U41(a__length(a__U62(mark(z0), z1)), x1), MARK(length(U62(z0, z1)))) MARK(U41(length(isNat(z0)), x1)) -> c38(A__U41(a__length(a__isNat(z0)), x1), MARK(length(isNat(z0)))) MARK(U41(length(length(z0)), x1)) -> c38(A__U41(a__length(a__length(mark(z0))), x1), MARK(length(length(z0)))) MARK(U41(length(cons(z0, z1)), x1)) -> c38(A__U41(a__length(cons(mark(z0), z1)), x1), MARK(length(cons(z0, z1)))) MARK(U41(length(s(z0)), x1)) -> c38(A__U41(a__length(s(mark(z0))), x1), MARK(length(s(z0)))) MARK(U41(length(x0), x1)) -> c38(MARK(length(x0))) MARK(U41(length(0), x1)) -> c38(A__U41(a__length(0), x1)) MARK(U41(length(tt), x1)) -> c38(A__U41(a__length(tt), x1)) MARK(U41(length(nil), x1)) -> c38(A__U41(a__length(nil), x1)) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1))) K tuples:none Defined Rule Symbols: a__zeros, a__U11_1, a__U21_1, a__U31_1, a__U41_2, a__U42_1, a__U51_2, a__U52_1, a__U61_3, a__U62_2, a__isNat_1, a__isNatIList_1, a__isNatList_1, a__length_1, mark_1 Defined Pair Symbols: MARK_1, A__U41_2, A__U51_2, A__ISNAT_1, A__ISNATILIST_1, A__U61_3, A__U62_2, A__ISNATLIST_1, A__LENGTH_1 Compound Symbols: c40_1, c43_1, c46_1, c48_1, c51_1, c8_1, c12_1, c21_1, c22_1, c24_1, c35_1, c36_1, c37_1, c39_1, c42_1, c16_1, c18_2, c18_1, c26_1, c29_1, c32_1, c38_1, c_1, c41_2, c41_1, c1_1, c44_2, c44_1, c45_2, c45_1, c47_2, c47_1, c16_2, c26_2, c29_2, c32_2, c38_2, c2_1, c3_1 ---------------------------------------- (219) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__isNatIList(z0), x1)) by MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__U31(a__isNatList(z0)), x1)) MARK(U41(isNatIList(zeros), x1)) -> c(A__U41(tt, x1)) MARK(U41(isNatIList(cons(z0, z1)), x1)) -> c(A__U41(a__U41(a__isNat(z0), z1), x1)) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(isNatIList(z0), x1)) ---------------------------------------- (220) Obligation: Complexity Dependency Tuples Problem Rules: a__zeros -> cons(0, zeros) a__zeros -> zeros a__U11(tt) -> tt a__U11(z0) -> U11(z0) a__U21(tt) -> tt a__U21(z0) -> U21(z0) a__U31(tt) -> tt a__U31(z0) -> U31(z0) a__U41(tt, z0) -> a__U42(a__isNatIList(z0)) a__U41(z0, z1) -> U41(z0, z1) a__U42(tt) -> tt a__U42(z0) -> U42(z0) a__U51(tt, z0) -> a__U52(a__isNatList(z0)) a__U51(z0, z1) -> U51(z0, z1) a__U52(tt) -> tt a__U52(z0) -> U52(z0) a__U61(tt, z0, z1) -> a__U62(a__isNat(z1), z0) a__U61(z0, z1, z2) -> U61(z0, z1, z2) a__U62(tt, z0) -> s(a__length(mark(z0))) a__U62(z0, z1) -> U62(z0, z1) a__isNat(0) -> tt a__isNat(length(z0)) -> a__U11(a__isNatList(z0)) a__isNat(s(z0)) -> a__U21(a__isNat(z0)) a__isNat(z0) -> isNat(z0) a__isNatIList(z0) -> a__U31(a__isNatList(z0)) a__isNatIList(zeros) -> tt a__isNatIList(cons(z0, z1)) -> a__U41(a__isNat(z0), z1) a__isNatIList(z0) -> isNatIList(z0) a__isNatList(nil) -> tt a__isNatList(cons(z0, z1)) -> a__U51(a__isNat(z0), z1) a__isNatList(z0) -> isNatList(z0) a__length(nil) -> 0 a__length(cons(z0, z1)) -> a__U61(a__isNatList(z1), z1, z0) a__length(z0) -> length(z0) mark(zeros) -> a__zeros mark(U11(z0)) -> a__U11(mark(z0)) mark(U21(z0)) -> a__U21(mark(z0)) mark(U31(z0)) -> a__U31(mark(z0)) mark(U41(z0, z1)) -> a__U41(mark(z0), z1) mark(U42(z0)) -> a__U42(mark(z0)) mark(isNatIList(z0)) -> a__isNatIList(z0) mark(U51(z0, z1)) -> a__U51(mark(z0), z1) mark(U52(z0)) -> a__U52(mark(z0)) mark(isNatList(z0)) -> a__isNatList(z0) mark(U61(z0, z1, z2)) -> a__U61(mark(z0), z1, z2) mark(U62(z0, z1)) -> a__U62(mark(z0), z1) mark(isNat(z0)) -> a__isNat(z0) mark(length(z0)) -> a__length(mark(z0)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(0) -> 0 mark(tt) -> tt mark(s(z0)) -> s(mark(z0)) mark(nil) -> nil Tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) A__U62(tt, isNatList(cons(z0, z1))) -> c18(A__LENGTH(a__U51(a__isNat(z0), z1)), MARK(isNatList(cons(z0, z1)))) A__U62(tt, isNatList(nil)) -> c18(MARK(isNatList(nil))) A__U62(tt, isNatList(z0)) -> c18(MARK(isNatList(z0))) A__U62(tt, U61(zeros, x1, x2)) -> c18(A__LENGTH(a__U61(a__zeros, x1, x2)), MARK(U61(zeros, x1, x2))) A__U62(tt, U61(U11(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U11(mark(z0)), x1, x2)), MARK(U61(U11(z0), x1, x2))) A__U62(tt, U61(U21(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U21(mark(z0)), x1, x2)), MARK(U61(U21(z0), x1, x2))) A__U62(tt, U61(U31(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U31(mark(z0)), x1, x2)), MARK(U61(U31(z0), x1, x2))) A__U62(tt, U61(U41(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U41(mark(z0), z1), x1, x2)), MARK(U61(U41(z0, z1), x1, x2))) A__U62(tt, U61(U42(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U42(mark(z0)), x1, x2)), MARK(U61(U42(z0), x1, x2))) A__U62(tt, U61(isNatIList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatIList(z0), x1, x2)), MARK(U61(isNatIList(z0), x1, x2))) A__U62(tt, U61(U51(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U51(mark(z0), z1), x1, x2)), MARK(U61(U51(z0, z1), x1, x2))) A__U62(tt, U61(U52(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U52(mark(z0)), x1, x2)), MARK(U61(U52(z0), x1, x2))) A__U62(tt, U61(isNatList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatList(z0), x1, x2)), MARK(U61(isNatList(z0), x1, x2))) A__U62(tt, U61(U61(z0, z1, z2), x1, x2)) -> c18(A__LENGTH(a__U61(a__U61(mark(z0), z1, z2), x1, x2)), MARK(U61(U61(z0, z1, z2), x1, x2))) A__U62(tt, U61(U62(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U62(mark(z0), z1), x1, x2)), MARK(U61(U62(z0, z1), x1, x2))) A__U62(tt, U61(isNat(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNat(z0), x1, x2)), MARK(U61(isNat(z0), x1, x2))) A__U62(tt, U61(length(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__length(mark(z0)), x1, x2)), MARK(U61(length(z0), x1, x2))) A__U62(tt, U61(cons(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(cons(mark(z0), z1), x1, x2)), MARK(U61(cons(z0, z1), x1, x2))) A__U62(tt, U61(tt, x1, x2)) -> c18(A__LENGTH(a__U61(tt, x1, x2)), MARK(U61(tt, x1, x2))) A__U62(tt, U61(s(z0), x1, x2)) -> c18(A__LENGTH(a__U61(s(mark(z0)), x1, x2)), MARK(U61(s(z0), x1, x2))) A__U62(tt, U61(x0, z1, z2)) -> c18(MARK(U61(x0, z1, z2))) A__U62(tt, U61(0, x1, x2)) -> c18(A__LENGTH(a__U61(0, x1, x2))) A__U62(tt, U61(nil, x1, x2)) -> c18(A__LENGTH(a__U61(nil, x1, x2))) A__U62(tt, U62(zeros, x1)) -> c18(A__LENGTH(a__U62(a__zeros, x1)), MARK(U62(zeros, x1))) A__U62(tt, U62(U11(z0), x1)) -> c18(A__LENGTH(a__U62(a__U11(mark(z0)), x1)), MARK(U62(U11(z0), x1))) A__U62(tt, U62(U21(z0), x1)) -> c18(A__LENGTH(a__U62(a__U21(mark(z0)), x1)), MARK(U62(U21(z0), x1))) A__U62(tt, U62(U31(z0), x1)) -> c18(A__LENGTH(a__U62(a__U31(mark(z0)), x1)), MARK(U62(U31(z0), x1))) A__U62(tt, U62(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U41(mark(z0), z1), x1)), MARK(U62(U41(z0, z1), x1))) A__U62(tt, U62(U42(z0), x1)) -> c18(A__LENGTH(a__U62(a__U42(mark(z0)), x1)), MARK(U62(U42(z0), x1))) A__U62(tt, U62(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatIList(z0), x1)), MARK(U62(isNatIList(z0), x1))) A__U62(tt, U62(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U51(mark(z0), z1), x1)), MARK(U62(U51(z0, z1), x1))) A__U62(tt, U62(U52(z0), x1)) -> c18(A__LENGTH(a__U62(a__U52(mark(z0)), x1)), MARK(U62(U52(z0), x1))) A__U62(tt, U62(isNatList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatList(z0), x1)), MARK(U62(isNatList(z0), x1))) A__U62(tt, U62(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U62(a__U61(mark(z0), z1, z2), x1)), MARK(U62(U61(z0, z1, z2), x1))) A__U62(tt, U62(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U62(mark(z0), z1), x1)), MARK(U62(U62(z0, z1), x1))) A__U62(tt, U62(isNat(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNat(z0), x1)), MARK(U62(isNat(z0), x1))) A__U62(tt, U62(length(z0), x1)) -> c18(A__LENGTH(a__U62(a__length(mark(z0)), x1)), MARK(U62(length(z0), x1))) A__U62(tt, U62(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U62(cons(mark(z0), z1), x1)), MARK(U62(cons(z0, z1), x1))) A__U62(tt, U62(tt, x1)) -> c18(A__LENGTH(a__U62(tt, x1)), MARK(U62(tt, x1))) A__U62(tt, U62(s(z0), x1)) -> c18(A__LENGTH(a__U62(s(mark(z0)), x1)), MARK(U62(s(z0), x1))) A__U62(tt, U62(x0, z1)) -> c18(MARK(U62(x0, z1))) A__U62(tt, U62(0, x1)) -> c18(A__LENGTH(a__U62(0, x1))) A__U62(tt, U62(nil, x1)) -> c18(A__LENGTH(a__U62(nil, x1))) A__U62(tt, isNat(length(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(isNat(length(z0)))) A__U62(tt, isNat(s(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(isNat(s(z0)))) A__U62(tt, isNat(0)) -> c18(MARK(isNat(0))) A__U62(tt, isNat(z0)) -> c18(MARK(isNat(z0))) A__U62(tt, length(zeros)) -> c18(A__LENGTH(a__length(a__zeros)), MARK(length(zeros))) A__U62(tt, length(U11(z0))) -> c18(A__LENGTH(a__length(a__U11(mark(z0)))), MARK(length(U11(z0)))) A__U62(tt, length(U21(z0))) -> c18(A__LENGTH(a__length(a__U21(mark(z0)))), MARK(length(U21(z0)))) A__U62(tt, length(U31(z0))) -> c18(A__LENGTH(a__length(a__U31(mark(z0)))), MARK(length(U31(z0)))) A__U62(tt, length(U41(z0, z1))) -> c18(A__LENGTH(a__length(a__U41(mark(z0), z1))), MARK(length(U41(z0, z1)))) A__U62(tt, length(U42(z0))) -> c18(A__LENGTH(a__length(a__U42(mark(z0)))), MARK(length(U42(z0)))) A__U62(tt, length(isNatIList(z0))) -> c18(A__LENGTH(a__length(a__isNatIList(z0))), MARK(length(isNatIList(z0)))) A__U62(tt, length(U51(z0, z1))) -> c18(A__LENGTH(a__length(a__U51(mark(z0), z1))), MARK(length(U51(z0, z1)))) A__U62(tt, length(U52(z0))) -> c18(A__LENGTH(a__length(a__U52(mark(z0)))), MARK(length(U52(z0)))) A__U62(tt, length(isNatList(z0))) -> c18(A__LENGTH(a__length(a__isNatList(z0))), MARK(length(isNatList(z0)))) A__U62(tt, length(U61(z0, z1, z2))) -> c18(A__LENGTH(a__length(a__U61(mark(z0), z1, z2))), MARK(length(U61(z0, z1, z2)))) A__U62(tt, length(U62(z0, z1))) -> c18(A__LENGTH(a__length(a__U62(mark(z0), z1))), MARK(length(U62(z0, z1)))) A__U62(tt, length(isNat(z0))) -> c18(A__LENGTH(a__length(a__isNat(z0))), MARK(length(isNat(z0)))) A__U62(tt, length(length(z0))) -> c18(A__LENGTH(a__length(a__length(mark(z0)))), MARK(length(length(z0)))) A__U62(tt, length(cons(z0, z1))) -> c18(A__LENGTH(a__length(cons(mark(z0), z1))), MARK(length(cons(z0, z1)))) A__U62(tt, length(s(z0))) -> c18(A__LENGTH(a__length(s(mark(z0)))), MARK(length(s(z0)))) A__U62(tt, length(x0)) -> c18(MARK(length(x0))) A__U62(tt, length(0)) -> c18(A__LENGTH(a__length(0))) A__U62(tt, length(tt)) -> c18(A__LENGTH(a__length(tt))) A__U62(tt, length(nil)) -> c18(A__LENGTH(a__length(nil))) A__U62(tt, zeros) -> c18(A__LENGTH(cons(0, zeros))) A__ISNATILIST(cons(length(nil), x1)) -> c26(A__U41(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATILIST(cons(length(cons(z0, z1)), x1)) -> c26(A__U41(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(length(x0), x1)) -> c26(A__ISNAT(length(x0))) A__ISNATILIST(cons(s(0), x1)) -> c26(A__U41(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATILIST(cons(s(length(z0)), x1)) -> c26(A__U41(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATILIST(cons(s(s(z0)), x1)) -> c26(A__U41(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(s(x0), x1)) -> c26(A__ISNAT(s(x0))) A__ISNATLIST(cons(length(nil), x1)) -> c29(A__U51(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATLIST(cons(length(cons(z0, z1)), x1)) -> c29(A__U51(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(length(x0), x1)) -> c29(A__ISNAT(length(x0))) A__ISNATLIST(cons(s(0), x1)) -> c29(A__U51(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATLIST(cons(s(length(z0)), x1)) -> c29(A__U51(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATLIST(cons(s(s(z0)), x1)) -> c29(A__U51(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(s(x0), x1)) -> c29(A__ISNAT(s(x0))) A__LENGTH(cons(x0, cons(0, x2))) -> c32(A__U61(a__U51(tt, x2), cons(0, x2), x0), A__ISNATLIST(cons(0, x2))) A__LENGTH(cons(x0, cons(length(z0), x2))) -> c32(A__U61(a__U51(a__U11(a__isNatList(z0)), x2), cons(length(z0), x2), x0), A__ISNATLIST(cons(length(z0), x2))) A__LENGTH(cons(x0, cons(s(z0), x2))) -> c32(A__U61(a__U51(a__U21(a__isNat(z0)), x2), cons(s(z0), x2), x0), A__ISNATLIST(cons(s(z0), x2))) A__LENGTH(cons(x0, cons(z0, x2))) -> c32(A__U61(a__U51(isNat(z0), x2), cons(z0, x2), x0), A__ISNATLIST(cons(z0, x2))) A__LENGTH(cons(x0, cons(x1, z1))) -> c32(A__ISNATLIST(cons(x1, z1))) MARK(U41(U11(zeros), x1)) -> c38(A__U41(a__U11(a__zeros), x1), MARK(U11(zeros))) MARK(U41(U11(U11(z0)), x1)) -> c38(A__U41(a__U11(a__U11(mark(z0))), x1), MARK(U11(U11(z0)))) MARK(U41(U11(U21(z0)), x1)) -> c38(A__U41(a__U11(a__U21(mark(z0))), x1), MARK(U11(U21(z0)))) MARK(U41(U11(U31(z0)), x1)) -> c38(A__U41(a__U11(a__U31(mark(z0))), x1), MARK(U11(U31(z0)))) MARK(U41(U11(U41(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U41(mark(z0), z1)), x1), MARK(U11(U41(z0, z1)))) MARK(U41(U11(U42(z0)), x1)) -> c38(A__U41(a__U11(a__U42(mark(z0))), x1), MARK(U11(U42(z0)))) MARK(U41(U11(isNatIList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatIList(z0)), x1), MARK(U11(isNatIList(z0)))) MARK(U41(U11(U51(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U51(mark(z0), z1)), x1), MARK(U11(U51(z0, z1)))) MARK(U41(U11(U52(z0)), x1)) -> c38(A__U41(a__U11(a__U52(mark(z0))), x1), MARK(U11(U52(z0)))) MARK(U41(U11(isNatList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatList(z0)), x1), MARK(U11(isNatList(z0)))) MARK(U41(U11(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U11(a__U61(mark(z0), z1, z2)), x1), MARK(U11(U61(z0, z1, z2)))) MARK(U41(U11(U62(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U62(mark(z0), z1)), x1), MARK(U11(U62(z0, z1)))) MARK(U41(U11(isNat(z0)), x1)) -> c38(A__U41(a__U11(a__isNat(z0)), x1), MARK(U11(isNat(z0)))) MARK(U41(U11(length(z0)), x1)) -> c38(A__U41(a__U11(a__length(mark(z0))), x1), MARK(U11(length(z0)))) MARK(U41(U11(cons(z0, z1)), x1)) -> c38(A__U41(a__U11(cons(mark(z0), z1)), x1), MARK(U11(cons(z0, z1)))) MARK(U41(U11(0), x1)) -> c38(A__U41(a__U11(0), x1), MARK(U11(0))) MARK(U41(U11(tt), x1)) -> c38(A__U41(a__U11(tt), x1), MARK(U11(tt))) MARK(U41(U11(s(z0)), x1)) -> c38(A__U41(a__U11(s(mark(z0))), x1), MARK(U11(s(z0)))) MARK(U41(U11(nil), x1)) -> c38(A__U41(a__U11(nil), x1), MARK(U11(nil))) MARK(U41(U11(x0), x1)) -> c38(MARK(U11(x0))) MARK(U41(U21(zeros), x1)) -> c38(A__U41(a__U21(a__zeros), x1), MARK(U21(zeros))) MARK(U41(U21(U11(z0)), x1)) -> c38(A__U41(a__U21(a__U11(mark(z0))), x1), MARK(U21(U11(z0)))) MARK(U41(U21(U21(z0)), x1)) -> c38(A__U41(a__U21(a__U21(mark(z0))), x1), MARK(U21(U21(z0)))) MARK(U41(U21(U31(z0)), x1)) -> c38(A__U41(a__U21(a__U31(mark(z0))), x1), MARK(U21(U31(z0)))) MARK(U41(U21(U41(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U41(mark(z0), z1)), x1), MARK(U21(U41(z0, z1)))) MARK(U41(U21(U42(z0)), x1)) -> c38(A__U41(a__U21(a__U42(mark(z0))), x1), MARK(U21(U42(z0)))) MARK(U41(U21(isNatIList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatIList(z0)), x1), MARK(U21(isNatIList(z0)))) MARK(U41(U21(U51(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U51(mark(z0), z1)), x1), MARK(U21(U51(z0, z1)))) MARK(U41(U21(U52(z0)), x1)) -> c38(A__U41(a__U21(a__U52(mark(z0))), x1), MARK(U21(U52(z0)))) MARK(U41(U21(isNatList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatList(z0)), x1), MARK(U21(isNatList(z0)))) MARK(U41(U21(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U21(a__U61(mark(z0), z1, z2)), x1), MARK(U21(U61(z0, z1, z2)))) MARK(U41(U21(U62(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U62(mark(z0), z1)), x1), MARK(U21(U62(z0, z1)))) MARK(U41(U21(isNat(z0)), x1)) -> c38(A__U41(a__U21(a__isNat(z0)), x1), MARK(U21(isNat(z0)))) MARK(U41(U21(length(z0)), x1)) -> c38(A__U41(a__U21(a__length(mark(z0))), x1), MARK(U21(length(z0)))) MARK(U41(U21(cons(z0, z1)), x1)) -> c38(A__U41(a__U21(cons(mark(z0), z1)), x1), MARK(U21(cons(z0, z1)))) MARK(U41(U21(0), x1)) -> c38(A__U41(a__U21(0), x1), MARK(U21(0))) MARK(U41(U21(tt), x1)) -> c38(A__U41(a__U21(tt), x1), MARK(U21(tt))) MARK(U41(U21(s(z0)), x1)) -> c38(A__U41(a__U21(s(mark(z0))), x1), MARK(U21(s(z0)))) MARK(U41(U21(nil), x1)) -> c38(A__U41(a__U21(nil), x1), MARK(U21(nil))) MARK(U41(U21(x0), x1)) -> c38(MARK(U21(x0))) MARK(U41(U31(zeros), x1)) -> c38(A__U41(a__U31(a__zeros), x1), MARK(U31(zeros))) MARK(U41(U31(U11(z0)), x1)) -> c38(A__U41(a__U31(a__U11(mark(z0))), x1), MARK(U31(U11(z0)))) MARK(U41(U31(U21(z0)), x1)) -> c38(A__U41(a__U31(a__U21(mark(z0))), x1), MARK(U31(U21(z0)))) MARK(U41(U31(U31(z0)), x1)) -> c38(A__U41(a__U31(a__U31(mark(z0))), x1), MARK(U31(U31(z0)))) MARK(U41(U31(U41(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U41(mark(z0), z1)), x1), MARK(U31(U41(z0, z1)))) MARK(U41(U31(U42(z0)), x1)) -> c38(A__U41(a__U31(a__U42(mark(z0))), x1), MARK(U31(U42(z0)))) MARK(U41(U31(isNatIList(z0)), x1)) -> c38(A__U41(a__U31(a__isNatIList(z0)), x1), MARK(U31(isNatIList(z0)))) MARK(U41(U31(U51(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U51(mark(z0), z1)), x1), MARK(U31(U51(z0, z1)))) MARK(U41(U31(U52(z0)), x1)) -> c38(A__U41(a__U31(a__U52(mark(z0))), x1), MARK(U31(U52(z0)))) MARK(U41(U31(isNatList(z0)), x1)) -> c38(A__U41(a__U31(a__isNatList(z0)), x1), MARK(U31(isNatList(z0)))) MARK(U41(U31(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U31(a__U61(mark(z0), z1, z2)), x1), MARK(U31(U61(z0, z1, z2)))) MARK(U41(U31(U62(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U62(mark(z0), z1)), x1), MARK(U31(U62(z0, z1)))) MARK(U41(U31(isNat(z0)), x1)) -> c38(A__U41(a__U31(a__isNat(z0)), x1), MARK(U31(isNat(z0)))) MARK(U41(U31(length(z0)), x1)) -> c38(A__U41(a__U31(a__length(mark(z0))), x1), MARK(U31(length(z0)))) MARK(U41(U31(cons(z0, z1)), x1)) -> c38(A__U41(a__U31(cons(mark(z0), z1)), x1), MARK(U31(cons(z0, z1)))) MARK(U41(U31(0), x1)) -> c38(A__U41(a__U31(0), x1), MARK(U31(0))) MARK(U41(U31(tt), x1)) -> c38(A__U41(a__U31(tt), x1), MARK(U31(tt))) MARK(U41(U31(s(z0)), x1)) -> c38(A__U41(a__U31(s(mark(z0))), x1), MARK(U31(s(z0)))) MARK(U41(U31(nil), x1)) -> c38(A__U41(a__U31(nil), x1), MARK(U31(nil))) MARK(U41(U31(x0), x1)) -> c38(MARK(U31(x0))) MARK(U41(U41(U11(z0), x1), x2)) -> c38(A__U41(a__U41(a__U11(mark(z0)), x1), x2), MARK(U41(U11(z0), x1))) MARK(U41(U41(U21(z0), x1), x2)) -> c38(A__U41(a__U41(a__U21(mark(z0)), x1), x2), MARK(U41(U21(z0), x1))) MARK(U41(U41(U31(z0), x1), x2)) -> c38(A__U41(a__U41(a__U31(mark(z0)), x1), x2), MARK(U41(U31(z0), x1))) MARK(U41(U41(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U41(mark(z0), z1), x1), x2), MARK(U41(U41(z0, z1), x1))) MARK(U41(U41(U42(z0), x1), x2)) -> c38(A__U41(a__U41(a__U42(mark(z0)), x1), x2), MARK(U41(U42(z0), x1))) MARK(U41(U41(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U51(mark(z0), z1), x1), x2), MARK(U41(U51(z0, z1), x1))) MARK(U41(U41(U52(z0), x1), x2)) -> c38(A__U41(a__U41(a__U52(mark(z0)), x1), x2), MARK(U41(U52(z0), x1))) MARK(U41(U41(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U41(a__U61(mark(z0), z1, z2), x1), x2), MARK(U41(U61(z0, z1, z2), x1))) MARK(U41(U41(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U62(mark(z0), z1), x1), x2), MARK(U41(U62(z0, z1), x1))) MARK(U41(U41(length(z0), x1), x2)) -> c38(A__U41(a__U41(a__length(mark(z0)), x1), x2), MARK(U41(length(z0), x1))) MARK(U41(U41(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U41(cons(mark(z0), z1), x1), x2), MARK(U41(cons(z0, z1), x1))) MARK(U41(U41(s(z0), x1), x2)) -> c38(A__U41(a__U41(s(mark(z0)), x1), x2), MARK(U41(s(z0), x1))) MARK(U41(U41(x0, z1), x2)) -> c38(MARK(U41(x0, z1))) MARK(U41(U41(0, x1), x2)) -> c38(A__U41(a__U41(0, x1), x2)) MARK(U41(U41(nil, x1), x2)) -> c38(A__U41(a__U41(nil, x1), x2)) MARK(U41(U41(zeros, x1), x2)) -> c2(A__U41(a__U41(a__zeros, x1), x2)) MARK(U41(U41(isNatIList(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNatIList(z0), x1), x2)) MARK(U41(U41(isNatIList(z0), x1), x2)) -> c2(MARK(U41(isNatIList(z0), x1))) MARK(U41(U41(isNatList(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNatList(z0), x1), x2)) MARK(U41(U41(isNatList(z0), x1), x2)) -> c2(MARK(U41(isNatList(z0), x1))) MARK(U41(U41(isNat(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNat(z0), x1), x2)) MARK(U41(U41(isNat(z0), x1), x2)) -> c2(MARK(U41(isNat(z0), x1))) MARK(U41(U41(tt, x1), x2)) -> c2(A__U41(a__U41(tt, x1), x2)) MARK(U41(U41(tt, x1), x2)) -> c2(MARK(U41(tt, x1))) MARK(U41(U42(zeros), x1)) -> c38(A__U41(a__U42(a__zeros), x1), MARK(U42(zeros))) MARK(U41(U42(U11(z0)), x1)) -> c38(A__U41(a__U42(a__U11(mark(z0))), x1), MARK(U42(U11(z0)))) MARK(U41(U42(U21(z0)), x1)) -> c38(A__U41(a__U42(a__U21(mark(z0))), x1), MARK(U42(U21(z0)))) MARK(U41(U42(U31(z0)), x1)) -> c38(A__U41(a__U42(a__U31(mark(z0))), x1), MARK(U42(U31(z0)))) MARK(U41(U42(U41(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U41(mark(z0), z1)), x1), MARK(U42(U41(z0, z1)))) MARK(U41(U42(U42(z0)), x1)) -> c38(A__U41(a__U42(a__U42(mark(z0))), x1), MARK(U42(U42(z0)))) MARK(U41(U42(isNatIList(z0)), x1)) -> c38(A__U41(a__U42(a__isNatIList(z0)), x1), MARK(U42(isNatIList(z0)))) MARK(U41(U42(U51(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U51(mark(z0), z1)), x1), MARK(U42(U51(z0, z1)))) MARK(U41(U42(U52(z0)), x1)) -> c38(A__U41(a__U42(a__U52(mark(z0))), x1), MARK(U42(U52(z0)))) MARK(U41(U42(isNatList(z0)), x1)) -> c38(A__U41(a__U42(a__isNatList(z0)), x1), MARK(U42(isNatList(z0)))) MARK(U41(U42(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U42(a__U61(mark(z0), z1, z2)), x1), MARK(U42(U61(z0, z1, z2)))) MARK(U41(U42(U62(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U62(mark(z0), z1)), x1), MARK(U42(U62(z0, z1)))) MARK(U41(U42(isNat(z0)), x1)) -> c38(A__U41(a__U42(a__isNat(z0)), x1), MARK(U42(isNat(z0)))) MARK(U41(U42(length(z0)), x1)) -> c38(A__U41(a__U42(a__length(mark(z0))), x1), MARK(U42(length(z0)))) MARK(U41(U42(cons(z0, z1)), x1)) -> c38(A__U41(a__U42(cons(mark(z0), z1)), x1), MARK(U42(cons(z0, z1)))) MARK(U41(U42(0), x1)) -> c38(A__U41(a__U42(0), x1), MARK(U42(0))) MARK(U41(U42(tt), x1)) -> c38(A__U41(a__U42(tt), x1), MARK(U42(tt))) MARK(U41(U42(s(z0)), x1)) -> c38(A__U41(a__U42(s(mark(z0))), x1), MARK(U42(s(z0)))) MARK(U41(U42(nil), x1)) -> c38(A__U41(a__U42(nil), x1), MARK(U42(nil))) MARK(U41(U42(x0), x1)) -> c38(MARK(U42(x0))) MARK(U41(U51(U11(z0), x1), x2)) -> c38(A__U41(a__U51(a__U11(mark(z0)), x1), x2), MARK(U51(U11(z0), x1))) MARK(U41(U51(U21(z0), x1), x2)) -> c38(A__U41(a__U51(a__U21(mark(z0)), x1), x2), MARK(U51(U21(z0), x1))) MARK(U41(U51(U31(z0), x1), x2)) -> c38(A__U41(a__U51(a__U31(mark(z0)), x1), x2), MARK(U51(U31(z0), x1))) MARK(U41(U51(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U41(mark(z0), z1), x1), x2), MARK(U51(U41(z0, z1), x1))) MARK(U41(U51(U42(z0), x1), x2)) -> c38(A__U41(a__U51(a__U42(mark(z0)), x1), x2), MARK(U51(U42(z0), x1))) MARK(U41(U51(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U51(mark(z0), z1), x1), x2), MARK(U51(U51(z0, z1), x1))) MARK(U41(U51(U52(z0), x1), x2)) -> c38(A__U41(a__U51(a__U52(mark(z0)), x1), x2), MARK(U51(U52(z0), x1))) MARK(U41(U51(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U51(a__U61(mark(z0), z1, z2), x1), x2), MARK(U51(U61(z0, z1, z2), x1))) MARK(U41(U51(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U62(mark(z0), z1), x1), x2), MARK(U51(U62(z0, z1), x1))) MARK(U41(U51(length(z0), x1), x2)) -> c38(A__U41(a__U51(a__length(mark(z0)), x1), x2), MARK(U51(length(z0), x1))) MARK(U41(U51(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U51(cons(mark(z0), z1), x1), x2), MARK(U51(cons(z0, z1), x1))) MARK(U41(U51(s(z0), x1), x2)) -> c38(A__U41(a__U51(s(mark(z0)), x1), x2), MARK(U51(s(z0), x1))) MARK(U41(U51(x0, z1), x2)) -> c38(MARK(U51(x0, z1))) MARK(U41(U51(0, x1), x2)) -> c38(A__U41(a__U51(0, x1), x2)) MARK(U41(U51(nil, x1), x2)) -> c38(A__U41(a__U51(nil, x1), x2)) MARK(U41(U51(zeros, x1), x2)) -> c3(A__U41(a__U51(a__zeros, x1), x2)) MARK(U41(U51(zeros, x1), x2)) -> c3(MARK(U51(zeros, x1))) MARK(U41(U51(isNatIList(z0), x1), x2)) -> c3(A__U41(a__U51(a__isNatIList(z0), x1), x2)) MARK(U41(U51(isNatIList(z0), x1), x2)) -> c3(MARK(U51(isNatIList(z0), x1))) MARK(U41(U51(isNatList(z0), x1), x2)) -> c3(A__U41(a__U51(a__isNatList(z0), x1), x2)) MARK(U41(U51(isNatList(z0), x1), x2)) -> c3(MARK(U51(isNatList(z0), x1))) MARK(U41(U51(isNat(z0), x1), x2)) -> c3(A__U41(a__U51(a__isNat(z0), x1), x2)) MARK(U41(U51(isNat(z0), x1), x2)) -> c3(MARK(U51(isNat(z0), x1))) MARK(U41(U51(tt, x1), x2)) -> c3(A__U41(a__U51(tt, x1), x2)) MARK(U41(U51(tt, x1), x2)) -> c3(MARK(U51(tt, x1))) MARK(U41(U52(zeros), x1)) -> c38(A__U41(a__U52(a__zeros), x1), MARK(U52(zeros))) MARK(U41(U52(U11(z0)), x1)) -> c38(A__U41(a__U52(a__U11(mark(z0))), x1), MARK(U52(U11(z0)))) MARK(U41(U52(U21(z0)), x1)) -> c38(A__U41(a__U52(a__U21(mark(z0))), x1), MARK(U52(U21(z0)))) MARK(U41(U52(U31(z0)), x1)) -> c38(A__U41(a__U52(a__U31(mark(z0))), x1), MARK(U52(U31(z0)))) MARK(U41(U52(U41(z0, z1)), x1)) -> c38(A__U41(a__U52(a__U41(mark(z0), z1)), x1), MARK(U52(U41(z0, z1)))) MARK(U41(U52(U42(z0)), x1)) -> c38(A__U41(a__U52(a__U42(mark(z0))), x1), MARK(U52(U42(z0)))) MARK(U41(U52(isNatIList(z0)), x1)) -> c38(A__U41(a__U52(a__isNatIList(z0)), x1), MARK(U52(isNatIList(z0)))) MARK(U41(U52(U51(z0, z1)), x1)) -> c38(A__U41(a__U52(a__U51(mark(z0), z1)), x1), MARK(U52(U51(z0, z1)))) MARK(U41(U52(U52(z0)), x1)) -> c38(A__U41(a__U52(a__U52(mark(z0))), x1), MARK(U52(U52(z0)))) MARK(U41(U52(isNatList(z0)), x1)) -> c38(A__U41(a__U52(a__isNatList(z0)), x1), MARK(U52(isNatList(z0)))) MARK(U41(U52(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U52(a__U61(mark(z0), z1, z2)), x1), MARK(U52(U61(z0, z1, z2)))) MARK(U41(U52(U62(z0, z1)), x1)) -> c38(A__U41(a__U52(a__U62(mark(z0), z1)), x1), MARK(U52(U62(z0, z1)))) MARK(U41(U52(isNat(z0)), x1)) -> c38(A__U41(a__U52(a__isNat(z0)), x1), MARK(U52(isNat(z0)))) MARK(U41(U52(length(z0)), x1)) -> c38(A__U41(a__U52(a__length(mark(z0))), x1), MARK(U52(length(z0)))) MARK(U41(U52(cons(z0, z1)), x1)) -> c38(A__U41(a__U52(cons(mark(z0), z1)), x1), MARK(U52(cons(z0, z1)))) MARK(U41(U52(0), x1)) -> c38(A__U41(a__U52(0), x1), MARK(U52(0))) MARK(U41(U52(tt), x1)) -> c38(A__U41(a__U52(tt), x1), MARK(U52(tt))) MARK(U41(U52(s(z0)), x1)) -> c38(A__U41(a__U52(s(mark(z0))), x1), MARK(U52(s(z0)))) MARK(U41(U52(nil), x1)) -> c38(A__U41(a__U52(nil), x1), MARK(U52(nil))) MARK(U41(U52(x0), x1)) -> c38(MARK(U52(x0))) MARK(U41(U61(zeros, x1, x2), x3)) -> c38(A__U41(a__U61(a__zeros, x1, x2), x3), MARK(U61(zeros, x1, x2))) MARK(U41(U61(U11(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U11(mark(z0)), x1, x2), x3), MARK(U61(U11(z0), x1, x2))) MARK(U41(U61(U21(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U21(mark(z0)), x1, x2), x3), MARK(U61(U21(z0), x1, x2))) MARK(U41(U61(U31(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U31(mark(z0)), x1, x2), x3), MARK(U61(U31(z0), x1, x2))) MARK(U41(U61(U41(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(a__U41(mark(z0), z1), x1, x2), x3), MARK(U61(U41(z0, z1), x1, x2))) MARK(U41(U61(U42(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U42(mark(z0)), x1, x2), x3), MARK(U61(U42(z0), x1, x2))) MARK(U41(U61(isNatIList(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__isNatIList(z0), x1, x2), x3), MARK(U61(isNatIList(z0), x1, x2))) MARK(U41(U61(U51(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(a__U51(mark(z0), z1), x1, x2), x3), MARK(U61(U51(z0, z1), x1, x2))) MARK(U41(U61(U52(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U52(mark(z0)), x1, x2), x3), MARK(U61(U52(z0), x1, x2))) MARK(U41(U61(isNatList(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__isNatList(z0), x1, x2), x3), MARK(U61(isNatList(z0), x1, x2))) MARK(U41(U61(U61(z0, z1, z2), x1, x2), x3)) -> c38(A__U41(a__U61(a__U61(mark(z0), z1, z2), x1, x2), x3), MARK(U61(U61(z0, z1, z2), x1, x2))) MARK(U41(U61(U62(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(a__U62(mark(z0), z1), x1, x2), x3), MARK(U61(U62(z0, z1), x1, x2))) MARK(U41(U61(isNat(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__isNat(z0), x1, x2), x3), MARK(U61(isNat(z0), x1, x2))) MARK(U41(U61(length(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__length(mark(z0)), x1, x2), x3), MARK(U61(length(z0), x1, x2))) MARK(U41(U61(cons(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(cons(mark(z0), z1), x1, x2), x3), MARK(U61(cons(z0, z1), x1, x2))) MARK(U41(U61(tt, x1, x2), x3)) -> c38(A__U41(a__U61(tt, x1, x2), x3), MARK(U61(tt, x1, x2))) MARK(U41(U61(s(z0), x1, x2), x3)) -> c38(A__U41(a__U61(s(mark(z0)), x1, x2), x3), MARK(U61(s(z0), x1, x2))) MARK(U41(U61(x0, z1, z2), x3)) -> c38(MARK(U61(x0, z1, z2))) MARK(U41(U61(0, x1, x2), x3)) -> c38(A__U41(a__U61(0, x1, x2), x3)) MARK(U41(U61(nil, x1, x2), x3)) -> c38(A__U41(a__U61(nil, x1, x2), x3)) MARK(U41(U62(zeros, x1), x2)) -> c38(A__U41(a__U62(a__zeros, x1), x2), MARK(U62(zeros, x1))) MARK(U41(U62(U11(z0), x1), x2)) -> c38(A__U41(a__U62(a__U11(mark(z0)), x1), x2), MARK(U62(U11(z0), x1))) MARK(U41(U62(U21(z0), x1), x2)) -> c38(A__U41(a__U62(a__U21(mark(z0)), x1), x2), MARK(U62(U21(z0), x1))) MARK(U41(U62(U31(z0), x1), x2)) -> c38(A__U41(a__U62(a__U31(mark(z0)), x1), x2), MARK(U62(U31(z0), x1))) MARK(U41(U62(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U62(a__U41(mark(z0), z1), x1), x2), MARK(U62(U41(z0, z1), x1))) MARK(U41(U62(U42(z0), x1), x2)) -> c38(A__U41(a__U62(a__U42(mark(z0)), x1), x2), MARK(U62(U42(z0), x1))) MARK(U41(U62(isNatIList(z0), x1), x2)) -> c38(A__U41(a__U62(a__isNatIList(z0), x1), x2), MARK(U62(isNatIList(z0), x1))) MARK(U41(U62(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U62(a__U51(mark(z0), z1), x1), x2), MARK(U62(U51(z0, z1), x1))) MARK(U41(U62(U52(z0), x1), x2)) -> c38(A__U41(a__U62(a__U52(mark(z0)), x1), x2), MARK(U62(U52(z0), x1))) MARK(U41(U62(isNatList(z0), x1), x2)) -> c38(A__U41(a__U62(a__isNatList(z0), x1), x2), MARK(U62(isNatList(z0), x1))) MARK(U41(U62(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U62(a__U61(mark(z0), z1, z2), x1), x2), MARK(U62(U61(z0, z1, z2), x1))) MARK(U41(U62(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U62(a__U62(mark(z0), z1), x1), x2), MARK(U62(U62(z0, z1), x1))) MARK(U41(U62(isNat(z0), x1), x2)) -> c38(A__U41(a__U62(a__isNat(z0), x1), x2), MARK(U62(isNat(z0), x1))) MARK(U41(U62(length(z0), x1), x2)) -> c38(A__U41(a__U62(a__length(mark(z0)), x1), x2), MARK(U62(length(z0), x1))) MARK(U41(U62(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U62(cons(mark(z0), z1), x1), x2), MARK(U62(cons(z0, z1), x1))) MARK(U41(U62(tt, x1), x2)) -> c38(A__U41(a__U62(tt, x1), x2), MARK(U62(tt, x1))) MARK(U41(U62(s(z0), x1), x2)) -> c38(A__U41(a__U62(s(mark(z0)), x1), x2), MARK(U62(s(z0), x1))) MARK(U41(U62(x0, z1), x2)) -> c38(MARK(U62(x0, z1))) MARK(U41(U62(0, x1), x2)) -> c38(A__U41(a__U62(0, x1), x2)) MARK(U41(U62(nil, x1), x2)) -> c38(A__U41(a__U62(nil, x1), x2)) MARK(U41(length(zeros), x1)) -> c38(A__U41(a__length(a__zeros), x1), MARK(length(zeros))) MARK(U41(length(U11(z0)), x1)) -> c38(A__U41(a__length(a__U11(mark(z0))), x1), MARK(length(U11(z0)))) MARK(U41(length(U21(z0)), x1)) -> c38(A__U41(a__length(a__U21(mark(z0))), x1), MARK(length(U21(z0)))) MARK(U41(length(U31(z0)), x1)) -> c38(A__U41(a__length(a__U31(mark(z0))), x1), MARK(length(U31(z0)))) MARK(U41(length(U41(z0, z1)), x1)) -> c38(A__U41(a__length(a__U41(mark(z0), z1)), x1), MARK(length(U41(z0, z1)))) MARK(U41(length(U42(z0)), x1)) -> c38(A__U41(a__length(a__U42(mark(z0))), x1), MARK(length(U42(z0)))) MARK(U41(length(isNatIList(z0)), x1)) -> c38(A__U41(a__length(a__isNatIList(z0)), x1), MARK(length(isNatIList(z0)))) MARK(U41(length(U51(z0, z1)), x1)) -> c38(A__U41(a__length(a__U51(mark(z0), z1)), x1), MARK(length(U51(z0, z1)))) MARK(U41(length(U52(z0)), x1)) -> c38(A__U41(a__length(a__U52(mark(z0))), x1), MARK(length(U52(z0)))) MARK(U41(length(isNatList(z0)), x1)) -> c38(A__U41(a__length(a__isNatList(z0)), x1), MARK(length(isNatList(z0)))) MARK(U41(length(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__length(a__U61(mark(z0), z1, z2)), x1), MARK(length(U61(z0, z1, z2)))) MARK(U41(length(U62(z0, z1)), x1)) -> c38(A__U41(a__length(a__U62(mark(z0), z1)), x1), MARK(length(U62(z0, z1)))) MARK(U41(length(isNat(z0)), x1)) -> c38(A__U41(a__length(a__isNat(z0)), x1), MARK(length(isNat(z0)))) MARK(U41(length(length(z0)), x1)) -> c38(A__U41(a__length(a__length(mark(z0))), x1), MARK(length(length(z0)))) MARK(U41(length(cons(z0, z1)), x1)) -> c38(A__U41(a__length(cons(mark(z0), z1)), x1), MARK(length(cons(z0, z1)))) MARK(U41(length(s(z0)), x1)) -> c38(A__U41(a__length(s(mark(z0))), x1), MARK(length(s(z0)))) MARK(U41(length(x0), x1)) -> c38(MARK(length(x0))) MARK(U41(length(0), x1)) -> c38(A__U41(a__length(0), x1)) MARK(U41(length(tt), x1)) -> c38(A__U41(a__length(tt), x1)) MARK(U41(length(nil), x1)) -> c38(A__U41(a__length(nil), x1)) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__U31(a__isNatList(z0)), x1)) MARK(U41(isNatIList(zeros), x1)) -> c(A__U41(tt, x1)) MARK(U41(isNatIList(cons(z0, z1)), x1)) -> c(A__U41(a__U41(a__isNat(z0), z1), x1)) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(isNatIList(z0), x1)) S tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) A__U62(tt, isNatList(cons(z0, z1))) -> c18(A__LENGTH(a__U51(a__isNat(z0), z1)), MARK(isNatList(cons(z0, z1)))) A__U62(tt, isNatList(nil)) -> c18(MARK(isNatList(nil))) A__U62(tt, isNatList(z0)) -> c18(MARK(isNatList(z0))) A__U62(tt, U61(zeros, x1, x2)) -> c18(A__LENGTH(a__U61(a__zeros, x1, x2)), MARK(U61(zeros, x1, x2))) A__U62(tt, U61(U11(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U11(mark(z0)), x1, x2)), MARK(U61(U11(z0), x1, x2))) A__U62(tt, U61(U21(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U21(mark(z0)), x1, x2)), MARK(U61(U21(z0), x1, x2))) A__U62(tt, U61(U31(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U31(mark(z0)), x1, x2)), MARK(U61(U31(z0), x1, x2))) A__U62(tt, U61(U41(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U41(mark(z0), z1), x1, x2)), MARK(U61(U41(z0, z1), x1, x2))) A__U62(tt, U61(U42(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U42(mark(z0)), x1, x2)), MARK(U61(U42(z0), x1, x2))) A__U62(tt, U61(isNatIList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatIList(z0), x1, x2)), MARK(U61(isNatIList(z0), x1, x2))) A__U62(tt, U61(U51(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U51(mark(z0), z1), x1, x2)), MARK(U61(U51(z0, z1), x1, x2))) A__U62(tt, U61(U52(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U52(mark(z0)), x1, x2)), MARK(U61(U52(z0), x1, x2))) A__U62(tt, U61(isNatList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatList(z0), x1, x2)), MARK(U61(isNatList(z0), x1, x2))) A__U62(tt, U61(U61(z0, z1, z2), x1, x2)) -> c18(A__LENGTH(a__U61(a__U61(mark(z0), z1, z2), x1, x2)), MARK(U61(U61(z0, z1, z2), x1, x2))) A__U62(tt, U61(U62(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U62(mark(z0), z1), x1, x2)), MARK(U61(U62(z0, z1), x1, x2))) A__U62(tt, U61(isNat(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNat(z0), x1, x2)), MARK(U61(isNat(z0), x1, x2))) A__U62(tt, U61(length(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__length(mark(z0)), x1, x2)), MARK(U61(length(z0), x1, x2))) A__U62(tt, U61(cons(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(cons(mark(z0), z1), x1, x2)), MARK(U61(cons(z0, z1), x1, x2))) A__U62(tt, U61(tt, x1, x2)) -> c18(A__LENGTH(a__U61(tt, x1, x2)), MARK(U61(tt, x1, x2))) A__U62(tt, U61(s(z0), x1, x2)) -> c18(A__LENGTH(a__U61(s(mark(z0)), x1, x2)), MARK(U61(s(z0), x1, x2))) A__U62(tt, U61(x0, z1, z2)) -> c18(MARK(U61(x0, z1, z2))) A__U62(tt, U61(0, x1, x2)) -> c18(A__LENGTH(a__U61(0, x1, x2))) A__U62(tt, U61(nil, x1, x2)) -> c18(A__LENGTH(a__U61(nil, x1, x2))) A__U62(tt, U62(zeros, x1)) -> c18(A__LENGTH(a__U62(a__zeros, x1)), MARK(U62(zeros, x1))) A__U62(tt, U62(U11(z0), x1)) -> c18(A__LENGTH(a__U62(a__U11(mark(z0)), x1)), MARK(U62(U11(z0), x1))) A__U62(tt, U62(U21(z0), x1)) -> c18(A__LENGTH(a__U62(a__U21(mark(z0)), x1)), MARK(U62(U21(z0), x1))) A__U62(tt, U62(U31(z0), x1)) -> c18(A__LENGTH(a__U62(a__U31(mark(z0)), x1)), MARK(U62(U31(z0), x1))) A__U62(tt, U62(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U41(mark(z0), z1), x1)), MARK(U62(U41(z0, z1), x1))) A__U62(tt, U62(U42(z0), x1)) -> c18(A__LENGTH(a__U62(a__U42(mark(z0)), x1)), MARK(U62(U42(z0), x1))) A__U62(tt, U62(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatIList(z0), x1)), MARK(U62(isNatIList(z0), x1))) A__U62(tt, U62(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U51(mark(z0), z1), x1)), MARK(U62(U51(z0, z1), x1))) A__U62(tt, U62(U52(z0), x1)) -> c18(A__LENGTH(a__U62(a__U52(mark(z0)), x1)), MARK(U62(U52(z0), x1))) A__U62(tt, U62(isNatList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatList(z0), x1)), MARK(U62(isNatList(z0), x1))) A__U62(tt, U62(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U62(a__U61(mark(z0), z1, z2), x1)), MARK(U62(U61(z0, z1, z2), x1))) A__U62(tt, U62(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U62(mark(z0), z1), x1)), MARK(U62(U62(z0, z1), x1))) A__U62(tt, U62(isNat(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNat(z0), x1)), MARK(U62(isNat(z0), x1))) A__U62(tt, U62(length(z0), x1)) -> c18(A__LENGTH(a__U62(a__length(mark(z0)), x1)), MARK(U62(length(z0), x1))) A__U62(tt, U62(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U62(cons(mark(z0), z1), x1)), MARK(U62(cons(z0, z1), x1))) A__U62(tt, U62(tt, x1)) -> c18(A__LENGTH(a__U62(tt, x1)), MARK(U62(tt, x1))) A__U62(tt, U62(s(z0), x1)) -> c18(A__LENGTH(a__U62(s(mark(z0)), x1)), MARK(U62(s(z0), x1))) A__U62(tt, U62(x0, z1)) -> c18(MARK(U62(x0, z1))) A__U62(tt, U62(0, x1)) -> c18(A__LENGTH(a__U62(0, x1))) A__U62(tt, U62(nil, x1)) -> c18(A__LENGTH(a__U62(nil, x1))) A__U62(tt, isNat(length(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(isNat(length(z0)))) A__U62(tt, isNat(s(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(isNat(s(z0)))) A__U62(tt, isNat(0)) -> c18(MARK(isNat(0))) A__U62(tt, isNat(z0)) -> c18(MARK(isNat(z0))) A__U62(tt, length(zeros)) -> c18(A__LENGTH(a__length(a__zeros)), MARK(length(zeros))) A__U62(tt, length(U11(z0))) -> c18(A__LENGTH(a__length(a__U11(mark(z0)))), MARK(length(U11(z0)))) A__U62(tt, length(U21(z0))) -> c18(A__LENGTH(a__length(a__U21(mark(z0)))), MARK(length(U21(z0)))) A__U62(tt, length(U31(z0))) -> c18(A__LENGTH(a__length(a__U31(mark(z0)))), MARK(length(U31(z0)))) A__U62(tt, length(U41(z0, z1))) -> c18(A__LENGTH(a__length(a__U41(mark(z0), z1))), MARK(length(U41(z0, z1)))) A__U62(tt, length(U42(z0))) -> c18(A__LENGTH(a__length(a__U42(mark(z0)))), MARK(length(U42(z0)))) A__U62(tt, length(isNatIList(z0))) -> c18(A__LENGTH(a__length(a__isNatIList(z0))), MARK(length(isNatIList(z0)))) A__U62(tt, length(U51(z0, z1))) -> c18(A__LENGTH(a__length(a__U51(mark(z0), z1))), MARK(length(U51(z0, z1)))) A__U62(tt, length(U52(z0))) -> c18(A__LENGTH(a__length(a__U52(mark(z0)))), MARK(length(U52(z0)))) A__U62(tt, length(isNatList(z0))) -> c18(A__LENGTH(a__length(a__isNatList(z0))), MARK(length(isNatList(z0)))) A__U62(tt, length(U61(z0, z1, z2))) -> c18(A__LENGTH(a__length(a__U61(mark(z0), z1, z2))), MARK(length(U61(z0, z1, z2)))) A__U62(tt, length(U62(z0, z1))) -> c18(A__LENGTH(a__length(a__U62(mark(z0), z1))), MARK(length(U62(z0, z1)))) A__U62(tt, length(isNat(z0))) -> c18(A__LENGTH(a__length(a__isNat(z0))), MARK(length(isNat(z0)))) A__U62(tt, length(length(z0))) -> c18(A__LENGTH(a__length(a__length(mark(z0)))), MARK(length(length(z0)))) A__U62(tt, length(cons(z0, z1))) -> c18(A__LENGTH(a__length(cons(mark(z0), z1))), MARK(length(cons(z0, z1)))) A__U62(tt, length(s(z0))) -> c18(A__LENGTH(a__length(s(mark(z0)))), MARK(length(s(z0)))) A__U62(tt, length(x0)) -> c18(MARK(length(x0))) A__U62(tt, length(0)) -> c18(A__LENGTH(a__length(0))) A__U62(tt, length(tt)) -> c18(A__LENGTH(a__length(tt))) A__U62(tt, length(nil)) -> c18(A__LENGTH(a__length(nil))) A__U62(tt, zeros) -> c18(A__LENGTH(cons(0, zeros))) A__ISNATILIST(cons(length(nil), x1)) -> c26(A__U41(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATILIST(cons(length(cons(z0, z1)), x1)) -> c26(A__U41(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(length(x0), x1)) -> c26(A__ISNAT(length(x0))) A__ISNATILIST(cons(s(0), x1)) -> c26(A__U41(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATILIST(cons(s(length(z0)), x1)) -> c26(A__U41(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATILIST(cons(s(s(z0)), x1)) -> c26(A__U41(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(s(x0), x1)) -> c26(A__ISNAT(s(x0))) A__ISNATLIST(cons(length(nil), x1)) -> c29(A__U51(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATLIST(cons(length(cons(z0, z1)), x1)) -> c29(A__U51(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(length(x0), x1)) -> c29(A__ISNAT(length(x0))) A__ISNATLIST(cons(s(0), x1)) -> c29(A__U51(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATLIST(cons(s(length(z0)), x1)) -> c29(A__U51(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATLIST(cons(s(s(z0)), x1)) -> c29(A__U51(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(s(x0), x1)) -> c29(A__ISNAT(s(x0))) A__LENGTH(cons(x0, cons(0, x2))) -> c32(A__U61(a__U51(tt, x2), cons(0, x2), x0), A__ISNATLIST(cons(0, x2))) A__LENGTH(cons(x0, cons(length(z0), x2))) -> c32(A__U61(a__U51(a__U11(a__isNatList(z0)), x2), cons(length(z0), x2), x0), A__ISNATLIST(cons(length(z0), x2))) A__LENGTH(cons(x0, cons(s(z0), x2))) -> c32(A__U61(a__U51(a__U21(a__isNat(z0)), x2), cons(s(z0), x2), x0), A__ISNATLIST(cons(s(z0), x2))) A__LENGTH(cons(x0, cons(z0, x2))) -> c32(A__U61(a__U51(isNat(z0), x2), cons(z0, x2), x0), A__ISNATLIST(cons(z0, x2))) A__LENGTH(cons(x0, cons(x1, z1))) -> c32(A__ISNATLIST(cons(x1, z1))) MARK(U41(U11(zeros), x1)) -> c38(A__U41(a__U11(a__zeros), x1), MARK(U11(zeros))) MARK(U41(U11(U11(z0)), x1)) -> c38(A__U41(a__U11(a__U11(mark(z0))), x1), MARK(U11(U11(z0)))) MARK(U41(U11(U21(z0)), x1)) -> c38(A__U41(a__U11(a__U21(mark(z0))), x1), MARK(U11(U21(z0)))) MARK(U41(U11(U31(z0)), x1)) -> c38(A__U41(a__U11(a__U31(mark(z0))), x1), MARK(U11(U31(z0)))) MARK(U41(U11(U41(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U41(mark(z0), z1)), x1), MARK(U11(U41(z0, z1)))) MARK(U41(U11(U42(z0)), x1)) -> c38(A__U41(a__U11(a__U42(mark(z0))), x1), MARK(U11(U42(z0)))) MARK(U41(U11(isNatIList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatIList(z0)), x1), MARK(U11(isNatIList(z0)))) MARK(U41(U11(U51(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U51(mark(z0), z1)), x1), MARK(U11(U51(z0, z1)))) MARK(U41(U11(U52(z0)), x1)) -> c38(A__U41(a__U11(a__U52(mark(z0))), x1), MARK(U11(U52(z0)))) MARK(U41(U11(isNatList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatList(z0)), x1), MARK(U11(isNatList(z0)))) MARK(U41(U11(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U11(a__U61(mark(z0), z1, z2)), x1), MARK(U11(U61(z0, z1, z2)))) MARK(U41(U11(U62(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U62(mark(z0), z1)), x1), MARK(U11(U62(z0, z1)))) MARK(U41(U11(isNat(z0)), x1)) -> c38(A__U41(a__U11(a__isNat(z0)), x1), MARK(U11(isNat(z0)))) MARK(U41(U11(length(z0)), x1)) -> c38(A__U41(a__U11(a__length(mark(z0))), x1), MARK(U11(length(z0)))) MARK(U41(U11(cons(z0, z1)), x1)) -> c38(A__U41(a__U11(cons(mark(z0), z1)), x1), MARK(U11(cons(z0, z1)))) MARK(U41(U11(0), x1)) -> c38(A__U41(a__U11(0), x1), MARK(U11(0))) MARK(U41(U11(tt), x1)) -> c38(A__U41(a__U11(tt), x1), MARK(U11(tt))) MARK(U41(U11(s(z0)), x1)) -> c38(A__U41(a__U11(s(mark(z0))), x1), MARK(U11(s(z0)))) MARK(U41(U11(nil), x1)) -> c38(A__U41(a__U11(nil), x1), MARK(U11(nil))) MARK(U41(U11(x0), x1)) -> c38(MARK(U11(x0))) MARK(U41(U21(zeros), x1)) -> c38(A__U41(a__U21(a__zeros), x1), MARK(U21(zeros))) MARK(U41(U21(U11(z0)), x1)) -> c38(A__U41(a__U21(a__U11(mark(z0))), x1), MARK(U21(U11(z0)))) MARK(U41(U21(U21(z0)), x1)) -> c38(A__U41(a__U21(a__U21(mark(z0))), x1), MARK(U21(U21(z0)))) MARK(U41(U21(U31(z0)), x1)) -> c38(A__U41(a__U21(a__U31(mark(z0))), x1), MARK(U21(U31(z0)))) MARK(U41(U21(U41(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U41(mark(z0), z1)), x1), MARK(U21(U41(z0, z1)))) MARK(U41(U21(U42(z0)), x1)) -> c38(A__U41(a__U21(a__U42(mark(z0))), x1), MARK(U21(U42(z0)))) MARK(U41(U21(isNatIList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatIList(z0)), x1), MARK(U21(isNatIList(z0)))) MARK(U41(U21(U51(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U51(mark(z0), z1)), x1), MARK(U21(U51(z0, z1)))) MARK(U41(U21(U52(z0)), x1)) -> c38(A__U41(a__U21(a__U52(mark(z0))), x1), MARK(U21(U52(z0)))) MARK(U41(U21(isNatList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatList(z0)), x1), MARK(U21(isNatList(z0)))) MARK(U41(U21(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U21(a__U61(mark(z0), z1, z2)), x1), MARK(U21(U61(z0, z1, z2)))) MARK(U41(U21(U62(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U62(mark(z0), z1)), x1), MARK(U21(U62(z0, z1)))) MARK(U41(U21(isNat(z0)), x1)) -> c38(A__U41(a__U21(a__isNat(z0)), x1), MARK(U21(isNat(z0)))) MARK(U41(U21(length(z0)), x1)) -> c38(A__U41(a__U21(a__length(mark(z0))), x1), MARK(U21(length(z0)))) MARK(U41(U21(cons(z0, z1)), x1)) -> c38(A__U41(a__U21(cons(mark(z0), z1)), x1), MARK(U21(cons(z0, z1)))) MARK(U41(U21(0), x1)) -> c38(A__U41(a__U21(0), x1), MARK(U21(0))) MARK(U41(U21(tt), x1)) -> c38(A__U41(a__U21(tt), x1), MARK(U21(tt))) MARK(U41(U21(s(z0)), x1)) -> c38(A__U41(a__U21(s(mark(z0))), x1), MARK(U21(s(z0)))) MARK(U41(U21(nil), x1)) -> c38(A__U41(a__U21(nil), x1), MARK(U21(nil))) MARK(U41(U21(x0), x1)) -> c38(MARK(U21(x0))) MARK(U41(U31(zeros), x1)) -> c38(A__U41(a__U31(a__zeros), x1), MARK(U31(zeros))) MARK(U41(U31(U11(z0)), x1)) -> c38(A__U41(a__U31(a__U11(mark(z0))), x1), MARK(U31(U11(z0)))) MARK(U41(U31(U21(z0)), x1)) -> c38(A__U41(a__U31(a__U21(mark(z0))), x1), MARK(U31(U21(z0)))) MARK(U41(U31(U31(z0)), x1)) -> c38(A__U41(a__U31(a__U31(mark(z0))), x1), MARK(U31(U31(z0)))) MARK(U41(U31(U41(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U41(mark(z0), z1)), x1), MARK(U31(U41(z0, z1)))) MARK(U41(U31(U42(z0)), x1)) -> c38(A__U41(a__U31(a__U42(mark(z0))), x1), MARK(U31(U42(z0)))) MARK(U41(U31(isNatIList(z0)), x1)) -> c38(A__U41(a__U31(a__isNatIList(z0)), x1), MARK(U31(isNatIList(z0)))) MARK(U41(U31(U51(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U51(mark(z0), z1)), x1), MARK(U31(U51(z0, z1)))) MARK(U41(U31(U52(z0)), x1)) -> c38(A__U41(a__U31(a__U52(mark(z0))), x1), MARK(U31(U52(z0)))) MARK(U41(U31(isNatList(z0)), x1)) -> c38(A__U41(a__U31(a__isNatList(z0)), x1), MARK(U31(isNatList(z0)))) MARK(U41(U31(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U31(a__U61(mark(z0), z1, z2)), x1), MARK(U31(U61(z0, z1, z2)))) MARK(U41(U31(U62(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U62(mark(z0), z1)), x1), MARK(U31(U62(z0, z1)))) MARK(U41(U31(isNat(z0)), x1)) -> c38(A__U41(a__U31(a__isNat(z0)), x1), MARK(U31(isNat(z0)))) MARK(U41(U31(length(z0)), x1)) -> c38(A__U41(a__U31(a__length(mark(z0))), x1), MARK(U31(length(z0)))) MARK(U41(U31(cons(z0, z1)), x1)) -> c38(A__U41(a__U31(cons(mark(z0), z1)), x1), MARK(U31(cons(z0, z1)))) MARK(U41(U31(0), x1)) -> c38(A__U41(a__U31(0), x1), MARK(U31(0))) MARK(U41(U31(tt), x1)) -> c38(A__U41(a__U31(tt), x1), MARK(U31(tt))) MARK(U41(U31(s(z0)), x1)) -> c38(A__U41(a__U31(s(mark(z0))), x1), MARK(U31(s(z0)))) MARK(U41(U31(nil), x1)) -> c38(A__U41(a__U31(nil), x1), MARK(U31(nil))) MARK(U41(U31(x0), x1)) -> c38(MARK(U31(x0))) MARK(U41(U41(U11(z0), x1), x2)) -> c38(A__U41(a__U41(a__U11(mark(z0)), x1), x2), MARK(U41(U11(z0), x1))) MARK(U41(U41(U21(z0), x1), x2)) -> c38(A__U41(a__U41(a__U21(mark(z0)), x1), x2), MARK(U41(U21(z0), x1))) MARK(U41(U41(U31(z0), x1), x2)) -> c38(A__U41(a__U41(a__U31(mark(z0)), x1), x2), MARK(U41(U31(z0), x1))) MARK(U41(U41(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U41(mark(z0), z1), x1), x2), MARK(U41(U41(z0, z1), x1))) MARK(U41(U41(U42(z0), x1), x2)) -> c38(A__U41(a__U41(a__U42(mark(z0)), x1), x2), MARK(U41(U42(z0), x1))) MARK(U41(U41(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U51(mark(z0), z1), x1), x2), MARK(U41(U51(z0, z1), x1))) MARK(U41(U41(U52(z0), x1), x2)) -> c38(A__U41(a__U41(a__U52(mark(z0)), x1), x2), MARK(U41(U52(z0), x1))) MARK(U41(U41(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U41(a__U61(mark(z0), z1, z2), x1), x2), MARK(U41(U61(z0, z1, z2), x1))) MARK(U41(U41(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U62(mark(z0), z1), x1), x2), MARK(U41(U62(z0, z1), x1))) MARK(U41(U41(length(z0), x1), x2)) -> c38(A__U41(a__U41(a__length(mark(z0)), x1), x2), MARK(U41(length(z0), x1))) MARK(U41(U41(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U41(cons(mark(z0), z1), x1), x2), MARK(U41(cons(z0, z1), x1))) MARK(U41(U41(s(z0), x1), x2)) -> c38(A__U41(a__U41(s(mark(z0)), x1), x2), MARK(U41(s(z0), x1))) MARK(U41(U41(x0, z1), x2)) -> c38(MARK(U41(x0, z1))) MARK(U41(U41(0, x1), x2)) -> c38(A__U41(a__U41(0, x1), x2)) MARK(U41(U41(nil, x1), x2)) -> c38(A__U41(a__U41(nil, x1), x2)) MARK(U41(U41(zeros, x1), x2)) -> c2(A__U41(a__U41(a__zeros, x1), x2)) MARK(U41(U41(isNatIList(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNatIList(z0), x1), x2)) MARK(U41(U41(isNatIList(z0), x1), x2)) -> c2(MARK(U41(isNatIList(z0), x1))) MARK(U41(U41(isNatList(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNatList(z0), x1), x2)) MARK(U41(U41(isNatList(z0), x1), x2)) -> c2(MARK(U41(isNatList(z0), x1))) MARK(U41(U41(isNat(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNat(z0), x1), x2)) MARK(U41(U41(isNat(z0), x1), x2)) -> c2(MARK(U41(isNat(z0), x1))) MARK(U41(U41(tt, x1), x2)) -> c2(A__U41(a__U41(tt, x1), x2)) MARK(U41(U41(tt, x1), x2)) -> c2(MARK(U41(tt, x1))) MARK(U41(U42(zeros), x1)) -> c38(A__U41(a__U42(a__zeros), x1), MARK(U42(zeros))) MARK(U41(U42(U11(z0)), x1)) -> c38(A__U41(a__U42(a__U11(mark(z0))), x1), MARK(U42(U11(z0)))) MARK(U41(U42(U21(z0)), x1)) -> c38(A__U41(a__U42(a__U21(mark(z0))), x1), MARK(U42(U21(z0)))) MARK(U41(U42(U31(z0)), x1)) -> c38(A__U41(a__U42(a__U31(mark(z0))), x1), MARK(U42(U31(z0)))) MARK(U41(U42(U41(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U41(mark(z0), z1)), x1), MARK(U42(U41(z0, z1)))) MARK(U41(U42(U42(z0)), x1)) -> c38(A__U41(a__U42(a__U42(mark(z0))), x1), MARK(U42(U42(z0)))) MARK(U41(U42(isNatIList(z0)), x1)) -> c38(A__U41(a__U42(a__isNatIList(z0)), x1), MARK(U42(isNatIList(z0)))) MARK(U41(U42(U51(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U51(mark(z0), z1)), x1), MARK(U42(U51(z0, z1)))) MARK(U41(U42(U52(z0)), x1)) -> c38(A__U41(a__U42(a__U52(mark(z0))), x1), MARK(U42(U52(z0)))) MARK(U41(U42(isNatList(z0)), x1)) -> c38(A__U41(a__U42(a__isNatList(z0)), x1), MARK(U42(isNatList(z0)))) MARK(U41(U42(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U42(a__U61(mark(z0), z1, z2)), x1), MARK(U42(U61(z0, z1, z2)))) MARK(U41(U42(U62(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U62(mark(z0), z1)), x1), MARK(U42(U62(z0, z1)))) MARK(U41(U42(isNat(z0)), x1)) -> c38(A__U41(a__U42(a__isNat(z0)), x1), MARK(U42(isNat(z0)))) MARK(U41(U42(length(z0)), x1)) -> c38(A__U41(a__U42(a__length(mark(z0))), x1), MARK(U42(length(z0)))) MARK(U41(U42(cons(z0, z1)), x1)) -> c38(A__U41(a__U42(cons(mark(z0), z1)), x1), MARK(U42(cons(z0, z1)))) MARK(U41(U42(0), x1)) -> c38(A__U41(a__U42(0), x1), MARK(U42(0))) MARK(U41(U42(tt), x1)) -> c38(A__U41(a__U42(tt), x1), MARK(U42(tt))) MARK(U41(U42(s(z0)), x1)) -> c38(A__U41(a__U42(s(mark(z0))), x1), MARK(U42(s(z0)))) MARK(U41(U42(nil), x1)) -> c38(A__U41(a__U42(nil), x1), MARK(U42(nil))) MARK(U41(U42(x0), x1)) -> c38(MARK(U42(x0))) MARK(U41(U51(U11(z0), x1), x2)) -> c38(A__U41(a__U51(a__U11(mark(z0)), x1), x2), MARK(U51(U11(z0), x1))) MARK(U41(U51(U21(z0), x1), x2)) -> c38(A__U41(a__U51(a__U21(mark(z0)), x1), x2), MARK(U51(U21(z0), x1))) MARK(U41(U51(U31(z0), x1), x2)) -> c38(A__U41(a__U51(a__U31(mark(z0)), x1), x2), MARK(U51(U31(z0), x1))) MARK(U41(U51(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U41(mark(z0), z1), x1), x2), MARK(U51(U41(z0, z1), x1))) MARK(U41(U51(U42(z0), x1), x2)) -> c38(A__U41(a__U51(a__U42(mark(z0)), x1), x2), MARK(U51(U42(z0), x1))) MARK(U41(U51(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U51(mark(z0), z1), x1), x2), MARK(U51(U51(z0, z1), x1))) MARK(U41(U51(U52(z0), x1), x2)) -> c38(A__U41(a__U51(a__U52(mark(z0)), x1), x2), MARK(U51(U52(z0), x1))) MARK(U41(U51(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U51(a__U61(mark(z0), z1, z2), x1), x2), MARK(U51(U61(z0, z1, z2), x1))) MARK(U41(U51(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U62(mark(z0), z1), x1), x2), MARK(U51(U62(z0, z1), x1))) MARK(U41(U51(length(z0), x1), x2)) -> c38(A__U41(a__U51(a__length(mark(z0)), x1), x2), MARK(U51(length(z0), x1))) MARK(U41(U51(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U51(cons(mark(z0), z1), x1), x2), MARK(U51(cons(z0, z1), x1))) MARK(U41(U51(s(z0), x1), x2)) -> c38(A__U41(a__U51(s(mark(z0)), x1), x2), MARK(U51(s(z0), x1))) MARK(U41(U51(x0, z1), x2)) -> c38(MARK(U51(x0, z1))) MARK(U41(U51(0, x1), x2)) -> c38(A__U41(a__U51(0, x1), x2)) MARK(U41(U51(nil, x1), x2)) -> c38(A__U41(a__U51(nil, x1), x2)) MARK(U41(U51(zeros, x1), x2)) -> c3(A__U41(a__U51(a__zeros, x1), x2)) MARK(U41(U51(zeros, x1), x2)) -> c3(MARK(U51(zeros, x1))) MARK(U41(U51(isNatIList(z0), x1), x2)) -> c3(A__U41(a__U51(a__isNatIList(z0), x1), x2)) MARK(U41(U51(isNatIList(z0), x1), x2)) -> c3(MARK(U51(isNatIList(z0), x1))) MARK(U41(U51(isNatList(z0), x1), x2)) -> c3(A__U41(a__U51(a__isNatList(z0), x1), x2)) MARK(U41(U51(isNatList(z0), x1), x2)) -> c3(MARK(U51(isNatList(z0), x1))) MARK(U41(U51(isNat(z0), x1), x2)) -> c3(A__U41(a__U51(a__isNat(z0), x1), x2)) MARK(U41(U51(isNat(z0), x1), x2)) -> c3(MARK(U51(isNat(z0), x1))) MARK(U41(U51(tt, x1), x2)) -> c3(A__U41(a__U51(tt, x1), x2)) MARK(U41(U51(tt, x1), x2)) -> c3(MARK(U51(tt, x1))) MARK(U41(U52(zeros), x1)) -> c38(A__U41(a__U52(a__zeros), x1), MARK(U52(zeros))) MARK(U41(U52(U11(z0)), x1)) -> c38(A__U41(a__U52(a__U11(mark(z0))), x1), MARK(U52(U11(z0)))) MARK(U41(U52(U21(z0)), x1)) -> c38(A__U41(a__U52(a__U21(mark(z0))), x1), MARK(U52(U21(z0)))) MARK(U41(U52(U31(z0)), x1)) -> c38(A__U41(a__U52(a__U31(mark(z0))), x1), MARK(U52(U31(z0)))) MARK(U41(U52(U41(z0, z1)), x1)) -> c38(A__U41(a__U52(a__U41(mark(z0), z1)), x1), MARK(U52(U41(z0, z1)))) MARK(U41(U52(U42(z0)), x1)) -> c38(A__U41(a__U52(a__U42(mark(z0))), x1), MARK(U52(U42(z0)))) MARK(U41(U52(isNatIList(z0)), x1)) -> c38(A__U41(a__U52(a__isNatIList(z0)), x1), MARK(U52(isNatIList(z0)))) MARK(U41(U52(U51(z0, z1)), x1)) -> c38(A__U41(a__U52(a__U51(mark(z0), z1)), x1), MARK(U52(U51(z0, z1)))) MARK(U41(U52(U52(z0)), x1)) -> c38(A__U41(a__U52(a__U52(mark(z0))), x1), MARK(U52(U52(z0)))) MARK(U41(U52(isNatList(z0)), x1)) -> c38(A__U41(a__U52(a__isNatList(z0)), x1), MARK(U52(isNatList(z0)))) MARK(U41(U52(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U52(a__U61(mark(z0), z1, z2)), x1), MARK(U52(U61(z0, z1, z2)))) MARK(U41(U52(U62(z0, z1)), x1)) -> c38(A__U41(a__U52(a__U62(mark(z0), z1)), x1), MARK(U52(U62(z0, z1)))) MARK(U41(U52(isNat(z0)), x1)) -> c38(A__U41(a__U52(a__isNat(z0)), x1), MARK(U52(isNat(z0)))) MARK(U41(U52(length(z0)), x1)) -> c38(A__U41(a__U52(a__length(mark(z0))), x1), MARK(U52(length(z0)))) MARK(U41(U52(cons(z0, z1)), x1)) -> c38(A__U41(a__U52(cons(mark(z0), z1)), x1), MARK(U52(cons(z0, z1)))) MARK(U41(U52(0), x1)) -> c38(A__U41(a__U52(0), x1), MARK(U52(0))) MARK(U41(U52(tt), x1)) -> c38(A__U41(a__U52(tt), x1), MARK(U52(tt))) MARK(U41(U52(s(z0)), x1)) -> c38(A__U41(a__U52(s(mark(z0))), x1), MARK(U52(s(z0)))) MARK(U41(U52(nil), x1)) -> c38(A__U41(a__U52(nil), x1), MARK(U52(nil))) MARK(U41(U52(x0), x1)) -> c38(MARK(U52(x0))) MARK(U41(U61(zeros, x1, x2), x3)) -> c38(A__U41(a__U61(a__zeros, x1, x2), x3), MARK(U61(zeros, x1, x2))) MARK(U41(U61(U11(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U11(mark(z0)), x1, x2), x3), MARK(U61(U11(z0), x1, x2))) MARK(U41(U61(U21(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U21(mark(z0)), x1, x2), x3), MARK(U61(U21(z0), x1, x2))) MARK(U41(U61(U31(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U31(mark(z0)), x1, x2), x3), MARK(U61(U31(z0), x1, x2))) MARK(U41(U61(U41(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(a__U41(mark(z0), z1), x1, x2), x3), MARK(U61(U41(z0, z1), x1, x2))) MARK(U41(U61(U42(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U42(mark(z0)), x1, x2), x3), MARK(U61(U42(z0), x1, x2))) MARK(U41(U61(isNatIList(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__isNatIList(z0), x1, x2), x3), MARK(U61(isNatIList(z0), x1, x2))) MARK(U41(U61(U51(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(a__U51(mark(z0), z1), x1, x2), x3), MARK(U61(U51(z0, z1), x1, x2))) MARK(U41(U61(U52(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U52(mark(z0)), x1, x2), x3), MARK(U61(U52(z0), x1, x2))) MARK(U41(U61(isNatList(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__isNatList(z0), x1, x2), x3), MARK(U61(isNatList(z0), x1, x2))) MARK(U41(U61(U61(z0, z1, z2), x1, x2), x3)) -> c38(A__U41(a__U61(a__U61(mark(z0), z1, z2), x1, x2), x3), MARK(U61(U61(z0, z1, z2), x1, x2))) MARK(U41(U61(U62(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(a__U62(mark(z0), z1), x1, x2), x3), MARK(U61(U62(z0, z1), x1, x2))) MARK(U41(U61(isNat(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__isNat(z0), x1, x2), x3), MARK(U61(isNat(z0), x1, x2))) MARK(U41(U61(length(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__length(mark(z0)), x1, x2), x3), MARK(U61(length(z0), x1, x2))) MARK(U41(U61(cons(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(cons(mark(z0), z1), x1, x2), x3), MARK(U61(cons(z0, z1), x1, x2))) MARK(U41(U61(tt, x1, x2), x3)) -> c38(A__U41(a__U61(tt, x1, x2), x3), MARK(U61(tt, x1, x2))) MARK(U41(U61(s(z0), x1, x2), x3)) -> c38(A__U41(a__U61(s(mark(z0)), x1, x2), x3), MARK(U61(s(z0), x1, x2))) MARK(U41(U61(x0, z1, z2), x3)) -> c38(MARK(U61(x0, z1, z2))) MARK(U41(U61(0, x1, x2), x3)) -> c38(A__U41(a__U61(0, x1, x2), x3)) MARK(U41(U61(nil, x1, x2), x3)) -> c38(A__U41(a__U61(nil, x1, x2), x3)) MARK(U41(U62(zeros, x1), x2)) -> c38(A__U41(a__U62(a__zeros, x1), x2), MARK(U62(zeros, x1))) MARK(U41(U62(U11(z0), x1), x2)) -> c38(A__U41(a__U62(a__U11(mark(z0)), x1), x2), MARK(U62(U11(z0), x1))) MARK(U41(U62(U21(z0), x1), x2)) -> c38(A__U41(a__U62(a__U21(mark(z0)), x1), x2), MARK(U62(U21(z0), x1))) MARK(U41(U62(U31(z0), x1), x2)) -> c38(A__U41(a__U62(a__U31(mark(z0)), x1), x2), MARK(U62(U31(z0), x1))) MARK(U41(U62(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U62(a__U41(mark(z0), z1), x1), x2), MARK(U62(U41(z0, z1), x1))) MARK(U41(U62(U42(z0), x1), x2)) -> c38(A__U41(a__U62(a__U42(mark(z0)), x1), x2), MARK(U62(U42(z0), x1))) MARK(U41(U62(isNatIList(z0), x1), x2)) -> c38(A__U41(a__U62(a__isNatIList(z0), x1), x2), MARK(U62(isNatIList(z0), x1))) MARK(U41(U62(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U62(a__U51(mark(z0), z1), x1), x2), MARK(U62(U51(z0, z1), x1))) MARK(U41(U62(U52(z0), x1), x2)) -> c38(A__U41(a__U62(a__U52(mark(z0)), x1), x2), MARK(U62(U52(z0), x1))) MARK(U41(U62(isNatList(z0), x1), x2)) -> c38(A__U41(a__U62(a__isNatList(z0), x1), x2), MARK(U62(isNatList(z0), x1))) MARK(U41(U62(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U62(a__U61(mark(z0), z1, z2), x1), x2), MARK(U62(U61(z0, z1, z2), x1))) MARK(U41(U62(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U62(a__U62(mark(z0), z1), x1), x2), MARK(U62(U62(z0, z1), x1))) MARK(U41(U62(isNat(z0), x1), x2)) -> c38(A__U41(a__U62(a__isNat(z0), x1), x2), MARK(U62(isNat(z0), x1))) MARK(U41(U62(length(z0), x1), x2)) -> c38(A__U41(a__U62(a__length(mark(z0)), x1), x2), MARK(U62(length(z0), x1))) MARK(U41(U62(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U62(cons(mark(z0), z1), x1), x2), MARK(U62(cons(z0, z1), x1))) MARK(U41(U62(tt, x1), x2)) -> c38(A__U41(a__U62(tt, x1), x2), MARK(U62(tt, x1))) MARK(U41(U62(s(z0), x1), x2)) -> c38(A__U41(a__U62(s(mark(z0)), x1), x2), MARK(U62(s(z0), x1))) MARK(U41(U62(x0, z1), x2)) -> c38(MARK(U62(x0, z1))) MARK(U41(U62(0, x1), x2)) -> c38(A__U41(a__U62(0, x1), x2)) MARK(U41(U62(nil, x1), x2)) -> c38(A__U41(a__U62(nil, x1), x2)) MARK(U41(length(zeros), x1)) -> c38(A__U41(a__length(a__zeros), x1), MARK(length(zeros))) MARK(U41(length(U11(z0)), x1)) -> c38(A__U41(a__length(a__U11(mark(z0))), x1), MARK(length(U11(z0)))) MARK(U41(length(U21(z0)), x1)) -> c38(A__U41(a__length(a__U21(mark(z0))), x1), MARK(length(U21(z0)))) MARK(U41(length(U31(z0)), x1)) -> c38(A__U41(a__length(a__U31(mark(z0))), x1), MARK(length(U31(z0)))) MARK(U41(length(U41(z0, z1)), x1)) -> c38(A__U41(a__length(a__U41(mark(z0), z1)), x1), MARK(length(U41(z0, z1)))) MARK(U41(length(U42(z0)), x1)) -> c38(A__U41(a__length(a__U42(mark(z0))), x1), MARK(length(U42(z0)))) MARK(U41(length(isNatIList(z0)), x1)) -> c38(A__U41(a__length(a__isNatIList(z0)), x1), MARK(length(isNatIList(z0)))) MARK(U41(length(U51(z0, z1)), x1)) -> c38(A__U41(a__length(a__U51(mark(z0), z1)), x1), MARK(length(U51(z0, z1)))) MARK(U41(length(U52(z0)), x1)) -> c38(A__U41(a__length(a__U52(mark(z0))), x1), MARK(length(U52(z0)))) MARK(U41(length(isNatList(z0)), x1)) -> c38(A__U41(a__length(a__isNatList(z0)), x1), MARK(length(isNatList(z0)))) MARK(U41(length(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__length(a__U61(mark(z0), z1, z2)), x1), MARK(length(U61(z0, z1, z2)))) MARK(U41(length(U62(z0, z1)), x1)) -> c38(A__U41(a__length(a__U62(mark(z0), z1)), x1), MARK(length(U62(z0, z1)))) MARK(U41(length(isNat(z0)), x1)) -> c38(A__U41(a__length(a__isNat(z0)), x1), MARK(length(isNat(z0)))) MARK(U41(length(length(z0)), x1)) -> c38(A__U41(a__length(a__length(mark(z0))), x1), MARK(length(length(z0)))) MARK(U41(length(cons(z0, z1)), x1)) -> c38(A__U41(a__length(cons(mark(z0), z1)), x1), MARK(length(cons(z0, z1)))) MARK(U41(length(s(z0)), x1)) -> c38(A__U41(a__length(s(mark(z0))), x1), MARK(length(s(z0)))) MARK(U41(length(x0), x1)) -> c38(MARK(length(x0))) MARK(U41(length(0), x1)) -> c38(A__U41(a__length(0), x1)) MARK(U41(length(tt), x1)) -> c38(A__U41(a__length(tt), x1)) MARK(U41(length(nil), x1)) -> c38(A__U41(a__length(nil), x1)) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__U31(a__isNatList(z0)), x1)) MARK(U41(isNatIList(zeros), x1)) -> c(A__U41(tt, x1)) MARK(U41(isNatIList(cons(z0, z1)), x1)) -> c(A__U41(a__U41(a__isNat(z0), z1), x1)) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(isNatIList(z0), x1)) K tuples:none Defined Rule Symbols: a__zeros, a__U11_1, a__U21_1, a__U31_1, a__U41_2, a__U42_1, a__U51_2, a__U52_1, a__U61_3, a__U62_2, a__isNat_1, a__isNatIList_1, a__isNatList_1, a__length_1, mark_1 Defined Pair Symbols: MARK_1, A__U41_2, A__U51_2, A__ISNAT_1, A__ISNATILIST_1, A__U61_3, A__U62_2, A__ISNATLIST_1, A__LENGTH_1 Compound Symbols: c40_1, c43_1, c46_1, c48_1, c51_1, c8_1, c12_1, c21_1, c22_1, c24_1, c35_1, c36_1, c37_1, c39_1, c42_1, c16_1, c18_2, c18_1, c26_1, c29_1, c32_1, c38_1, c_1, c41_2, c41_1, c1_1, c44_2, c44_1, c45_2, c45_1, c47_2, c47_1, c16_2, c26_2, c29_2, c32_2, c38_2, c2_1, c3_1 ---------------------------------------- (221) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 1 trailing nodes: MARK(U41(isNatIList(z0), x1)) -> c(A__U41(isNatIList(z0), x1)) ---------------------------------------- (222) Obligation: Complexity Dependency Tuples Problem Rules: a__zeros -> cons(0, zeros) a__zeros -> zeros a__U11(tt) -> tt a__U11(z0) -> U11(z0) a__U21(tt) -> tt a__U21(z0) -> U21(z0) a__U31(tt) -> tt a__U31(z0) -> U31(z0) a__U41(tt, z0) -> a__U42(a__isNatIList(z0)) a__U41(z0, z1) -> U41(z0, z1) a__U42(tt) -> tt a__U42(z0) -> U42(z0) a__U51(tt, z0) -> a__U52(a__isNatList(z0)) a__U51(z0, z1) -> U51(z0, z1) a__U52(tt) -> tt a__U52(z0) -> U52(z0) a__U61(tt, z0, z1) -> a__U62(a__isNat(z1), z0) a__U61(z0, z1, z2) -> U61(z0, z1, z2) a__U62(tt, z0) -> s(a__length(mark(z0))) a__U62(z0, z1) -> U62(z0, z1) a__isNat(0) -> tt a__isNat(length(z0)) -> a__U11(a__isNatList(z0)) a__isNat(s(z0)) -> a__U21(a__isNat(z0)) a__isNat(z0) -> isNat(z0) a__isNatIList(z0) -> a__U31(a__isNatList(z0)) a__isNatIList(zeros) -> tt a__isNatIList(cons(z0, z1)) -> a__U41(a__isNat(z0), z1) a__isNatIList(z0) -> isNatIList(z0) a__isNatList(nil) -> tt a__isNatList(cons(z0, z1)) -> a__U51(a__isNat(z0), z1) a__isNatList(z0) -> isNatList(z0) a__length(nil) -> 0 a__length(cons(z0, z1)) -> a__U61(a__isNatList(z1), z1, z0) a__length(z0) -> length(z0) mark(zeros) -> a__zeros mark(U11(z0)) -> a__U11(mark(z0)) mark(U21(z0)) -> a__U21(mark(z0)) mark(U31(z0)) -> a__U31(mark(z0)) mark(U41(z0, z1)) -> a__U41(mark(z0), z1) mark(U42(z0)) -> a__U42(mark(z0)) mark(isNatIList(z0)) -> a__isNatIList(z0) mark(U51(z0, z1)) -> a__U51(mark(z0), z1) mark(U52(z0)) -> a__U52(mark(z0)) mark(isNatList(z0)) -> a__isNatList(z0) mark(U61(z0, z1, z2)) -> a__U61(mark(z0), z1, z2) mark(U62(z0, z1)) -> a__U62(mark(z0), z1) mark(isNat(z0)) -> a__isNat(z0) mark(length(z0)) -> a__length(mark(z0)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(0) -> 0 mark(tt) -> tt mark(s(z0)) -> s(mark(z0)) mark(nil) -> nil Tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) A__U62(tt, isNatList(cons(z0, z1))) -> c18(A__LENGTH(a__U51(a__isNat(z0), z1)), MARK(isNatList(cons(z0, z1)))) A__U62(tt, isNatList(nil)) -> c18(MARK(isNatList(nil))) A__U62(tt, isNatList(z0)) -> c18(MARK(isNatList(z0))) A__U62(tt, U61(zeros, x1, x2)) -> c18(A__LENGTH(a__U61(a__zeros, x1, x2)), MARK(U61(zeros, x1, x2))) A__U62(tt, U61(U11(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U11(mark(z0)), x1, x2)), MARK(U61(U11(z0), x1, x2))) A__U62(tt, U61(U21(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U21(mark(z0)), x1, x2)), MARK(U61(U21(z0), x1, x2))) A__U62(tt, U61(U31(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U31(mark(z0)), x1, x2)), MARK(U61(U31(z0), x1, x2))) A__U62(tt, U61(U41(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U41(mark(z0), z1), x1, x2)), MARK(U61(U41(z0, z1), x1, x2))) A__U62(tt, U61(U42(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U42(mark(z0)), x1, x2)), MARK(U61(U42(z0), x1, x2))) A__U62(tt, U61(isNatIList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatIList(z0), x1, x2)), MARK(U61(isNatIList(z0), x1, x2))) A__U62(tt, U61(U51(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U51(mark(z0), z1), x1, x2)), MARK(U61(U51(z0, z1), x1, x2))) A__U62(tt, U61(U52(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U52(mark(z0)), x1, x2)), MARK(U61(U52(z0), x1, x2))) A__U62(tt, U61(isNatList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatList(z0), x1, x2)), MARK(U61(isNatList(z0), x1, x2))) A__U62(tt, U61(U61(z0, z1, z2), x1, x2)) -> c18(A__LENGTH(a__U61(a__U61(mark(z0), z1, z2), x1, x2)), MARK(U61(U61(z0, z1, z2), x1, x2))) A__U62(tt, U61(U62(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U62(mark(z0), z1), x1, x2)), MARK(U61(U62(z0, z1), x1, x2))) A__U62(tt, U61(isNat(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNat(z0), x1, x2)), MARK(U61(isNat(z0), x1, x2))) A__U62(tt, U61(length(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__length(mark(z0)), x1, x2)), MARK(U61(length(z0), x1, x2))) A__U62(tt, U61(cons(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(cons(mark(z0), z1), x1, x2)), MARK(U61(cons(z0, z1), x1, x2))) A__U62(tt, U61(tt, x1, x2)) -> c18(A__LENGTH(a__U61(tt, x1, x2)), MARK(U61(tt, x1, x2))) A__U62(tt, U61(s(z0), x1, x2)) -> c18(A__LENGTH(a__U61(s(mark(z0)), x1, x2)), MARK(U61(s(z0), x1, x2))) A__U62(tt, U61(x0, z1, z2)) -> c18(MARK(U61(x0, z1, z2))) A__U62(tt, U61(0, x1, x2)) -> c18(A__LENGTH(a__U61(0, x1, x2))) A__U62(tt, U61(nil, x1, x2)) -> c18(A__LENGTH(a__U61(nil, x1, x2))) A__U62(tt, U62(zeros, x1)) -> c18(A__LENGTH(a__U62(a__zeros, x1)), MARK(U62(zeros, x1))) A__U62(tt, U62(U11(z0), x1)) -> c18(A__LENGTH(a__U62(a__U11(mark(z0)), x1)), MARK(U62(U11(z0), x1))) A__U62(tt, U62(U21(z0), x1)) -> c18(A__LENGTH(a__U62(a__U21(mark(z0)), x1)), MARK(U62(U21(z0), x1))) A__U62(tt, U62(U31(z0), x1)) -> c18(A__LENGTH(a__U62(a__U31(mark(z0)), x1)), MARK(U62(U31(z0), x1))) A__U62(tt, U62(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U41(mark(z0), z1), x1)), MARK(U62(U41(z0, z1), x1))) A__U62(tt, U62(U42(z0), x1)) -> c18(A__LENGTH(a__U62(a__U42(mark(z0)), x1)), MARK(U62(U42(z0), x1))) A__U62(tt, U62(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatIList(z0), x1)), MARK(U62(isNatIList(z0), x1))) A__U62(tt, U62(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U51(mark(z0), z1), x1)), MARK(U62(U51(z0, z1), x1))) A__U62(tt, U62(U52(z0), x1)) -> c18(A__LENGTH(a__U62(a__U52(mark(z0)), x1)), MARK(U62(U52(z0), x1))) A__U62(tt, U62(isNatList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatList(z0), x1)), MARK(U62(isNatList(z0), x1))) A__U62(tt, U62(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U62(a__U61(mark(z0), z1, z2), x1)), MARK(U62(U61(z0, z1, z2), x1))) A__U62(tt, U62(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U62(mark(z0), z1), x1)), MARK(U62(U62(z0, z1), x1))) A__U62(tt, U62(isNat(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNat(z0), x1)), MARK(U62(isNat(z0), x1))) A__U62(tt, U62(length(z0), x1)) -> c18(A__LENGTH(a__U62(a__length(mark(z0)), x1)), MARK(U62(length(z0), x1))) A__U62(tt, U62(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U62(cons(mark(z0), z1), x1)), MARK(U62(cons(z0, z1), x1))) A__U62(tt, U62(tt, x1)) -> c18(A__LENGTH(a__U62(tt, x1)), MARK(U62(tt, x1))) A__U62(tt, U62(s(z0), x1)) -> c18(A__LENGTH(a__U62(s(mark(z0)), x1)), MARK(U62(s(z0), x1))) A__U62(tt, U62(x0, z1)) -> c18(MARK(U62(x0, z1))) A__U62(tt, U62(0, x1)) -> c18(A__LENGTH(a__U62(0, x1))) A__U62(tt, U62(nil, x1)) -> c18(A__LENGTH(a__U62(nil, x1))) A__U62(tt, isNat(length(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(isNat(length(z0)))) A__U62(tt, isNat(s(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(isNat(s(z0)))) A__U62(tt, isNat(0)) -> c18(MARK(isNat(0))) A__U62(tt, isNat(z0)) -> c18(MARK(isNat(z0))) A__U62(tt, length(zeros)) -> c18(A__LENGTH(a__length(a__zeros)), MARK(length(zeros))) A__U62(tt, length(U11(z0))) -> c18(A__LENGTH(a__length(a__U11(mark(z0)))), MARK(length(U11(z0)))) A__U62(tt, length(U21(z0))) -> c18(A__LENGTH(a__length(a__U21(mark(z0)))), MARK(length(U21(z0)))) A__U62(tt, length(U31(z0))) -> c18(A__LENGTH(a__length(a__U31(mark(z0)))), MARK(length(U31(z0)))) A__U62(tt, length(U41(z0, z1))) -> c18(A__LENGTH(a__length(a__U41(mark(z0), z1))), MARK(length(U41(z0, z1)))) A__U62(tt, length(U42(z0))) -> c18(A__LENGTH(a__length(a__U42(mark(z0)))), MARK(length(U42(z0)))) A__U62(tt, length(isNatIList(z0))) -> c18(A__LENGTH(a__length(a__isNatIList(z0))), MARK(length(isNatIList(z0)))) A__U62(tt, length(U51(z0, z1))) -> c18(A__LENGTH(a__length(a__U51(mark(z0), z1))), MARK(length(U51(z0, z1)))) A__U62(tt, length(U52(z0))) -> c18(A__LENGTH(a__length(a__U52(mark(z0)))), MARK(length(U52(z0)))) A__U62(tt, length(isNatList(z0))) -> c18(A__LENGTH(a__length(a__isNatList(z0))), MARK(length(isNatList(z0)))) A__U62(tt, length(U61(z0, z1, z2))) -> c18(A__LENGTH(a__length(a__U61(mark(z0), z1, z2))), MARK(length(U61(z0, z1, z2)))) A__U62(tt, length(U62(z0, z1))) -> c18(A__LENGTH(a__length(a__U62(mark(z0), z1))), MARK(length(U62(z0, z1)))) A__U62(tt, length(isNat(z0))) -> c18(A__LENGTH(a__length(a__isNat(z0))), MARK(length(isNat(z0)))) A__U62(tt, length(length(z0))) -> c18(A__LENGTH(a__length(a__length(mark(z0)))), MARK(length(length(z0)))) A__U62(tt, length(cons(z0, z1))) -> c18(A__LENGTH(a__length(cons(mark(z0), z1))), MARK(length(cons(z0, z1)))) A__U62(tt, length(s(z0))) -> c18(A__LENGTH(a__length(s(mark(z0)))), MARK(length(s(z0)))) A__U62(tt, length(x0)) -> c18(MARK(length(x0))) A__U62(tt, length(0)) -> c18(A__LENGTH(a__length(0))) A__U62(tt, length(tt)) -> c18(A__LENGTH(a__length(tt))) A__U62(tt, length(nil)) -> c18(A__LENGTH(a__length(nil))) A__U62(tt, zeros) -> c18(A__LENGTH(cons(0, zeros))) A__ISNATILIST(cons(length(nil), x1)) -> c26(A__U41(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATILIST(cons(length(cons(z0, z1)), x1)) -> c26(A__U41(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(length(x0), x1)) -> c26(A__ISNAT(length(x0))) A__ISNATILIST(cons(s(0), x1)) -> c26(A__U41(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATILIST(cons(s(length(z0)), x1)) -> c26(A__U41(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATILIST(cons(s(s(z0)), x1)) -> c26(A__U41(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(s(x0), x1)) -> c26(A__ISNAT(s(x0))) A__ISNATLIST(cons(length(nil), x1)) -> c29(A__U51(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATLIST(cons(length(cons(z0, z1)), x1)) -> c29(A__U51(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(length(x0), x1)) -> c29(A__ISNAT(length(x0))) A__ISNATLIST(cons(s(0), x1)) -> c29(A__U51(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATLIST(cons(s(length(z0)), x1)) -> c29(A__U51(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATLIST(cons(s(s(z0)), x1)) -> c29(A__U51(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(s(x0), x1)) -> c29(A__ISNAT(s(x0))) A__LENGTH(cons(x0, cons(0, x2))) -> c32(A__U61(a__U51(tt, x2), cons(0, x2), x0), A__ISNATLIST(cons(0, x2))) A__LENGTH(cons(x0, cons(length(z0), x2))) -> c32(A__U61(a__U51(a__U11(a__isNatList(z0)), x2), cons(length(z0), x2), x0), A__ISNATLIST(cons(length(z0), x2))) A__LENGTH(cons(x0, cons(s(z0), x2))) -> c32(A__U61(a__U51(a__U21(a__isNat(z0)), x2), cons(s(z0), x2), x0), A__ISNATLIST(cons(s(z0), x2))) A__LENGTH(cons(x0, cons(z0, x2))) -> c32(A__U61(a__U51(isNat(z0), x2), cons(z0, x2), x0), A__ISNATLIST(cons(z0, x2))) A__LENGTH(cons(x0, cons(x1, z1))) -> c32(A__ISNATLIST(cons(x1, z1))) MARK(U41(U11(zeros), x1)) -> c38(A__U41(a__U11(a__zeros), x1), MARK(U11(zeros))) MARK(U41(U11(U11(z0)), x1)) -> c38(A__U41(a__U11(a__U11(mark(z0))), x1), MARK(U11(U11(z0)))) MARK(U41(U11(U21(z0)), x1)) -> c38(A__U41(a__U11(a__U21(mark(z0))), x1), MARK(U11(U21(z0)))) MARK(U41(U11(U31(z0)), x1)) -> c38(A__U41(a__U11(a__U31(mark(z0))), x1), MARK(U11(U31(z0)))) MARK(U41(U11(U41(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U41(mark(z0), z1)), x1), MARK(U11(U41(z0, z1)))) MARK(U41(U11(U42(z0)), x1)) -> c38(A__U41(a__U11(a__U42(mark(z0))), x1), MARK(U11(U42(z0)))) MARK(U41(U11(isNatIList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatIList(z0)), x1), MARK(U11(isNatIList(z0)))) MARK(U41(U11(U51(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U51(mark(z0), z1)), x1), MARK(U11(U51(z0, z1)))) MARK(U41(U11(U52(z0)), x1)) -> c38(A__U41(a__U11(a__U52(mark(z0))), x1), MARK(U11(U52(z0)))) MARK(U41(U11(isNatList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatList(z0)), x1), MARK(U11(isNatList(z0)))) MARK(U41(U11(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U11(a__U61(mark(z0), z1, z2)), x1), MARK(U11(U61(z0, z1, z2)))) MARK(U41(U11(U62(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U62(mark(z0), z1)), x1), MARK(U11(U62(z0, z1)))) MARK(U41(U11(isNat(z0)), x1)) -> c38(A__U41(a__U11(a__isNat(z0)), x1), MARK(U11(isNat(z0)))) MARK(U41(U11(length(z0)), x1)) -> c38(A__U41(a__U11(a__length(mark(z0))), x1), MARK(U11(length(z0)))) MARK(U41(U11(cons(z0, z1)), x1)) -> c38(A__U41(a__U11(cons(mark(z0), z1)), x1), MARK(U11(cons(z0, z1)))) MARK(U41(U11(0), x1)) -> c38(A__U41(a__U11(0), x1), MARK(U11(0))) MARK(U41(U11(tt), x1)) -> c38(A__U41(a__U11(tt), x1), MARK(U11(tt))) MARK(U41(U11(s(z0)), x1)) -> c38(A__U41(a__U11(s(mark(z0))), x1), MARK(U11(s(z0)))) MARK(U41(U11(nil), x1)) -> c38(A__U41(a__U11(nil), x1), MARK(U11(nil))) MARK(U41(U11(x0), x1)) -> c38(MARK(U11(x0))) MARK(U41(U21(zeros), x1)) -> c38(A__U41(a__U21(a__zeros), x1), MARK(U21(zeros))) MARK(U41(U21(U11(z0)), x1)) -> c38(A__U41(a__U21(a__U11(mark(z0))), x1), MARK(U21(U11(z0)))) MARK(U41(U21(U21(z0)), x1)) -> c38(A__U41(a__U21(a__U21(mark(z0))), x1), MARK(U21(U21(z0)))) MARK(U41(U21(U31(z0)), x1)) -> c38(A__U41(a__U21(a__U31(mark(z0))), x1), MARK(U21(U31(z0)))) MARK(U41(U21(U41(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U41(mark(z0), z1)), x1), MARK(U21(U41(z0, z1)))) MARK(U41(U21(U42(z0)), x1)) -> c38(A__U41(a__U21(a__U42(mark(z0))), x1), MARK(U21(U42(z0)))) MARK(U41(U21(isNatIList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatIList(z0)), x1), MARK(U21(isNatIList(z0)))) MARK(U41(U21(U51(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U51(mark(z0), z1)), x1), MARK(U21(U51(z0, z1)))) MARK(U41(U21(U52(z0)), x1)) -> c38(A__U41(a__U21(a__U52(mark(z0))), x1), MARK(U21(U52(z0)))) MARK(U41(U21(isNatList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatList(z0)), x1), MARK(U21(isNatList(z0)))) MARK(U41(U21(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U21(a__U61(mark(z0), z1, z2)), x1), MARK(U21(U61(z0, z1, z2)))) MARK(U41(U21(U62(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U62(mark(z0), z1)), x1), MARK(U21(U62(z0, z1)))) MARK(U41(U21(isNat(z0)), x1)) -> c38(A__U41(a__U21(a__isNat(z0)), x1), MARK(U21(isNat(z0)))) MARK(U41(U21(length(z0)), x1)) -> c38(A__U41(a__U21(a__length(mark(z0))), x1), MARK(U21(length(z0)))) MARK(U41(U21(cons(z0, z1)), x1)) -> c38(A__U41(a__U21(cons(mark(z0), z1)), x1), MARK(U21(cons(z0, z1)))) MARK(U41(U21(0), x1)) -> c38(A__U41(a__U21(0), x1), MARK(U21(0))) MARK(U41(U21(tt), x1)) -> c38(A__U41(a__U21(tt), x1), MARK(U21(tt))) MARK(U41(U21(s(z0)), x1)) -> c38(A__U41(a__U21(s(mark(z0))), x1), MARK(U21(s(z0)))) MARK(U41(U21(nil), x1)) -> c38(A__U41(a__U21(nil), x1), MARK(U21(nil))) MARK(U41(U21(x0), x1)) -> c38(MARK(U21(x0))) MARK(U41(U31(zeros), x1)) -> c38(A__U41(a__U31(a__zeros), x1), MARK(U31(zeros))) MARK(U41(U31(U11(z0)), x1)) -> c38(A__U41(a__U31(a__U11(mark(z0))), x1), MARK(U31(U11(z0)))) MARK(U41(U31(U21(z0)), x1)) -> c38(A__U41(a__U31(a__U21(mark(z0))), x1), MARK(U31(U21(z0)))) MARK(U41(U31(U31(z0)), x1)) -> c38(A__U41(a__U31(a__U31(mark(z0))), x1), MARK(U31(U31(z0)))) MARK(U41(U31(U41(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U41(mark(z0), z1)), x1), MARK(U31(U41(z0, z1)))) MARK(U41(U31(U42(z0)), x1)) -> c38(A__U41(a__U31(a__U42(mark(z0))), x1), MARK(U31(U42(z0)))) MARK(U41(U31(isNatIList(z0)), x1)) -> c38(A__U41(a__U31(a__isNatIList(z0)), x1), MARK(U31(isNatIList(z0)))) MARK(U41(U31(U51(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U51(mark(z0), z1)), x1), MARK(U31(U51(z0, z1)))) MARK(U41(U31(U52(z0)), x1)) -> c38(A__U41(a__U31(a__U52(mark(z0))), x1), MARK(U31(U52(z0)))) MARK(U41(U31(isNatList(z0)), x1)) -> c38(A__U41(a__U31(a__isNatList(z0)), x1), MARK(U31(isNatList(z0)))) MARK(U41(U31(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U31(a__U61(mark(z0), z1, z2)), x1), MARK(U31(U61(z0, z1, z2)))) MARK(U41(U31(U62(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U62(mark(z0), z1)), x1), MARK(U31(U62(z0, z1)))) MARK(U41(U31(isNat(z0)), x1)) -> c38(A__U41(a__U31(a__isNat(z0)), x1), MARK(U31(isNat(z0)))) MARK(U41(U31(length(z0)), x1)) -> c38(A__U41(a__U31(a__length(mark(z0))), x1), MARK(U31(length(z0)))) MARK(U41(U31(cons(z0, z1)), x1)) -> c38(A__U41(a__U31(cons(mark(z0), z1)), x1), MARK(U31(cons(z0, z1)))) MARK(U41(U31(0), x1)) -> c38(A__U41(a__U31(0), x1), MARK(U31(0))) MARK(U41(U31(tt), x1)) -> c38(A__U41(a__U31(tt), x1), MARK(U31(tt))) MARK(U41(U31(s(z0)), x1)) -> c38(A__U41(a__U31(s(mark(z0))), x1), MARK(U31(s(z0)))) MARK(U41(U31(nil), x1)) -> c38(A__U41(a__U31(nil), x1), MARK(U31(nil))) MARK(U41(U31(x0), x1)) -> c38(MARK(U31(x0))) MARK(U41(U41(U11(z0), x1), x2)) -> c38(A__U41(a__U41(a__U11(mark(z0)), x1), x2), MARK(U41(U11(z0), x1))) MARK(U41(U41(U21(z0), x1), x2)) -> c38(A__U41(a__U41(a__U21(mark(z0)), x1), x2), MARK(U41(U21(z0), x1))) MARK(U41(U41(U31(z0), x1), x2)) -> c38(A__U41(a__U41(a__U31(mark(z0)), x1), x2), MARK(U41(U31(z0), x1))) MARK(U41(U41(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U41(mark(z0), z1), x1), x2), MARK(U41(U41(z0, z1), x1))) MARK(U41(U41(U42(z0), x1), x2)) -> c38(A__U41(a__U41(a__U42(mark(z0)), x1), x2), MARK(U41(U42(z0), x1))) MARK(U41(U41(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U51(mark(z0), z1), x1), x2), MARK(U41(U51(z0, z1), x1))) MARK(U41(U41(U52(z0), x1), x2)) -> c38(A__U41(a__U41(a__U52(mark(z0)), x1), x2), MARK(U41(U52(z0), x1))) MARK(U41(U41(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U41(a__U61(mark(z0), z1, z2), x1), x2), MARK(U41(U61(z0, z1, z2), x1))) MARK(U41(U41(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U62(mark(z0), z1), x1), x2), MARK(U41(U62(z0, z1), x1))) MARK(U41(U41(length(z0), x1), x2)) -> c38(A__U41(a__U41(a__length(mark(z0)), x1), x2), MARK(U41(length(z0), x1))) MARK(U41(U41(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U41(cons(mark(z0), z1), x1), x2), MARK(U41(cons(z0, z1), x1))) MARK(U41(U41(s(z0), x1), x2)) -> c38(A__U41(a__U41(s(mark(z0)), x1), x2), MARK(U41(s(z0), x1))) MARK(U41(U41(x0, z1), x2)) -> c38(MARK(U41(x0, z1))) MARK(U41(U41(0, x1), x2)) -> c38(A__U41(a__U41(0, x1), x2)) MARK(U41(U41(nil, x1), x2)) -> c38(A__U41(a__U41(nil, x1), x2)) MARK(U41(U41(zeros, x1), x2)) -> c2(A__U41(a__U41(a__zeros, x1), x2)) MARK(U41(U41(isNatIList(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNatIList(z0), x1), x2)) MARK(U41(U41(isNatIList(z0), x1), x2)) -> c2(MARK(U41(isNatIList(z0), x1))) MARK(U41(U41(isNatList(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNatList(z0), x1), x2)) MARK(U41(U41(isNatList(z0), x1), x2)) -> c2(MARK(U41(isNatList(z0), x1))) MARK(U41(U41(isNat(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNat(z0), x1), x2)) MARK(U41(U41(isNat(z0), x1), x2)) -> c2(MARK(U41(isNat(z0), x1))) MARK(U41(U41(tt, x1), x2)) -> c2(A__U41(a__U41(tt, x1), x2)) MARK(U41(U41(tt, x1), x2)) -> c2(MARK(U41(tt, x1))) MARK(U41(U42(zeros), x1)) -> c38(A__U41(a__U42(a__zeros), x1), MARK(U42(zeros))) MARK(U41(U42(U11(z0)), x1)) -> c38(A__U41(a__U42(a__U11(mark(z0))), x1), MARK(U42(U11(z0)))) MARK(U41(U42(U21(z0)), x1)) -> c38(A__U41(a__U42(a__U21(mark(z0))), x1), MARK(U42(U21(z0)))) MARK(U41(U42(U31(z0)), x1)) -> c38(A__U41(a__U42(a__U31(mark(z0))), x1), MARK(U42(U31(z0)))) MARK(U41(U42(U41(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U41(mark(z0), z1)), x1), MARK(U42(U41(z0, z1)))) MARK(U41(U42(U42(z0)), x1)) -> c38(A__U41(a__U42(a__U42(mark(z0))), x1), MARK(U42(U42(z0)))) MARK(U41(U42(isNatIList(z0)), x1)) -> c38(A__U41(a__U42(a__isNatIList(z0)), x1), MARK(U42(isNatIList(z0)))) MARK(U41(U42(U51(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U51(mark(z0), z1)), x1), MARK(U42(U51(z0, z1)))) MARK(U41(U42(U52(z0)), x1)) -> c38(A__U41(a__U42(a__U52(mark(z0))), x1), MARK(U42(U52(z0)))) MARK(U41(U42(isNatList(z0)), x1)) -> c38(A__U41(a__U42(a__isNatList(z0)), x1), MARK(U42(isNatList(z0)))) MARK(U41(U42(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U42(a__U61(mark(z0), z1, z2)), x1), MARK(U42(U61(z0, z1, z2)))) MARK(U41(U42(U62(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U62(mark(z0), z1)), x1), MARK(U42(U62(z0, z1)))) MARK(U41(U42(isNat(z0)), x1)) -> c38(A__U41(a__U42(a__isNat(z0)), x1), MARK(U42(isNat(z0)))) MARK(U41(U42(length(z0)), x1)) -> c38(A__U41(a__U42(a__length(mark(z0))), x1), MARK(U42(length(z0)))) MARK(U41(U42(cons(z0, z1)), x1)) -> c38(A__U41(a__U42(cons(mark(z0), z1)), x1), MARK(U42(cons(z0, z1)))) MARK(U41(U42(0), x1)) -> c38(A__U41(a__U42(0), x1), MARK(U42(0))) MARK(U41(U42(tt), x1)) -> c38(A__U41(a__U42(tt), x1), MARK(U42(tt))) MARK(U41(U42(s(z0)), x1)) -> c38(A__U41(a__U42(s(mark(z0))), x1), MARK(U42(s(z0)))) MARK(U41(U42(nil), x1)) -> c38(A__U41(a__U42(nil), x1), MARK(U42(nil))) MARK(U41(U42(x0), x1)) -> c38(MARK(U42(x0))) MARK(U41(U51(U11(z0), x1), x2)) -> c38(A__U41(a__U51(a__U11(mark(z0)), x1), x2), MARK(U51(U11(z0), x1))) MARK(U41(U51(U21(z0), x1), x2)) -> c38(A__U41(a__U51(a__U21(mark(z0)), x1), x2), MARK(U51(U21(z0), x1))) MARK(U41(U51(U31(z0), x1), x2)) -> c38(A__U41(a__U51(a__U31(mark(z0)), x1), x2), MARK(U51(U31(z0), x1))) MARK(U41(U51(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U41(mark(z0), z1), x1), x2), MARK(U51(U41(z0, z1), x1))) MARK(U41(U51(U42(z0), x1), x2)) -> c38(A__U41(a__U51(a__U42(mark(z0)), x1), x2), MARK(U51(U42(z0), x1))) MARK(U41(U51(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U51(mark(z0), z1), x1), x2), MARK(U51(U51(z0, z1), x1))) MARK(U41(U51(U52(z0), x1), x2)) -> c38(A__U41(a__U51(a__U52(mark(z0)), x1), x2), MARK(U51(U52(z0), x1))) MARK(U41(U51(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U51(a__U61(mark(z0), z1, z2), x1), x2), MARK(U51(U61(z0, z1, z2), x1))) MARK(U41(U51(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U62(mark(z0), z1), x1), x2), MARK(U51(U62(z0, z1), x1))) MARK(U41(U51(length(z0), x1), x2)) -> c38(A__U41(a__U51(a__length(mark(z0)), x1), x2), MARK(U51(length(z0), x1))) MARK(U41(U51(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U51(cons(mark(z0), z1), x1), x2), MARK(U51(cons(z0, z1), x1))) MARK(U41(U51(s(z0), x1), x2)) -> c38(A__U41(a__U51(s(mark(z0)), x1), x2), MARK(U51(s(z0), x1))) MARK(U41(U51(x0, z1), x2)) -> c38(MARK(U51(x0, z1))) MARK(U41(U51(0, x1), x2)) -> c38(A__U41(a__U51(0, x1), x2)) MARK(U41(U51(nil, x1), x2)) -> c38(A__U41(a__U51(nil, x1), x2)) MARK(U41(U51(zeros, x1), x2)) -> c3(A__U41(a__U51(a__zeros, x1), x2)) MARK(U41(U51(zeros, x1), x2)) -> c3(MARK(U51(zeros, x1))) MARK(U41(U51(isNatIList(z0), x1), x2)) -> c3(A__U41(a__U51(a__isNatIList(z0), x1), x2)) MARK(U41(U51(isNatIList(z0), x1), x2)) -> c3(MARK(U51(isNatIList(z0), x1))) MARK(U41(U51(isNatList(z0), x1), x2)) -> c3(A__U41(a__U51(a__isNatList(z0), x1), x2)) MARK(U41(U51(isNatList(z0), x1), x2)) -> c3(MARK(U51(isNatList(z0), x1))) MARK(U41(U51(isNat(z0), x1), x2)) -> c3(A__U41(a__U51(a__isNat(z0), x1), x2)) MARK(U41(U51(isNat(z0), x1), x2)) -> c3(MARK(U51(isNat(z0), x1))) MARK(U41(U51(tt, x1), x2)) -> c3(A__U41(a__U51(tt, x1), x2)) MARK(U41(U51(tt, x1), x2)) -> c3(MARK(U51(tt, x1))) MARK(U41(U52(zeros), x1)) -> c38(A__U41(a__U52(a__zeros), x1), MARK(U52(zeros))) MARK(U41(U52(U11(z0)), x1)) -> c38(A__U41(a__U52(a__U11(mark(z0))), x1), MARK(U52(U11(z0)))) MARK(U41(U52(U21(z0)), x1)) -> c38(A__U41(a__U52(a__U21(mark(z0))), x1), MARK(U52(U21(z0)))) MARK(U41(U52(U31(z0)), x1)) -> c38(A__U41(a__U52(a__U31(mark(z0))), x1), MARK(U52(U31(z0)))) MARK(U41(U52(U41(z0, z1)), x1)) -> c38(A__U41(a__U52(a__U41(mark(z0), z1)), x1), MARK(U52(U41(z0, z1)))) MARK(U41(U52(U42(z0)), x1)) -> c38(A__U41(a__U52(a__U42(mark(z0))), x1), MARK(U52(U42(z0)))) MARK(U41(U52(isNatIList(z0)), x1)) -> c38(A__U41(a__U52(a__isNatIList(z0)), x1), MARK(U52(isNatIList(z0)))) MARK(U41(U52(U51(z0, z1)), x1)) -> c38(A__U41(a__U52(a__U51(mark(z0), z1)), x1), MARK(U52(U51(z0, z1)))) MARK(U41(U52(U52(z0)), x1)) -> c38(A__U41(a__U52(a__U52(mark(z0))), x1), MARK(U52(U52(z0)))) MARK(U41(U52(isNatList(z0)), x1)) -> c38(A__U41(a__U52(a__isNatList(z0)), x1), MARK(U52(isNatList(z0)))) MARK(U41(U52(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U52(a__U61(mark(z0), z1, z2)), x1), MARK(U52(U61(z0, z1, z2)))) MARK(U41(U52(U62(z0, z1)), x1)) -> c38(A__U41(a__U52(a__U62(mark(z0), z1)), x1), MARK(U52(U62(z0, z1)))) MARK(U41(U52(isNat(z0)), x1)) -> c38(A__U41(a__U52(a__isNat(z0)), x1), MARK(U52(isNat(z0)))) MARK(U41(U52(length(z0)), x1)) -> c38(A__U41(a__U52(a__length(mark(z0))), x1), MARK(U52(length(z0)))) MARK(U41(U52(cons(z0, z1)), x1)) -> c38(A__U41(a__U52(cons(mark(z0), z1)), x1), MARK(U52(cons(z0, z1)))) MARK(U41(U52(0), x1)) -> c38(A__U41(a__U52(0), x1), MARK(U52(0))) MARK(U41(U52(tt), x1)) -> c38(A__U41(a__U52(tt), x1), MARK(U52(tt))) MARK(U41(U52(s(z0)), x1)) -> c38(A__U41(a__U52(s(mark(z0))), x1), MARK(U52(s(z0)))) MARK(U41(U52(nil), x1)) -> c38(A__U41(a__U52(nil), x1), MARK(U52(nil))) MARK(U41(U52(x0), x1)) -> c38(MARK(U52(x0))) MARK(U41(U61(zeros, x1, x2), x3)) -> c38(A__U41(a__U61(a__zeros, x1, x2), x3), MARK(U61(zeros, x1, x2))) MARK(U41(U61(U11(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U11(mark(z0)), x1, x2), x3), MARK(U61(U11(z0), x1, x2))) MARK(U41(U61(U21(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U21(mark(z0)), x1, x2), x3), MARK(U61(U21(z0), x1, x2))) MARK(U41(U61(U31(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U31(mark(z0)), x1, x2), x3), MARK(U61(U31(z0), x1, x2))) MARK(U41(U61(U41(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(a__U41(mark(z0), z1), x1, x2), x3), MARK(U61(U41(z0, z1), x1, x2))) MARK(U41(U61(U42(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U42(mark(z0)), x1, x2), x3), MARK(U61(U42(z0), x1, x2))) MARK(U41(U61(isNatIList(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__isNatIList(z0), x1, x2), x3), MARK(U61(isNatIList(z0), x1, x2))) MARK(U41(U61(U51(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(a__U51(mark(z0), z1), x1, x2), x3), MARK(U61(U51(z0, z1), x1, x2))) MARK(U41(U61(U52(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U52(mark(z0)), x1, x2), x3), MARK(U61(U52(z0), x1, x2))) MARK(U41(U61(isNatList(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__isNatList(z0), x1, x2), x3), MARK(U61(isNatList(z0), x1, x2))) MARK(U41(U61(U61(z0, z1, z2), x1, x2), x3)) -> c38(A__U41(a__U61(a__U61(mark(z0), z1, z2), x1, x2), x3), MARK(U61(U61(z0, z1, z2), x1, x2))) MARK(U41(U61(U62(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(a__U62(mark(z0), z1), x1, x2), x3), MARK(U61(U62(z0, z1), x1, x2))) MARK(U41(U61(isNat(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__isNat(z0), x1, x2), x3), MARK(U61(isNat(z0), x1, x2))) MARK(U41(U61(length(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__length(mark(z0)), x1, x2), x3), MARK(U61(length(z0), x1, x2))) MARK(U41(U61(cons(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(cons(mark(z0), z1), x1, x2), x3), MARK(U61(cons(z0, z1), x1, x2))) MARK(U41(U61(tt, x1, x2), x3)) -> c38(A__U41(a__U61(tt, x1, x2), x3), MARK(U61(tt, x1, x2))) MARK(U41(U61(s(z0), x1, x2), x3)) -> c38(A__U41(a__U61(s(mark(z0)), x1, x2), x3), MARK(U61(s(z0), x1, x2))) MARK(U41(U61(x0, z1, z2), x3)) -> c38(MARK(U61(x0, z1, z2))) MARK(U41(U61(0, x1, x2), x3)) -> c38(A__U41(a__U61(0, x1, x2), x3)) MARK(U41(U61(nil, x1, x2), x3)) -> c38(A__U41(a__U61(nil, x1, x2), x3)) MARK(U41(U62(zeros, x1), x2)) -> c38(A__U41(a__U62(a__zeros, x1), x2), MARK(U62(zeros, x1))) MARK(U41(U62(U11(z0), x1), x2)) -> c38(A__U41(a__U62(a__U11(mark(z0)), x1), x2), MARK(U62(U11(z0), x1))) MARK(U41(U62(U21(z0), x1), x2)) -> c38(A__U41(a__U62(a__U21(mark(z0)), x1), x2), MARK(U62(U21(z0), x1))) MARK(U41(U62(U31(z0), x1), x2)) -> c38(A__U41(a__U62(a__U31(mark(z0)), x1), x2), MARK(U62(U31(z0), x1))) MARK(U41(U62(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U62(a__U41(mark(z0), z1), x1), x2), MARK(U62(U41(z0, z1), x1))) MARK(U41(U62(U42(z0), x1), x2)) -> c38(A__U41(a__U62(a__U42(mark(z0)), x1), x2), MARK(U62(U42(z0), x1))) MARK(U41(U62(isNatIList(z0), x1), x2)) -> c38(A__U41(a__U62(a__isNatIList(z0), x1), x2), MARK(U62(isNatIList(z0), x1))) MARK(U41(U62(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U62(a__U51(mark(z0), z1), x1), x2), MARK(U62(U51(z0, z1), x1))) MARK(U41(U62(U52(z0), x1), x2)) -> c38(A__U41(a__U62(a__U52(mark(z0)), x1), x2), MARK(U62(U52(z0), x1))) MARK(U41(U62(isNatList(z0), x1), x2)) -> c38(A__U41(a__U62(a__isNatList(z0), x1), x2), MARK(U62(isNatList(z0), x1))) MARK(U41(U62(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U62(a__U61(mark(z0), z1, z2), x1), x2), MARK(U62(U61(z0, z1, z2), x1))) MARK(U41(U62(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U62(a__U62(mark(z0), z1), x1), x2), MARK(U62(U62(z0, z1), x1))) MARK(U41(U62(isNat(z0), x1), x2)) -> c38(A__U41(a__U62(a__isNat(z0), x1), x2), MARK(U62(isNat(z0), x1))) MARK(U41(U62(length(z0), x1), x2)) -> c38(A__U41(a__U62(a__length(mark(z0)), x1), x2), MARK(U62(length(z0), x1))) MARK(U41(U62(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U62(cons(mark(z0), z1), x1), x2), MARK(U62(cons(z0, z1), x1))) MARK(U41(U62(tt, x1), x2)) -> c38(A__U41(a__U62(tt, x1), x2), MARK(U62(tt, x1))) MARK(U41(U62(s(z0), x1), x2)) -> c38(A__U41(a__U62(s(mark(z0)), x1), x2), MARK(U62(s(z0), x1))) MARK(U41(U62(x0, z1), x2)) -> c38(MARK(U62(x0, z1))) MARK(U41(U62(0, x1), x2)) -> c38(A__U41(a__U62(0, x1), x2)) MARK(U41(U62(nil, x1), x2)) -> c38(A__U41(a__U62(nil, x1), x2)) MARK(U41(length(zeros), x1)) -> c38(A__U41(a__length(a__zeros), x1), MARK(length(zeros))) MARK(U41(length(U11(z0)), x1)) -> c38(A__U41(a__length(a__U11(mark(z0))), x1), MARK(length(U11(z0)))) MARK(U41(length(U21(z0)), x1)) -> c38(A__U41(a__length(a__U21(mark(z0))), x1), MARK(length(U21(z0)))) MARK(U41(length(U31(z0)), x1)) -> c38(A__U41(a__length(a__U31(mark(z0))), x1), MARK(length(U31(z0)))) MARK(U41(length(U41(z0, z1)), x1)) -> c38(A__U41(a__length(a__U41(mark(z0), z1)), x1), MARK(length(U41(z0, z1)))) MARK(U41(length(U42(z0)), x1)) -> c38(A__U41(a__length(a__U42(mark(z0))), x1), MARK(length(U42(z0)))) MARK(U41(length(isNatIList(z0)), x1)) -> c38(A__U41(a__length(a__isNatIList(z0)), x1), MARK(length(isNatIList(z0)))) MARK(U41(length(U51(z0, z1)), x1)) -> c38(A__U41(a__length(a__U51(mark(z0), z1)), x1), MARK(length(U51(z0, z1)))) MARK(U41(length(U52(z0)), x1)) -> c38(A__U41(a__length(a__U52(mark(z0))), x1), MARK(length(U52(z0)))) MARK(U41(length(isNatList(z0)), x1)) -> c38(A__U41(a__length(a__isNatList(z0)), x1), MARK(length(isNatList(z0)))) MARK(U41(length(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__length(a__U61(mark(z0), z1, z2)), x1), MARK(length(U61(z0, z1, z2)))) MARK(U41(length(U62(z0, z1)), x1)) -> c38(A__U41(a__length(a__U62(mark(z0), z1)), x1), MARK(length(U62(z0, z1)))) MARK(U41(length(isNat(z0)), x1)) -> c38(A__U41(a__length(a__isNat(z0)), x1), MARK(length(isNat(z0)))) MARK(U41(length(length(z0)), x1)) -> c38(A__U41(a__length(a__length(mark(z0))), x1), MARK(length(length(z0)))) MARK(U41(length(cons(z0, z1)), x1)) -> c38(A__U41(a__length(cons(mark(z0), z1)), x1), MARK(length(cons(z0, z1)))) MARK(U41(length(s(z0)), x1)) -> c38(A__U41(a__length(s(mark(z0))), x1), MARK(length(s(z0)))) MARK(U41(length(x0), x1)) -> c38(MARK(length(x0))) MARK(U41(length(0), x1)) -> c38(A__U41(a__length(0), x1)) MARK(U41(length(tt), x1)) -> c38(A__U41(a__length(tt), x1)) MARK(U41(length(nil), x1)) -> c38(A__U41(a__length(nil), x1)) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__U31(a__isNatList(z0)), x1)) MARK(U41(isNatIList(zeros), x1)) -> c(A__U41(tt, x1)) MARK(U41(isNatIList(cons(z0, z1)), x1)) -> c(A__U41(a__U41(a__isNat(z0), z1), x1)) S tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) A__U62(tt, isNatList(cons(z0, z1))) -> c18(A__LENGTH(a__U51(a__isNat(z0), z1)), MARK(isNatList(cons(z0, z1)))) A__U62(tt, isNatList(nil)) -> c18(MARK(isNatList(nil))) A__U62(tt, isNatList(z0)) -> c18(MARK(isNatList(z0))) A__U62(tt, U61(zeros, x1, x2)) -> c18(A__LENGTH(a__U61(a__zeros, x1, x2)), MARK(U61(zeros, x1, x2))) A__U62(tt, U61(U11(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U11(mark(z0)), x1, x2)), MARK(U61(U11(z0), x1, x2))) A__U62(tt, U61(U21(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U21(mark(z0)), x1, x2)), MARK(U61(U21(z0), x1, x2))) A__U62(tt, U61(U31(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U31(mark(z0)), x1, x2)), MARK(U61(U31(z0), x1, x2))) A__U62(tt, U61(U41(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U41(mark(z0), z1), x1, x2)), MARK(U61(U41(z0, z1), x1, x2))) A__U62(tt, U61(U42(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U42(mark(z0)), x1, x2)), MARK(U61(U42(z0), x1, x2))) A__U62(tt, U61(isNatIList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatIList(z0), x1, x2)), MARK(U61(isNatIList(z0), x1, x2))) A__U62(tt, U61(U51(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U51(mark(z0), z1), x1, x2)), MARK(U61(U51(z0, z1), x1, x2))) A__U62(tt, U61(U52(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U52(mark(z0)), x1, x2)), MARK(U61(U52(z0), x1, x2))) A__U62(tt, U61(isNatList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatList(z0), x1, x2)), MARK(U61(isNatList(z0), x1, x2))) A__U62(tt, U61(U61(z0, z1, z2), x1, x2)) -> c18(A__LENGTH(a__U61(a__U61(mark(z0), z1, z2), x1, x2)), MARK(U61(U61(z0, z1, z2), x1, x2))) A__U62(tt, U61(U62(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U62(mark(z0), z1), x1, x2)), MARK(U61(U62(z0, z1), x1, x2))) A__U62(tt, U61(isNat(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNat(z0), x1, x2)), MARK(U61(isNat(z0), x1, x2))) A__U62(tt, U61(length(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__length(mark(z0)), x1, x2)), MARK(U61(length(z0), x1, x2))) A__U62(tt, U61(cons(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(cons(mark(z0), z1), x1, x2)), MARK(U61(cons(z0, z1), x1, x2))) A__U62(tt, U61(tt, x1, x2)) -> c18(A__LENGTH(a__U61(tt, x1, x2)), MARK(U61(tt, x1, x2))) A__U62(tt, U61(s(z0), x1, x2)) -> c18(A__LENGTH(a__U61(s(mark(z0)), x1, x2)), MARK(U61(s(z0), x1, x2))) A__U62(tt, U61(x0, z1, z2)) -> c18(MARK(U61(x0, z1, z2))) A__U62(tt, U61(0, x1, x2)) -> c18(A__LENGTH(a__U61(0, x1, x2))) A__U62(tt, U61(nil, x1, x2)) -> c18(A__LENGTH(a__U61(nil, x1, x2))) A__U62(tt, U62(zeros, x1)) -> c18(A__LENGTH(a__U62(a__zeros, x1)), MARK(U62(zeros, x1))) A__U62(tt, U62(U11(z0), x1)) -> c18(A__LENGTH(a__U62(a__U11(mark(z0)), x1)), MARK(U62(U11(z0), x1))) A__U62(tt, U62(U21(z0), x1)) -> c18(A__LENGTH(a__U62(a__U21(mark(z0)), x1)), MARK(U62(U21(z0), x1))) A__U62(tt, U62(U31(z0), x1)) -> c18(A__LENGTH(a__U62(a__U31(mark(z0)), x1)), MARK(U62(U31(z0), x1))) A__U62(tt, U62(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U41(mark(z0), z1), x1)), MARK(U62(U41(z0, z1), x1))) A__U62(tt, U62(U42(z0), x1)) -> c18(A__LENGTH(a__U62(a__U42(mark(z0)), x1)), MARK(U62(U42(z0), x1))) A__U62(tt, U62(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatIList(z0), x1)), MARK(U62(isNatIList(z0), x1))) A__U62(tt, U62(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U51(mark(z0), z1), x1)), MARK(U62(U51(z0, z1), x1))) A__U62(tt, U62(U52(z0), x1)) -> c18(A__LENGTH(a__U62(a__U52(mark(z0)), x1)), MARK(U62(U52(z0), x1))) A__U62(tt, U62(isNatList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatList(z0), x1)), MARK(U62(isNatList(z0), x1))) A__U62(tt, U62(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U62(a__U61(mark(z0), z1, z2), x1)), MARK(U62(U61(z0, z1, z2), x1))) A__U62(tt, U62(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U62(mark(z0), z1), x1)), MARK(U62(U62(z0, z1), x1))) A__U62(tt, U62(isNat(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNat(z0), x1)), MARK(U62(isNat(z0), x1))) A__U62(tt, U62(length(z0), x1)) -> c18(A__LENGTH(a__U62(a__length(mark(z0)), x1)), MARK(U62(length(z0), x1))) A__U62(tt, U62(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U62(cons(mark(z0), z1), x1)), MARK(U62(cons(z0, z1), x1))) A__U62(tt, U62(tt, x1)) -> c18(A__LENGTH(a__U62(tt, x1)), MARK(U62(tt, x1))) A__U62(tt, U62(s(z0), x1)) -> c18(A__LENGTH(a__U62(s(mark(z0)), x1)), MARK(U62(s(z0), x1))) A__U62(tt, U62(x0, z1)) -> c18(MARK(U62(x0, z1))) A__U62(tt, U62(0, x1)) -> c18(A__LENGTH(a__U62(0, x1))) A__U62(tt, U62(nil, x1)) -> c18(A__LENGTH(a__U62(nil, x1))) A__U62(tt, isNat(length(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(isNat(length(z0)))) A__U62(tt, isNat(s(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(isNat(s(z0)))) A__U62(tt, isNat(0)) -> c18(MARK(isNat(0))) A__U62(tt, isNat(z0)) -> c18(MARK(isNat(z0))) A__U62(tt, length(zeros)) -> c18(A__LENGTH(a__length(a__zeros)), MARK(length(zeros))) A__U62(tt, length(U11(z0))) -> c18(A__LENGTH(a__length(a__U11(mark(z0)))), MARK(length(U11(z0)))) A__U62(tt, length(U21(z0))) -> c18(A__LENGTH(a__length(a__U21(mark(z0)))), MARK(length(U21(z0)))) A__U62(tt, length(U31(z0))) -> c18(A__LENGTH(a__length(a__U31(mark(z0)))), MARK(length(U31(z0)))) A__U62(tt, length(U41(z0, z1))) -> c18(A__LENGTH(a__length(a__U41(mark(z0), z1))), MARK(length(U41(z0, z1)))) A__U62(tt, length(U42(z0))) -> c18(A__LENGTH(a__length(a__U42(mark(z0)))), MARK(length(U42(z0)))) A__U62(tt, length(isNatIList(z0))) -> c18(A__LENGTH(a__length(a__isNatIList(z0))), MARK(length(isNatIList(z0)))) A__U62(tt, length(U51(z0, z1))) -> c18(A__LENGTH(a__length(a__U51(mark(z0), z1))), MARK(length(U51(z0, z1)))) A__U62(tt, length(U52(z0))) -> c18(A__LENGTH(a__length(a__U52(mark(z0)))), MARK(length(U52(z0)))) A__U62(tt, length(isNatList(z0))) -> c18(A__LENGTH(a__length(a__isNatList(z0))), MARK(length(isNatList(z0)))) A__U62(tt, length(U61(z0, z1, z2))) -> c18(A__LENGTH(a__length(a__U61(mark(z0), z1, z2))), MARK(length(U61(z0, z1, z2)))) A__U62(tt, length(U62(z0, z1))) -> c18(A__LENGTH(a__length(a__U62(mark(z0), z1))), MARK(length(U62(z0, z1)))) A__U62(tt, length(isNat(z0))) -> c18(A__LENGTH(a__length(a__isNat(z0))), MARK(length(isNat(z0)))) A__U62(tt, length(length(z0))) -> c18(A__LENGTH(a__length(a__length(mark(z0)))), MARK(length(length(z0)))) A__U62(tt, length(cons(z0, z1))) -> c18(A__LENGTH(a__length(cons(mark(z0), z1))), MARK(length(cons(z0, z1)))) A__U62(tt, length(s(z0))) -> c18(A__LENGTH(a__length(s(mark(z0)))), MARK(length(s(z0)))) A__U62(tt, length(x0)) -> c18(MARK(length(x0))) A__U62(tt, length(0)) -> c18(A__LENGTH(a__length(0))) A__U62(tt, length(tt)) -> c18(A__LENGTH(a__length(tt))) A__U62(tt, length(nil)) -> c18(A__LENGTH(a__length(nil))) A__U62(tt, zeros) -> c18(A__LENGTH(cons(0, zeros))) A__ISNATILIST(cons(length(nil), x1)) -> c26(A__U41(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATILIST(cons(length(cons(z0, z1)), x1)) -> c26(A__U41(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(length(x0), x1)) -> c26(A__ISNAT(length(x0))) A__ISNATILIST(cons(s(0), x1)) -> c26(A__U41(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATILIST(cons(s(length(z0)), x1)) -> c26(A__U41(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATILIST(cons(s(s(z0)), x1)) -> c26(A__U41(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(s(x0), x1)) -> c26(A__ISNAT(s(x0))) A__ISNATLIST(cons(length(nil), x1)) -> c29(A__U51(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATLIST(cons(length(cons(z0, z1)), x1)) -> c29(A__U51(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(length(x0), x1)) -> c29(A__ISNAT(length(x0))) A__ISNATLIST(cons(s(0), x1)) -> c29(A__U51(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATLIST(cons(s(length(z0)), x1)) -> c29(A__U51(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATLIST(cons(s(s(z0)), x1)) -> c29(A__U51(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(s(x0), x1)) -> c29(A__ISNAT(s(x0))) A__LENGTH(cons(x0, cons(0, x2))) -> c32(A__U61(a__U51(tt, x2), cons(0, x2), x0), A__ISNATLIST(cons(0, x2))) A__LENGTH(cons(x0, cons(length(z0), x2))) -> c32(A__U61(a__U51(a__U11(a__isNatList(z0)), x2), cons(length(z0), x2), x0), A__ISNATLIST(cons(length(z0), x2))) A__LENGTH(cons(x0, cons(s(z0), x2))) -> c32(A__U61(a__U51(a__U21(a__isNat(z0)), x2), cons(s(z0), x2), x0), A__ISNATLIST(cons(s(z0), x2))) A__LENGTH(cons(x0, cons(z0, x2))) -> c32(A__U61(a__U51(isNat(z0), x2), cons(z0, x2), x0), A__ISNATLIST(cons(z0, x2))) A__LENGTH(cons(x0, cons(x1, z1))) -> c32(A__ISNATLIST(cons(x1, z1))) MARK(U41(U11(zeros), x1)) -> c38(A__U41(a__U11(a__zeros), x1), MARK(U11(zeros))) MARK(U41(U11(U11(z0)), x1)) -> c38(A__U41(a__U11(a__U11(mark(z0))), x1), MARK(U11(U11(z0)))) MARK(U41(U11(U21(z0)), x1)) -> c38(A__U41(a__U11(a__U21(mark(z0))), x1), MARK(U11(U21(z0)))) MARK(U41(U11(U31(z0)), x1)) -> c38(A__U41(a__U11(a__U31(mark(z0))), x1), MARK(U11(U31(z0)))) MARK(U41(U11(U41(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U41(mark(z0), z1)), x1), MARK(U11(U41(z0, z1)))) MARK(U41(U11(U42(z0)), x1)) -> c38(A__U41(a__U11(a__U42(mark(z0))), x1), MARK(U11(U42(z0)))) MARK(U41(U11(isNatIList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatIList(z0)), x1), MARK(U11(isNatIList(z0)))) MARK(U41(U11(U51(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U51(mark(z0), z1)), x1), MARK(U11(U51(z0, z1)))) MARK(U41(U11(U52(z0)), x1)) -> c38(A__U41(a__U11(a__U52(mark(z0))), x1), MARK(U11(U52(z0)))) MARK(U41(U11(isNatList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatList(z0)), x1), MARK(U11(isNatList(z0)))) MARK(U41(U11(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U11(a__U61(mark(z0), z1, z2)), x1), MARK(U11(U61(z0, z1, z2)))) MARK(U41(U11(U62(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U62(mark(z0), z1)), x1), MARK(U11(U62(z0, z1)))) MARK(U41(U11(isNat(z0)), x1)) -> c38(A__U41(a__U11(a__isNat(z0)), x1), MARK(U11(isNat(z0)))) MARK(U41(U11(length(z0)), x1)) -> c38(A__U41(a__U11(a__length(mark(z0))), x1), MARK(U11(length(z0)))) MARK(U41(U11(cons(z0, z1)), x1)) -> c38(A__U41(a__U11(cons(mark(z0), z1)), x1), MARK(U11(cons(z0, z1)))) MARK(U41(U11(0), x1)) -> c38(A__U41(a__U11(0), x1), MARK(U11(0))) MARK(U41(U11(tt), x1)) -> c38(A__U41(a__U11(tt), x1), MARK(U11(tt))) MARK(U41(U11(s(z0)), x1)) -> c38(A__U41(a__U11(s(mark(z0))), x1), MARK(U11(s(z0)))) MARK(U41(U11(nil), x1)) -> c38(A__U41(a__U11(nil), x1), MARK(U11(nil))) MARK(U41(U11(x0), x1)) -> c38(MARK(U11(x0))) MARK(U41(U21(zeros), x1)) -> c38(A__U41(a__U21(a__zeros), x1), MARK(U21(zeros))) MARK(U41(U21(U11(z0)), x1)) -> c38(A__U41(a__U21(a__U11(mark(z0))), x1), MARK(U21(U11(z0)))) MARK(U41(U21(U21(z0)), x1)) -> c38(A__U41(a__U21(a__U21(mark(z0))), x1), MARK(U21(U21(z0)))) MARK(U41(U21(U31(z0)), x1)) -> c38(A__U41(a__U21(a__U31(mark(z0))), x1), MARK(U21(U31(z0)))) MARK(U41(U21(U41(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U41(mark(z0), z1)), x1), MARK(U21(U41(z0, z1)))) MARK(U41(U21(U42(z0)), x1)) -> c38(A__U41(a__U21(a__U42(mark(z0))), x1), MARK(U21(U42(z0)))) MARK(U41(U21(isNatIList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatIList(z0)), x1), MARK(U21(isNatIList(z0)))) MARK(U41(U21(U51(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U51(mark(z0), z1)), x1), MARK(U21(U51(z0, z1)))) MARK(U41(U21(U52(z0)), x1)) -> c38(A__U41(a__U21(a__U52(mark(z0))), x1), MARK(U21(U52(z0)))) MARK(U41(U21(isNatList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatList(z0)), x1), MARK(U21(isNatList(z0)))) MARK(U41(U21(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U21(a__U61(mark(z0), z1, z2)), x1), MARK(U21(U61(z0, z1, z2)))) MARK(U41(U21(U62(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U62(mark(z0), z1)), x1), MARK(U21(U62(z0, z1)))) MARK(U41(U21(isNat(z0)), x1)) -> c38(A__U41(a__U21(a__isNat(z0)), x1), MARK(U21(isNat(z0)))) MARK(U41(U21(length(z0)), x1)) -> c38(A__U41(a__U21(a__length(mark(z0))), x1), MARK(U21(length(z0)))) MARK(U41(U21(cons(z0, z1)), x1)) -> c38(A__U41(a__U21(cons(mark(z0), z1)), x1), MARK(U21(cons(z0, z1)))) MARK(U41(U21(0), x1)) -> c38(A__U41(a__U21(0), x1), MARK(U21(0))) MARK(U41(U21(tt), x1)) -> c38(A__U41(a__U21(tt), x1), MARK(U21(tt))) MARK(U41(U21(s(z0)), x1)) -> c38(A__U41(a__U21(s(mark(z0))), x1), MARK(U21(s(z0)))) MARK(U41(U21(nil), x1)) -> c38(A__U41(a__U21(nil), x1), MARK(U21(nil))) MARK(U41(U21(x0), x1)) -> c38(MARK(U21(x0))) MARK(U41(U31(zeros), x1)) -> c38(A__U41(a__U31(a__zeros), x1), MARK(U31(zeros))) MARK(U41(U31(U11(z0)), x1)) -> c38(A__U41(a__U31(a__U11(mark(z0))), x1), MARK(U31(U11(z0)))) MARK(U41(U31(U21(z0)), x1)) -> c38(A__U41(a__U31(a__U21(mark(z0))), x1), MARK(U31(U21(z0)))) MARK(U41(U31(U31(z0)), x1)) -> c38(A__U41(a__U31(a__U31(mark(z0))), x1), MARK(U31(U31(z0)))) MARK(U41(U31(U41(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U41(mark(z0), z1)), x1), MARK(U31(U41(z0, z1)))) MARK(U41(U31(U42(z0)), x1)) -> c38(A__U41(a__U31(a__U42(mark(z0))), x1), MARK(U31(U42(z0)))) MARK(U41(U31(isNatIList(z0)), x1)) -> c38(A__U41(a__U31(a__isNatIList(z0)), x1), MARK(U31(isNatIList(z0)))) MARK(U41(U31(U51(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U51(mark(z0), z1)), x1), MARK(U31(U51(z0, z1)))) MARK(U41(U31(U52(z0)), x1)) -> c38(A__U41(a__U31(a__U52(mark(z0))), x1), MARK(U31(U52(z0)))) MARK(U41(U31(isNatList(z0)), x1)) -> c38(A__U41(a__U31(a__isNatList(z0)), x1), MARK(U31(isNatList(z0)))) MARK(U41(U31(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U31(a__U61(mark(z0), z1, z2)), x1), MARK(U31(U61(z0, z1, z2)))) MARK(U41(U31(U62(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U62(mark(z0), z1)), x1), MARK(U31(U62(z0, z1)))) MARK(U41(U31(isNat(z0)), x1)) -> c38(A__U41(a__U31(a__isNat(z0)), x1), MARK(U31(isNat(z0)))) MARK(U41(U31(length(z0)), x1)) -> c38(A__U41(a__U31(a__length(mark(z0))), x1), MARK(U31(length(z0)))) MARK(U41(U31(cons(z0, z1)), x1)) -> c38(A__U41(a__U31(cons(mark(z0), z1)), x1), MARK(U31(cons(z0, z1)))) MARK(U41(U31(0), x1)) -> c38(A__U41(a__U31(0), x1), MARK(U31(0))) MARK(U41(U31(tt), x1)) -> c38(A__U41(a__U31(tt), x1), MARK(U31(tt))) MARK(U41(U31(s(z0)), x1)) -> c38(A__U41(a__U31(s(mark(z0))), x1), MARK(U31(s(z0)))) MARK(U41(U31(nil), x1)) -> c38(A__U41(a__U31(nil), x1), MARK(U31(nil))) MARK(U41(U31(x0), x1)) -> c38(MARK(U31(x0))) MARK(U41(U41(U11(z0), x1), x2)) -> c38(A__U41(a__U41(a__U11(mark(z0)), x1), x2), MARK(U41(U11(z0), x1))) MARK(U41(U41(U21(z0), x1), x2)) -> c38(A__U41(a__U41(a__U21(mark(z0)), x1), x2), MARK(U41(U21(z0), x1))) MARK(U41(U41(U31(z0), x1), x2)) -> c38(A__U41(a__U41(a__U31(mark(z0)), x1), x2), MARK(U41(U31(z0), x1))) MARK(U41(U41(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U41(mark(z0), z1), x1), x2), MARK(U41(U41(z0, z1), x1))) MARK(U41(U41(U42(z0), x1), x2)) -> c38(A__U41(a__U41(a__U42(mark(z0)), x1), x2), MARK(U41(U42(z0), x1))) MARK(U41(U41(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U51(mark(z0), z1), x1), x2), MARK(U41(U51(z0, z1), x1))) MARK(U41(U41(U52(z0), x1), x2)) -> c38(A__U41(a__U41(a__U52(mark(z0)), x1), x2), MARK(U41(U52(z0), x1))) MARK(U41(U41(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U41(a__U61(mark(z0), z1, z2), x1), x2), MARK(U41(U61(z0, z1, z2), x1))) MARK(U41(U41(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U62(mark(z0), z1), x1), x2), MARK(U41(U62(z0, z1), x1))) MARK(U41(U41(length(z0), x1), x2)) -> c38(A__U41(a__U41(a__length(mark(z0)), x1), x2), MARK(U41(length(z0), x1))) MARK(U41(U41(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U41(cons(mark(z0), z1), x1), x2), MARK(U41(cons(z0, z1), x1))) MARK(U41(U41(s(z0), x1), x2)) -> c38(A__U41(a__U41(s(mark(z0)), x1), x2), MARK(U41(s(z0), x1))) MARK(U41(U41(x0, z1), x2)) -> c38(MARK(U41(x0, z1))) MARK(U41(U41(0, x1), x2)) -> c38(A__U41(a__U41(0, x1), x2)) MARK(U41(U41(nil, x1), x2)) -> c38(A__U41(a__U41(nil, x1), x2)) MARK(U41(U41(zeros, x1), x2)) -> c2(A__U41(a__U41(a__zeros, x1), x2)) MARK(U41(U41(isNatIList(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNatIList(z0), x1), x2)) MARK(U41(U41(isNatIList(z0), x1), x2)) -> c2(MARK(U41(isNatIList(z0), x1))) MARK(U41(U41(isNatList(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNatList(z0), x1), x2)) MARK(U41(U41(isNatList(z0), x1), x2)) -> c2(MARK(U41(isNatList(z0), x1))) MARK(U41(U41(isNat(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNat(z0), x1), x2)) MARK(U41(U41(isNat(z0), x1), x2)) -> c2(MARK(U41(isNat(z0), x1))) MARK(U41(U41(tt, x1), x2)) -> c2(A__U41(a__U41(tt, x1), x2)) MARK(U41(U41(tt, x1), x2)) -> c2(MARK(U41(tt, x1))) MARK(U41(U42(zeros), x1)) -> c38(A__U41(a__U42(a__zeros), x1), MARK(U42(zeros))) MARK(U41(U42(U11(z0)), x1)) -> c38(A__U41(a__U42(a__U11(mark(z0))), x1), MARK(U42(U11(z0)))) MARK(U41(U42(U21(z0)), x1)) -> c38(A__U41(a__U42(a__U21(mark(z0))), x1), MARK(U42(U21(z0)))) MARK(U41(U42(U31(z0)), x1)) -> c38(A__U41(a__U42(a__U31(mark(z0))), x1), MARK(U42(U31(z0)))) MARK(U41(U42(U41(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U41(mark(z0), z1)), x1), MARK(U42(U41(z0, z1)))) MARK(U41(U42(U42(z0)), x1)) -> c38(A__U41(a__U42(a__U42(mark(z0))), x1), MARK(U42(U42(z0)))) MARK(U41(U42(isNatIList(z0)), x1)) -> c38(A__U41(a__U42(a__isNatIList(z0)), x1), MARK(U42(isNatIList(z0)))) MARK(U41(U42(U51(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U51(mark(z0), z1)), x1), MARK(U42(U51(z0, z1)))) MARK(U41(U42(U52(z0)), x1)) -> c38(A__U41(a__U42(a__U52(mark(z0))), x1), MARK(U42(U52(z0)))) MARK(U41(U42(isNatList(z0)), x1)) -> c38(A__U41(a__U42(a__isNatList(z0)), x1), MARK(U42(isNatList(z0)))) MARK(U41(U42(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U42(a__U61(mark(z0), z1, z2)), x1), MARK(U42(U61(z0, z1, z2)))) MARK(U41(U42(U62(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U62(mark(z0), z1)), x1), MARK(U42(U62(z0, z1)))) MARK(U41(U42(isNat(z0)), x1)) -> c38(A__U41(a__U42(a__isNat(z0)), x1), MARK(U42(isNat(z0)))) MARK(U41(U42(length(z0)), x1)) -> c38(A__U41(a__U42(a__length(mark(z0))), x1), MARK(U42(length(z0)))) MARK(U41(U42(cons(z0, z1)), x1)) -> c38(A__U41(a__U42(cons(mark(z0), z1)), x1), MARK(U42(cons(z0, z1)))) MARK(U41(U42(0), x1)) -> c38(A__U41(a__U42(0), x1), MARK(U42(0))) MARK(U41(U42(tt), x1)) -> c38(A__U41(a__U42(tt), x1), MARK(U42(tt))) MARK(U41(U42(s(z0)), x1)) -> c38(A__U41(a__U42(s(mark(z0))), x1), MARK(U42(s(z0)))) MARK(U41(U42(nil), x1)) -> c38(A__U41(a__U42(nil), x1), MARK(U42(nil))) MARK(U41(U42(x0), x1)) -> c38(MARK(U42(x0))) MARK(U41(U51(U11(z0), x1), x2)) -> c38(A__U41(a__U51(a__U11(mark(z0)), x1), x2), MARK(U51(U11(z0), x1))) MARK(U41(U51(U21(z0), x1), x2)) -> c38(A__U41(a__U51(a__U21(mark(z0)), x1), x2), MARK(U51(U21(z0), x1))) MARK(U41(U51(U31(z0), x1), x2)) -> c38(A__U41(a__U51(a__U31(mark(z0)), x1), x2), MARK(U51(U31(z0), x1))) MARK(U41(U51(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U41(mark(z0), z1), x1), x2), MARK(U51(U41(z0, z1), x1))) MARK(U41(U51(U42(z0), x1), x2)) -> c38(A__U41(a__U51(a__U42(mark(z0)), x1), x2), MARK(U51(U42(z0), x1))) MARK(U41(U51(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U51(mark(z0), z1), x1), x2), MARK(U51(U51(z0, z1), x1))) MARK(U41(U51(U52(z0), x1), x2)) -> c38(A__U41(a__U51(a__U52(mark(z0)), x1), x2), MARK(U51(U52(z0), x1))) MARK(U41(U51(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U51(a__U61(mark(z0), z1, z2), x1), x2), MARK(U51(U61(z0, z1, z2), x1))) MARK(U41(U51(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U62(mark(z0), z1), x1), x2), MARK(U51(U62(z0, z1), x1))) MARK(U41(U51(length(z0), x1), x2)) -> c38(A__U41(a__U51(a__length(mark(z0)), x1), x2), MARK(U51(length(z0), x1))) MARK(U41(U51(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U51(cons(mark(z0), z1), x1), x2), MARK(U51(cons(z0, z1), x1))) MARK(U41(U51(s(z0), x1), x2)) -> c38(A__U41(a__U51(s(mark(z0)), x1), x2), MARK(U51(s(z0), x1))) MARK(U41(U51(x0, z1), x2)) -> c38(MARK(U51(x0, z1))) MARK(U41(U51(0, x1), x2)) -> c38(A__U41(a__U51(0, x1), x2)) MARK(U41(U51(nil, x1), x2)) -> c38(A__U41(a__U51(nil, x1), x2)) MARK(U41(U51(zeros, x1), x2)) -> c3(A__U41(a__U51(a__zeros, x1), x2)) MARK(U41(U51(zeros, x1), x2)) -> c3(MARK(U51(zeros, x1))) MARK(U41(U51(isNatIList(z0), x1), x2)) -> c3(A__U41(a__U51(a__isNatIList(z0), x1), x2)) MARK(U41(U51(isNatIList(z0), x1), x2)) -> c3(MARK(U51(isNatIList(z0), x1))) MARK(U41(U51(isNatList(z0), x1), x2)) -> c3(A__U41(a__U51(a__isNatList(z0), x1), x2)) MARK(U41(U51(isNatList(z0), x1), x2)) -> c3(MARK(U51(isNatList(z0), x1))) MARK(U41(U51(isNat(z0), x1), x2)) -> c3(A__U41(a__U51(a__isNat(z0), x1), x2)) MARK(U41(U51(isNat(z0), x1), x2)) -> c3(MARK(U51(isNat(z0), x1))) MARK(U41(U51(tt, x1), x2)) -> c3(A__U41(a__U51(tt, x1), x2)) MARK(U41(U51(tt, x1), x2)) -> c3(MARK(U51(tt, x1))) MARK(U41(U52(zeros), x1)) -> c38(A__U41(a__U52(a__zeros), x1), MARK(U52(zeros))) MARK(U41(U52(U11(z0)), x1)) -> c38(A__U41(a__U52(a__U11(mark(z0))), x1), MARK(U52(U11(z0)))) MARK(U41(U52(U21(z0)), x1)) -> c38(A__U41(a__U52(a__U21(mark(z0))), x1), MARK(U52(U21(z0)))) MARK(U41(U52(U31(z0)), x1)) -> c38(A__U41(a__U52(a__U31(mark(z0))), x1), MARK(U52(U31(z0)))) MARK(U41(U52(U41(z0, z1)), x1)) -> c38(A__U41(a__U52(a__U41(mark(z0), z1)), x1), MARK(U52(U41(z0, z1)))) MARK(U41(U52(U42(z0)), x1)) -> c38(A__U41(a__U52(a__U42(mark(z0))), x1), MARK(U52(U42(z0)))) MARK(U41(U52(isNatIList(z0)), x1)) -> c38(A__U41(a__U52(a__isNatIList(z0)), x1), MARK(U52(isNatIList(z0)))) MARK(U41(U52(U51(z0, z1)), x1)) -> c38(A__U41(a__U52(a__U51(mark(z0), z1)), x1), MARK(U52(U51(z0, z1)))) MARK(U41(U52(U52(z0)), x1)) -> c38(A__U41(a__U52(a__U52(mark(z0))), x1), MARK(U52(U52(z0)))) MARK(U41(U52(isNatList(z0)), x1)) -> c38(A__U41(a__U52(a__isNatList(z0)), x1), MARK(U52(isNatList(z0)))) MARK(U41(U52(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U52(a__U61(mark(z0), z1, z2)), x1), MARK(U52(U61(z0, z1, z2)))) MARK(U41(U52(U62(z0, z1)), x1)) -> c38(A__U41(a__U52(a__U62(mark(z0), z1)), x1), MARK(U52(U62(z0, z1)))) MARK(U41(U52(isNat(z0)), x1)) -> c38(A__U41(a__U52(a__isNat(z0)), x1), MARK(U52(isNat(z0)))) MARK(U41(U52(length(z0)), x1)) -> c38(A__U41(a__U52(a__length(mark(z0))), x1), MARK(U52(length(z0)))) MARK(U41(U52(cons(z0, z1)), x1)) -> c38(A__U41(a__U52(cons(mark(z0), z1)), x1), MARK(U52(cons(z0, z1)))) MARK(U41(U52(0), x1)) -> c38(A__U41(a__U52(0), x1), MARK(U52(0))) MARK(U41(U52(tt), x1)) -> c38(A__U41(a__U52(tt), x1), MARK(U52(tt))) MARK(U41(U52(s(z0)), x1)) -> c38(A__U41(a__U52(s(mark(z0))), x1), MARK(U52(s(z0)))) MARK(U41(U52(nil), x1)) -> c38(A__U41(a__U52(nil), x1), MARK(U52(nil))) MARK(U41(U52(x0), x1)) -> c38(MARK(U52(x0))) MARK(U41(U61(zeros, x1, x2), x3)) -> c38(A__U41(a__U61(a__zeros, x1, x2), x3), MARK(U61(zeros, x1, x2))) MARK(U41(U61(U11(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U11(mark(z0)), x1, x2), x3), MARK(U61(U11(z0), x1, x2))) MARK(U41(U61(U21(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U21(mark(z0)), x1, x2), x3), MARK(U61(U21(z0), x1, x2))) MARK(U41(U61(U31(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U31(mark(z0)), x1, x2), x3), MARK(U61(U31(z0), x1, x2))) MARK(U41(U61(U41(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(a__U41(mark(z0), z1), x1, x2), x3), MARK(U61(U41(z0, z1), x1, x2))) MARK(U41(U61(U42(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U42(mark(z0)), x1, x2), x3), MARK(U61(U42(z0), x1, x2))) MARK(U41(U61(isNatIList(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__isNatIList(z0), x1, x2), x3), MARK(U61(isNatIList(z0), x1, x2))) MARK(U41(U61(U51(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(a__U51(mark(z0), z1), x1, x2), x3), MARK(U61(U51(z0, z1), x1, x2))) MARK(U41(U61(U52(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U52(mark(z0)), x1, x2), x3), MARK(U61(U52(z0), x1, x2))) MARK(U41(U61(isNatList(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__isNatList(z0), x1, x2), x3), MARK(U61(isNatList(z0), x1, x2))) MARK(U41(U61(U61(z0, z1, z2), x1, x2), x3)) -> c38(A__U41(a__U61(a__U61(mark(z0), z1, z2), x1, x2), x3), MARK(U61(U61(z0, z1, z2), x1, x2))) MARK(U41(U61(U62(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(a__U62(mark(z0), z1), x1, x2), x3), MARK(U61(U62(z0, z1), x1, x2))) MARK(U41(U61(isNat(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__isNat(z0), x1, x2), x3), MARK(U61(isNat(z0), x1, x2))) MARK(U41(U61(length(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__length(mark(z0)), x1, x2), x3), MARK(U61(length(z0), x1, x2))) MARK(U41(U61(cons(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(cons(mark(z0), z1), x1, x2), x3), MARK(U61(cons(z0, z1), x1, x2))) MARK(U41(U61(tt, x1, x2), x3)) -> c38(A__U41(a__U61(tt, x1, x2), x3), MARK(U61(tt, x1, x2))) MARK(U41(U61(s(z0), x1, x2), x3)) -> c38(A__U41(a__U61(s(mark(z0)), x1, x2), x3), MARK(U61(s(z0), x1, x2))) MARK(U41(U61(x0, z1, z2), x3)) -> c38(MARK(U61(x0, z1, z2))) MARK(U41(U61(0, x1, x2), x3)) -> c38(A__U41(a__U61(0, x1, x2), x3)) MARK(U41(U61(nil, x1, x2), x3)) -> c38(A__U41(a__U61(nil, x1, x2), x3)) MARK(U41(U62(zeros, x1), x2)) -> c38(A__U41(a__U62(a__zeros, x1), x2), MARK(U62(zeros, x1))) MARK(U41(U62(U11(z0), x1), x2)) -> c38(A__U41(a__U62(a__U11(mark(z0)), x1), x2), MARK(U62(U11(z0), x1))) MARK(U41(U62(U21(z0), x1), x2)) -> c38(A__U41(a__U62(a__U21(mark(z0)), x1), x2), MARK(U62(U21(z0), x1))) MARK(U41(U62(U31(z0), x1), x2)) -> c38(A__U41(a__U62(a__U31(mark(z0)), x1), x2), MARK(U62(U31(z0), x1))) MARK(U41(U62(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U62(a__U41(mark(z0), z1), x1), x2), MARK(U62(U41(z0, z1), x1))) MARK(U41(U62(U42(z0), x1), x2)) -> c38(A__U41(a__U62(a__U42(mark(z0)), x1), x2), MARK(U62(U42(z0), x1))) MARK(U41(U62(isNatIList(z0), x1), x2)) -> c38(A__U41(a__U62(a__isNatIList(z0), x1), x2), MARK(U62(isNatIList(z0), x1))) MARK(U41(U62(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U62(a__U51(mark(z0), z1), x1), x2), MARK(U62(U51(z0, z1), x1))) MARK(U41(U62(U52(z0), x1), x2)) -> c38(A__U41(a__U62(a__U52(mark(z0)), x1), x2), MARK(U62(U52(z0), x1))) MARK(U41(U62(isNatList(z0), x1), x2)) -> c38(A__U41(a__U62(a__isNatList(z0), x1), x2), MARK(U62(isNatList(z0), x1))) MARK(U41(U62(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U62(a__U61(mark(z0), z1, z2), x1), x2), MARK(U62(U61(z0, z1, z2), x1))) MARK(U41(U62(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U62(a__U62(mark(z0), z1), x1), x2), MARK(U62(U62(z0, z1), x1))) MARK(U41(U62(isNat(z0), x1), x2)) -> c38(A__U41(a__U62(a__isNat(z0), x1), x2), MARK(U62(isNat(z0), x1))) MARK(U41(U62(length(z0), x1), x2)) -> c38(A__U41(a__U62(a__length(mark(z0)), x1), x2), MARK(U62(length(z0), x1))) MARK(U41(U62(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U62(cons(mark(z0), z1), x1), x2), MARK(U62(cons(z0, z1), x1))) MARK(U41(U62(tt, x1), x2)) -> c38(A__U41(a__U62(tt, x1), x2), MARK(U62(tt, x1))) MARK(U41(U62(s(z0), x1), x2)) -> c38(A__U41(a__U62(s(mark(z0)), x1), x2), MARK(U62(s(z0), x1))) MARK(U41(U62(x0, z1), x2)) -> c38(MARK(U62(x0, z1))) MARK(U41(U62(0, x1), x2)) -> c38(A__U41(a__U62(0, x1), x2)) MARK(U41(U62(nil, x1), x2)) -> c38(A__U41(a__U62(nil, x1), x2)) MARK(U41(length(zeros), x1)) -> c38(A__U41(a__length(a__zeros), x1), MARK(length(zeros))) MARK(U41(length(U11(z0)), x1)) -> c38(A__U41(a__length(a__U11(mark(z0))), x1), MARK(length(U11(z0)))) MARK(U41(length(U21(z0)), x1)) -> c38(A__U41(a__length(a__U21(mark(z0))), x1), MARK(length(U21(z0)))) MARK(U41(length(U31(z0)), x1)) -> c38(A__U41(a__length(a__U31(mark(z0))), x1), MARK(length(U31(z0)))) MARK(U41(length(U41(z0, z1)), x1)) -> c38(A__U41(a__length(a__U41(mark(z0), z1)), x1), MARK(length(U41(z0, z1)))) MARK(U41(length(U42(z0)), x1)) -> c38(A__U41(a__length(a__U42(mark(z0))), x1), MARK(length(U42(z0)))) MARK(U41(length(isNatIList(z0)), x1)) -> c38(A__U41(a__length(a__isNatIList(z0)), x1), MARK(length(isNatIList(z0)))) MARK(U41(length(U51(z0, z1)), x1)) -> c38(A__U41(a__length(a__U51(mark(z0), z1)), x1), MARK(length(U51(z0, z1)))) MARK(U41(length(U52(z0)), x1)) -> c38(A__U41(a__length(a__U52(mark(z0))), x1), MARK(length(U52(z0)))) MARK(U41(length(isNatList(z0)), x1)) -> c38(A__U41(a__length(a__isNatList(z0)), x1), MARK(length(isNatList(z0)))) MARK(U41(length(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__length(a__U61(mark(z0), z1, z2)), x1), MARK(length(U61(z0, z1, z2)))) MARK(U41(length(U62(z0, z1)), x1)) -> c38(A__U41(a__length(a__U62(mark(z0), z1)), x1), MARK(length(U62(z0, z1)))) MARK(U41(length(isNat(z0)), x1)) -> c38(A__U41(a__length(a__isNat(z0)), x1), MARK(length(isNat(z0)))) MARK(U41(length(length(z0)), x1)) -> c38(A__U41(a__length(a__length(mark(z0))), x1), MARK(length(length(z0)))) MARK(U41(length(cons(z0, z1)), x1)) -> c38(A__U41(a__length(cons(mark(z0), z1)), x1), MARK(length(cons(z0, z1)))) MARK(U41(length(s(z0)), x1)) -> c38(A__U41(a__length(s(mark(z0))), x1), MARK(length(s(z0)))) MARK(U41(length(x0), x1)) -> c38(MARK(length(x0))) MARK(U41(length(0), x1)) -> c38(A__U41(a__length(0), x1)) MARK(U41(length(tt), x1)) -> c38(A__U41(a__length(tt), x1)) MARK(U41(length(nil), x1)) -> c38(A__U41(a__length(nil), x1)) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__U31(a__isNatList(z0)), x1)) MARK(U41(isNatIList(zeros), x1)) -> c(A__U41(tt, x1)) MARK(U41(isNatIList(cons(z0, z1)), x1)) -> c(A__U41(a__U41(a__isNat(z0), z1), x1)) K tuples:none Defined Rule Symbols: a__zeros, a__U11_1, a__U21_1, a__U31_1, a__U41_2, a__U42_1, a__U51_2, a__U52_1, a__U61_3, a__U62_2, a__isNat_1, a__isNatIList_1, a__isNatList_1, a__length_1, mark_1 Defined Pair Symbols: MARK_1, A__U41_2, A__U51_2, A__ISNAT_1, A__ISNATILIST_1, A__U61_3, A__U62_2, A__ISNATLIST_1, A__LENGTH_1 Compound Symbols: c40_1, c43_1, c46_1, c48_1, c51_1, c8_1, c12_1, c21_1, c22_1, c24_1, c35_1, c36_1, c37_1, c39_1, c42_1, c16_1, c18_2, c18_1, c26_1, c29_1, c32_1, c38_1, c_1, c41_2, c41_1, c1_1, c44_2, c44_1, c45_2, c45_1, c47_2, c47_1, c16_2, c26_2, c29_2, c32_2, c38_2, c2_1, c3_1 ---------------------------------------- (223) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace MARK(U41(isNatList(z0), x1)) -> c(A__U41(a__isNatList(z0), x1)) by MARK(U41(isNatList(nil), x1)) -> c(A__U41(tt, x1)) MARK(U41(isNatList(cons(z0, z1)), x1)) -> c(A__U41(a__U51(a__isNat(z0), z1), x1)) MARK(U41(isNatList(z0), x1)) -> c(A__U41(isNatList(z0), x1)) ---------------------------------------- (224) Obligation: Complexity Dependency Tuples Problem Rules: a__zeros -> cons(0, zeros) a__zeros -> zeros a__U11(tt) -> tt a__U11(z0) -> U11(z0) a__U21(tt) -> tt a__U21(z0) -> U21(z0) a__U31(tt) -> tt a__U31(z0) -> U31(z0) a__U41(tt, z0) -> a__U42(a__isNatIList(z0)) a__U41(z0, z1) -> U41(z0, z1) a__U42(tt) -> tt a__U42(z0) -> U42(z0) a__U51(tt, z0) -> a__U52(a__isNatList(z0)) a__U51(z0, z1) -> U51(z0, z1) a__U52(tt) -> tt a__U52(z0) -> U52(z0) a__U61(tt, z0, z1) -> a__U62(a__isNat(z1), z0) a__U61(z0, z1, z2) -> U61(z0, z1, z2) a__U62(tt, z0) -> s(a__length(mark(z0))) a__U62(z0, z1) -> U62(z0, z1) a__isNat(0) -> tt a__isNat(length(z0)) -> a__U11(a__isNatList(z0)) a__isNat(s(z0)) -> a__U21(a__isNat(z0)) a__isNat(z0) -> isNat(z0) a__isNatIList(z0) -> a__U31(a__isNatList(z0)) a__isNatIList(zeros) -> tt a__isNatIList(cons(z0, z1)) -> a__U41(a__isNat(z0), z1) a__isNatIList(z0) -> isNatIList(z0) a__isNatList(nil) -> tt a__isNatList(cons(z0, z1)) -> a__U51(a__isNat(z0), z1) a__isNatList(z0) -> isNatList(z0) a__length(nil) -> 0 a__length(cons(z0, z1)) -> a__U61(a__isNatList(z1), z1, z0) a__length(z0) -> length(z0) mark(zeros) -> a__zeros mark(U11(z0)) -> a__U11(mark(z0)) mark(U21(z0)) -> a__U21(mark(z0)) mark(U31(z0)) -> a__U31(mark(z0)) mark(U41(z0, z1)) -> a__U41(mark(z0), z1) mark(U42(z0)) -> a__U42(mark(z0)) mark(isNatIList(z0)) -> a__isNatIList(z0) mark(U51(z0, z1)) -> a__U51(mark(z0), z1) mark(U52(z0)) -> a__U52(mark(z0)) mark(isNatList(z0)) -> a__isNatList(z0) mark(U61(z0, z1, z2)) -> a__U61(mark(z0), z1, z2) mark(U62(z0, z1)) -> a__U62(mark(z0), z1) mark(isNat(z0)) -> a__isNat(z0) mark(length(z0)) -> a__length(mark(z0)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(0) -> 0 mark(tt) -> tt mark(s(z0)) -> s(mark(z0)) mark(nil) -> nil Tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) A__U62(tt, isNatList(cons(z0, z1))) -> c18(A__LENGTH(a__U51(a__isNat(z0), z1)), MARK(isNatList(cons(z0, z1)))) A__U62(tt, isNatList(nil)) -> c18(MARK(isNatList(nil))) A__U62(tt, isNatList(z0)) -> c18(MARK(isNatList(z0))) A__U62(tt, U61(zeros, x1, x2)) -> c18(A__LENGTH(a__U61(a__zeros, x1, x2)), MARK(U61(zeros, x1, x2))) A__U62(tt, U61(U11(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U11(mark(z0)), x1, x2)), MARK(U61(U11(z0), x1, x2))) A__U62(tt, U61(U21(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U21(mark(z0)), x1, x2)), MARK(U61(U21(z0), x1, x2))) A__U62(tt, U61(U31(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U31(mark(z0)), x1, x2)), MARK(U61(U31(z0), x1, x2))) A__U62(tt, U61(U41(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U41(mark(z0), z1), x1, x2)), MARK(U61(U41(z0, z1), x1, x2))) A__U62(tt, U61(U42(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U42(mark(z0)), x1, x2)), MARK(U61(U42(z0), x1, x2))) A__U62(tt, U61(isNatIList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatIList(z0), x1, x2)), MARK(U61(isNatIList(z0), x1, x2))) A__U62(tt, U61(U51(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U51(mark(z0), z1), x1, x2)), MARK(U61(U51(z0, z1), x1, x2))) A__U62(tt, U61(U52(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U52(mark(z0)), x1, x2)), MARK(U61(U52(z0), x1, x2))) A__U62(tt, U61(isNatList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatList(z0), x1, x2)), MARK(U61(isNatList(z0), x1, x2))) A__U62(tt, U61(U61(z0, z1, z2), x1, x2)) -> c18(A__LENGTH(a__U61(a__U61(mark(z0), z1, z2), x1, x2)), MARK(U61(U61(z0, z1, z2), x1, x2))) A__U62(tt, U61(U62(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U62(mark(z0), z1), x1, x2)), MARK(U61(U62(z0, z1), x1, x2))) A__U62(tt, U61(isNat(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNat(z0), x1, x2)), MARK(U61(isNat(z0), x1, x2))) A__U62(tt, U61(length(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__length(mark(z0)), x1, x2)), MARK(U61(length(z0), x1, x2))) A__U62(tt, U61(cons(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(cons(mark(z0), z1), x1, x2)), MARK(U61(cons(z0, z1), x1, x2))) A__U62(tt, U61(tt, x1, x2)) -> c18(A__LENGTH(a__U61(tt, x1, x2)), MARK(U61(tt, x1, x2))) A__U62(tt, U61(s(z0), x1, x2)) -> c18(A__LENGTH(a__U61(s(mark(z0)), x1, x2)), MARK(U61(s(z0), x1, x2))) A__U62(tt, U61(x0, z1, z2)) -> c18(MARK(U61(x0, z1, z2))) A__U62(tt, U61(0, x1, x2)) -> c18(A__LENGTH(a__U61(0, x1, x2))) A__U62(tt, U61(nil, x1, x2)) -> c18(A__LENGTH(a__U61(nil, x1, x2))) A__U62(tt, U62(zeros, x1)) -> c18(A__LENGTH(a__U62(a__zeros, x1)), MARK(U62(zeros, x1))) A__U62(tt, U62(U11(z0), x1)) -> c18(A__LENGTH(a__U62(a__U11(mark(z0)), x1)), MARK(U62(U11(z0), x1))) A__U62(tt, U62(U21(z0), x1)) -> c18(A__LENGTH(a__U62(a__U21(mark(z0)), x1)), MARK(U62(U21(z0), x1))) A__U62(tt, U62(U31(z0), x1)) -> c18(A__LENGTH(a__U62(a__U31(mark(z0)), x1)), MARK(U62(U31(z0), x1))) A__U62(tt, U62(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U41(mark(z0), z1), x1)), MARK(U62(U41(z0, z1), x1))) A__U62(tt, U62(U42(z0), x1)) -> c18(A__LENGTH(a__U62(a__U42(mark(z0)), x1)), MARK(U62(U42(z0), x1))) A__U62(tt, U62(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatIList(z0), x1)), MARK(U62(isNatIList(z0), x1))) A__U62(tt, U62(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U51(mark(z0), z1), x1)), MARK(U62(U51(z0, z1), x1))) A__U62(tt, U62(U52(z0), x1)) -> c18(A__LENGTH(a__U62(a__U52(mark(z0)), x1)), MARK(U62(U52(z0), x1))) A__U62(tt, U62(isNatList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatList(z0), x1)), MARK(U62(isNatList(z0), x1))) A__U62(tt, U62(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U62(a__U61(mark(z0), z1, z2), x1)), MARK(U62(U61(z0, z1, z2), x1))) A__U62(tt, U62(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U62(mark(z0), z1), x1)), MARK(U62(U62(z0, z1), x1))) A__U62(tt, U62(isNat(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNat(z0), x1)), MARK(U62(isNat(z0), x1))) A__U62(tt, U62(length(z0), x1)) -> c18(A__LENGTH(a__U62(a__length(mark(z0)), x1)), MARK(U62(length(z0), x1))) A__U62(tt, U62(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U62(cons(mark(z0), z1), x1)), MARK(U62(cons(z0, z1), x1))) A__U62(tt, U62(tt, x1)) -> c18(A__LENGTH(a__U62(tt, x1)), MARK(U62(tt, x1))) A__U62(tt, U62(s(z0), x1)) -> c18(A__LENGTH(a__U62(s(mark(z0)), x1)), MARK(U62(s(z0), x1))) A__U62(tt, U62(x0, z1)) -> c18(MARK(U62(x0, z1))) A__U62(tt, U62(0, x1)) -> c18(A__LENGTH(a__U62(0, x1))) A__U62(tt, U62(nil, x1)) -> c18(A__LENGTH(a__U62(nil, x1))) A__U62(tt, isNat(length(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(isNat(length(z0)))) A__U62(tt, isNat(s(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(isNat(s(z0)))) A__U62(tt, isNat(0)) -> c18(MARK(isNat(0))) A__U62(tt, isNat(z0)) -> c18(MARK(isNat(z0))) A__U62(tt, length(zeros)) -> c18(A__LENGTH(a__length(a__zeros)), MARK(length(zeros))) A__U62(tt, length(U11(z0))) -> c18(A__LENGTH(a__length(a__U11(mark(z0)))), MARK(length(U11(z0)))) A__U62(tt, length(U21(z0))) -> c18(A__LENGTH(a__length(a__U21(mark(z0)))), MARK(length(U21(z0)))) A__U62(tt, length(U31(z0))) -> c18(A__LENGTH(a__length(a__U31(mark(z0)))), MARK(length(U31(z0)))) A__U62(tt, length(U41(z0, z1))) -> c18(A__LENGTH(a__length(a__U41(mark(z0), z1))), MARK(length(U41(z0, z1)))) A__U62(tt, length(U42(z0))) -> c18(A__LENGTH(a__length(a__U42(mark(z0)))), MARK(length(U42(z0)))) A__U62(tt, length(isNatIList(z0))) -> c18(A__LENGTH(a__length(a__isNatIList(z0))), MARK(length(isNatIList(z0)))) A__U62(tt, length(U51(z0, z1))) -> c18(A__LENGTH(a__length(a__U51(mark(z0), z1))), MARK(length(U51(z0, z1)))) A__U62(tt, length(U52(z0))) -> c18(A__LENGTH(a__length(a__U52(mark(z0)))), MARK(length(U52(z0)))) A__U62(tt, length(isNatList(z0))) -> c18(A__LENGTH(a__length(a__isNatList(z0))), MARK(length(isNatList(z0)))) A__U62(tt, length(U61(z0, z1, z2))) -> c18(A__LENGTH(a__length(a__U61(mark(z0), z1, z2))), MARK(length(U61(z0, z1, z2)))) A__U62(tt, length(U62(z0, z1))) -> c18(A__LENGTH(a__length(a__U62(mark(z0), z1))), MARK(length(U62(z0, z1)))) A__U62(tt, length(isNat(z0))) -> c18(A__LENGTH(a__length(a__isNat(z0))), MARK(length(isNat(z0)))) A__U62(tt, length(length(z0))) -> c18(A__LENGTH(a__length(a__length(mark(z0)))), MARK(length(length(z0)))) A__U62(tt, length(cons(z0, z1))) -> c18(A__LENGTH(a__length(cons(mark(z0), z1))), MARK(length(cons(z0, z1)))) A__U62(tt, length(s(z0))) -> c18(A__LENGTH(a__length(s(mark(z0)))), MARK(length(s(z0)))) A__U62(tt, length(x0)) -> c18(MARK(length(x0))) A__U62(tt, length(0)) -> c18(A__LENGTH(a__length(0))) A__U62(tt, length(tt)) -> c18(A__LENGTH(a__length(tt))) A__U62(tt, length(nil)) -> c18(A__LENGTH(a__length(nil))) A__U62(tt, zeros) -> c18(A__LENGTH(cons(0, zeros))) A__ISNATILIST(cons(length(nil), x1)) -> c26(A__U41(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATILIST(cons(length(cons(z0, z1)), x1)) -> c26(A__U41(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(length(x0), x1)) -> c26(A__ISNAT(length(x0))) A__ISNATILIST(cons(s(0), x1)) -> c26(A__U41(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATILIST(cons(s(length(z0)), x1)) -> c26(A__U41(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATILIST(cons(s(s(z0)), x1)) -> c26(A__U41(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(s(x0), x1)) -> c26(A__ISNAT(s(x0))) A__ISNATLIST(cons(length(nil), x1)) -> c29(A__U51(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATLIST(cons(length(cons(z0, z1)), x1)) -> c29(A__U51(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(length(x0), x1)) -> c29(A__ISNAT(length(x0))) A__ISNATLIST(cons(s(0), x1)) -> c29(A__U51(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATLIST(cons(s(length(z0)), x1)) -> c29(A__U51(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATLIST(cons(s(s(z0)), x1)) -> c29(A__U51(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(s(x0), x1)) -> c29(A__ISNAT(s(x0))) A__LENGTH(cons(x0, cons(0, x2))) -> c32(A__U61(a__U51(tt, x2), cons(0, x2), x0), A__ISNATLIST(cons(0, x2))) A__LENGTH(cons(x0, cons(length(z0), x2))) -> c32(A__U61(a__U51(a__U11(a__isNatList(z0)), x2), cons(length(z0), x2), x0), A__ISNATLIST(cons(length(z0), x2))) A__LENGTH(cons(x0, cons(s(z0), x2))) -> c32(A__U61(a__U51(a__U21(a__isNat(z0)), x2), cons(s(z0), x2), x0), A__ISNATLIST(cons(s(z0), x2))) A__LENGTH(cons(x0, cons(z0, x2))) -> c32(A__U61(a__U51(isNat(z0), x2), cons(z0, x2), x0), A__ISNATLIST(cons(z0, x2))) A__LENGTH(cons(x0, cons(x1, z1))) -> c32(A__ISNATLIST(cons(x1, z1))) MARK(U41(U11(zeros), x1)) -> c38(A__U41(a__U11(a__zeros), x1), MARK(U11(zeros))) MARK(U41(U11(U11(z0)), x1)) -> c38(A__U41(a__U11(a__U11(mark(z0))), x1), MARK(U11(U11(z0)))) MARK(U41(U11(U21(z0)), x1)) -> c38(A__U41(a__U11(a__U21(mark(z0))), x1), MARK(U11(U21(z0)))) MARK(U41(U11(U31(z0)), x1)) -> c38(A__U41(a__U11(a__U31(mark(z0))), x1), MARK(U11(U31(z0)))) MARK(U41(U11(U41(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U41(mark(z0), z1)), x1), MARK(U11(U41(z0, z1)))) MARK(U41(U11(U42(z0)), x1)) -> c38(A__U41(a__U11(a__U42(mark(z0))), x1), MARK(U11(U42(z0)))) MARK(U41(U11(isNatIList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatIList(z0)), x1), MARK(U11(isNatIList(z0)))) MARK(U41(U11(U51(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U51(mark(z0), z1)), x1), MARK(U11(U51(z0, z1)))) MARK(U41(U11(U52(z0)), x1)) -> c38(A__U41(a__U11(a__U52(mark(z0))), x1), MARK(U11(U52(z0)))) MARK(U41(U11(isNatList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatList(z0)), x1), MARK(U11(isNatList(z0)))) MARK(U41(U11(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U11(a__U61(mark(z0), z1, z2)), x1), MARK(U11(U61(z0, z1, z2)))) MARK(U41(U11(U62(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U62(mark(z0), z1)), x1), MARK(U11(U62(z0, z1)))) MARK(U41(U11(isNat(z0)), x1)) -> c38(A__U41(a__U11(a__isNat(z0)), x1), MARK(U11(isNat(z0)))) MARK(U41(U11(length(z0)), x1)) -> c38(A__U41(a__U11(a__length(mark(z0))), x1), MARK(U11(length(z0)))) MARK(U41(U11(cons(z0, z1)), x1)) -> c38(A__U41(a__U11(cons(mark(z0), z1)), x1), MARK(U11(cons(z0, z1)))) MARK(U41(U11(0), x1)) -> c38(A__U41(a__U11(0), x1), MARK(U11(0))) MARK(U41(U11(tt), x1)) -> c38(A__U41(a__U11(tt), x1), MARK(U11(tt))) MARK(U41(U11(s(z0)), x1)) -> c38(A__U41(a__U11(s(mark(z0))), x1), MARK(U11(s(z0)))) MARK(U41(U11(nil), x1)) -> c38(A__U41(a__U11(nil), x1), MARK(U11(nil))) MARK(U41(U11(x0), x1)) -> c38(MARK(U11(x0))) MARK(U41(U21(zeros), x1)) -> c38(A__U41(a__U21(a__zeros), x1), MARK(U21(zeros))) MARK(U41(U21(U11(z0)), x1)) -> c38(A__U41(a__U21(a__U11(mark(z0))), x1), MARK(U21(U11(z0)))) MARK(U41(U21(U21(z0)), x1)) -> c38(A__U41(a__U21(a__U21(mark(z0))), x1), MARK(U21(U21(z0)))) MARK(U41(U21(U31(z0)), x1)) -> c38(A__U41(a__U21(a__U31(mark(z0))), x1), MARK(U21(U31(z0)))) MARK(U41(U21(U41(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U41(mark(z0), z1)), x1), MARK(U21(U41(z0, z1)))) MARK(U41(U21(U42(z0)), x1)) -> c38(A__U41(a__U21(a__U42(mark(z0))), x1), MARK(U21(U42(z0)))) MARK(U41(U21(isNatIList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatIList(z0)), x1), MARK(U21(isNatIList(z0)))) MARK(U41(U21(U51(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U51(mark(z0), z1)), x1), MARK(U21(U51(z0, z1)))) MARK(U41(U21(U52(z0)), x1)) -> c38(A__U41(a__U21(a__U52(mark(z0))), x1), MARK(U21(U52(z0)))) MARK(U41(U21(isNatList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatList(z0)), x1), MARK(U21(isNatList(z0)))) MARK(U41(U21(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U21(a__U61(mark(z0), z1, z2)), x1), MARK(U21(U61(z0, z1, z2)))) MARK(U41(U21(U62(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U62(mark(z0), z1)), x1), MARK(U21(U62(z0, z1)))) MARK(U41(U21(isNat(z0)), x1)) -> c38(A__U41(a__U21(a__isNat(z0)), x1), MARK(U21(isNat(z0)))) MARK(U41(U21(length(z0)), x1)) -> c38(A__U41(a__U21(a__length(mark(z0))), x1), MARK(U21(length(z0)))) MARK(U41(U21(cons(z0, z1)), x1)) -> c38(A__U41(a__U21(cons(mark(z0), z1)), x1), MARK(U21(cons(z0, z1)))) MARK(U41(U21(0), x1)) -> c38(A__U41(a__U21(0), x1), MARK(U21(0))) MARK(U41(U21(tt), x1)) -> c38(A__U41(a__U21(tt), x1), MARK(U21(tt))) MARK(U41(U21(s(z0)), x1)) -> c38(A__U41(a__U21(s(mark(z0))), x1), MARK(U21(s(z0)))) MARK(U41(U21(nil), x1)) -> c38(A__U41(a__U21(nil), x1), MARK(U21(nil))) MARK(U41(U21(x0), x1)) -> c38(MARK(U21(x0))) MARK(U41(U31(zeros), x1)) -> c38(A__U41(a__U31(a__zeros), x1), MARK(U31(zeros))) MARK(U41(U31(U11(z0)), x1)) -> c38(A__U41(a__U31(a__U11(mark(z0))), x1), MARK(U31(U11(z0)))) MARK(U41(U31(U21(z0)), x1)) -> c38(A__U41(a__U31(a__U21(mark(z0))), x1), MARK(U31(U21(z0)))) MARK(U41(U31(U31(z0)), x1)) -> c38(A__U41(a__U31(a__U31(mark(z0))), x1), MARK(U31(U31(z0)))) MARK(U41(U31(U41(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U41(mark(z0), z1)), x1), MARK(U31(U41(z0, z1)))) MARK(U41(U31(U42(z0)), x1)) -> c38(A__U41(a__U31(a__U42(mark(z0))), x1), MARK(U31(U42(z0)))) MARK(U41(U31(isNatIList(z0)), x1)) -> c38(A__U41(a__U31(a__isNatIList(z0)), x1), MARK(U31(isNatIList(z0)))) MARK(U41(U31(U51(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U51(mark(z0), z1)), x1), MARK(U31(U51(z0, z1)))) MARK(U41(U31(U52(z0)), x1)) -> c38(A__U41(a__U31(a__U52(mark(z0))), x1), MARK(U31(U52(z0)))) MARK(U41(U31(isNatList(z0)), x1)) -> c38(A__U41(a__U31(a__isNatList(z0)), x1), MARK(U31(isNatList(z0)))) MARK(U41(U31(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U31(a__U61(mark(z0), z1, z2)), x1), MARK(U31(U61(z0, z1, z2)))) MARK(U41(U31(U62(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U62(mark(z0), z1)), x1), MARK(U31(U62(z0, z1)))) MARK(U41(U31(isNat(z0)), x1)) -> c38(A__U41(a__U31(a__isNat(z0)), x1), MARK(U31(isNat(z0)))) MARK(U41(U31(length(z0)), x1)) -> c38(A__U41(a__U31(a__length(mark(z0))), x1), MARK(U31(length(z0)))) MARK(U41(U31(cons(z0, z1)), x1)) -> c38(A__U41(a__U31(cons(mark(z0), z1)), x1), MARK(U31(cons(z0, z1)))) MARK(U41(U31(0), x1)) -> c38(A__U41(a__U31(0), x1), MARK(U31(0))) MARK(U41(U31(tt), x1)) -> c38(A__U41(a__U31(tt), x1), MARK(U31(tt))) MARK(U41(U31(s(z0)), x1)) -> c38(A__U41(a__U31(s(mark(z0))), x1), MARK(U31(s(z0)))) MARK(U41(U31(nil), x1)) -> c38(A__U41(a__U31(nil), x1), MARK(U31(nil))) MARK(U41(U31(x0), x1)) -> c38(MARK(U31(x0))) MARK(U41(U41(U11(z0), x1), x2)) -> c38(A__U41(a__U41(a__U11(mark(z0)), x1), x2), MARK(U41(U11(z0), x1))) MARK(U41(U41(U21(z0), x1), x2)) -> c38(A__U41(a__U41(a__U21(mark(z0)), x1), x2), MARK(U41(U21(z0), x1))) MARK(U41(U41(U31(z0), x1), x2)) -> c38(A__U41(a__U41(a__U31(mark(z0)), x1), x2), MARK(U41(U31(z0), x1))) MARK(U41(U41(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U41(mark(z0), z1), x1), x2), MARK(U41(U41(z0, z1), x1))) MARK(U41(U41(U42(z0), x1), x2)) -> c38(A__U41(a__U41(a__U42(mark(z0)), x1), x2), MARK(U41(U42(z0), x1))) MARK(U41(U41(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U51(mark(z0), z1), x1), x2), MARK(U41(U51(z0, z1), x1))) MARK(U41(U41(U52(z0), x1), x2)) -> c38(A__U41(a__U41(a__U52(mark(z0)), x1), x2), MARK(U41(U52(z0), x1))) MARK(U41(U41(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U41(a__U61(mark(z0), z1, z2), x1), x2), MARK(U41(U61(z0, z1, z2), x1))) MARK(U41(U41(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U62(mark(z0), z1), x1), x2), MARK(U41(U62(z0, z1), x1))) MARK(U41(U41(length(z0), x1), x2)) -> c38(A__U41(a__U41(a__length(mark(z0)), x1), x2), MARK(U41(length(z0), x1))) MARK(U41(U41(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U41(cons(mark(z0), z1), x1), x2), MARK(U41(cons(z0, z1), x1))) MARK(U41(U41(s(z0), x1), x2)) -> c38(A__U41(a__U41(s(mark(z0)), x1), x2), MARK(U41(s(z0), x1))) MARK(U41(U41(x0, z1), x2)) -> c38(MARK(U41(x0, z1))) MARK(U41(U41(0, x1), x2)) -> c38(A__U41(a__U41(0, x1), x2)) MARK(U41(U41(nil, x1), x2)) -> c38(A__U41(a__U41(nil, x1), x2)) MARK(U41(U41(zeros, x1), x2)) -> c2(A__U41(a__U41(a__zeros, x1), x2)) MARK(U41(U41(isNatIList(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNatIList(z0), x1), x2)) MARK(U41(U41(isNatIList(z0), x1), x2)) -> c2(MARK(U41(isNatIList(z0), x1))) MARK(U41(U41(isNatList(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNatList(z0), x1), x2)) MARK(U41(U41(isNatList(z0), x1), x2)) -> c2(MARK(U41(isNatList(z0), x1))) MARK(U41(U41(isNat(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNat(z0), x1), x2)) MARK(U41(U41(isNat(z0), x1), x2)) -> c2(MARK(U41(isNat(z0), x1))) MARK(U41(U41(tt, x1), x2)) -> c2(A__U41(a__U41(tt, x1), x2)) MARK(U41(U41(tt, x1), x2)) -> c2(MARK(U41(tt, x1))) MARK(U41(U42(zeros), x1)) -> c38(A__U41(a__U42(a__zeros), x1), MARK(U42(zeros))) MARK(U41(U42(U11(z0)), x1)) -> c38(A__U41(a__U42(a__U11(mark(z0))), x1), MARK(U42(U11(z0)))) MARK(U41(U42(U21(z0)), x1)) -> c38(A__U41(a__U42(a__U21(mark(z0))), x1), MARK(U42(U21(z0)))) MARK(U41(U42(U31(z0)), x1)) -> c38(A__U41(a__U42(a__U31(mark(z0))), x1), MARK(U42(U31(z0)))) MARK(U41(U42(U41(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U41(mark(z0), z1)), x1), MARK(U42(U41(z0, z1)))) MARK(U41(U42(U42(z0)), x1)) -> c38(A__U41(a__U42(a__U42(mark(z0))), x1), MARK(U42(U42(z0)))) MARK(U41(U42(isNatIList(z0)), x1)) -> c38(A__U41(a__U42(a__isNatIList(z0)), x1), MARK(U42(isNatIList(z0)))) MARK(U41(U42(U51(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U51(mark(z0), z1)), x1), MARK(U42(U51(z0, z1)))) MARK(U41(U42(U52(z0)), x1)) -> c38(A__U41(a__U42(a__U52(mark(z0))), x1), MARK(U42(U52(z0)))) MARK(U41(U42(isNatList(z0)), x1)) -> c38(A__U41(a__U42(a__isNatList(z0)), x1), MARK(U42(isNatList(z0)))) MARK(U41(U42(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U42(a__U61(mark(z0), z1, z2)), x1), MARK(U42(U61(z0, z1, z2)))) MARK(U41(U42(U62(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U62(mark(z0), z1)), x1), MARK(U42(U62(z0, z1)))) MARK(U41(U42(isNat(z0)), x1)) -> c38(A__U41(a__U42(a__isNat(z0)), x1), MARK(U42(isNat(z0)))) MARK(U41(U42(length(z0)), x1)) -> c38(A__U41(a__U42(a__length(mark(z0))), x1), MARK(U42(length(z0)))) MARK(U41(U42(cons(z0, z1)), x1)) -> c38(A__U41(a__U42(cons(mark(z0), z1)), x1), MARK(U42(cons(z0, z1)))) MARK(U41(U42(0), x1)) -> c38(A__U41(a__U42(0), x1), MARK(U42(0))) MARK(U41(U42(tt), x1)) -> c38(A__U41(a__U42(tt), x1), MARK(U42(tt))) MARK(U41(U42(s(z0)), x1)) -> c38(A__U41(a__U42(s(mark(z0))), x1), MARK(U42(s(z0)))) MARK(U41(U42(nil), x1)) -> c38(A__U41(a__U42(nil), x1), MARK(U42(nil))) MARK(U41(U42(x0), x1)) -> c38(MARK(U42(x0))) MARK(U41(U51(U11(z0), x1), x2)) -> c38(A__U41(a__U51(a__U11(mark(z0)), x1), x2), MARK(U51(U11(z0), x1))) MARK(U41(U51(U21(z0), x1), x2)) -> c38(A__U41(a__U51(a__U21(mark(z0)), x1), x2), MARK(U51(U21(z0), x1))) MARK(U41(U51(U31(z0), x1), x2)) -> c38(A__U41(a__U51(a__U31(mark(z0)), x1), x2), MARK(U51(U31(z0), x1))) MARK(U41(U51(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U41(mark(z0), z1), x1), x2), MARK(U51(U41(z0, z1), x1))) MARK(U41(U51(U42(z0), x1), x2)) -> c38(A__U41(a__U51(a__U42(mark(z0)), x1), x2), MARK(U51(U42(z0), x1))) MARK(U41(U51(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U51(mark(z0), z1), x1), x2), MARK(U51(U51(z0, z1), x1))) MARK(U41(U51(U52(z0), x1), x2)) -> c38(A__U41(a__U51(a__U52(mark(z0)), x1), x2), MARK(U51(U52(z0), x1))) MARK(U41(U51(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U51(a__U61(mark(z0), z1, z2), x1), x2), MARK(U51(U61(z0, z1, z2), x1))) MARK(U41(U51(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U62(mark(z0), z1), x1), x2), MARK(U51(U62(z0, z1), x1))) MARK(U41(U51(length(z0), x1), x2)) -> c38(A__U41(a__U51(a__length(mark(z0)), x1), x2), MARK(U51(length(z0), x1))) MARK(U41(U51(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U51(cons(mark(z0), z1), x1), x2), MARK(U51(cons(z0, z1), x1))) MARK(U41(U51(s(z0), x1), x2)) -> c38(A__U41(a__U51(s(mark(z0)), x1), x2), MARK(U51(s(z0), x1))) MARK(U41(U51(x0, z1), x2)) -> c38(MARK(U51(x0, z1))) MARK(U41(U51(0, x1), x2)) -> c38(A__U41(a__U51(0, x1), x2)) MARK(U41(U51(nil, x1), x2)) -> c38(A__U41(a__U51(nil, x1), x2)) MARK(U41(U51(zeros, x1), x2)) -> c3(A__U41(a__U51(a__zeros, x1), x2)) MARK(U41(U51(zeros, x1), x2)) -> c3(MARK(U51(zeros, x1))) MARK(U41(U51(isNatIList(z0), x1), x2)) -> c3(A__U41(a__U51(a__isNatIList(z0), x1), x2)) MARK(U41(U51(isNatIList(z0), x1), x2)) -> c3(MARK(U51(isNatIList(z0), x1))) MARK(U41(U51(isNatList(z0), x1), x2)) -> c3(A__U41(a__U51(a__isNatList(z0), x1), x2)) MARK(U41(U51(isNatList(z0), x1), x2)) -> c3(MARK(U51(isNatList(z0), x1))) MARK(U41(U51(isNat(z0), x1), x2)) -> c3(A__U41(a__U51(a__isNat(z0), x1), x2)) MARK(U41(U51(isNat(z0), x1), x2)) -> c3(MARK(U51(isNat(z0), x1))) MARK(U41(U51(tt, x1), x2)) -> c3(A__U41(a__U51(tt, x1), x2)) MARK(U41(U51(tt, x1), x2)) -> c3(MARK(U51(tt, x1))) MARK(U41(U52(zeros), x1)) -> c38(A__U41(a__U52(a__zeros), x1), MARK(U52(zeros))) MARK(U41(U52(U11(z0)), x1)) -> c38(A__U41(a__U52(a__U11(mark(z0))), x1), MARK(U52(U11(z0)))) MARK(U41(U52(U21(z0)), x1)) -> c38(A__U41(a__U52(a__U21(mark(z0))), x1), MARK(U52(U21(z0)))) MARK(U41(U52(U31(z0)), x1)) -> c38(A__U41(a__U52(a__U31(mark(z0))), x1), MARK(U52(U31(z0)))) MARK(U41(U52(U41(z0, z1)), x1)) -> c38(A__U41(a__U52(a__U41(mark(z0), z1)), x1), MARK(U52(U41(z0, z1)))) MARK(U41(U52(U42(z0)), x1)) -> c38(A__U41(a__U52(a__U42(mark(z0))), x1), MARK(U52(U42(z0)))) MARK(U41(U52(isNatIList(z0)), x1)) -> c38(A__U41(a__U52(a__isNatIList(z0)), x1), MARK(U52(isNatIList(z0)))) MARK(U41(U52(U51(z0, z1)), x1)) -> c38(A__U41(a__U52(a__U51(mark(z0), z1)), x1), MARK(U52(U51(z0, z1)))) MARK(U41(U52(U52(z0)), x1)) -> c38(A__U41(a__U52(a__U52(mark(z0))), x1), MARK(U52(U52(z0)))) MARK(U41(U52(isNatList(z0)), x1)) -> c38(A__U41(a__U52(a__isNatList(z0)), x1), MARK(U52(isNatList(z0)))) MARK(U41(U52(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U52(a__U61(mark(z0), z1, z2)), x1), MARK(U52(U61(z0, z1, z2)))) MARK(U41(U52(U62(z0, z1)), x1)) -> c38(A__U41(a__U52(a__U62(mark(z0), z1)), x1), MARK(U52(U62(z0, z1)))) MARK(U41(U52(isNat(z0)), x1)) -> c38(A__U41(a__U52(a__isNat(z0)), x1), MARK(U52(isNat(z0)))) MARK(U41(U52(length(z0)), x1)) -> c38(A__U41(a__U52(a__length(mark(z0))), x1), MARK(U52(length(z0)))) MARK(U41(U52(cons(z0, z1)), x1)) -> c38(A__U41(a__U52(cons(mark(z0), z1)), x1), MARK(U52(cons(z0, z1)))) MARK(U41(U52(0), x1)) -> c38(A__U41(a__U52(0), x1), MARK(U52(0))) MARK(U41(U52(tt), x1)) -> c38(A__U41(a__U52(tt), x1), MARK(U52(tt))) MARK(U41(U52(s(z0)), x1)) -> c38(A__U41(a__U52(s(mark(z0))), x1), MARK(U52(s(z0)))) MARK(U41(U52(nil), x1)) -> c38(A__U41(a__U52(nil), x1), MARK(U52(nil))) MARK(U41(U52(x0), x1)) -> c38(MARK(U52(x0))) MARK(U41(U61(zeros, x1, x2), x3)) -> c38(A__U41(a__U61(a__zeros, x1, x2), x3), MARK(U61(zeros, x1, x2))) MARK(U41(U61(U11(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U11(mark(z0)), x1, x2), x3), MARK(U61(U11(z0), x1, x2))) MARK(U41(U61(U21(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U21(mark(z0)), x1, x2), x3), MARK(U61(U21(z0), x1, x2))) MARK(U41(U61(U31(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U31(mark(z0)), x1, x2), x3), MARK(U61(U31(z0), x1, x2))) MARK(U41(U61(U41(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(a__U41(mark(z0), z1), x1, x2), x3), MARK(U61(U41(z0, z1), x1, x2))) MARK(U41(U61(U42(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U42(mark(z0)), x1, x2), x3), MARK(U61(U42(z0), x1, x2))) MARK(U41(U61(isNatIList(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__isNatIList(z0), x1, x2), x3), MARK(U61(isNatIList(z0), x1, x2))) MARK(U41(U61(U51(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(a__U51(mark(z0), z1), x1, x2), x3), MARK(U61(U51(z0, z1), x1, x2))) MARK(U41(U61(U52(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U52(mark(z0)), x1, x2), x3), MARK(U61(U52(z0), x1, x2))) MARK(U41(U61(isNatList(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__isNatList(z0), x1, x2), x3), MARK(U61(isNatList(z0), x1, x2))) MARK(U41(U61(U61(z0, z1, z2), x1, x2), x3)) -> c38(A__U41(a__U61(a__U61(mark(z0), z1, z2), x1, x2), x3), MARK(U61(U61(z0, z1, z2), x1, x2))) MARK(U41(U61(U62(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(a__U62(mark(z0), z1), x1, x2), x3), MARK(U61(U62(z0, z1), x1, x2))) MARK(U41(U61(isNat(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__isNat(z0), x1, x2), x3), MARK(U61(isNat(z0), x1, x2))) MARK(U41(U61(length(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__length(mark(z0)), x1, x2), x3), MARK(U61(length(z0), x1, x2))) MARK(U41(U61(cons(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(cons(mark(z0), z1), x1, x2), x3), MARK(U61(cons(z0, z1), x1, x2))) MARK(U41(U61(tt, x1, x2), x3)) -> c38(A__U41(a__U61(tt, x1, x2), x3), MARK(U61(tt, x1, x2))) MARK(U41(U61(s(z0), x1, x2), x3)) -> c38(A__U41(a__U61(s(mark(z0)), x1, x2), x3), MARK(U61(s(z0), x1, x2))) MARK(U41(U61(x0, z1, z2), x3)) -> c38(MARK(U61(x0, z1, z2))) MARK(U41(U61(0, x1, x2), x3)) -> c38(A__U41(a__U61(0, x1, x2), x3)) MARK(U41(U61(nil, x1, x2), x3)) -> c38(A__U41(a__U61(nil, x1, x2), x3)) MARK(U41(U62(zeros, x1), x2)) -> c38(A__U41(a__U62(a__zeros, x1), x2), MARK(U62(zeros, x1))) MARK(U41(U62(U11(z0), x1), x2)) -> c38(A__U41(a__U62(a__U11(mark(z0)), x1), x2), MARK(U62(U11(z0), x1))) MARK(U41(U62(U21(z0), x1), x2)) -> c38(A__U41(a__U62(a__U21(mark(z0)), x1), x2), MARK(U62(U21(z0), x1))) MARK(U41(U62(U31(z0), x1), x2)) -> c38(A__U41(a__U62(a__U31(mark(z0)), x1), x2), MARK(U62(U31(z0), x1))) MARK(U41(U62(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U62(a__U41(mark(z0), z1), x1), x2), MARK(U62(U41(z0, z1), x1))) MARK(U41(U62(U42(z0), x1), x2)) -> c38(A__U41(a__U62(a__U42(mark(z0)), x1), x2), MARK(U62(U42(z0), x1))) MARK(U41(U62(isNatIList(z0), x1), x2)) -> c38(A__U41(a__U62(a__isNatIList(z0), x1), x2), MARK(U62(isNatIList(z0), x1))) MARK(U41(U62(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U62(a__U51(mark(z0), z1), x1), x2), MARK(U62(U51(z0, z1), x1))) MARK(U41(U62(U52(z0), x1), x2)) -> c38(A__U41(a__U62(a__U52(mark(z0)), x1), x2), MARK(U62(U52(z0), x1))) MARK(U41(U62(isNatList(z0), x1), x2)) -> c38(A__U41(a__U62(a__isNatList(z0), x1), x2), MARK(U62(isNatList(z0), x1))) MARK(U41(U62(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U62(a__U61(mark(z0), z1, z2), x1), x2), MARK(U62(U61(z0, z1, z2), x1))) MARK(U41(U62(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U62(a__U62(mark(z0), z1), x1), x2), MARK(U62(U62(z0, z1), x1))) MARK(U41(U62(isNat(z0), x1), x2)) -> c38(A__U41(a__U62(a__isNat(z0), x1), x2), MARK(U62(isNat(z0), x1))) MARK(U41(U62(length(z0), x1), x2)) -> c38(A__U41(a__U62(a__length(mark(z0)), x1), x2), MARK(U62(length(z0), x1))) MARK(U41(U62(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U62(cons(mark(z0), z1), x1), x2), MARK(U62(cons(z0, z1), x1))) MARK(U41(U62(tt, x1), x2)) -> c38(A__U41(a__U62(tt, x1), x2), MARK(U62(tt, x1))) MARK(U41(U62(s(z0), x1), x2)) -> c38(A__U41(a__U62(s(mark(z0)), x1), x2), MARK(U62(s(z0), x1))) MARK(U41(U62(x0, z1), x2)) -> c38(MARK(U62(x0, z1))) MARK(U41(U62(0, x1), x2)) -> c38(A__U41(a__U62(0, x1), x2)) MARK(U41(U62(nil, x1), x2)) -> c38(A__U41(a__U62(nil, x1), x2)) MARK(U41(length(zeros), x1)) -> c38(A__U41(a__length(a__zeros), x1), MARK(length(zeros))) MARK(U41(length(U11(z0)), x1)) -> c38(A__U41(a__length(a__U11(mark(z0))), x1), MARK(length(U11(z0)))) MARK(U41(length(U21(z0)), x1)) -> c38(A__U41(a__length(a__U21(mark(z0))), x1), MARK(length(U21(z0)))) MARK(U41(length(U31(z0)), x1)) -> c38(A__U41(a__length(a__U31(mark(z0))), x1), MARK(length(U31(z0)))) MARK(U41(length(U41(z0, z1)), x1)) -> c38(A__U41(a__length(a__U41(mark(z0), z1)), x1), MARK(length(U41(z0, z1)))) MARK(U41(length(U42(z0)), x1)) -> c38(A__U41(a__length(a__U42(mark(z0))), x1), MARK(length(U42(z0)))) MARK(U41(length(isNatIList(z0)), x1)) -> c38(A__U41(a__length(a__isNatIList(z0)), x1), MARK(length(isNatIList(z0)))) MARK(U41(length(U51(z0, z1)), x1)) -> c38(A__U41(a__length(a__U51(mark(z0), z1)), x1), MARK(length(U51(z0, z1)))) MARK(U41(length(U52(z0)), x1)) -> c38(A__U41(a__length(a__U52(mark(z0))), x1), MARK(length(U52(z0)))) MARK(U41(length(isNatList(z0)), x1)) -> c38(A__U41(a__length(a__isNatList(z0)), x1), MARK(length(isNatList(z0)))) MARK(U41(length(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__length(a__U61(mark(z0), z1, z2)), x1), MARK(length(U61(z0, z1, z2)))) MARK(U41(length(U62(z0, z1)), x1)) -> c38(A__U41(a__length(a__U62(mark(z0), z1)), x1), MARK(length(U62(z0, z1)))) MARK(U41(length(isNat(z0)), x1)) -> c38(A__U41(a__length(a__isNat(z0)), x1), MARK(length(isNat(z0)))) MARK(U41(length(length(z0)), x1)) -> c38(A__U41(a__length(a__length(mark(z0))), x1), MARK(length(length(z0)))) MARK(U41(length(cons(z0, z1)), x1)) -> c38(A__U41(a__length(cons(mark(z0), z1)), x1), MARK(length(cons(z0, z1)))) MARK(U41(length(s(z0)), x1)) -> c38(A__U41(a__length(s(mark(z0))), x1), MARK(length(s(z0)))) MARK(U41(length(x0), x1)) -> c38(MARK(length(x0))) MARK(U41(length(0), x1)) -> c38(A__U41(a__length(0), x1)) MARK(U41(length(tt), x1)) -> c38(A__U41(a__length(tt), x1)) MARK(U41(length(nil), x1)) -> c38(A__U41(a__length(nil), x1)) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__U31(a__isNatList(z0)), x1)) MARK(U41(isNatIList(zeros), x1)) -> c(A__U41(tt, x1)) MARK(U41(isNatIList(cons(z0, z1)), x1)) -> c(A__U41(a__U41(a__isNat(z0), z1), x1)) MARK(U41(isNatList(nil), x1)) -> c(A__U41(tt, x1)) MARK(U41(isNatList(cons(z0, z1)), x1)) -> c(A__U41(a__U51(a__isNat(z0), z1), x1)) MARK(U41(isNatList(z0), x1)) -> c(A__U41(isNatList(z0), x1)) S tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) A__U62(tt, isNatList(cons(z0, z1))) -> c18(A__LENGTH(a__U51(a__isNat(z0), z1)), MARK(isNatList(cons(z0, z1)))) A__U62(tt, isNatList(nil)) -> c18(MARK(isNatList(nil))) A__U62(tt, isNatList(z0)) -> c18(MARK(isNatList(z0))) A__U62(tt, U61(zeros, x1, x2)) -> c18(A__LENGTH(a__U61(a__zeros, x1, x2)), MARK(U61(zeros, x1, x2))) A__U62(tt, U61(U11(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U11(mark(z0)), x1, x2)), MARK(U61(U11(z0), x1, x2))) A__U62(tt, U61(U21(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U21(mark(z0)), x1, x2)), MARK(U61(U21(z0), x1, x2))) A__U62(tt, U61(U31(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U31(mark(z0)), x1, x2)), MARK(U61(U31(z0), x1, x2))) A__U62(tt, U61(U41(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U41(mark(z0), z1), x1, x2)), MARK(U61(U41(z0, z1), x1, x2))) A__U62(tt, U61(U42(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U42(mark(z0)), x1, x2)), MARK(U61(U42(z0), x1, x2))) A__U62(tt, U61(isNatIList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatIList(z0), x1, x2)), MARK(U61(isNatIList(z0), x1, x2))) A__U62(tt, U61(U51(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U51(mark(z0), z1), x1, x2)), MARK(U61(U51(z0, z1), x1, x2))) A__U62(tt, U61(U52(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U52(mark(z0)), x1, x2)), MARK(U61(U52(z0), x1, x2))) A__U62(tt, U61(isNatList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatList(z0), x1, x2)), MARK(U61(isNatList(z0), x1, x2))) A__U62(tt, U61(U61(z0, z1, z2), x1, x2)) -> c18(A__LENGTH(a__U61(a__U61(mark(z0), z1, z2), x1, x2)), MARK(U61(U61(z0, z1, z2), x1, x2))) A__U62(tt, U61(U62(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U62(mark(z0), z1), x1, x2)), MARK(U61(U62(z0, z1), x1, x2))) A__U62(tt, U61(isNat(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNat(z0), x1, x2)), MARK(U61(isNat(z0), x1, x2))) A__U62(tt, U61(length(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__length(mark(z0)), x1, x2)), MARK(U61(length(z0), x1, x2))) A__U62(tt, U61(cons(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(cons(mark(z0), z1), x1, x2)), MARK(U61(cons(z0, z1), x1, x2))) A__U62(tt, U61(tt, x1, x2)) -> c18(A__LENGTH(a__U61(tt, x1, x2)), MARK(U61(tt, x1, x2))) A__U62(tt, U61(s(z0), x1, x2)) -> c18(A__LENGTH(a__U61(s(mark(z0)), x1, x2)), MARK(U61(s(z0), x1, x2))) A__U62(tt, U61(x0, z1, z2)) -> c18(MARK(U61(x0, z1, z2))) A__U62(tt, U61(0, x1, x2)) -> c18(A__LENGTH(a__U61(0, x1, x2))) A__U62(tt, U61(nil, x1, x2)) -> c18(A__LENGTH(a__U61(nil, x1, x2))) A__U62(tt, U62(zeros, x1)) -> c18(A__LENGTH(a__U62(a__zeros, x1)), MARK(U62(zeros, x1))) A__U62(tt, U62(U11(z0), x1)) -> c18(A__LENGTH(a__U62(a__U11(mark(z0)), x1)), MARK(U62(U11(z0), x1))) A__U62(tt, U62(U21(z0), x1)) -> c18(A__LENGTH(a__U62(a__U21(mark(z0)), x1)), MARK(U62(U21(z0), x1))) A__U62(tt, U62(U31(z0), x1)) -> c18(A__LENGTH(a__U62(a__U31(mark(z0)), x1)), MARK(U62(U31(z0), x1))) A__U62(tt, U62(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U41(mark(z0), z1), x1)), MARK(U62(U41(z0, z1), x1))) A__U62(tt, U62(U42(z0), x1)) -> c18(A__LENGTH(a__U62(a__U42(mark(z0)), x1)), MARK(U62(U42(z0), x1))) A__U62(tt, U62(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatIList(z0), x1)), MARK(U62(isNatIList(z0), x1))) A__U62(tt, U62(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U51(mark(z0), z1), x1)), MARK(U62(U51(z0, z1), x1))) A__U62(tt, U62(U52(z0), x1)) -> c18(A__LENGTH(a__U62(a__U52(mark(z0)), x1)), MARK(U62(U52(z0), x1))) A__U62(tt, U62(isNatList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatList(z0), x1)), MARK(U62(isNatList(z0), x1))) A__U62(tt, U62(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U62(a__U61(mark(z0), z1, z2), x1)), MARK(U62(U61(z0, z1, z2), x1))) A__U62(tt, U62(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U62(mark(z0), z1), x1)), MARK(U62(U62(z0, z1), x1))) A__U62(tt, U62(isNat(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNat(z0), x1)), MARK(U62(isNat(z0), x1))) A__U62(tt, U62(length(z0), x1)) -> c18(A__LENGTH(a__U62(a__length(mark(z0)), x1)), MARK(U62(length(z0), x1))) A__U62(tt, U62(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U62(cons(mark(z0), z1), x1)), MARK(U62(cons(z0, z1), x1))) A__U62(tt, U62(tt, x1)) -> c18(A__LENGTH(a__U62(tt, x1)), MARK(U62(tt, x1))) A__U62(tt, U62(s(z0), x1)) -> c18(A__LENGTH(a__U62(s(mark(z0)), x1)), MARK(U62(s(z0), x1))) A__U62(tt, U62(x0, z1)) -> c18(MARK(U62(x0, z1))) A__U62(tt, U62(0, x1)) -> c18(A__LENGTH(a__U62(0, x1))) A__U62(tt, U62(nil, x1)) -> c18(A__LENGTH(a__U62(nil, x1))) A__U62(tt, isNat(length(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(isNat(length(z0)))) A__U62(tt, isNat(s(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(isNat(s(z0)))) A__U62(tt, isNat(0)) -> c18(MARK(isNat(0))) A__U62(tt, isNat(z0)) -> c18(MARK(isNat(z0))) A__U62(tt, length(zeros)) -> c18(A__LENGTH(a__length(a__zeros)), MARK(length(zeros))) A__U62(tt, length(U11(z0))) -> c18(A__LENGTH(a__length(a__U11(mark(z0)))), MARK(length(U11(z0)))) A__U62(tt, length(U21(z0))) -> c18(A__LENGTH(a__length(a__U21(mark(z0)))), MARK(length(U21(z0)))) A__U62(tt, length(U31(z0))) -> c18(A__LENGTH(a__length(a__U31(mark(z0)))), MARK(length(U31(z0)))) A__U62(tt, length(U41(z0, z1))) -> c18(A__LENGTH(a__length(a__U41(mark(z0), z1))), MARK(length(U41(z0, z1)))) A__U62(tt, length(U42(z0))) -> c18(A__LENGTH(a__length(a__U42(mark(z0)))), MARK(length(U42(z0)))) A__U62(tt, length(isNatIList(z0))) -> c18(A__LENGTH(a__length(a__isNatIList(z0))), MARK(length(isNatIList(z0)))) A__U62(tt, length(U51(z0, z1))) -> c18(A__LENGTH(a__length(a__U51(mark(z0), z1))), MARK(length(U51(z0, z1)))) A__U62(tt, length(U52(z0))) -> c18(A__LENGTH(a__length(a__U52(mark(z0)))), MARK(length(U52(z0)))) A__U62(tt, length(isNatList(z0))) -> c18(A__LENGTH(a__length(a__isNatList(z0))), MARK(length(isNatList(z0)))) A__U62(tt, length(U61(z0, z1, z2))) -> c18(A__LENGTH(a__length(a__U61(mark(z0), z1, z2))), MARK(length(U61(z0, z1, z2)))) A__U62(tt, length(U62(z0, z1))) -> c18(A__LENGTH(a__length(a__U62(mark(z0), z1))), MARK(length(U62(z0, z1)))) A__U62(tt, length(isNat(z0))) -> c18(A__LENGTH(a__length(a__isNat(z0))), MARK(length(isNat(z0)))) A__U62(tt, length(length(z0))) -> c18(A__LENGTH(a__length(a__length(mark(z0)))), MARK(length(length(z0)))) A__U62(tt, length(cons(z0, z1))) -> c18(A__LENGTH(a__length(cons(mark(z0), z1))), MARK(length(cons(z0, z1)))) A__U62(tt, length(s(z0))) -> c18(A__LENGTH(a__length(s(mark(z0)))), MARK(length(s(z0)))) A__U62(tt, length(x0)) -> c18(MARK(length(x0))) A__U62(tt, length(0)) -> c18(A__LENGTH(a__length(0))) A__U62(tt, length(tt)) -> c18(A__LENGTH(a__length(tt))) A__U62(tt, length(nil)) -> c18(A__LENGTH(a__length(nil))) A__U62(tt, zeros) -> c18(A__LENGTH(cons(0, zeros))) A__ISNATILIST(cons(length(nil), x1)) -> c26(A__U41(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATILIST(cons(length(cons(z0, z1)), x1)) -> c26(A__U41(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(length(x0), x1)) -> c26(A__ISNAT(length(x0))) A__ISNATILIST(cons(s(0), x1)) -> c26(A__U41(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATILIST(cons(s(length(z0)), x1)) -> c26(A__U41(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATILIST(cons(s(s(z0)), x1)) -> c26(A__U41(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(s(x0), x1)) -> c26(A__ISNAT(s(x0))) A__ISNATLIST(cons(length(nil), x1)) -> c29(A__U51(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATLIST(cons(length(cons(z0, z1)), x1)) -> c29(A__U51(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(length(x0), x1)) -> c29(A__ISNAT(length(x0))) A__ISNATLIST(cons(s(0), x1)) -> c29(A__U51(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATLIST(cons(s(length(z0)), x1)) -> c29(A__U51(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATLIST(cons(s(s(z0)), x1)) -> c29(A__U51(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(s(x0), x1)) -> c29(A__ISNAT(s(x0))) A__LENGTH(cons(x0, cons(0, x2))) -> c32(A__U61(a__U51(tt, x2), cons(0, x2), x0), A__ISNATLIST(cons(0, x2))) A__LENGTH(cons(x0, cons(length(z0), x2))) -> c32(A__U61(a__U51(a__U11(a__isNatList(z0)), x2), cons(length(z0), x2), x0), A__ISNATLIST(cons(length(z0), x2))) A__LENGTH(cons(x0, cons(s(z0), x2))) -> c32(A__U61(a__U51(a__U21(a__isNat(z0)), x2), cons(s(z0), x2), x0), A__ISNATLIST(cons(s(z0), x2))) A__LENGTH(cons(x0, cons(z0, x2))) -> c32(A__U61(a__U51(isNat(z0), x2), cons(z0, x2), x0), A__ISNATLIST(cons(z0, x2))) A__LENGTH(cons(x0, cons(x1, z1))) -> c32(A__ISNATLIST(cons(x1, z1))) MARK(U41(U11(zeros), x1)) -> c38(A__U41(a__U11(a__zeros), x1), MARK(U11(zeros))) MARK(U41(U11(U11(z0)), x1)) -> c38(A__U41(a__U11(a__U11(mark(z0))), x1), MARK(U11(U11(z0)))) MARK(U41(U11(U21(z0)), x1)) -> c38(A__U41(a__U11(a__U21(mark(z0))), x1), MARK(U11(U21(z0)))) MARK(U41(U11(U31(z0)), x1)) -> c38(A__U41(a__U11(a__U31(mark(z0))), x1), MARK(U11(U31(z0)))) MARK(U41(U11(U41(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U41(mark(z0), z1)), x1), MARK(U11(U41(z0, z1)))) MARK(U41(U11(U42(z0)), x1)) -> c38(A__U41(a__U11(a__U42(mark(z0))), x1), MARK(U11(U42(z0)))) MARK(U41(U11(isNatIList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatIList(z0)), x1), MARK(U11(isNatIList(z0)))) MARK(U41(U11(U51(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U51(mark(z0), z1)), x1), MARK(U11(U51(z0, z1)))) MARK(U41(U11(U52(z0)), x1)) -> c38(A__U41(a__U11(a__U52(mark(z0))), x1), MARK(U11(U52(z0)))) MARK(U41(U11(isNatList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatList(z0)), x1), MARK(U11(isNatList(z0)))) MARK(U41(U11(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U11(a__U61(mark(z0), z1, z2)), x1), MARK(U11(U61(z0, z1, z2)))) MARK(U41(U11(U62(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U62(mark(z0), z1)), x1), MARK(U11(U62(z0, z1)))) MARK(U41(U11(isNat(z0)), x1)) -> c38(A__U41(a__U11(a__isNat(z0)), x1), MARK(U11(isNat(z0)))) MARK(U41(U11(length(z0)), x1)) -> c38(A__U41(a__U11(a__length(mark(z0))), x1), MARK(U11(length(z0)))) MARK(U41(U11(cons(z0, z1)), x1)) -> c38(A__U41(a__U11(cons(mark(z0), z1)), x1), MARK(U11(cons(z0, z1)))) MARK(U41(U11(0), x1)) -> c38(A__U41(a__U11(0), x1), MARK(U11(0))) MARK(U41(U11(tt), x1)) -> c38(A__U41(a__U11(tt), x1), MARK(U11(tt))) MARK(U41(U11(s(z0)), x1)) -> c38(A__U41(a__U11(s(mark(z0))), x1), MARK(U11(s(z0)))) MARK(U41(U11(nil), x1)) -> c38(A__U41(a__U11(nil), x1), MARK(U11(nil))) MARK(U41(U11(x0), x1)) -> c38(MARK(U11(x0))) MARK(U41(U21(zeros), x1)) -> c38(A__U41(a__U21(a__zeros), x1), MARK(U21(zeros))) MARK(U41(U21(U11(z0)), x1)) -> c38(A__U41(a__U21(a__U11(mark(z0))), x1), MARK(U21(U11(z0)))) MARK(U41(U21(U21(z0)), x1)) -> c38(A__U41(a__U21(a__U21(mark(z0))), x1), MARK(U21(U21(z0)))) MARK(U41(U21(U31(z0)), x1)) -> c38(A__U41(a__U21(a__U31(mark(z0))), x1), MARK(U21(U31(z0)))) MARK(U41(U21(U41(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U41(mark(z0), z1)), x1), MARK(U21(U41(z0, z1)))) MARK(U41(U21(U42(z0)), x1)) -> c38(A__U41(a__U21(a__U42(mark(z0))), x1), MARK(U21(U42(z0)))) MARK(U41(U21(isNatIList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatIList(z0)), x1), MARK(U21(isNatIList(z0)))) MARK(U41(U21(U51(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U51(mark(z0), z1)), x1), MARK(U21(U51(z0, z1)))) MARK(U41(U21(U52(z0)), x1)) -> c38(A__U41(a__U21(a__U52(mark(z0))), x1), MARK(U21(U52(z0)))) MARK(U41(U21(isNatList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatList(z0)), x1), MARK(U21(isNatList(z0)))) MARK(U41(U21(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U21(a__U61(mark(z0), z1, z2)), x1), MARK(U21(U61(z0, z1, z2)))) MARK(U41(U21(U62(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U62(mark(z0), z1)), x1), MARK(U21(U62(z0, z1)))) MARK(U41(U21(isNat(z0)), x1)) -> c38(A__U41(a__U21(a__isNat(z0)), x1), MARK(U21(isNat(z0)))) MARK(U41(U21(length(z0)), x1)) -> c38(A__U41(a__U21(a__length(mark(z0))), x1), MARK(U21(length(z0)))) MARK(U41(U21(cons(z0, z1)), x1)) -> c38(A__U41(a__U21(cons(mark(z0), z1)), x1), MARK(U21(cons(z0, z1)))) MARK(U41(U21(0), x1)) -> c38(A__U41(a__U21(0), x1), MARK(U21(0))) MARK(U41(U21(tt), x1)) -> c38(A__U41(a__U21(tt), x1), MARK(U21(tt))) MARK(U41(U21(s(z0)), x1)) -> c38(A__U41(a__U21(s(mark(z0))), x1), MARK(U21(s(z0)))) MARK(U41(U21(nil), x1)) -> c38(A__U41(a__U21(nil), x1), MARK(U21(nil))) MARK(U41(U21(x0), x1)) -> c38(MARK(U21(x0))) MARK(U41(U31(zeros), x1)) -> c38(A__U41(a__U31(a__zeros), x1), MARK(U31(zeros))) MARK(U41(U31(U11(z0)), x1)) -> c38(A__U41(a__U31(a__U11(mark(z0))), x1), MARK(U31(U11(z0)))) MARK(U41(U31(U21(z0)), x1)) -> c38(A__U41(a__U31(a__U21(mark(z0))), x1), MARK(U31(U21(z0)))) MARK(U41(U31(U31(z0)), x1)) -> c38(A__U41(a__U31(a__U31(mark(z0))), x1), MARK(U31(U31(z0)))) MARK(U41(U31(U41(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U41(mark(z0), z1)), x1), MARK(U31(U41(z0, z1)))) MARK(U41(U31(U42(z0)), x1)) -> c38(A__U41(a__U31(a__U42(mark(z0))), x1), MARK(U31(U42(z0)))) MARK(U41(U31(isNatIList(z0)), x1)) -> c38(A__U41(a__U31(a__isNatIList(z0)), x1), MARK(U31(isNatIList(z0)))) MARK(U41(U31(U51(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U51(mark(z0), z1)), x1), MARK(U31(U51(z0, z1)))) MARK(U41(U31(U52(z0)), x1)) -> c38(A__U41(a__U31(a__U52(mark(z0))), x1), MARK(U31(U52(z0)))) MARK(U41(U31(isNatList(z0)), x1)) -> c38(A__U41(a__U31(a__isNatList(z0)), x1), MARK(U31(isNatList(z0)))) MARK(U41(U31(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U31(a__U61(mark(z0), z1, z2)), x1), MARK(U31(U61(z0, z1, z2)))) MARK(U41(U31(U62(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U62(mark(z0), z1)), x1), MARK(U31(U62(z0, z1)))) MARK(U41(U31(isNat(z0)), x1)) -> c38(A__U41(a__U31(a__isNat(z0)), x1), MARK(U31(isNat(z0)))) MARK(U41(U31(length(z0)), x1)) -> c38(A__U41(a__U31(a__length(mark(z0))), x1), MARK(U31(length(z0)))) MARK(U41(U31(cons(z0, z1)), x1)) -> c38(A__U41(a__U31(cons(mark(z0), z1)), x1), MARK(U31(cons(z0, z1)))) MARK(U41(U31(0), x1)) -> c38(A__U41(a__U31(0), x1), MARK(U31(0))) MARK(U41(U31(tt), x1)) -> c38(A__U41(a__U31(tt), x1), MARK(U31(tt))) MARK(U41(U31(s(z0)), x1)) -> c38(A__U41(a__U31(s(mark(z0))), x1), MARK(U31(s(z0)))) MARK(U41(U31(nil), x1)) -> c38(A__U41(a__U31(nil), x1), MARK(U31(nil))) MARK(U41(U31(x0), x1)) -> c38(MARK(U31(x0))) MARK(U41(U41(U11(z0), x1), x2)) -> c38(A__U41(a__U41(a__U11(mark(z0)), x1), x2), MARK(U41(U11(z0), x1))) MARK(U41(U41(U21(z0), x1), x2)) -> c38(A__U41(a__U41(a__U21(mark(z0)), x1), x2), MARK(U41(U21(z0), x1))) MARK(U41(U41(U31(z0), x1), x2)) -> c38(A__U41(a__U41(a__U31(mark(z0)), x1), x2), MARK(U41(U31(z0), x1))) MARK(U41(U41(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U41(mark(z0), z1), x1), x2), MARK(U41(U41(z0, z1), x1))) MARK(U41(U41(U42(z0), x1), x2)) -> c38(A__U41(a__U41(a__U42(mark(z0)), x1), x2), MARK(U41(U42(z0), x1))) MARK(U41(U41(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U51(mark(z0), z1), x1), x2), MARK(U41(U51(z0, z1), x1))) MARK(U41(U41(U52(z0), x1), x2)) -> c38(A__U41(a__U41(a__U52(mark(z0)), x1), x2), MARK(U41(U52(z0), x1))) MARK(U41(U41(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U41(a__U61(mark(z0), z1, z2), x1), x2), MARK(U41(U61(z0, z1, z2), x1))) MARK(U41(U41(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U62(mark(z0), z1), x1), x2), MARK(U41(U62(z0, z1), x1))) MARK(U41(U41(length(z0), x1), x2)) -> c38(A__U41(a__U41(a__length(mark(z0)), x1), x2), MARK(U41(length(z0), x1))) MARK(U41(U41(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U41(cons(mark(z0), z1), x1), x2), MARK(U41(cons(z0, z1), x1))) MARK(U41(U41(s(z0), x1), x2)) -> c38(A__U41(a__U41(s(mark(z0)), x1), x2), MARK(U41(s(z0), x1))) MARK(U41(U41(x0, z1), x2)) -> c38(MARK(U41(x0, z1))) MARK(U41(U41(0, x1), x2)) -> c38(A__U41(a__U41(0, x1), x2)) MARK(U41(U41(nil, x1), x2)) -> c38(A__U41(a__U41(nil, x1), x2)) MARK(U41(U41(zeros, x1), x2)) -> c2(A__U41(a__U41(a__zeros, x1), x2)) MARK(U41(U41(isNatIList(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNatIList(z0), x1), x2)) MARK(U41(U41(isNatIList(z0), x1), x2)) -> c2(MARK(U41(isNatIList(z0), x1))) MARK(U41(U41(isNatList(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNatList(z0), x1), x2)) MARK(U41(U41(isNatList(z0), x1), x2)) -> c2(MARK(U41(isNatList(z0), x1))) MARK(U41(U41(isNat(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNat(z0), x1), x2)) MARK(U41(U41(isNat(z0), x1), x2)) -> c2(MARK(U41(isNat(z0), x1))) MARK(U41(U41(tt, x1), x2)) -> c2(A__U41(a__U41(tt, x1), x2)) MARK(U41(U41(tt, x1), x2)) -> c2(MARK(U41(tt, x1))) MARK(U41(U42(zeros), x1)) -> c38(A__U41(a__U42(a__zeros), x1), MARK(U42(zeros))) MARK(U41(U42(U11(z0)), x1)) -> c38(A__U41(a__U42(a__U11(mark(z0))), x1), MARK(U42(U11(z0)))) MARK(U41(U42(U21(z0)), x1)) -> c38(A__U41(a__U42(a__U21(mark(z0))), x1), MARK(U42(U21(z0)))) MARK(U41(U42(U31(z0)), x1)) -> c38(A__U41(a__U42(a__U31(mark(z0))), x1), MARK(U42(U31(z0)))) MARK(U41(U42(U41(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U41(mark(z0), z1)), x1), MARK(U42(U41(z0, z1)))) MARK(U41(U42(U42(z0)), x1)) -> c38(A__U41(a__U42(a__U42(mark(z0))), x1), MARK(U42(U42(z0)))) MARK(U41(U42(isNatIList(z0)), x1)) -> c38(A__U41(a__U42(a__isNatIList(z0)), x1), MARK(U42(isNatIList(z0)))) MARK(U41(U42(U51(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U51(mark(z0), z1)), x1), MARK(U42(U51(z0, z1)))) MARK(U41(U42(U52(z0)), x1)) -> c38(A__U41(a__U42(a__U52(mark(z0))), x1), MARK(U42(U52(z0)))) MARK(U41(U42(isNatList(z0)), x1)) -> c38(A__U41(a__U42(a__isNatList(z0)), x1), MARK(U42(isNatList(z0)))) MARK(U41(U42(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U42(a__U61(mark(z0), z1, z2)), x1), MARK(U42(U61(z0, z1, z2)))) MARK(U41(U42(U62(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U62(mark(z0), z1)), x1), MARK(U42(U62(z0, z1)))) MARK(U41(U42(isNat(z0)), x1)) -> c38(A__U41(a__U42(a__isNat(z0)), x1), MARK(U42(isNat(z0)))) MARK(U41(U42(length(z0)), x1)) -> c38(A__U41(a__U42(a__length(mark(z0))), x1), MARK(U42(length(z0)))) MARK(U41(U42(cons(z0, z1)), x1)) -> c38(A__U41(a__U42(cons(mark(z0), z1)), x1), MARK(U42(cons(z0, z1)))) MARK(U41(U42(0), x1)) -> c38(A__U41(a__U42(0), x1), MARK(U42(0))) MARK(U41(U42(tt), x1)) -> c38(A__U41(a__U42(tt), x1), MARK(U42(tt))) MARK(U41(U42(s(z0)), x1)) -> c38(A__U41(a__U42(s(mark(z0))), x1), MARK(U42(s(z0)))) MARK(U41(U42(nil), x1)) -> c38(A__U41(a__U42(nil), x1), MARK(U42(nil))) MARK(U41(U42(x0), x1)) -> c38(MARK(U42(x0))) MARK(U41(U51(U11(z0), x1), x2)) -> c38(A__U41(a__U51(a__U11(mark(z0)), x1), x2), MARK(U51(U11(z0), x1))) MARK(U41(U51(U21(z0), x1), x2)) -> c38(A__U41(a__U51(a__U21(mark(z0)), x1), x2), MARK(U51(U21(z0), x1))) MARK(U41(U51(U31(z0), x1), x2)) -> c38(A__U41(a__U51(a__U31(mark(z0)), x1), x2), MARK(U51(U31(z0), x1))) MARK(U41(U51(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U41(mark(z0), z1), x1), x2), MARK(U51(U41(z0, z1), x1))) MARK(U41(U51(U42(z0), x1), x2)) -> c38(A__U41(a__U51(a__U42(mark(z0)), x1), x2), MARK(U51(U42(z0), x1))) MARK(U41(U51(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U51(mark(z0), z1), x1), x2), MARK(U51(U51(z0, z1), x1))) MARK(U41(U51(U52(z0), x1), x2)) -> c38(A__U41(a__U51(a__U52(mark(z0)), x1), x2), MARK(U51(U52(z0), x1))) MARK(U41(U51(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U51(a__U61(mark(z0), z1, z2), x1), x2), MARK(U51(U61(z0, z1, z2), x1))) MARK(U41(U51(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U62(mark(z0), z1), x1), x2), MARK(U51(U62(z0, z1), x1))) MARK(U41(U51(length(z0), x1), x2)) -> c38(A__U41(a__U51(a__length(mark(z0)), x1), x2), MARK(U51(length(z0), x1))) MARK(U41(U51(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U51(cons(mark(z0), z1), x1), x2), MARK(U51(cons(z0, z1), x1))) MARK(U41(U51(s(z0), x1), x2)) -> c38(A__U41(a__U51(s(mark(z0)), x1), x2), MARK(U51(s(z0), x1))) MARK(U41(U51(x0, z1), x2)) -> c38(MARK(U51(x0, z1))) MARK(U41(U51(0, x1), x2)) -> c38(A__U41(a__U51(0, x1), x2)) MARK(U41(U51(nil, x1), x2)) -> c38(A__U41(a__U51(nil, x1), x2)) MARK(U41(U51(zeros, x1), x2)) -> c3(A__U41(a__U51(a__zeros, x1), x2)) MARK(U41(U51(zeros, x1), x2)) -> c3(MARK(U51(zeros, x1))) MARK(U41(U51(isNatIList(z0), x1), x2)) -> c3(A__U41(a__U51(a__isNatIList(z0), x1), x2)) MARK(U41(U51(isNatIList(z0), x1), x2)) -> c3(MARK(U51(isNatIList(z0), x1))) MARK(U41(U51(isNatList(z0), x1), x2)) -> c3(A__U41(a__U51(a__isNatList(z0), x1), x2)) MARK(U41(U51(isNatList(z0), x1), x2)) -> c3(MARK(U51(isNatList(z0), x1))) MARK(U41(U51(isNat(z0), x1), x2)) -> c3(A__U41(a__U51(a__isNat(z0), x1), x2)) MARK(U41(U51(isNat(z0), x1), x2)) -> c3(MARK(U51(isNat(z0), x1))) MARK(U41(U51(tt, x1), x2)) -> c3(A__U41(a__U51(tt, x1), x2)) MARK(U41(U51(tt, x1), x2)) -> c3(MARK(U51(tt, x1))) MARK(U41(U52(zeros), x1)) -> c38(A__U41(a__U52(a__zeros), x1), MARK(U52(zeros))) MARK(U41(U52(U11(z0)), x1)) -> c38(A__U41(a__U52(a__U11(mark(z0))), x1), MARK(U52(U11(z0)))) MARK(U41(U52(U21(z0)), x1)) -> c38(A__U41(a__U52(a__U21(mark(z0))), x1), MARK(U52(U21(z0)))) MARK(U41(U52(U31(z0)), x1)) -> c38(A__U41(a__U52(a__U31(mark(z0))), x1), MARK(U52(U31(z0)))) MARK(U41(U52(U41(z0, z1)), x1)) -> c38(A__U41(a__U52(a__U41(mark(z0), z1)), x1), MARK(U52(U41(z0, z1)))) MARK(U41(U52(U42(z0)), x1)) -> c38(A__U41(a__U52(a__U42(mark(z0))), x1), MARK(U52(U42(z0)))) MARK(U41(U52(isNatIList(z0)), x1)) -> c38(A__U41(a__U52(a__isNatIList(z0)), x1), MARK(U52(isNatIList(z0)))) MARK(U41(U52(U51(z0, z1)), x1)) -> c38(A__U41(a__U52(a__U51(mark(z0), z1)), x1), MARK(U52(U51(z0, z1)))) MARK(U41(U52(U52(z0)), x1)) -> c38(A__U41(a__U52(a__U52(mark(z0))), x1), MARK(U52(U52(z0)))) MARK(U41(U52(isNatList(z0)), x1)) -> c38(A__U41(a__U52(a__isNatList(z0)), x1), MARK(U52(isNatList(z0)))) MARK(U41(U52(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U52(a__U61(mark(z0), z1, z2)), x1), MARK(U52(U61(z0, z1, z2)))) MARK(U41(U52(U62(z0, z1)), x1)) -> c38(A__U41(a__U52(a__U62(mark(z0), z1)), x1), MARK(U52(U62(z0, z1)))) MARK(U41(U52(isNat(z0)), x1)) -> c38(A__U41(a__U52(a__isNat(z0)), x1), MARK(U52(isNat(z0)))) MARK(U41(U52(length(z0)), x1)) -> c38(A__U41(a__U52(a__length(mark(z0))), x1), MARK(U52(length(z0)))) MARK(U41(U52(cons(z0, z1)), x1)) -> c38(A__U41(a__U52(cons(mark(z0), z1)), x1), MARK(U52(cons(z0, z1)))) MARK(U41(U52(0), x1)) -> c38(A__U41(a__U52(0), x1), MARK(U52(0))) MARK(U41(U52(tt), x1)) -> c38(A__U41(a__U52(tt), x1), MARK(U52(tt))) MARK(U41(U52(s(z0)), x1)) -> c38(A__U41(a__U52(s(mark(z0))), x1), MARK(U52(s(z0)))) MARK(U41(U52(nil), x1)) -> c38(A__U41(a__U52(nil), x1), MARK(U52(nil))) MARK(U41(U52(x0), x1)) -> c38(MARK(U52(x0))) MARK(U41(U61(zeros, x1, x2), x3)) -> c38(A__U41(a__U61(a__zeros, x1, x2), x3), MARK(U61(zeros, x1, x2))) MARK(U41(U61(U11(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U11(mark(z0)), x1, x2), x3), MARK(U61(U11(z0), x1, x2))) MARK(U41(U61(U21(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U21(mark(z0)), x1, x2), x3), MARK(U61(U21(z0), x1, x2))) MARK(U41(U61(U31(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U31(mark(z0)), x1, x2), x3), MARK(U61(U31(z0), x1, x2))) MARK(U41(U61(U41(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(a__U41(mark(z0), z1), x1, x2), x3), MARK(U61(U41(z0, z1), x1, x2))) MARK(U41(U61(U42(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U42(mark(z0)), x1, x2), x3), MARK(U61(U42(z0), x1, x2))) MARK(U41(U61(isNatIList(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__isNatIList(z0), x1, x2), x3), MARK(U61(isNatIList(z0), x1, x2))) MARK(U41(U61(U51(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(a__U51(mark(z0), z1), x1, x2), x3), MARK(U61(U51(z0, z1), x1, x2))) MARK(U41(U61(U52(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U52(mark(z0)), x1, x2), x3), MARK(U61(U52(z0), x1, x2))) MARK(U41(U61(isNatList(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__isNatList(z0), x1, x2), x3), MARK(U61(isNatList(z0), x1, x2))) MARK(U41(U61(U61(z0, z1, z2), x1, x2), x3)) -> c38(A__U41(a__U61(a__U61(mark(z0), z1, z2), x1, x2), x3), MARK(U61(U61(z0, z1, z2), x1, x2))) MARK(U41(U61(U62(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(a__U62(mark(z0), z1), x1, x2), x3), MARK(U61(U62(z0, z1), x1, x2))) MARK(U41(U61(isNat(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__isNat(z0), x1, x2), x3), MARK(U61(isNat(z0), x1, x2))) MARK(U41(U61(length(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__length(mark(z0)), x1, x2), x3), MARK(U61(length(z0), x1, x2))) MARK(U41(U61(cons(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(cons(mark(z0), z1), x1, x2), x3), MARK(U61(cons(z0, z1), x1, x2))) MARK(U41(U61(tt, x1, x2), x3)) -> c38(A__U41(a__U61(tt, x1, x2), x3), MARK(U61(tt, x1, x2))) MARK(U41(U61(s(z0), x1, x2), x3)) -> c38(A__U41(a__U61(s(mark(z0)), x1, x2), x3), MARK(U61(s(z0), x1, x2))) MARK(U41(U61(x0, z1, z2), x3)) -> c38(MARK(U61(x0, z1, z2))) MARK(U41(U61(0, x1, x2), x3)) -> c38(A__U41(a__U61(0, x1, x2), x3)) MARK(U41(U61(nil, x1, x2), x3)) -> c38(A__U41(a__U61(nil, x1, x2), x3)) MARK(U41(U62(zeros, x1), x2)) -> c38(A__U41(a__U62(a__zeros, x1), x2), MARK(U62(zeros, x1))) MARK(U41(U62(U11(z0), x1), x2)) -> c38(A__U41(a__U62(a__U11(mark(z0)), x1), x2), MARK(U62(U11(z0), x1))) MARK(U41(U62(U21(z0), x1), x2)) -> c38(A__U41(a__U62(a__U21(mark(z0)), x1), x2), MARK(U62(U21(z0), x1))) MARK(U41(U62(U31(z0), x1), x2)) -> c38(A__U41(a__U62(a__U31(mark(z0)), x1), x2), MARK(U62(U31(z0), x1))) MARK(U41(U62(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U62(a__U41(mark(z0), z1), x1), x2), MARK(U62(U41(z0, z1), x1))) MARK(U41(U62(U42(z0), x1), x2)) -> c38(A__U41(a__U62(a__U42(mark(z0)), x1), x2), MARK(U62(U42(z0), x1))) MARK(U41(U62(isNatIList(z0), x1), x2)) -> c38(A__U41(a__U62(a__isNatIList(z0), x1), x2), MARK(U62(isNatIList(z0), x1))) MARK(U41(U62(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U62(a__U51(mark(z0), z1), x1), x2), MARK(U62(U51(z0, z1), x1))) MARK(U41(U62(U52(z0), x1), x2)) -> c38(A__U41(a__U62(a__U52(mark(z0)), x1), x2), MARK(U62(U52(z0), x1))) MARK(U41(U62(isNatList(z0), x1), x2)) -> c38(A__U41(a__U62(a__isNatList(z0), x1), x2), MARK(U62(isNatList(z0), x1))) MARK(U41(U62(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U62(a__U61(mark(z0), z1, z2), x1), x2), MARK(U62(U61(z0, z1, z2), x1))) MARK(U41(U62(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U62(a__U62(mark(z0), z1), x1), x2), MARK(U62(U62(z0, z1), x1))) MARK(U41(U62(isNat(z0), x1), x2)) -> c38(A__U41(a__U62(a__isNat(z0), x1), x2), MARK(U62(isNat(z0), x1))) MARK(U41(U62(length(z0), x1), x2)) -> c38(A__U41(a__U62(a__length(mark(z0)), x1), x2), MARK(U62(length(z0), x1))) MARK(U41(U62(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U62(cons(mark(z0), z1), x1), x2), MARK(U62(cons(z0, z1), x1))) MARK(U41(U62(tt, x1), x2)) -> c38(A__U41(a__U62(tt, x1), x2), MARK(U62(tt, x1))) MARK(U41(U62(s(z0), x1), x2)) -> c38(A__U41(a__U62(s(mark(z0)), x1), x2), MARK(U62(s(z0), x1))) MARK(U41(U62(x0, z1), x2)) -> c38(MARK(U62(x0, z1))) MARK(U41(U62(0, x1), x2)) -> c38(A__U41(a__U62(0, x1), x2)) MARK(U41(U62(nil, x1), x2)) -> c38(A__U41(a__U62(nil, x1), x2)) MARK(U41(length(zeros), x1)) -> c38(A__U41(a__length(a__zeros), x1), MARK(length(zeros))) MARK(U41(length(U11(z0)), x1)) -> c38(A__U41(a__length(a__U11(mark(z0))), x1), MARK(length(U11(z0)))) MARK(U41(length(U21(z0)), x1)) -> c38(A__U41(a__length(a__U21(mark(z0))), x1), MARK(length(U21(z0)))) MARK(U41(length(U31(z0)), x1)) -> c38(A__U41(a__length(a__U31(mark(z0))), x1), MARK(length(U31(z0)))) MARK(U41(length(U41(z0, z1)), x1)) -> c38(A__U41(a__length(a__U41(mark(z0), z1)), x1), MARK(length(U41(z0, z1)))) MARK(U41(length(U42(z0)), x1)) -> c38(A__U41(a__length(a__U42(mark(z0))), x1), MARK(length(U42(z0)))) MARK(U41(length(isNatIList(z0)), x1)) -> c38(A__U41(a__length(a__isNatIList(z0)), x1), MARK(length(isNatIList(z0)))) MARK(U41(length(U51(z0, z1)), x1)) -> c38(A__U41(a__length(a__U51(mark(z0), z1)), x1), MARK(length(U51(z0, z1)))) MARK(U41(length(U52(z0)), x1)) -> c38(A__U41(a__length(a__U52(mark(z0))), x1), MARK(length(U52(z0)))) MARK(U41(length(isNatList(z0)), x1)) -> c38(A__U41(a__length(a__isNatList(z0)), x1), MARK(length(isNatList(z0)))) MARK(U41(length(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__length(a__U61(mark(z0), z1, z2)), x1), MARK(length(U61(z0, z1, z2)))) MARK(U41(length(U62(z0, z1)), x1)) -> c38(A__U41(a__length(a__U62(mark(z0), z1)), x1), MARK(length(U62(z0, z1)))) MARK(U41(length(isNat(z0)), x1)) -> c38(A__U41(a__length(a__isNat(z0)), x1), MARK(length(isNat(z0)))) MARK(U41(length(length(z0)), x1)) -> c38(A__U41(a__length(a__length(mark(z0))), x1), MARK(length(length(z0)))) MARK(U41(length(cons(z0, z1)), x1)) -> c38(A__U41(a__length(cons(mark(z0), z1)), x1), MARK(length(cons(z0, z1)))) MARK(U41(length(s(z0)), x1)) -> c38(A__U41(a__length(s(mark(z0))), x1), MARK(length(s(z0)))) MARK(U41(length(x0), x1)) -> c38(MARK(length(x0))) MARK(U41(length(0), x1)) -> c38(A__U41(a__length(0), x1)) MARK(U41(length(tt), x1)) -> c38(A__U41(a__length(tt), x1)) MARK(U41(length(nil), x1)) -> c38(A__U41(a__length(nil), x1)) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__U31(a__isNatList(z0)), x1)) MARK(U41(isNatIList(zeros), x1)) -> c(A__U41(tt, x1)) MARK(U41(isNatIList(cons(z0, z1)), x1)) -> c(A__U41(a__U41(a__isNat(z0), z1), x1)) MARK(U41(isNatList(nil), x1)) -> c(A__U41(tt, x1)) MARK(U41(isNatList(cons(z0, z1)), x1)) -> c(A__U41(a__U51(a__isNat(z0), z1), x1)) MARK(U41(isNatList(z0), x1)) -> c(A__U41(isNatList(z0), x1)) K tuples:none Defined Rule Symbols: a__zeros, a__U11_1, a__U21_1, a__U31_1, a__U41_2, a__U42_1, a__U51_2, a__U52_1, a__U61_3, a__U62_2, a__isNat_1, a__isNatIList_1, a__isNatList_1, a__length_1, mark_1 Defined Pair Symbols: MARK_1, A__U41_2, A__U51_2, A__ISNAT_1, A__ISNATILIST_1, A__U61_3, A__U62_2, A__ISNATLIST_1, A__LENGTH_1 Compound Symbols: c40_1, c43_1, c46_1, c48_1, c51_1, c8_1, c12_1, c21_1, c22_1, c24_1, c35_1, c36_1, c37_1, c39_1, c42_1, c16_1, c18_2, c18_1, c26_1, c29_1, c32_1, c38_1, c_1, c41_2, c41_1, c1_1, c44_2, c44_1, c45_2, c45_1, c47_2, c47_1, c16_2, c26_2, c29_2, c32_2, c38_2, c2_1, c3_1 ---------------------------------------- (225) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 1 trailing nodes: MARK(U41(isNatList(z0), x1)) -> c(A__U41(isNatList(z0), x1)) ---------------------------------------- (226) Obligation: Complexity Dependency Tuples Problem Rules: a__zeros -> cons(0, zeros) a__zeros -> zeros a__U11(tt) -> tt a__U11(z0) -> U11(z0) a__U21(tt) -> tt a__U21(z0) -> U21(z0) a__U31(tt) -> tt a__U31(z0) -> U31(z0) a__U41(tt, z0) -> a__U42(a__isNatIList(z0)) a__U41(z0, z1) -> U41(z0, z1) a__U42(tt) -> tt a__U42(z0) -> U42(z0) a__U51(tt, z0) -> a__U52(a__isNatList(z0)) a__U51(z0, z1) -> U51(z0, z1) a__U52(tt) -> tt a__U52(z0) -> U52(z0) a__U61(tt, z0, z1) -> a__U62(a__isNat(z1), z0) a__U61(z0, z1, z2) -> U61(z0, z1, z2) a__U62(tt, z0) -> s(a__length(mark(z0))) a__U62(z0, z1) -> U62(z0, z1) a__isNat(0) -> tt a__isNat(length(z0)) -> a__U11(a__isNatList(z0)) a__isNat(s(z0)) -> a__U21(a__isNat(z0)) a__isNat(z0) -> isNat(z0) a__isNatIList(z0) -> a__U31(a__isNatList(z0)) a__isNatIList(zeros) -> tt a__isNatIList(cons(z0, z1)) -> a__U41(a__isNat(z0), z1) a__isNatIList(z0) -> isNatIList(z0) a__isNatList(nil) -> tt a__isNatList(cons(z0, z1)) -> a__U51(a__isNat(z0), z1) a__isNatList(z0) -> isNatList(z0) a__length(nil) -> 0 a__length(cons(z0, z1)) -> a__U61(a__isNatList(z1), z1, z0) a__length(z0) -> length(z0) mark(zeros) -> a__zeros mark(U11(z0)) -> a__U11(mark(z0)) mark(U21(z0)) -> a__U21(mark(z0)) mark(U31(z0)) -> a__U31(mark(z0)) mark(U41(z0, z1)) -> a__U41(mark(z0), z1) mark(U42(z0)) -> a__U42(mark(z0)) mark(isNatIList(z0)) -> a__isNatIList(z0) mark(U51(z0, z1)) -> a__U51(mark(z0), z1) mark(U52(z0)) -> a__U52(mark(z0)) mark(isNatList(z0)) -> a__isNatList(z0) mark(U61(z0, z1, z2)) -> a__U61(mark(z0), z1, z2) mark(U62(z0, z1)) -> a__U62(mark(z0), z1) mark(isNat(z0)) -> a__isNat(z0) mark(length(z0)) -> a__length(mark(z0)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(0) -> 0 mark(tt) -> tt mark(s(z0)) -> s(mark(z0)) mark(nil) -> nil Tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) A__U62(tt, isNatList(cons(z0, z1))) -> c18(A__LENGTH(a__U51(a__isNat(z0), z1)), MARK(isNatList(cons(z0, z1)))) A__U62(tt, isNatList(nil)) -> c18(MARK(isNatList(nil))) A__U62(tt, isNatList(z0)) -> c18(MARK(isNatList(z0))) A__U62(tt, U61(zeros, x1, x2)) -> c18(A__LENGTH(a__U61(a__zeros, x1, x2)), MARK(U61(zeros, x1, x2))) A__U62(tt, U61(U11(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U11(mark(z0)), x1, x2)), MARK(U61(U11(z0), x1, x2))) A__U62(tt, U61(U21(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U21(mark(z0)), x1, x2)), MARK(U61(U21(z0), x1, x2))) A__U62(tt, U61(U31(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U31(mark(z0)), x1, x2)), MARK(U61(U31(z0), x1, x2))) A__U62(tt, U61(U41(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U41(mark(z0), z1), x1, x2)), MARK(U61(U41(z0, z1), x1, x2))) A__U62(tt, U61(U42(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U42(mark(z0)), x1, x2)), MARK(U61(U42(z0), x1, x2))) A__U62(tt, U61(isNatIList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatIList(z0), x1, x2)), MARK(U61(isNatIList(z0), x1, x2))) A__U62(tt, U61(U51(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U51(mark(z0), z1), x1, x2)), MARK(U61(U51(z0, z1), x1, x2))) A__U62(tt, U61(U52(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U52(mark(z0)), x1, x2)), MARK(U61(U52(z0), x1, x2))) A__U62(tt, U61(isNatList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatList(z0), x1, x2)), MARK(U61(isNatList(z0), x1, x2))) A__U62(tt, U61(U61(z0, z1, z2), x1, x2)) -> c18(A__LENGTH(a__U61(a__U61(mark(z0), z1, z2), x1, x2)), MARK(U61(U61(z0, z1, z2), x1, x2))) A__U62(tt, U61(U62(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U62(mark(z0), z1), x1, x2)), MARK(U61(U62(z0, z1), x1, x2))) A__U62(tt, U61(isNat(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNat(z0), x1, x2)), MARK(U61(isNat(z0), x1, x2))) A__U62(tt, U61(length(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__length(mark(z0)), x1, x2)), MARK(U61(length(z0), x1, x2))) A__U62(tt, U61(cons(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(cons(mark(z0), z1), x1, x2)), MARK(U61(cons(z0, z1), x1, x2))) A__U62(tt, U61(tt, x1, x2)) -> c18(A__LENGTH(a__U61(tt, x1, x2)), MARK(U61(tt, x1, x2))) A__U62(tt, U61(s(z0), x1, x2)) -> c18(A__LENGTH(a__U61(s(mark(z0)), x1, x2)), MARK(U61(s(z0), x1, x2))) A__U62(tt, U61(x0, z1, z2)) -> c18(MARK(U61(x0, z1, z2))) A__U62(tt, U61(0, x1, x2)) -> c18(A__LENGTH(a__U61(0, x1, x2))) A__U62(tt, U61(nil, x1, x2)) -> c18(A__LENGTH(a__U61(nil, x1, x2))) A__U62(tt, U62(zeros, x1)) -> c18(A__LENGTH(a__U62(a__zeros, x1)), MARK(U62(zeros, x1))) A__U62(tt, U62(U11(z0), x1)) -> c18(A__LENGTH(a__U62(a__U11(mark(z0)), x1)), MARK(U62(U11(z0), x1))) A__U62(tt, U62(U21(z0), x1)) -> c18(A__LENGTH(a__U62(a__U21(mark(z0)), x1)), MARK(U62(U21(z0), x1))) A__U62(tt, U62(U31(z0), x1)) -> c18(A__LENGTH(a__U62(a__U31(mark(z0)), x1)), MARK(U62(U31(z0), x1))) A__U62(tt, U62(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U41(mark(z0), z1), x1)), MARK(U62(U41(z0, z1), x1))) A__U62(tt, U62(U42(z0), x1)) -> c18(A__LENGTH(a__U62(a__U42(mark(z0)), x1)), MARK(U62(U42(z0), x1))) A__U62(tt, U62(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatIList(z0), x1)), MARK(U62(isNatIList(z0), x1))) A__U62(tt, U62(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U51(mark(z0), z1), x1)), MARK(U62(U51(z0, z1), x1))) A__U62(tt, U62(U52(z0), x1)) -> c18(A__LENGTH(a__U62(a__U52(mark(z0)), x1)), MARK(U62(U52(z0), x1))) A__U62(tt, U62(isNatList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatList(z0), x1)), MARK(U62(isNatList(z0), x1))) A__U62(tt, U62(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U62(a__U61(mark(z0), z1, z2), x1)), MARK(U62(U61(z0, z1, z2), x1))) A__U62(tt, U62(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U62(mark(z0), z1), x1)), MARK(U62(U62(z0, z1), x1))) A__U62(tt, U62(isNat(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNat(z0), x1)), MARK(U62(isNat(z0), x1))) A__U62(tt, U62(length(z0), x1)) -> c18(A__LENGTH(a__U62(a__length(mark(z0)), x1)), MARK(U62(length(z0), x1))) A__U62(tt, U62(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U62(cons(mark(z0), z1), x1)), MARK(U62(cons(z0, z1), x1))) A__U62(tt, U62(tt, x1)) -> c18(A__LENGTH(a__U62(tt, x1)), MARK(U62(tt, x1))) A__U62(tt, U62(s(z0), x1)) -> c18(A__LENGTH(a__U62(s(mark(z0)), x1)), MARK(U62(s(z0), x1))) A__U62(tt, U62(x0, z1)) -> c18(MARK(U62(x0, z1))) A__U62(tt, U62(0, x1)) -> c18(A__LENGTH(a__U62(0, x1))) A__U62(tt, U62(nil, x1)) -> c18(A__LENGTH(a__U62(nil, x1))) A__U62(tt, isNat(length(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(isNat(length(z0)))) A__U62(tt, isNat(s(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(isNat(s(z0)))) A__U62(tt, isNat(0)) -> c18(MARK(isNat(0))) A__U62(tt, isNat(z0)) -> c18(MARK(isNat(z0))) A__U62(tt, length(zeros)) -> c18(A__LENGTH(a__length(a__zeros)), MARK(length(zeros))) A__U62(tt, length(U11(z0))) -> c18(A__LENGTH(a__length(a__U11(mark(z0)))), MARK(length(U11(z0)))) A__U62(tt, length(U21(z0))) -> c18(A__LENGTH(a__length(a__U21(mark(z0)))), MARK(length(U21(z0)))) A__U62(tt, length(U31(z0))) -> c18(A__LENGTH(a__length(a__U31(mark(z0)))), MARK(length(U31(z0)))) A__U62(tt, length(U41(z0, z1))) -> c18(A__LENGTH(a__length(a__U41(mark(z0), z1))), MARK(length(U41(z0, z1)))) A__U62(tt, length(U42(z0))) -> c18(A__LENGTH(a__length(a__U42(mark(z0)))), MARK(length(U42(z0)))) A__U62(tt, length(isNatIList(z0))) -> c18(A__LENGTH(a__length(a__isNatIList(z0))), MARK(length(isNatIList(z0)))) A__U62(tt, length(U51(z0, z1))) -> c18(A__LENGTH(a__length(a__U51(mark(z0), z1))), MARK(length(U51(z0, z1)))) A__U62(tt, length(U52(z0))) -> c18(A__LENGTH(a__length(a__U52(mark(z0)))), MARK(length(U52(z0)))) A__U62(tt, length(isNatList(z0))) -> c18(A__LENGTH(a__length(a__isNatList(z0))), MARK(length(isNatList(z0)))) A__U62(tt, length(U61(z0, z1, z2))) -> c18(A__LENGTH(a__length(a__U61(mark(z0), z1, z2))), MARK(length(U61(z0, z1, z2)))) A__U62(tt, length(U62(z0, z1))) -> c18(A__LENGTH(a__length(a__U62(mark(z0), z1))), MARK(length(U62(z0, z1)))) A__U62(tt, length(isNat(z0))) -> c18(A__LENGTH(a__length(a__isNat(z0))), MARK(length(isNat(z0)))) A__U62(tt, length(length(z0))) -> c18(A__LENGTH(a__length(a__length(mark(z0)))), MARK(length(length(z0)))) A__U62(tt, length(cons(z0, z1))) -> c18(A__LENGTH(a__length(cons(mark(z0), z1))), MARK(length(cons(z0, z1)))) A__U62(tt, length(s(z0))) -> c18(A__LENGTH(a__length(s(mark(z0)))), MARK(length(s(z0)))) A__U62(tt, length(x0)) -> c18(MARK(length(x0))) A__U62(tt, length(0)) -> c18(A__LENGTH(a__length(0))) A__U62(tt, length(tt)) -> c18(A__LENGTH(a__length(tt))) A__U62(tt, length(nil)) -> c18(A__LENGTH(a__length(nil))) A__U62(tt, zeros) -> c18(A__LENGTH(cons(0, zeros))) A__ISNATILIST(cons(length(nil), x1)) -> c26(A__U41(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATILIST(cons(length(cons(z0, z1)), x1)) -> c26(A__U41(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(length(x0), x1)) -> c26(A__ISNAT(length(x0))) A__ISNATILIST(cons(s(0), x1)) -> c26(A__U41(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATILIST(cons(s(length(z0)), x1)) -> c26(A__U41(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATILIST(cons(s(s(z0)), x1)) -> c26(A__U41(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(s(x0), x1)) -> c26(A__ISNAT(s(x0))) A__ISNATLIST(cons(length(nil), x1)) -> c29(A__U51(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATLIST(cons(length(cons(z0, z1)), x1)) -> c29(A__U51(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(length(x0), x1)) -> c29(A__ISNAT(length(x0))) A__ISNATLIST(cons(s(0), x1)) -> c29(A__U51(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATLIST(cons(s(length(z0)), x1)) -> c29(A__U51(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATLIST(cons(s(s(z0)), x1)) -> c29(A__U51(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(s(x0), x1)) -> c29(A__ISNAT(s(x0))) A__LENGTH(cons(x0, cons(0, x2))) -> c32(A__U61(a__U51(tt, x2), cons(0, x2), x0), A__ISNATLIST(cons(0, x2))) A__LENGTH(cons(x0, cons(length(z0), x2))) -> c32(A__U61(a__U51(a__U11(a__isNatList(z0)), x2), cons(length(z0), x2), x0), A__ISNATLIST(cons(length(z0), x2))) A__LENGTH(cons(x0, cons(s(z0), x2))) -> c32(A__U61(a__U51(a__U21(a__isNat(z0)), x2), cons(s(z0), x2), x0), A__ISNATLIST(cons(s(z0), x2))) A__LENGTH(cons(x0, cons(z0, x2))) -> c32(A__U61(a__U51(isNat(z0), x2), cons(z0, x2), x0), A__ISNATLIST(cons(z0, x2))) A__LENGTH(cons(x0, cons(x1, z1))) -> c32(A__ISNATLIST(cons(x1, z1))) MARK(U41(U11(zeros), x1)) -> c38(A__U41(a__U11(a__zeros), x1), MARK(U11(zeros))) MARK(U41(U11(U11(z0)), x1)) -> c38(A__U41(a__U11(a__U11(mark(z0))), x1), MARK(U11(U11(z0)))) MARK(U41(U11(U21(z0)), x1)) -> c38(A__U41(a__U11(a__U21(mark(z0))), x1), MARK(U11(U21(z0)))) MARK(U41(U11(U31(z0)), x1)) -> c38(A__U41(a__U11(a__U31(mark(z0))), x1), MARK(U11(U31(z0)))) MARK(U41(U11(U41(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U41(mark(z0), z1)), x1), MARK(U11(U41(z0, z1)))) MARK(U41(U11(U42(z0)), x1)) -> c38(A__U41(a__U11(a__U42(mark(z0))), x1), MARK(U11(U42(z0)))) MARK(U41(U11(isNatIList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatIList(z0)), x1), MARK(U11(isNatIList(z0)))) MARK(U41(U11(U51(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U51(mark(z0), z1)), x1), MARK(U11(U51(z0, z1)))) MARK(U41(U11(U52(z0)), x1)) -> c38(A__U41(a__U11(a__U52(mark(z0))), x1), MARK(U11(U52(z0)))) MARK(U41(U11(isNatList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatList(z0)), x1), MARK(U11(isNatList(z0)))) MARK(U41(U11(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U11(a__U61(mark(z0), z1, z2)), x1), MARK(U11(U61(z0, z1, z2)))) MARK(U41(U11(U62(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U62(mark(z0), z1)), x1), MARK(U11(U62(z0, z1)))) MARK(U41(U11(isNat(z0)), x1)) -> c38(A__U41(a__U11(a__isNat(z0)), x1), MARK(U11(isNat(z0)))) MARK(U41(U11(length(z0)), x1)) -> c38(A__U41(a__U11(a__length(mark(z0))), x1), MARK(U11(length(z0)))) MARK(U41(U11(cons(z0, z1)), x1)) -> c38(A__U41(a__U11(cons(mark(z0), z1)), x1), MARK(U11(cons(z0, z1)))) MARK(U41(U11(0), x1)) -> c38(A__U41(a__U11(0), x1), MARK(U11(0))) MARK(U41(U11(tt), x1)) -> c38(A__U41(a__U11(tt), x1), MARK(U11(tt))) MARK(U41(U11(s(z0)), x1)) -> c38(A__U41(a__U11(s(mark(z0))), x1), MARK(U11(s(z0)))) MARK(U41(U11(nil), x1)) -> c38(A__U41(a__U11(nil), x1), MARK(U11(nil))) MARK(U41(U11(x0), x1)) -> c38(MARK(U11(x0))) MARK(U41(U21(zeros), x1)) -> c38(A__U41(a__U21(a__zeros), x1), MARK(U21(zeros))) MARK(U41(U21(U11(z0)), x1)) -> c38(A__U41(a__U21(a__U11(mark(z0))), x1), MARK(U21(U11(z0)))) MARK(U41(U21(U21(z0)), x1)) -> c38(A__U41(a__U21(a__U21(mark(z0))), x1), MARK(U21(U21(z0)))) MARK(U41(U21(U31(z0)), x1)) -> c38(A__U41(a__U21(a__U31(mark(z0))), x1), MARK(U21(U31(z0)))) MARK(U41(U21(U41(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U41(mark(z0), z1)), x1), MARK(U21(U41(z0, z1)))) MARK(U41(U21(U42(z0)), x1)) -> c38(A__U41(a__U21(a__U42(mark(z0))), x1), MARK(U21(U42(z0)))) MARK(U41(U21(isNatIList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatIList(z0)), x1), MARK(U21(isNatIList(z0)))) MARK(U41(U21(U51(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U51(mark(z0), z1)), x1), MARK(U21(U51(z0, z1)))) MARK(U41(U21(U52(z0)), x1)) -> c38(A__U41(a__U21(a__U52(mark(z0))), x1), MARK(U21(U52(z0)))) MARK(U41(U21(isNatList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatList(z0)), x1), MARK(U21(isNatList(z0)))) MARK(U41(U21(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U21(a__U61(mark(z0), z1, z2)), x1), MARK(U21(U61(z0, z1, z2)))) MARK(U41(U21(U62(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U62(mark(z0), z1)), x1), MARK(U21(U62(z0, z1)))) MARK(U41(U21(isNat(z0)), x1)) -> c38(A__U41(a__U21(a__isNat(z0)), x1), MARK(U21(isNat(z0)))) MARK(U41(U21(length(z0)), x1)) -> c38(A__U41(a__U21(a__length(mark(z0))), x1), MARK(U21(length(z0)))) MARK(U41(U21(cons(z0, z1)), x1)) -> c38(A__U41(a__U21(cons(mark(z0), z1)), x1), MARK(U21(cons(z0, z1)))) MARK(U41(U21(0), x1)) -> c38(A__U41(a__U21(0), x1), MARK(U21(0))) MARK(U41(U21(tt), x1)) -> c38(A__U41(a__U21(tt), x1), MARK(U21(tt))) MARK(U41(U21(s(z0)), x1)) -> c38(A__U41(a__U21(s(mark(z0))), x1), MARK(U21(s(z0)))) MARK(U41(U21(nil), x1)) -> c38(A__U41(a__U21(nil), x1), MARK(U21(nil))) MARK(U41(U21(x0), x1)) -> c38(MARK(U21(x0))) MARK(U41(U31(zeros), x1)) -> c38(A__U41(a__U31(a__zeros), x1), MARK(U31(zeros))) MARK(U41(U31(U11(z0)), x1)) -> c38(A__U41(a__U31(a__U11(mark(z0))), x1), MARK(U31(U11(z0)))) MARK(U41(U31(U21(z0)), x1)) -> c38(A__U41(a__U31(a__U21(mark(z0))), x1), MARK(U31(U21(z0)))) MARK(U41(U31(U31(z0)), x1)) -> c38(A__U41(a__U31(a__U31(mark(z0))), x1), MARK(U31(U31(z0)))) MARK(U41(U31(U41(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U41(mark(z0), z1)), x1), MARK(U31(U41(z0, z1)))) MARK(U41(U31(U42(z0)), x1)) -> c38(A__U41(a__U31(a__U42(mark(z0))), x1), MARK(U31(U42(z0)))) MARK(U41(U31(isNatIList(z0)), x1)) -> c38(A__U41(a__U31(a__isNatIList(z0)), x1), MARK(U31(isNatIList(z0)))) MARK(U41(U31(U51(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U51(mark(z0), z1)), x1), MARK(U31(U51(z0, z1)))) MARK(U41(U31(U52(z0)), x1)) -> c38(A__U41(a__U31(a__U52(mark(z0))), x1), MARK(U31(U52(z0)))) MARK(U41(U31(isNatList(z0)), x1)) -> c38(A__U41(a__U31(a__isNatList(z0)), x1), MARK(U31(isNatList(z0)))) MARK(U41(U31(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U31(a__U61(mark(z0), z1, z2)), x1), MARK(U31(U61(z0, z1, z2)))) MARK(U41(U31(U62(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U62(mark(z0), z1)), x1), MARK(U31(U62(z0, z1)))) MARK(U41(U31(isNat(z0)), x1)) -> c38(A__U41(a__U31(a__isNat(z0)), x1), MARK(U31(isNat(z0)))) MARK(U41(U31(length(z0)), x1)) -> c38(A__U41(a__U31(a__length(mark(z0))), x1), MARK(U31(length(z0)))) MARK(U41(U31(cons(z0, z1)), x1)) -> c38(A__U41(a__U31(cons(mark(z0), z1)), x1), MARK(U31(cons(z0, z1)))) MARK(U41(U31(0), x1)) -> c38(A__U41(a__U31(0), x1), MARK(U31(0))) MARK(U41(U31(tt), x1)) -> c38(A__U41(a__U31(tt), x1), MARK(U31(tt))) MARK(U41(U31(s(z0)), x1)) -> c38(A__U41(a__U31(s(mark(z0))), x1), MARK(U31(s(z0)))) MARK(U41(U31(nil), x1)) -> c38(A__U41(a__U31(nil), x1), MARK(U31(nil))) MARK(U41(U31(x0), x1)) -> c38(MARK(U31(x0))) MARK(U41(U41(U11(z0), x1), x2)) -> c38(A__U41(a__U41(a__U11(mark(z0)), x1), x2), MARK(U41(U11(z0), x1))) MARK(U41(U41(U21(z0), x1), x2)) -> c38(A__U41(a__U41(a__U21(mark(z0)), x1), x2), MARK(U41(U21(z0), x1))) MARK(U41(U41(U31(z0), x1), x2)) -> c38(A__U41(a__U41(a__U31(mark(z0)), x1), x2), MARK(U41(U31(z0), x1))) MARK(U41(U41(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U41(mark(z0), z1), x1), x2), MARK(U41(U41(z0, z1), x1))) MARK(U41(U41(U42(z0), x1), x2)) -> c38(A__U41(a__U41(a__U42(mark(z0)), x1), x2), MARK(U41(U42(z0), x1))) MARK(U41(U41(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U51(mark(z0), z1), x1), x2), MARK(U41(U51(z0, z1), x1))) MARK(U41(U41(U52(z0), x1), x2)) -> c38(A__U41(a__U41(a__U52(mark(z0)), x1), x2), MARK(U41(U52(z0), x1))) MARK(U41(U41(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U41(a__U61(mark(z0), z1, z2), x1), x2), MARK(U41(U61(z0, z1, z2), x1))) MARK(U41(U41(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U62(mark(z0), z1), x1), x2), MARK(U41(U62(z0, z1), x1))) MARK(U41(U41(length(z0), x1), x2)) -> c38(A__U41(a__U41(a__length(mark(z0)), x1), x2), MARK(U41(length(z0), x1))) MARK(U41(U41(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U41(cons(mark(z0), z1), x1), x2), MARK(U41(cons(z0, z1), x1))) MARK(U41(U41(s(z0), x1), x2)) -> c38(A__U41(a__U41(s(mark(z0)), x1), x2), MARK(U41(s(z0), x1))) MARK(U41(U41(x0, z1), x2)) -> c38(MARK(U41(x0, z1))) MARK(U41(U41(0, x1), x2)) -> c38(A__U41(a__U41(0, x1), x2)) MARK(U41(U41(nil, x1), x2)) -> c38(A__U41(a__U41(nil, x1), x2)) MARK(U41(U41(zeros, x1), x2)) -> c2(A__U41(a__U41(a__zeros, x1), x2)) MARK(U41(U41(isNatIList(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNatIList(z0), x1), x2)) MARK(U41(U41(isNatIList(z0), x1), x2)) -> c2(MARK(U41(isNatIList(z0), x1))) MARK(U41(U41(isNatList(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNatList(z0), x1), x2)) MARK(U41(U41(isNatList(z0), x1), x2)) -> c2(MARK(U41(isNatList(z0), x1))) MARK(U41(U41(isNat(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNat(z0), x1), x2)) MARK(U41(U41(isNat(z0), x1), x2)) -> c2(MARK(U41(isNat(z0), x1))) MARK(U41(U41(tt, x1), x2)) -> c2(A__U41(a__U41(tt, x1), x2)) MARK(U41(U41(tt, x1), x2)) -> c2(MARK(U41(tt, x1))) MARK(U41(U42(zeros), x1)) -> c38(A__U41(a__U42(a__zeros), x1), MARK(U42(zeros))) MARK(U41(U42(U11(z0)), x1)) -> c38(A__U41(a__U42(a__U11(mark(z0))), x1), MARK(U42(U11(z0)))) MARK(U41(U42(U21(z0)), x1)) -> c38(A__U41(a__U42(a__U21(mark(z0))), x1), MARK(U42(U21(z0)))) MARK(U41(U42(U31(z0)), x1)) -> c38(A__U41(a__U42(a__U31(mark(z0))), x1), MARK(U42(U31(z0)))) MARK(U41(U42(U41(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U41(mark(z0), z1)), x1), MARK(U42(U41(z0, z1)))) MARK(U41(U42(U42(z0)), x1)) -> c38(A__U41(a__U42(a__U42(mark(z0))), x1), MARK(U42(U42(z0)))) MARK(U41(U42(isNatIList(z0)), x1)) -> c38(A__U41(a__U42(a__isNatIList(z0)), x1), MARK(U42(isNatIList(z0)))) MARK(U41(U42(U51(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U51(mark(z0), z1)), x1), MARK(U42(U51(z0, z1)))) MARK(U41(U42(U52(z0)), x1)) -> c38(A__U41(a__U42(a__U52(mark(z0))), x1), MARK(U42(U52(z0)))) MARK(U41(U42(isNatList(z0)), x1)) -> c38(A__U41(a__U42(a__isNatList(z0)), x1), MARK(U42(isNatList(z0)))) MARK(U41(U42(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U42(a__U61(mark(z0), z1, z2)), x1), MARK(U42(U61(z0, z1, z2)))) MARK(U41(U42(U62(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U62(mark(z0), z1)), x1), MARK(U42(U62(z0, z1)))) MARK(U41(U42(isNat(z0)), x1)) -> c38(A__U41(a__U42(a__isNat(z0)), x1), MARK(U42(isNat(z0)))) MARK(U41(U42(length(z0)), x1)) -> c38(A__U41(a__U42(a__length(mark(z0))), x1), MARK(U42(length(z0)))) MARK(U41(U42(cons(z0, z1)), x1)) -> c38(A__U41(a__U42(cons(mark(z0), z1)), x1), MARK(U42(cons(z0, z1)))) MARK(U41(U42(0), x1)) -> c38(A__U41(a__U42(0), x1), MARK(U42(0))) MARK(U41(U42(tt), x1)) -> c38(A__U41(a__U42(tt), x1), MARK(U42(tt))) MARK(U41(U42(s(z0)), x1)) -> c38(A__U41(a__U42(s(mark(z0))), x1), MARK(U42(s(z0)))) MARK(U41(U42(nil), x1)) -> c38(A__U41(a__U42(nil), x1), MARK(U42(nil))) MARK(U41(U42(x0), x1)) -> c38(MARK(U42(x0))) MARK(U41(U51(U11(z0), x1), x2)) -> c38(A__U41(a__U51(a__U11(mark(z0)), x1), x2), MARK(U51(U11(z0), x1))) MARK(U41(U51(U21(z0), x1), x2)) -> c38(A__U41(a__U51(a__U21(mark(z0)), x1), x2), MARK(U51(U21(z0), x1))) MARK(U41(U51(U31(z0), x1), x2)) -> c38(A__U41(a__U51(a__U31(mark(z0)), x1), x2), MARK(U51(U31(z0), x1))) MARK(U41(U51(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U41(mark(z0), z1), x1), x2), MARK(U51(U41(z0, z1), x1))) MARK(U41(U51(U42(z0), x1), x2)) -> c38(A__U41(a__U51(a__U42(mark(z0)), x1), x2), MARK(U51(U42(z0), x1))) MARK(U41(U51(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U51(mark(z0), z1), x1), x2), MARK(U51(U51(z0, z1), x1))) MARK(U41(U51(U52(z0), x1), x2)) -> c38(A__U41(a__U51(a__U52(mark(z0)), x1), x2), MARK(U51(U52(z0), x1))) MARK(U41(U51(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U51(a__U61(mark(z0), z1, z2), x1), x2), MARK(U51(U61(z0, z1, z2), x1))) MARK(U41(U51(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U62(mark(z0), z1), x1), x2), MARK(U51(U62(z0, z1), x1))) MARK(U41(U51(length(z0), x1), x2)) -> c38(A__U41(a__U51(a__length(mark(z0)), x1), x2), MARK(U51(length(z0), x1))) MARK(U41(U51(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U51(cons(mark(z0), z1), x1), x2), MARK(U51(cons(z0, z1), x1))) MARK(U41(U51(s(z0), x1), x2)) -> c38(A__U41(a__U51(s(mark(z0)), x1), x2), MARK(U51(s(z0), x1))) MARK(U41(U51(x0, z1), x2)) -> c38(MARK(U51(x0, z1))) MARK(U41(U51(0, x1), x2)) -> c38(A__U41(a__U51(0, x1), x2)) MARK(U41(U51(nil, x1), x2)) -> c38(A__U41(a__U51(nil, x1), x2)) MARK(U41(U51(zeros, x1), x2)) -> c3(A__U41(a__U51(a__zeros, x1), x2)) MARK(U41(U51(zeros, x1), x2)) -> c3(MARK(U51(zeros, x1))) MARK(U41(U51(isNatIList(z0), x1), x2)) -> c3(A__U41(a__U51(a__isNatIList(z0), x1), x2)) MARK(U41(U51(isNatIList(z0), x1), x2)) -> c3(MARK(U51(isNatIList(z0), x1))) MARK(U41(U51(isNatList(z0), x1), x2)) -> c3(A__U41(a__U51(a__isNatList(z0), x1), x2)) MARK(U41(U51(isNatList(z0), x1), x2)) -> c3(MARK(U51(isNatList(z0), x1))) MARK(U41(U51(isNat(z0), x1), x2)) -> c3(A__U41(a__U51(a__isNat(z0), x1), x2)) MARK(U41(U51(isNat(z0), x1), x2)) -> c3(MARK(U51(isNat(z0), x1))) MARK(U41(U51(tt, x1), x2)) -> c3(A__U41(a__U51(tt, x1), x2)) MARK(U41(U51(tt, x1), x2)) -> c3(MARK(U51(tt, x1))) MARK(U41(U52(zeros), x1)) -> c38(A__U41(a__U52(a__zeros), x1), MARK(U52(zeros))) MARK(U41(U52(U11(z0)), x1)) -> c38(A__U41(a__U52(a__U11(mark(z0))), x1), MARK(U52(U11(z0)))) MARK(U41(U52(U21(z0)), x1)) -> c38(A__U41(a__U52(a__U21(mark(z0))), x1), MARK(U52(U21(z0)))) MARK(U41(U52(U31(z0)), x1)) -> c38(A__U41(a__U52(a__U31(mark(z0))), x1), MARK(U52(U31(z0)))) MARK(U41(U52(U41(z0, z1)), x1)) -> c38(A__U41(a__U52(a__U41(mark(z0), z1)), x1), MARK(U52(U41(z0, z1)))) MARK(U41(U52(U42(z0)), x1)) -> c38(A__U41(a__U52(a__U42(mark(z0))), x1), MARK(U52(U42(z0)))) MARK(U41(U52(isNatIList(z0)), x1)) -> c38(A__U41(a__U52(a__isNatIList(z0)), x1), MARK(U52(isNatIList(z0)))) MARK(U41(U52(U51(z0, z1)), x1)) -> c38(A__U41(a__U52(a__U51(mark(z0), z1)), x1), MARK(U52(U51(z0, z1)))) MARK(U41(U52(U52(z0)), x1)) -> c38(A__U41(a__U52(a__U52(mark(z0))), x1), MARK(U52(U52(z0)))) MARK(U41(U52(isNatList(z0)), x1)) -> c38(A__U41(a__U52(a__isNatList(z0)), x1), MARK(U52(isNatList(z0)))) MARK(U41(U52(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U52(a__U61(mark(z0), z1, z2)), x1), MARK(U52(U61(z0, z1, z2)))) MARK(U41(U52(U62(z0, z1)), x1)) -> c38(A__U41(a__U52(a__U62(mark(z0), z1)), x1), MARK(U52(U62(z0, z1)))) MARK(U41(U52(isNat(z0)), x1)) -> c38(A__U41(a__U52(a__isNat(z0)), x1), MARK(U52(isNat(z0)))) MARK(U41(U52(length(z0)), x1)) -> c38(A__U41(a__U52(a__length(mark(z0))), x1), MARK(U52(length(z0)))) MARK(U41(U52(cons(z0, z1)), x1)) -> c38(A__U41(a__U52(cons(mark(z0), z1)), x1), MARK(U52(cons(z0, z1)))) MARK(U41(U52(0), x1)) -> c38(A__U41(a__U52(0), x1), MARK(U52(0))) MARK(U41(U52(tt), x1)) -> c38(A__U41(a__U52(tt), x1), MARK(U52(tt))) MARK(U41(U52(s(z0)), x1)) -> c38(A__U41(a__U52(s(mark(z0))), x1), MARK(U52(s(z0)))) MARK(U41(U52(nil), x1)) -> c38(A__U41(a__U52(nil), x1), MARK(U52(nil))) MARK(U41(U52(x0), x1)) -> c38(MARK(U52(x0))) MARK(U41(U61(zeros, x1, x2), x3)) -> c38(A__U41(a__U61(a__zeros, x1, x2), x3), MARK(U61(zeros, x1, x2))) MARK(U41(U61(U11(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U11(mark(z0)), x1, x2), x3), MARK(U61(U11(z0), x1, x2))) MARK(U41(U61(U21(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U21(mark(z0)), x1, x2), x3), MARK(U61(U21(z0), x1, x2))) MARK(U41(U61(U31(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U31(mark(z0)), x1, x2), x3), MARK(U61(U31(z0), x1, x2))) MARK(U41(U61(U41(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(a__U41(mark(z0), z1), x1, x2), x3), MARK(U61(U41(z0, z1), x1, x2))) MARK(U41(U61(U42(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U42(mark(z0)), x1, x2), x3), MARK(U61(U42(z0), x1, x2))) MARK(U41(U61(isNatIList(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__isNatIList(z0), x1, x2), x3), MARK(U61(isNatIList(z0), x1, x2))) MARK(U41(U61(U51(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(a__U51(mark(z0), z1), x1, x2), x3), MARK(U61(U51(z0, z1), x1, x2))) MARK(U41(U61(U52(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U52(mark(z0)), x1, x2), x3), MARK(U61(U52(z0), x1, x2))) MARK(U41(U61(isNatList(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__isNatList(z0), x1, x2), x3), MARK(U61(isNatList(z0), x1, x2))) MARK(U41(U61(U61(z0, z1, z2), x1, x2), x3)) -> c38(A__U41(a__U61(a__U61(mark(z0), z1, z2), x1, x2), x3), MARK(U61(U61(z0, z1, z2), x1, x2))) MARK(U41(U61(U62(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(a__U62(mark(z0), z1), x1, x2), x3), MARK(U61(U62(z0, z1), x1, x2))) MARK(U41(U61(isNat(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__isNat(z0), x1, x2), x3), MARK(U61(isNat(z0), x1, x2))) MARK(U41(U61(length(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__length(mark(z0)), x1, x2), x3), MARK(U61(length(z0), x1, x2))) MARK(U41(U61(cons(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(cons(mark(z0), z1), x1, x2), x3), MARK(U61(cons(z0, z1), x1, x2))) MARK(U41(U61(tt, x1, x2), x3)) -> c38(A__U41(a__U61(tt, x1, x2), x3), MARK(U61(tt, x1, x2))) MARK(U41(U61(s(z0), x1, x2), x3)) -> c38(A__U41(a__U61(s(mark(z0)), x1, x2), x3), MARK(U61(s(z0), x1, x2))) MARK(U41(U61(x0, z1, z2), x3)) -> c38(MARK(U61(x0, z1, z2))) MARK(U41(U61(0, x1, x2), x3)) -> c38(A__U41(a__U61(0, x1, x2), x3)) MARK(U41(U61(nil, x1, x2), x3)) -> c38(A__U41(a__U61(nil, x1, x2), x3)) MARK(U41(U62(zeros, x1), x2)) -> c38(A__U41(a__U62(a__zeros, x1), x2), MARK(U62(zeros, x1))) MARK(U41(U62(U11(z0), x1), x2)) -> c38(A__U41(a__U62(a__U11(mark(z0)), x1), x2), MARK(U62(U11(z0), x1))) MARK(U41(U62(U21(z0), x1), x2)) -> c38(A__U41(a__U62(a__U21(mark(z0)), x1), x2), MARK(U62(U21(z0), x1))) MARK(U41(U62(U31(z0), x1), x2)) -> c38(A__U41(a__U62(a__U31(mark(z0)), x1), x2), MARK(U62(U31(z0), x1))) MARK(U41(U62(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U62(a__U41(mark(z0), z1), x1), x2), MARK(U62(U41(z0, z1), x1))) MARK(U41(U62(U42(z0), x1), x2)) -> c38(A__U41(a__U62(a__U42(mark(z0)), x1), x2), MARK(U62(U42(z0), x1))) MARK(U41(U62(isNatIList(z0), x1), x2)) -> c38(A__U41(a__U62(a__isNatIList(z0), x1), x2), MARK(U62(isNatIList(z0), x1))) MARK(U41(U62(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U62(a__U51(mark(z0), z1), x1), x2), MARK(U62(U51(z0, z1), x1))) MARK(U41(U62(U52(z0), x1), x2)) -> c38(A__U41(a__U62(a__U52(mark(z0)), x1), x2), MARK(U62(U52(z0), x1))) MARK(U41(U62(isNatList(z0), x1), x2)) -> c38(A__U41(a__U62(a__isNatList(z0), x1), x2), MARK(U62(isNatList(z0), x1))) MARK(U41(U62(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U62(a__U61(mark(z0), z1, z2), x1), x2), MARK(U62(U61(z0, z1, z2), x1))) MARK(U41(U62(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U62(a__U62(mark(z0), z1), x1), x2), MARK(U62(U62(z0, z1), x1))) MARK(U41(U62(isNat(z0), x1), x2)) -> c38(A__U41(a__U62(a__isNat(z0), x1), x2), MARK(U62(isNat(z0), x1))) MARK(U41(U62(length(z0), x1), x2)) -> c38(A__U41(a__U62(a__length(mark(z0)), x1), x2), MARK(U62(length(z0), x1))) MARK(U41(U62(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U62(cons(mark(z0), z1), x1), x2), MARK(U62(cons(z0, z1), x1))) MARK(U41(U62(tt, x1), x2)) -> c38(A__U41(a__U62(tt, x1), x2), MARK(U62(tt, x1))) MARK(U41(U62(s(z0), x1), x2)) -> c38(A__U41(a__U62(s(mark(z0)), x1), x2), MARK(U62(s(z0), x1))) MARK(U41(U62(x0, z1), x2)) -> c38(MARK(U62(x0, z1))) MARK(U41(U62(0, x1), x2)) -> c38(A__U41(a__U62(0, x1), x2)) MARK(U41(U62(nil, x1), x2)) -> c38(A__U41(a__U62(nil, x1), x2)) MARK(U41(length(zeros), x1)) -> c38(A__U41(a__length(a__zeros), x1), MARK(length(zeros))) MARK(U41(length(U11(z0)), x1)) -> c38(A__U41(a__length(a__U11(mark(z0))), x1), MARK(length(U11(z0)))) MARK(U41(length(U21(z0)), x1)) -> c38(A__U41(a__length(a__U21(mark(z0))), x1), MARK(length(U21(z0)))) MARK(U41(length(U31(z0)), x1)) -> c38(A__U41(a__length(a__U31(mark(z0))), x1), MARK(length(U31(z0)))) MARK(U41(length(U41(z0, z1)), x1)) -> c38(A__U41(a__length(a__U41(mark(z0), z1)), x1), MARK(length(U41(z0, z1)))) MARK(U41(length(U42(z0)), x1)) -> c38(A__U41(a__length(a__U42(mark(z0))), x1), MARK(length(U42(z0)))) MARK(U41(length(isNatIList(z0)), x1)) -> c38(A__U41(a__length(a__isNatIList(z0)), x1), MARK(length(isNatIList(z0)))) MARK(U41(length(U51(z0, z1)), x1)) -> c38(A__U41(a__length(a__U51(mark(z0), z1)), x1), MARK(length(U51(z0, z1)))) MARK(U41(length(U52(z0)), x1)) -> c38(A__U41(a__length(a__U52(mark(z0))), x1), MARK(length(U52(z0)))) MARK(U41(length(isNatList(z0)), x1)) -> c38(A__U41(a__length(a__isNatList(z0)), x1), MARK(length(isNatList(z0)))) MARK(U41(length(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__length(a__U61(mark(z0), z1, z2)), x1), MARK(length(U61(z0, z1, z2)))) MARK(U41(length(U62(z0, z1)), x1)) -> c38(A__U41(a__length(a__U62(mark(z0), z1)), x1), MARK(length(U62(z0, z1)))) MARK(U41(length(isNat(z0)), x1)) -> c38(A__U41(a__length(a__isNat(z0)), x1), MARK(length(isNat(z0)))) MARK(U41(length(length(z0)), x1)) -> c38(A__U41(a__length(a__length(mark(z0))), x1), MARK(length(length(z0)))) MARK(U41(length(cons(z0, z1)), x1)) -> c38(A__U41(a__length(cons(mark(z0), z1)), x1), MARK(length(cons(z0, z1)))) MARK(U41(length(s(z0)), x1)) -> c38(A__U41(a__length(s(mark(z0))), x1), MARK(length(s(z0)))) MARK(U41(length(x0), x1)) -> c38(MARK(length(x0))) MARK(U41(length(0), x1)) -> c38(A__U41(a__length(0), x1)) MARK(U41(length(tt), x1)) -> c38(A__U41(a__length(tt), x1)) MARK(U41(length(nil), x1)) -> c38(A__U41(a__length(nil), x1)) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__U31(a__isNatList(z0)), x1)) MARK(U41(isNatIList(zeros), x1)) -> c(A__U41(tt, x1)) MARK(U41(isNatIList(cons(z0, z1)), x1)) -> c(A__U41(a__U41(a__isNat(z0), z1), x1)) MARK(U41(isNatList(nil), x1)) -> c(A__U41(tt, x1)) MARK(U41(isNatList(cons(z0, z1)), x1)) -> c(A__U41(a__U51(a__isNat(z0), z1), x1)) S tuples: MARK(isNatIList(z0)) -> c40(A__ISNATILIST(z0)) MARK(isNatList(z0)) -> c43(A__ISNATLIST(z0)) MARK(isNat(z0)) -> c46(A__ISNAT(z0)) MARK(cons(z0, z1)) -> c48(MARK(z0)) MARK(s(z0)) -> c51(MARK(z0)) A__U41(tt, z0) -> c8(A__ISNATILIST(z0)) A__U51(tt, z0) -> c12(A__ISNATLIST(z0)) A__ISNAT(length(z0)) -> c21(A__ISNATLIST(z0)) A__ISNAT(s(z0)) -> c22(A__ISNAT(z0)) A__ISNATILIST(z0) -> c24(A__ISNATLIST(z0)) MARK(U11(z0)) -> c35(MARK(z0)) MARK(U21(z0)) -> c36(MARK(z0)) MARK(U31(z0)) -> c37(MARK(z0)) MARK(U42(z0)) -> c39(MARK(z0)) MARK(U52(z0)) -> c42(MARK(z0)) A__U61(tt, x0, 0) -> c16(A__U62(tt, x0)) A__U61(tt, x0, z0) -> c16(A__ISNAT(z0)) A__U62(tt, cons(z0, z1)) -> c18(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__U62(tt, s(z0)) -> c18(MARK(s(z0))) A__ISNATILIST(cons(0, x1)) -> c26(A__U41(tt, x1)) A__ISNATILIST(cons(z0, x1)) -> c26(A__ISNAT(z0)) A__ISNATLIST(cons(0, x1)) -> c29(A__U51(tt, x1)) A__ISNATLIST(cons(z0, x1)) -> c29(A__ISNAT(z0)) A__LENGTH(cons(x0, nil)) -> c32(A__U61(tt, nil, x0)) A__LENGTH(cons(x0, z0)) -> c32(A__ISNATLIST(z0)) MARK(U41(cons(z0, z1), x1)) -> c38(MARK(cons(z0, z1))) MARK(U41(tt, x1)) -> c38(A__U41(tt, x1)) MARK(U41(s(z0), x1)) -> c38(MARK(s(z0))) MARK(U41(isNatIList(z0), x1)) -> c(MARK(isNatIList(z0))) MARK(U41(isNatList(z0), x1)) -> c(MARK(isNatList(z0))) MARK(U41(isNat(z0), x1)) -> c(A__U41(a__isNat(z0), x1)) MARK(U41(isNat(z0), x1)) -> c(MARK(isNat(z0))) MARK(U51(U11(z0), x1)) -> c41(A__U51(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U51(U21(z0), x1)) -> c41(A__U51(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U51(U31(z0), x1)) -> c41(A__U51(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U51(U41(z0, z1), x1)) -> c41(A__U51(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U51(U42(z0), x1)) -> c41(A__U51(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U51(U51(z0, z1), x1)) -> c41(A__U51(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U51(U52(z0), x1)) -> c41(A__U51(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U51(U61(z0, z1, z2), x1)) -> c41(A__U51(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U51(U62(z0, z1), x1)) -> c41(A__U51(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U51(length(z0), x1)) -> c41(A__U51(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U51(zeros, x1)) -> c41(A__U51(a__zeros, x1)) MARK(U51(cons(z0, z1), x1)) -> c41(MARK(cons(z0, z1))) MARK(U51(tt, x1)) -> c41(A__U51(tt, x1)) MARK(U51(s(z0), x1)) -> c41(MARK(s(z0))) MARK(U51(isNatIList(z0), x1)) -> c1(A__U51(a__isNatIList(z0), x1)) MARK(U51(isNatIList(z0), x1)) -> c1(MARK(isNatIList(z0))) MARK(U51(isNatList(z0), x1)) -> c1(A__U51(a__isNatList(z0), x1)) MARK(U51(isNatList(z0), x1)) -> c1(MARK(isNatList(z0))) MARK(U51(isNat(z0), x1)) -> c1(A__U51(a__isNat(z0), x1)) MARK(U51(isNat(z0), x1)) -> c1(MARK(isNat(z0))) MARK(U61(U11(z0), x1, x2)) -> c44(A__U61(a__U11(mark(z0)), x1, x2), MARK(U11(z0))) MARK(U61(U21(z0), x1, x2)) -> c44(A__U61(a__U21(mark(z0)), x1, x2), MARK(U21(z0))) MARK(U61(U31(z0), x1, x2)) -> c44(A__U61(a__U31(mark(z0)), x1, x2), MARK(U31(z0))) MARK(U61(U41(z0, z1), x1, x2)) -> c44(A__U61(a__U41(mark(z0), z1), x1, x2), MARK(U41(z0, z1))) MARK(U61(U42(z0), x1, x2)) -> c44(A__U61(a__U42(mark(z0)), x1, x2), MARK(U42(z0))) MARK(U61(isNatIList(z0), x1, x2)) -> c44(A__U61(a__isNatIList(z0), x1, x2), MARK(isNatIList(z0))) MARK(U61(U51(z0, z1), x1, x2)) -> c44(A__U61(a__U51(mark(z0), z1), x1, x2), MARK(U51(z0, z1))) MARK(U61(U52(z0), x1, x2)) -> c44(A__U61(a__U52(mark(z0)), x1, x2), MARK(U52(z0))) MARK(U61(isNatList(z0), x1, x2)) -> c44(A__U61(a__isNatList(z0), x1, x2), MARK(isNatList(z0))) MARK(U61(U61(z0, z1, z2), x1, x2)) -> c44(A__U61(a__U61(mark(z0), z1, z2), x1, x2), MARK(U61(z0, z1, z2))) MARK(U61(U62(z0, z1), x1, x2)) -> c44(A__U61(a__U62(mark(z0), z1), x1, x2), MARK(U62(z0, z1))) MARK(U61(isNat(z0), x1, x2)) -> c44(A__U61(a__isNat(z0), x1, x2), MARK(isNat(z0))) MARK(U61(length(z0), x1, x2)) -> c44(A__U61(a__length(mark(z0)), x1, x2), MARK(length(z0))) MARK(U61(zeros, x1, x2)) -> c44(A__U61(a__zeros, x1, x2)) MARK(U61(cons(z0, z1), x1, x2)) -> c44(MARK(cons(z0, z1))) MARK(U61(tt, x1, x2)) -> c44(A__U61(tt, x1, x2)) MARK(U61(s(z0), x1, x2)) -> c44(MARK(s(z0))) MARK(U62(U11(z0), x1)) -> c45(A__U62(a__U11(mark(z0)), x1), MARK(U11(z0))) MARK(U62(U21(z0), x1)) -> c45(A__U62(a__U21(mark(z0)), x1), MARK(U21(z0))) MARK(U62(U31(z0), x1)) -> c45(A__U62(a__U31(mark(z0)), x1), MARK(U31(z0))) MARK(U62(U41(z0, z1), x1)) -> c45(A__U62(a__U41(mark(z0), z1), x1), MARK(U41(z0, z1))) MARK(U62(U42(z0), x1)) -> c45(A__U62(a__U42(mark(z0)), x1), MARK(U42(z0))) MARK(U62(isNatIList(z0), x1)) -> c45(A__U62(a__isNatIList(z0), x1), MARK(isNatIList(z0))) MARK(U62(U51(z0, z1), x1)) -> c45(A__U62(a__U51(mark(z0), z1), x1), MARK(U51(z0, z1))) MARK(U62(U52(z0), x1)) -> c45(A__U62(a__U52(mark(z0)), x1), MARK(U52(z0))) MARK(U62(isNatList(z0), x1)) -> c45(A__U62(a__isNatList(z0), x1), MARK(isNatList(z0))) MARK(U62(U61(z0, z1, z2), x1)) -> c45(A__U62(a__U61(mark(z0), z1, z2), x1), MARK(U61(z0, z1, z2))) MARK(U62(U62(z0, z1), x1)) -> c45(A__U62(a__U62(mark(z0), z1), x1), MARK(U62(z0, z1))) MARK(U62(isNat(z0), x1)) -> c45(A__U62(a__isNat(z0), x1), MARK(isNat(z0))) MARK(U62(length(z0), x1)) -> c45(A__U62(a__length(mark(z0)), x1), MARK(length(z0))) MARK(U62(zeros, x1)) -> c45(A__U62(a__zeros, x1)) MARK(U62(cons(z0, z1), x1)) -> c45(MARK(cons(z0, z1))) MARK(U62(tt, x1)) -> c45(A__U62(tt, x1)) MARK(U62(s(z0), x1)) -> c45(MARK(s(z0))) MARK(length(U11(z0))) -> c47(A__LENGTH(a__U11(mark(z0))), MARK(U11(z0))) MARK(length(U21(z0))) -> c47(A__LENGTH(a__U21(mark(z0))), MARK(U21(z0))) MARK(length(U31(z0))) -> c47(A__LENGTH(a__U31(mark(z0))), MARK(U31(z0))) MARK(length(U41(z0, z1))) -> c47(A__LENGTH(a__U41(mark(z0), z1)), MARK(U41(z0, z1))) MARK(length(U42(z0))) -> c47(A__LENGTH(a__U42(mark(z0))), MARK(U42(z0))) MARK(length(isNatIList(z0))) -> c47(A__LENGTH(a__isNatIList(z0)), MARK(isNatIList(z0))) MARK(length(U51(z0, z1))) -> c47(A__LENGTH(a__U51(mark(z0), z1)), MARK(U51(z0, z1))) MARK(length(U52(z0))) -> c47(A__LENGTH(a__U52(mark(z0))), MARK(U52(z0))) MARK(length(isNatList(z0))) -> c47(A__LENGTH(a__isNatList(z0)), MARK(isNatList(z0))) MARK(length(U61(z0, z1, z2))) -> c47(A__LENGTH(a__U61(mark(z0), z1, z2)), MARK(U61(z0, z1, z2))) MARK(length(U62(z0, z1))) -> c47(A__LENGTH(a__U62(mark(z0), z1)), MARK(U62(z0, z1))) MARK(length(isNat(z0))) -> c47(A__LENGTH(a__isNat(z0)), MARK(isNat(z0))) MARK(length(length(z0))) -> c47(A__LENGTH(a__length(mark(z0))), MARK(length(z0))) MARK(length(cons(z0, z1))) -> c47(A__LENGTH(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(length(zeros)) -> c47(A__LENGTH(a__zeros)) MARK(length(s(z0))) -> c47(MARK(s(z0))) A__U61(tt, x0, length(nil)) -> c16(A__U62(a__U11(tt), x0), A__ISNAT(length(nil))) A__U61(tt, x0, length(cons(z0, z1))) -> c16(A__U62(a__U11(a__U51(a__isNat(z0), z1)), x0), A__ISNAT(length(cons(z0, z1)))) A__U61(tt, x0, length(z0)) -> c16(A__U62(a__U11(isNatList(z0)), x0), A__ISNAT(length(z0))) A__U61(tt, x0, length(x1)) -> c16(A__ISNAT(length(x1))) A__U61(tt, x0, s(0)) -> c16(A__U62(a__U21(tt), x0), A__ISNAT(s(0))) A__U61(tt, x0, s(length(z0))) -> c16(A__U62(a__U21(a__U11(a__isNatList(z0))), x0), A__ISNAT(s(length(z0)))) A__U61(tt, x0, s(s(z0))) -> c16(A__U62(a__U21(a__U21(a__isNat(z0))), x0), A__ISNAT(s(s(z0)))) A__U61(tt, x0, s(z0)) -> c16(A__U62(a__U21(isNat(z0)), x0), A__ISNAT(s(z0))) A__U61(tt, x0, s(x1)) -> c16(A__ISNAT(s(x1))) A__U62(tt, U11(zeros)) -> c18(A__LENGTH(a__U11(a__zeros)), MARK(U11(zeros))) A__U62(tt, U11(U11(z0))) -> c18(A__LENGTH(a__U11(a__U11(mark(z0)))), MARK(U11(U11(z0)))) A__U62(tt, U11(U21(z0))) -> c18(A__LENGTH(a__U11(a__U21(mark(z0)))), MARK(U11(U21(z0)))) A__U62(tt, U11(U31(z0))) -> c18(A__LENGTH(a__U11(a__U31(mark(z0)))), MARK(U11(U31(z0)))) A__U62(tt, U11(U41(z0, z1))) -> c18(A__LENGTH(a__U11(a__U41(mark(z0), z1))), MARK(U11(U41(z0, z1)))) A__U62(tt, U11(U42(z0))) -> c18(A__LENGTH(a__U11(a__U42(mark(z0)))), MARK(U11(U42(z0)))) A__U62(tt, U11(isNatIList(z0))) -> c18(A__LENGTH(a__U11(a__isNatIList(z0))), MARK(U11(isNatIList(z0)))) A__U62(tt, U11(U51(z0, z1))) -> c18(A__LENGTH(a__U11(a__U51(mark(z0), z1))), MARK(U11(U51(z0, z1)))) A__U62(tt, U11(U52(z0))) -> c18(A__LENGTH(a__U11(a__U52(mark(z0)))), MARK(U11(U52(z0)))) A__U62(tt, U11(isNatList(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(U11(isNatList(z0)))) A__U62(tt, U11(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U11(a__U61(mark(z0), z1, z2))), MARK(U11(U61(z0, z1, z2)))) A__U62(tt, U11(U62(z0, z1))) -> c18(A__LENGTH(a__U11(a__U62(mark(z0), z1))), MARK(U11(U62(z0, z1)))) A__U62(tt, U11(isNat(z0))) -> c18(A__LENGTH(a__U11(a__isNat(z0))), MARK(U11(isNat(z0)))) A__U62(tt, U11(length(z0))) -> c18(A__LENGTH(a__U11(a__length(mark(z0)))), MARK(U11(length(z0)))) A__U62(tt, U11(cons(z0, z1))) -> c18(A__LENGTH(a__U11(cons(mark(z0), z1))), MARK(U11(cons(z0, z1)))) A__U62(tt, U11(0)) -> c18(A__LENGTH(a__U11(0)), MARK(U11(0))) A__U62(tt, U11(tt)) -> c18(A__LENGTH(a__U11(tt)), MARK(U11(tt))) A__U62(tt, U11(s(z0))) -> c18(A__LENGTH(a__U11(s(mark(z0)))), MARK(U11(s(z0)))) A__U62(tt, U11(nil)) -> c18(A__LENGTH(a__U11(nil)), MARK(U11(nil))) A__U62(tt, U11(x0)) -> c18(MARK(U11(x0))) A__U62(tt, U21(zeros)) -> c18(A__LENGTH(a__U21(a__zeros)), MARK(U21(zeros))) A__U62(tt, U21(U11(z0))) -> c18(A__LENGTH(a__U21(a__U11(mark(z0)))), MARK(U21(U11(z0)))) A__U62(tt, U21(U21(z0))) -> c18(A__LENGTH(a__U21(a__U21(mark(z0)))), MARK(U21(U21(z0)))) A__U62(tt, U21(U31(z0))) -> c18(A__LENGTH(a__U21(a__U31(mark(z0)))), MARK(U21(U31(z0)))) A__U62(tt, U21(U41(z0, z1))) -> c18(A__LENGTH(a__U21(a__U41(mark(z0), z1))), MARK(U21(U41(z0, z1)))) A__U62(tt, U21(U42(z0))) -> c18(A__LENGTH(a__U21(a__U42(mark(z0)))), MARK(U21(U42(z0)))) A__U62(tt, U21(isNatIList(z0))) -> c18(A__LENGTH(a__U21(a__isNatIList(z0))), MARK(U21(isNatIList(z0)))) A__U62(tt, U21(U51(z0, z1))) -> c18(A__LENGTH(a__U21(a__U51(mark(z0), z1))), MARK(U21(U51(z0, z1)))) A__U62(tt, U21(U52(z0))) -> c18(A__LENGTH(a__U21(a__U52(mark(z0)))), MARK(U21(U52(z0)))) A__U62(tt, U21(isNatList(z0))) -> c18(A__LENGTH(a__U21(a__isNatList(z0))), MARK(U21(isNatList(z0)))) A__U62(tt, U21(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U21(a__U61(mark(z0), z1, z2))), MARK(U21(U61(z0, z1, z2)))) A__U62(tt, U21(U62(z0, z1))) -> c18(A__LENGTH(a__U21(a__U62(mark(z0), z1))), MARK(U21(U62(z0, z1)))) A__U62(tt, U21(isNat(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(U21(isNat(z0)))) A__U62(tt, U21(length(z0))) -> c18(A__LENGTH(a__U21(a__length(mark(z0)))), MARK(U21(length(z0)))) A__U62(tt, U21(cons(z0, z1))) -> c18(A__LENGTH(a__U21(cons(mark(z0), z1))), MARK(U21(cons(z0, z1)))) A__U62(tt, U21(0)) -> c18(A__LENGTH(a__U21(0)), MARK(U21(0))) A__U62(tt, U21(tt)) -> c18(A__LENGTH(a__U21(tt)), MARK(U21(tt))) A__U62(tt, U21(s(z0))) -> c18(A__LENGTH(a__U21(s(mark(z0)))), MARK(U21(s(z0)))) A__U62(tt, U21(nil)) -> c18(A__LENGTH(a__U21(nil)), MARK(U21(nil))) A__U62(tt, U21(x0)) -> c18(MARK(U21(x0))) A__U62(tt, U31(zeros)) -> c18(A__LENGTH(a__U31(a__zeros)), MARK(U31(zeros))) A__U62(tt, U31(U11(z0))) -> c18(A__LENGTH(a__U31(a__U11(mark(z0)))), MARK(U31(U11(z0)))) A__U62(tt, U31(U21(z0))) -> c18(A__LENGTH(a__U31(a__U21(mark(z0)))), MARK(U31(U21(z0)))) A__U62(tt, U31(U31(z0))) -> c18(A__LENGTH(a__U31(a__U31(mark(z0)))), MARK(U31(U31(z0)))) A__U62(tt, U31(U41(z0, z1))) -> c18(A__LENGTH(a__U31(a__U41(mark(z0), z1))), MARK(U31(U41(z0, z1)))) A__U62(tt, U31(U42(z0))) -> c18(A__LENGTH(a__U31(a__U42(mark(z0)))), MARK(U31(U42(z0)))) A__U62(tt, U31(isNatIList(z0))) -> c18(A__LENGTH(a__U31(a__isNatIList(z0))), MARK(U31(isNatIList(z0)))) A__U62(tt, U31(U51(z0, z1))) -> c18(A__LENGTH(a__U31(a__U51(mark(z0), z1))), MARK(U31(U51(z0, z1)))) A__U62(tt, U31(U52(z0))) -> c18(A__LENGTH(a__U31(a__U52(mark(z0)))), MARK(U31(U52(z0)))) A__U62(tt, U31(isNatList(z0))) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(U31(isNatList(z0)))) A__U62(tt, U31(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U31(a__U61(mark(z0), z1, z2))), MARK(U31(U61(z0, z1, z2)))) A__U62(tt, U31(U62(z0, z1))) -> c18(A__LENGTH(a__U31(a__U62(mark(z0), z1))), MARK(U31(U62(z0, z1)))) A__U62(tt, U31(isNat(z0))) -> c18(A__LENGTH(a__U31(a__isNat(z0))), MARK(U31(isNat(z0)))) A__U62(tt, U31(length(z0))) -> c18(A__LENGTH(a__U31(a__length(mark(z0)))), MARK(U31(length(z0)))) A__U62(tt, U31(cons(z0, z1))) -> c18(A__LENGTH(a__U31(cons(mark(z0), z1))), MARK(U31(cons(z0, z1)))) A__U62(tt, U31(0)) -> c18(A__LENGTH(a__U31(0)), MARK(U31(0))) A__U62(tt, U31(tt)) -> c18(A__LENGTH(a__U31(tt)), MARK(U31(tt))) A__U62(tt, U31(s(z0))) -> c18(A__LENGTH(a__U31(s(mark(z0)))), MARK(U31(s(z0)))) A__U62(tt, U31(nil)) -> c18(A__LENGTH(a__U31(nil)), MARK(U31(nil))) A__U62(tt, U31(x0)) -> c18(MARK(U31(x0))) A__U62(tt, U41(U11(z0), x1)) -> c18(A__LENGTH(a__U41(a__U11(mark(z0)), x1)), MARK(U41(U11(z0), x1))) A__U62(tt, U41(U21(z0), x1)) -> c18(A__LENGTH(a__U41(a__U21(mark(z0)), x1)), MARK(U41(U21(z0), x1))) A__U62(tt, U41(U31(z0), x1)) -> c18(A__LENGTH(a__U41(a__U31(mark(z0)), x1)), MARK(U41(U31(z0), x1))) A__U62(tt, U41(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U41(mark(z0), z1), x1)), MARK(U41(U41(z0, z1), x1))) A__U62(tt, U41(U42(z0), x1)) -> c18(A__LENGTH(a__U41(a__U42(mark(z0)), x1)), MARK(U41(U42(z0), x1))) A__U62(tt, U41(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatIList(z0), x1)), MARK(U41(isNatIList(z0), x1))) A__U62(tt, U41(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U51(mark(z0), z1), x1)), MARK(U41(U51(z0, z1), x1))) A__U62(tt, U41(U52(z0), x1)) -> c18(A__LENGTH(a__U41(a__U52(mark(z0)), x1)), MARK(U41(U52(z0), x1))) A__U62(tt, U41(isNatList(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNatList(z0), x1)), MARK(U41(isNatList(z0), x1))) A__U62(tt, U41(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U41(a__U61(mark(z0), z1, z2), x1)), MARK(U41(U61(z0, z1, z2), x1))) A__U62(tt, U41(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U41(a__U62(mark(z0), z1), x1)), MARK(U41(U62(z0, z1), x1))) A__U62(tt, U41(isNat(z0), x1)) -> c18(A__LENGTH(a__U41(a__isNat(z0), x1)), MARK(U41(isNat(z0), x1))) A__U62(tt, U41(length(z0), x1)) -> c18(A__LENGTH(a__U41(a__length(mark(z0)), x1)), MARK(U41(length(z0), x1))) A__U62(tt, U41(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U41(cons(mark(z0), z1), x1)), MARK(U41(cons(z0, z1), x1))) A__U62(tt, U41(tt, x1)) -> c18(A__LENGTH(a__U41(tt, x1)), MARK(U41(tt, x1))) A__U62(tt, U41(s(z0), x1)) -> c18(A__LENGTH(a__U41(s(mark(z0)), x1)), MARK(U41(s(z0), x1))) A__U62(tt, U41(x0, z1)) -> c18(MARK(U41(x0, z1))) A__U62(tt, U41(0, x1)) -> c18(A__LENGTH(a__U41(0, x1))) A__U62(tt, U41(nil, x1)) -> c18(A__LENGTH(a__U41(nil, x1))) A__U62(tt, U42(zeros)) -> c18(A__LENGTH(a__U42(a__zeros)), MARK(U42(zeros))) A__U62(tt, U42(U11(z0))) -> c18(A__LENGTH(a__U42(a__U11(mark(z0)))), MARK(U42(U11(z0)))) A__U62(tt, U42(U21(z0))) -> c18(A__LENGTH(a__U42(a__U21(mark(z0)))), MARK(U42(U21(z0)))) A__U62(tt, U42(U31(z0))) -> c18(A__LENGTH(a__U42(a__U31(mark(z0)))), MARK(U42(U31(z0)))) A__U62(tt, U42(U41(z0, z1))) -> c18(A__LENGTH(a__U42(a__U41(mark(z0), z1))), MARK(U42(U41(z0, z1)))) A__U62(tt, U42(U42(z0))) -> c18(A__LENGTH(a__U42(a__U42(mark(z0)))), MARK(U42(U42(z0)))) A__U62(tt, U42(isNatIList(z0))) -> c18(A__LENGTH(a__U42(a__isNatIList(z0))), MARK(U42(isNatIList(z0)))) A__U62(tt, U42(U51(z0, z1))) -> c18(A__LENGTH(a__U42(a__U51(mark(z0), z1))), MARK(U42(U51(z0, z1)))) A__U62(tt, U42(U52(z0))) -> c18(A__LENGTH(a__U42(a__U52(mark(z0)))), MARK(U42(U52(z0)))) A__U62(tt, U42(isNatList(z0))) -> c18(A__LENGTH(a__U42(a__isNatList(z0))), MARK(U42(isNatList(z0)))) A__U62(tt, U42(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U42(a__U61(mark(z0), z1, z2))), MARK(U42(U61(z0, z1, z2)))) A__U62(tt, U42(U62(z0, z1))) -> c18(A__LENGTH(a__U42(a__U62(mark(z0), z1))), MARK(U42(U62(z0, z1)))) A__U62(tt, U42(isNat(z0))) -> c18(A__LENGTH(a__U42(a__isNat(z0))), MARK(U42(isNat(z0)))) A__U62(tt, U42(length(z0))) -> c18(A__LENGTH(a__U42(a__length(mark(z0)))), MARK(U42(length(z0)))) A__U62(tt, U42(cons(z0, z1))) -> c18(A__LENGTH(a__U42(cons(mark(z0), z1))), MARK(U42(cons(z0, z1)))) A__U62(tt, U42(0)) -> c18(A__LENGTH(a__U42(0)), MARK(U42(0))) A__U62(tt, U42(tt)) -> c18(A__LENGTH(a__U42(tt)), MARK(U42(tt))) A__U62(tt, U42(s(z0))) -> c18(A__LENGTH(a__U42(s(mark(z0)))), MARK(U42(s(z0)))) A__U62(tt, U42(nil)) -> c18(A__LENGTH(a__U42(nil)), MARK(U42(nil))) A__U62(tt, U42(x0)) -> c18(MARK(U42(x0))) A__U62(tt, isNatIList(z0)) -> c18(A__LENGTH(a__U31(a__isNatList(z0))), MARK(isNatIList(z0))) A__U62(tt, isNatIList(cons(z0, z1))) -> c18(A__LENGTH(a__U41(a__isNat(z0), z1)), MARK(isNatIList(cons(z0, z1)))) A__U62(tt, isNatIList(zeros)) -> c18(MARK(isNatIList(zeros))) A__U62(tt, isNatIList(z0)) -> c18(MARK(isNatIList(z0))) A__U62(tt, U51(zeros, x1)) -> c18(A__LENGTH(a__U51(a__zeros, x1)), MARK(U51(zeros, x1))) A__U62(tt, U51(U11(z0), x1)) -> c18(A__LENGTH(a__U51(a__U11(mark(z0)), x1)), MARK(U51(U11(z0), x1))) A__U62(tt, U51(U21(z0), x1)) -> c18(A__LENGTH(a__U51(a__U21(mark(z0)), x1)), MARK(U51(U21(z0), x1))) A__U62(tt, U51(U31(z0), x1)) -> c18(A__LENGTH(a__U51(a__U31(mark(z0)), x1)), MARK(U51(U31(z0), x1))) A__U62(tt, U51(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U41(mark(z0), z1), x1)), MARK(U51(U41(z0, z1), x1))) A__U62(tt, U51(U42(z0), x1)) -> c18(A__LENGTH(a__U51(a__U42(mark(z0)), x1)), MARK(U51(U42(z0), x1))) A__U62(tt, U51(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatIList(z0), x1)), MARK(U51(isNatIList(z0), x1))) A__U62(tt, U51(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U51(mark(z0), z1), x1)), MARK(U51(U51(z0, z1), x1))) A__U62(tt, U51(U52(z0), x1)) -> c18(A__LENGTH(a__U51(a__U52(mark(z0)), x1)), MARK(U51(U52(z0), x1))) A__U62(tt, U51(isNatList(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNatList(z0), x1)), MARK(U51(isNatList(z0), x1))) A__U62(tt, U51(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U51(a__U61(mark(z0), z1, z2), x1)), MARK(U51(U61(z0, z1, z2), x1))) A__U62(tt, U51(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U51(a__U62(mark(z0), z1), x1)), MARK(U51(U62(z0, z1), x1))) A__U62(tt, U51(isNat(z0), x1)) -> c18(A__LENGTH(a__U51(a__isNat(z0), x1)), MARK(U51(isNat(z0), x1))) A__U62(tt, U51(length(z0), x1)) -> c18(A__LENGTH(a__U51(a__length(mark(z0)), x1)), MARK(U51(length(z0), x1))) A__U62(tt, U51(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U51(cons(mark(z0), z1), x1)), MARK(U51(cons(z0, z1), x1))) A__U62(tt, U51(tt, x1)) -> c18(A__LENGTH(a__U51(tt, x1)), MARK(U51(tt, x1))) A__U62(tt, U51(s(z0), x1)) -> c18(A__LENGTH(a__U51(s(mark(z0)), x1)), MARK(U51(s(z0), x1))) A__U62(tt, U51(x0, z1)) -> c18(MARK(U51(x0, z1))) A__U62(tt, U51(0, x1)) -> c18(A__LENGTH(a__U51(0, x1))) A__U62(tt, U51(nil, x1)) -> c18(A__LENGTH(a__U51(nil, x1))) A__U62(tt, U52(zeros)) -> c18(A__LENGTH(a__U52(a__zeros)), MARK(U52(zeros))) A__U62(tt, U52(U11(z0))) -> c18(A__LENGTH(a__U52(a__U11(mark(z0)))), MARK(U52(U11(z0)))) A__U62(tt, U52(U21(z0))) -> c18(A__LENGTH(a__U52(a__U21(mark(z0)))), MARK(U52(U21(z0)))) A__U62(tt, U52(U31(z0))) -> c18(A__LENGTH(a__U52(a__U31(mark(z0)))), MARK(U52(U31(z0)))) A__U62(tt, U52(U41(z0, z1))) -> c18(A__LENGTH(a__U52(a__U41(mark(z0), z1))), MARK(U52(U41(z0, z1)))) A__U62(tt, U52(U42(z0))) -> c18(A__LENGTH(a__U52(a__U42(mark(z0)))), MARK(U52(U42(z0)))) A__U62(tt, U52(isNatIList(z0))) -> c18(A__LENGTH(a__U52(a__isNatIList(z0))), MARK(U52(isNatIList(z0)))) A__U62(tt, U52(U51(z0, z1))) -> c18(A__LENGTH(a__U52(a__U51(mark(z0), z1))), MARK(U52(U51(z0, z1)))) A__U62(tt, U52(U52(z0))) -> c18(A__LENGTH(a__U52(a__U52(mark(z0)))), MARK(U52(U52(z0)))) A__U62(tt, U52(isNatList(z0))) -> c18(A__LENGTH(a__U52(a__isNatList(z0))), MARK(U52(isNatList(z0)))) A__U62(tt, U52(U61(z0, z1, z2))) -> c18(A__LENGTH(a__U52(a__U61(mark(z0), z1, z2))), MARK(U52(U61(z0, z1, z2)))) A__U62(tt, U52(U62(z0, z1))) -> c18(A__LENGTH(a__U52(a__U62(mark(z0), z1))), MARK(U52(U62(z0, z1)))) A__U62(tt, U52(isNat(z0))) -> c18(A__LENGTH(a__U52(a__isNat(z0))), MARK(U52(isNat(z0)))) A__U62(tt, U52(length(z0))) -> c18(A__LENGTH(a__U52(a__length(mark(z0)))), MARK(U52(length(z0)))) A__U62(tt, U52(cons(z0, z1))) -> c18(A__LENGTH(a__U52(cons(mark(z0), z1))), MARK(U52(cons(z0, z1)))) A__U62(tt, U52(0)) -> c18(A__LENGTH(a__U52(0)), MARK(U52(0))) A__U62(tt, U52(tt)) -> c18(A__LENGTH(a__U52(tt)), MARK(U52(tt))) A__U62(tt, U52(s(z0))) -> c18(A__LENGTH(a__U52(s(mark(z0)))), MARK(U52(s(z0)))) A__U62(tt, U52(nil)) -> c18(A__LENGTH(a__U52(nil)), MARK(U52(nil))) A__U62(tt, U52(x0)) -> c18(MARK(U52(x0))) A__U62(tt, isNatList(cons(z0, z1))) -> c18(A__LENGTH(a__U51(a__isNat(z0), z1)), MARK(isNatList(cons(z0, z1)))) A__U62(tt, isNatList(nil)) -> c18(MARK(isNatList(nil))) A__U62(tt, isNatList(z0)) -> c18(MARK(isNatList(z0))) A__U62(tt, U61(zeros, x1, x2)) -> c18(A__LENGTH(a__U61(a__zeros, x1, x2)), MARK(U61(zeros, x1, x2))) A__U62(tt, U61(U11(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U11(mark(z0)), x1, x2)), MARK(U61(U11(z0), x1, x2))) A__U62(tt, U61(U21(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U21(mark(z0)), x1, x2)), MARK(U61(U21(z0), x1, x2))) A__U62(tt, U61(U31(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U31(mark(z0)), x1, x2)), MARK(U61(U31(z0), x1, x2))) A__U62(tt, U61(U41(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U41(mark(z0), z1), x1, x2)), MARK(U61(U41(z0, z1), x1, x2))) A__U62(tt, U61(U42(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U42(mark(z0)), x1, x2)), MARK(U61(U42(z0), x1, x2))) A__U62(tt, U61(isNatIList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatIList(z0), x1, x2)), MARK(U61(isNatIList(z0), x1, x2))) A__U62(tt, U61(U51(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U51(mark(z0), z1), x1, x2)), MARK(U61(U51(z0, z1), x1, x2))) A__U62(tt, U61(U52(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__U52(mark(z0)), x1, x2)), MARK(U61(U52(z0), x1, x2))) A__U62(tt, U61(isNatList(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNatList(z0), x1, x2)), MARK(U61(isNatList(z0), x1, x2))) A__U62(tt, U61(U61(z0, z1, z2), x1, x2)) -> c18(A__LENGTH(a__U61(a__U61(mark(z0), z1, z2), x1, x2)), MARK(U61(U61(z0, z1, z2), x1, x2))) A__U62(tt, U61(U62(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(a__U62(mark(z0), z1), x1, x2)), MARK(U61(U62(z0, z1), x1, x2))) A__U62(tt, U61(isNat(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__isNat(z0), x1, x2)), MARK(U61(isNat(z0), x1, x2))) A__U62(tt, U61(length(z0), x1, x2)) -> c18(A__LENGTH(a__U61(a__length(mark(z0)), x1, x2)), MARK(U61(length(z0), x1, x2))) A__U62(tt, U61(cons(z0, z1), x1, x2)) -> c18(A__LENGTH(a__U61(cons(mark(z0), z1), x1, x2)), MARK(U61(cons(z0, z1), x1, x2))) A__U62(tt, U61(tt, x1, x2)) -> c18(A__LENGTH(a__U61(tt, x1, x2)), MARK(U61(tt, x1, x2))) A__U62(tt, U61(s(z0), x1, x2)) -> c18(A__LENGTH(a__U61(s(mark(z0)), x1, x2)), MARK(U61(s(z0), x1, x2))) A__U62(tt, U61(x0, z1, z2)) -> c18(MARK(U61(x0, z1, z2))) A__U62(tt, U61(0, x1, x2)) -> c18(A__LENGTH(a__U61(0, x1, x2))) A__U62(tt, U61(nil, x1, x2)) -> c18(A__LENGTH(a__U61(nil, x1, x2))) A__U62(tt, U62(zeros, x1)) -> c18(A__LENGTH(a__U62(a__zeros, x1)), MARK(U62(zeros, x1))) A__U62(tt, U62(U11(z0), x1)) -> c18(A__LENGTH(a__U62(a__U11(mark(z0)), x1)), MARK(U62(U11(z0), x1))) A__U62(tt, U62(U21(z0), x1)) -> c18(A__LENGTH(a__U62(a__U21(mark(z0)), x1)), MARK(U62(U21(z0), x1))) A__U62(tt, U62(U31(z0), x1)) -> c18(A__LENGTH(a__U62(a__U31(mark(z0)), x1)), MARK(U62(U31(z0), x1))) A__U62(tt, U62(U41(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U41(mark(z0), z1), x1)), MARK(U62(U41(z0, z1), x1))) A__U62(tt, U62(U42(z0), x1)) -> c18(A__LENGTH(a__U62(a__U42(mark(z0)), x1)), MARK(U62(U42(z0), x1))) A__U62(tt, U62(isNatIList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatIList(z0), x1)), MARK(U62(isNatIList(z0), x1))) A__U62(tt, U62(U51(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U51(mark(z0), z1), x1)), MARK(U62(U51(z0, z1), x1))) A__U62(tt, U62(U52(z0), x1)) -> c18(A__LENGTH(a__U62(a__U52(mark(z0)), x1)), MARK(U62(U52(z0), x1))) A__U62(tt, U62(isNatList(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNatList(z0), x1)), MARK(U62(isNatList(z0), x1))) A__U62(tt, U62(U61(z0, z1, z2), x1)) -> c18(A__LENGTH(a__U62(a__U61(mark(z0), z1, z2), x1)), MARK(U62(U61(z0, z1, z2), x1))) A__U62(tt, U62(U62(z0, z1), x1)) -> c18(A__LENGTH(a__U62(a__U62(mark(z0), z1), x1)), MARK(U62(U62(z0, z1), x1))) A__U62(tt, U62(isNat(z0), x1)) -> c18(A__LENGTH(a__U62(a__isNat(z0), x1)), MARK(U62(isNat(z0), x1))) A__U62(tt, U62(length(z0), x1)) -> c18(A__LENGTH(a__U62(a__length(mark(z0)), x1)), MARK(U62(length(z0), x1))) A__U62(tt, U62(cons(z0, z1), x1)) -> c18(A__LENGTH(a__U62(cons(mark(z0), z1), x1)), MARK(U62(cons(z0, z1), x1))) A__U62(tt, U62(tt, x1)) -> c18(A__LENGTH(a__U62(tt, x1)), MARK(U62(tt, x1))) A__U62(tt, U62(s(z0), x1)) -> c18(A__LENGTH(a__U62(s(mark(z0)), x1)), MARK(U62(s(z0), x1))) A__U62(tt, U62(x0, z1)) -> c18(MARK(U62(x0, z1))) A__U62(tt, U62(0, x1)) -> c18(A__LENGTH(a__U62(0, x1))) A__U62(tt, U62(nil, x1)) -> c18(A__LENGTH(a__U62(nil, x1))) A__U62(tt, isNat(length(z0))) -> c18(A__LENGTH(a__U11(a__isNatList(z0))), MARK(isNat(length(z0)))) A__U62(tt, isNat(s(z0))) -> c18(A__LENGTH(a__U21(a__isNat(z0))), MARK(isNat(s(z0)))) A__U62(tt, isNat(0)) -> c18(MARK(isNat(0))) A__U62(tt, isNat(z0)) -> c18(MARK(isNat(z0))) A__U62(tt, length(zeros)) -> c18(A__LENGTH(a__length(a__zeros)), MARK(length(zeros))) A__U62(tt, length(U11(z0))) -> c18(A__LENGTH(a__length(a__U11(mark(z0)))), MARK(length(U11(z0)))) A__U62(tt, length(U21(z0))) -> c18(A__LENGTH(a__length(a__U21(mark(z0)))), MARK(length(U21(z0)))) A__U62(tt, length(U31(z0))) -> c18(A__LENGTH(a__length(a__U31(mark(z0)))), MARK(length(U31(z0)))) A__U62(tt, length(U41(z0, z1))) -> c18(A__LENGTH(a__length(a__U41(mark(z0), z1))), MARK(length(U41(z0, z1)))) A__U62(tt, length(U42(z0))) -> c18(A__LENGTH(a__length(a__U42(mark(z0)))), MARK(length(U42(z0)))) A__U62(tt, length(isNatIList(z0))) -> c18(A__LENGTH(a__length(a__isNatIList(z0))), MARK(length(isNatIList(z0)))) A__U62(tt, length(U51(z0, z1))) -> c18(A__LENGTH(a__length(a__U51(mark(z0), z1))), MARK(length(U51(z0, z1)))) A__U62(tt, length(U52(z0))) -> c18(A__LENGTH(a__length(a__U52(mark(z0)))), MARK(length(U52(z0)))) A__U62(tt, length(isNatList(z0))) -> c18(A__LENGTH(a__length(a__isNatList(z0))), MARK(length(isNatList(z0)))) A__U62(tt, length(U61(z0, z1, z2))) -> c18(A__LENGTH(a__length(a__U61(mark(z0), z1, z2))), MARK(length(U61(z0, z1, z2)))) A__U62(tt, length(U62(z0, z1))) -> c18(A__LENGTH(a__length(a__U62(mark(z0), z1))), MARK(length(U62(z0, z1)))) A__U62(tt, length(isNat(z0))) -> c18(A__LENGTH(a__length(a__isNat(z0))), MARK(length(isNat(z0)))) A__U62(tt, length(length(z0))) -> c18(A__LENGTH(a__length(a__length(mark(z0)))), MARK(length(length(z0)))) A__U62(tt, length(cons(z0, z1))) -> c18(A__LENGTH(a__length(cons(mark(z0), z1))), MARK(length(cons(z0, z1)))) A__U62(tt, length(s(z0))) -> c18(A__LENGTH(a__length(s(mark(z0)))), MARK(length(s(z0)))) A__U62(tt, length(x0)) -> c18(MARK(length(x0))) A__U62(tt, length(0)) -> c18(A__LENGTH(a__length(0))) A__U62(tt, length(tt)) -> c18(A__LENGTH(a__length(tt))) A__U62(tt, length(nil)) -> c18(A__LENGTH(a__length(nil))) A__U62(tt, zeros) -> c18(A__LENGTH(cons(0, zeros))) A__ISNATILIST(cons(length(nil), x1)) -> c26(A__U41(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATILIST(cons(length(cons(z0, z1)), x1)) -> c26(A__U41(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATILIST(cons(length(z0), x1)) -> c26(A__U41(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATILIST(cons(length(x0), x1)) -> c26(A__ISNAT(length(x0))) A__ISNATILIST(cons(s(0), x1)) -> c26(A__U41(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATILIST(cons(s(length(z0)), x1)) -> c26(A__U41(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATILIST(cons(s(s(z0)), x1)) -> c26(A__U41(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATILIST(cons(s(z0), x1)) -> c26(A__U41(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATILIST(cons(s(x0), x1)) -> c26(A__ISNAT(s(x0))) A__ISNATLIST(cons(length(nil), x1)) -> c29(A__U51(a__U11(tt), x1), A__ISNAT(length(nil))) A__ISNATLIST(cons(length(cons(z0, z1)), x1)) -> c29(A__U51(a__U11(a__U51(a__isNat(z0), z1)), x1), A__ISNAT(length(cons(z0, z1)))) A__ISNATLIST(cons(length(z0), x1)) -> c29(A__U51(a__U11(isNatList(z0)), x1), A__ISNAT(length(z0))) A__ISNATLIST(cons(length(x0), x1)) -> c29(A__ISNAT(length(x0))) A__ISNATLIST(cons(s(0), x1)) -> c29(A__U51(a__U21(tt), x1), A__ISNAT(s(0))) A__ISNATLIST(cons(s(length(z0)), x1)) -> c29(A__U51(a__U21(a__U11(a__isNatList(z0))), x1), A__ISNAT(s(length(z0)))) A__ISNATLIST(cons(s(s(z0)), x1)) -> c29(A__U51(a__U21(a__U21(a__isNat(z0))), x1), A__ISNAT(s(s(z0)))) A__ISNATLIST(cons(s(z0), x1)) -> c29(A__U51(a__U21(isNat(z0)), x1), A__ISNAT(s(z0))) A__ISNATLIST(cons(s(x0), x1)) -> c29(A__ISNAT(s(x0))) A__LENGTH(cons(x0, cons(0, x2))) -> c32(A__U61(a__U51(tt, x2), cons(0, x2), x0), A__ISNATLIST(cons(0, x2))) A__LENGTH(cons(x0, cons(length(z0), x2))) -> c32(A__U61(a__U51(a__U11(a__isNatList(z0)), x2), cons(length(z0), x2), x0), A__ISNATLIST(cons(length(z0), x2))) A__LENGTH(cons(x0, cons(s(z0), x2))) -> c32(A__U61(a__U51(a__U21(a__isNat(z0)), x2), cons(s(z0), x2), x0), A__ISNATLIST(cons(s(z0), x2))) A__LENGTH(cons(x0, cons(z0, x2))) -> c32(A__U61(a__U51(isNat(z0), x2), cons(z0, x2), x0), A__ISNATLIST(cons(z0, x2))) A__LENGTH(cons(x0, cons(x1, z1))) -> c32(A__ISNATLIST(cons(x1, z1))) MARK(U41(U11(zeros), x1)) -> c38(A__U41(a__U11(a__zeros), x1), MARK(U11(zeros))) MARK(U41(U11(U11(z0)), x1)) -> c38(A__U41(a__U11(a__U11(mark(z0))), x1), MARK(U11(U11(z0)))) MARK(U41(U11(U21(z0)), x1)) -> c38(A__U41(a__U11(a__U21(mark(z0))), x1), MARK(U11(U21(z0)))) MARK(U41(U11(U31(z0)), x1)) -> c38(A__U41(a__U11(a__U31(mark(z0))), x1), MARK(U11(U31(z0)))) MARK(U41(U11(U41(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U41(mark(z0), z1)), x1), MARK(U11(U41(z0, z1)))) MARK(U41(U11(U42(z0)), x1)) -> c38(A__U41(a__U11(a__U42(mark(z0))), x1), MARK(U11(U42(z0)))) MARK(U41(U11(isNatIList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatIList(z0)), x1), MARK(U11(isNatIList(z0)))) MARK(U41(U11(U51(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U51(mark(z0), z1)), x1), MARK(U11(U51(z0, z1)))) MARK(U41(U11(U52(z0)), x1)) -> c38(A__U41(a__U11(a__U52(mark(z0))), x1), MARK(U11(U52(z0)))) MARK(U41(U11(isNatList(z0)), x1)) -> c38(A__U41(a__U11(a__isNatList(z0)), x1), MARK(U11(isNatList(z0)))) MARK(U41(U11(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U11(a__U61(mark(z0), z1, z2)), x1), MARK(U11(U61(z0, z1, z2)))) MARK(U41(U11(U62(z0, z1)), x1)) -> c38(A__U41(a__U11(a__U62(mark(z0), z1)), x1), MARK(U11(U62(z0, z1)))) MARK(U41(U11(isNat(z0)), x1)) -> c38(A__U41(a__U11(a__isNat(z0)), x1), MARK(U11(isNat(z0)))) MARK(U41(U11(length(z0)), x1)) -> c38(A__U41(a__U11(a__length(mark(z0))), x1), MARK(U11(length(z0)))) MARK(U41(U11(cons(z0, z1)), x1)) -> c38(A__U41(a__U11(cons(mark(z0), z1)), x1), MARK(U11(cons(z0, z1)))) MARK(U41(U11(0), x1)) -> c38(A__U41(a__U11(0), x1), MARK(U11(0))) MARK(U41(U11(tt), x1)) -> c38(A__U41(a__U11(tt), x1), MARK(U11(tt))) MARK(U41(U11(s(z0)), x1)) -> c38(A__U41(a__U11(s(mark(z0))), x1), MARK(U11(s(z0)))) MARK(U41(U11(nil), x1)) -> c38(A__U41(a__U11(nil), x1), MARK(U11(nil))) MARK(U41(U11(x0), x1)) -> c38(MARK(U11(x0))) MARK(U41(U21(zeros), x1)) -> c38(A__U41(a__U21(a__zeros), x1), MARK(U21(zeros))) MARK(U41(U21(U11(z0)), x1)) -> c38(A__U41(a__U21(a__U11(mark(z0))), x1), MARK(U21(U11(z0)))) MARK(U41(U21(U21(z0)), x1)) -> c38(A__U41(a__U21(a__U21(mark(z0))), x1), MARK(U21(U21(z0)))) MARK(U41(U21(U31(z0)), x1)) -> c38(A__U41(a__U21(a__U31(mark(z0))), x1), MARK(U21(U31(z0)))) MARK(U41(U21(U41(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U41(mark(z0), z1)), x1), MARK(U21(U41(z0, z1)))) MARK(U41(U21(U42(z0)), x1)) -> c38(A__U41(a__U21(a__U42(mark(z0))), x1), MARK(U21(U42(z0)))) MARK(U41(U21(isNatIList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatIList(z0)), x1), MARK(U21(isNatIList(z0)))) MARK(U41(U21(U51(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U51(mark(z0), z1)), x1), MARK(U21(U51(z0, z1)))) MARK(U41(U21(U52(z0)), x1)) -> c38(A__U41(a__U21(a__U52(mark(z0))), x1), MARK(U21(U52(z0)))) MARK(U41(U21(isNatList(z0)), x1)) -> c38(A__U41(a__U21(a__isNatList(z0)), x1), MARK(U21(isNatList(z0)))) MARK(U41(U21(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U21(a__U61(mark(z0), z1, z2)), x1), MARK(U21(U61(z0, z1, z2)))) MARK(U41(U21(U62(z0, z1)), x1)) -> c38(A__U41(a__U21(a__U62(mark(z0), z1)), x1), MARK(U21(U62(z0, z1)))) MARK(U41(U21(isNat(z0)), x1)) -> c38(A__U41(a__U21(a__isNat(z0)), x1), MARK(U21(isNat(z0)))) MARK(U41(U21(length(z0)), x1)) -> c38(A__U41(a__U21(a__length(mark(z0))), x1), MARK(U21(length(z0)))) MARK(U41(U21(cons(z0, z1)), x1)) -> c38(A__U41(a__U21(cons(mark(z0), z1)), x1), MARK(U21(cons(z0, z1)))) MARK(U41(U21(0), x1)) -> c38(A__U41(a__U21(0), x1), MARK(U21(0))) MARK(U41(U21(tt), x1)) -> c38(A__U41(a__U21(tt), x1), MARK(U21(tt))) MARK(U41(U21(s(z0)), x1)) -> c38(A__U41(a__U21(s(mark(z0))), x1), MARK(U21(s(z0)))) MARK(U41(U21(nil), x1)) -> c38(A__U41(a__U21(nil), x1), MARK(U21(nil))) MARK(U41(U21(x0), x1)) -> c38(MARK(U21(x0))) MARK(U41(U31(zeros), x1)) -> c38(A__U41(a__U31(a__zeros), x1), MARK(U31(zeros))) MARK(U41(U31(U11(z0)), x1)) -> c38(A__U41(a__U31(a__U11(mark(z0))), x1), MARK(U31(U11(z0)))) MARK(U41(U31(U21(z0)), x1)) -> c38(A__U41(a__U31(a__U21(mark(z0))), x1), MARK(U31(U21(z0)))) MARK(U41(U31(U31(z0)), x1)) -> c38(A__U41(a__U31(a__U31(mark(z0))), x1), MARK(U31(U31(z0)))) MARK(U41(U31(U41(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U41(mark(z0), z1)), x1), MARK(U31(U41(z0, z1)))) MARK(U41(U31(U42(z0)), x1)) -> c38(A__U41(a__U31(a__U42(mark(z0))), x1), MARK(U31(U42(z0)))) MARK(U41(U31(isNatIList(z0)), x1)) -> c38(A__U41(a__U31(a__isNatIList(z0)), x1), MARK(U31(isNatIList(z0)))) MARK(U41(U31(U51(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U51(mark(z0), z1)), x1), MARK(U31(U51(z0, z1)))) MARK(U41(U31(U52(z0)), x1)) -> c38(A__U41(a__U31(a__U52(mark(z0))), x1), MARK(U31(U52(z0)))) MARK(U41(U31(isNatList(z0)), x1)) -> c38(A__U41(a__U31(a__isNatList(z0)), x1), MARK(U31(isNatList(z0)))) MARK(U41(U31(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U31(a__U61(mark(z0), z1, z2)), x1), MARK(U31(U61(z0, z1, z2)))) MARK(U41(U31(U62(z0, z1)), x1)) -> c38(A__U41(a__U31(a__U62(mark(z0), z1)), x1), MARK(U31(U62(z0, z1)))) MARK(U41(U31(isNat(z0)), x1)) -> c38(A__U41(a__U31(a__isNat(z0)), x1), MARK(U31(isNat(z0)))) MARK(U41(U31(length(z0)), x1)) -> c38(A__U41(a__U31(a__length(mark(z0))), x1), MARK(U31(length(z0)))) MARK(U41(U31(cons(z0, z1)), x1)) -> c38(A__U41(a__U31(cons(mark(z0), z1)), x1), MARK(U31(cons(z0, z1)))) MARK(U41(U31(0), x1)) -> c38(A__U41(a__U31(0), x1), MARK(U31(0))) MARK(U41(U31(tt), x1)) -> c38(A__U41(a__U31(tt), x1), MARK(U31(tt))) MARK(U41(U31(s(z0)), x1)) -> c38(A__U41(a__U31(s(mark(z0))), x1), MARK(U31(s(z0)))) MARK(U41(U31(nil), x1)) -> c38(A__U41(a__U31(nil), x1), MARK(U31(nil))) MARK(U41(U31(x0), x1)) -> c38(MARK(U31(x0))) MARK(U41(U41(U11(z0), x1), x2)) -> c38(A__U41(a__U41(a__U11(mark(z0)), x1), x2), MARK(U41(U11(z0), x1))) MARK(U41(U41(U21(z0), x1), x2)) -> c38(A__U41(a__U41(a__U21(mark(z0)), x1), x2), MARK(U41(U21(z0), x1))) MARK(U41(U41(U31(z0), x1), x2)) -> c38(A__U41(a__U41(a__U31(mark(z0)), x1), x2), MARK(U41(U31(z0), x1))) MARK(U41(U41(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U41(mark(z0), z1), x1), x2), MARK(U41(U41(z0, z1), x1))) MARK(U41(U41(U42(z0), x1), x2)) -> c38(A__U41(a__U41(a__U42(mark(z0)), x1), x2), MARK(U41(U42(z0), x1))) MARK(U41(U41(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U51(mark(z0), z1), x1), x2), MARK(U41(U51(z0, z1), x1))) MARK(U41(U41(U52(z0), x1), x2)) -> c38(A__U41(a__U41(a__U52(mark(z0)), x1), x2), MARK(U41(U52(z0), x1))) MARK(U41(U41(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U41(a__U61(mark(z0), z1, z2), x1), x2), MARK(U41(U61(z0, z1, z2), x1))) MARK(U41(U41(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U41(a__U62(mark(z0), z1), x1), x2), MARK(U41(U62(z0, z1), x1))) MARK(U41(U41(length(z0), x1), x2)) -> c38(A__U41(a__U41(a__length(mark(z0)), x1), x2), MARK(U41(length(z0), x1))) MARK(U41(U41(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U41(cons(mark(z0), z1), x1), x2), MARK(U41(cons(z0, z1), x1))) MARK(U41(U41(s(z0), x1), x2)) -> c38(A__U41(a__U41(s(mark(z0)), x1), x2), MARK(U41(s(z0), x1))) MARK(U41(U41(x0, z1), x2)) -> c38(MARK(U41(x0, z1))) MARK(U41(U41(0, x1), x2)) -> c38(A__U41(a__U41(0, x1), x2)) MARK(U41(U41(nil, x1), x2)) -> c38(A__U41(a__U41(nil, x1), x2)) MARK(U41(U41(zeros, x1), x2)) -> c2(A__U41(a__U41(a__zeros, x1), x2)) MARK(U41(U41(isNatIList(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNatIList(z0), x1), x2)) MARK(U41(U41(isNatIList(z0), x1), x2)) -> c2(MARK(U41(isNatIList(z0), x1))) MARK(U41(U41(isNatList(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNatList(z0), x1), x2)) MARK(U41(U41(isNatList(z0), x1), x2)) -> c2(MARK(U41(isNatList(z0), x1))) MARK(U41(U41(isNat(z0), x1), x2)) -> c2(A__U41(a__U41(a__isNat(z0), x1), x2)) MARK(U41(U41(isNat(z0), x1), x2)) -> c2(MARK(U41(isNat(z0), x1))) MARK(U41(U41(tt, x1), x2)) -> c2(A__U41(a__U41(tt, x1), x2)) MARK(U41(U41(tt, x1), x2)) -> c2(MARK(U41(tt, x1))) MARK(U41(U42(zeros), x1)) -> c38(A__U41(a__U42(a__zeros), x1), MARK(U42(zeros))) MARK(U41(U42(U11(z0)), x1)) -> c38(A__U41(a__U42(a__U11(mark(z0))), x1), MARK(U42(U11(z0)))) MARK(U41(U42(U21(z0)), x1)) -> c38(A__U41(a__U42(a__U21(mark(z0))), x1), MARK(U42(U21(z0)))) MARK(U41(U42(U31(z0)), x1)) -> c38(A__U41(a__U42(a__U31(mark(z0))), x1), MARK(U42(U31(z0)))) MARK(U41(U42(U41(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U41(mark(z0), z1)), x1), MARK(U42(U41(z0, z1)))) MARK(U41(U42(U42(z0)), x1)) -> c38(A__U41(a__U42(a__U42(mark(z0))), x1), MARK(U42(U42(z0)))) MARK(U41(U42(isNatIList(z0)), x1)) -> c38(A__U41(a__U42(a__isNatIList(z0)), x1), MARK(U42(isNatIList(z0)))) MARK(U41(U42(U51(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U51(mark(z0), z1)), x1), MARK(U42(U51(z0, z1)))) MARK(U41(U42(U52(z0)), x1)) -> c38(A__U41(a__U42(a__U52(mark(z0))), x1), MARK(U42(U52(z0)))) MARK(U41(U42(isNatList(z0)), x1)) -> c38(A__U41(a__U42(a__isNatList(z0)), x1), MARK(U42(isNatList(z0)))) MARK(U41(U42(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U42(a__U61(mark(z0), z1, z2)), x1), MARK(U42(U61(z0, z1, z2)))) MARK(U41(U42(U62(z0, z1)), x1)) -> c38(A__U41(a__U42(a__U62(mark(z0), z1)), x1), MARK(U42(U62(z0, z1)))) MARK(U41(U42(isNat(z0)), x1)) -> c38(A__U41(a__U42(a__isNat(z0)), x1), MARK(U42(isNat(z0)))) MARK(U41(U42(length(z0)), x1)) -> c38(A__U41(a__U42(a__length(mark(z0))), x1), MARK(U42(length(z0)))) MARK(U41(U42(cons(z0, z1)), x1)) -> c38(A__U41(a__U42(cons(mark(z0), z1)), x1), MARK(U42(cons(z0, z1)))) MARK(U41(U42(0), x1)) -> c38(A__U41(a__U42(0), x1), MARK(U42(0))) MARK(U41(U42(tt), x1)) -> c38(A__U41(a__U42(tt), x1), MARK(U42(tt))) MARK(U41(U42(s(z0)), x1)) -> c38(A__U41(a__U42(s(mark(z0))), x1), MARK(U42(s(z0)))) MARK(U41(U42(nil), x1)) -> c38(A__U41(a__U42(nil), x1), MARK(U42(nil))) MARK(U41(U42(x0), x1)) -> c38(MARK(U42(x0))) MARK(U41(U51(U11(z0), x1), x2)) -> c38(A__U41(a__U51(a__U11(mark(z0)), x1), x2), MARK(U51(U11(z0), x1))) MARK(U41(U51(U21(z0), x1), x2)) -> c38(A__U41(a__U51(a__U21(mark(z0)), x1), x2), MARK(U51(U21(z0), x1))) MARK(U41(U51(U31(z0), x1), x2)) -> c38(A__U41(a__U51(a__U31(mark(z0)), x1), x2), MARK(U51(U31(z0), x1))) MARK(U41(U51(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U41(mark(z0), z1), x1), x2), MARK(U51(U41(z0, z1), x1))) MARK(U41(U51(U42(z0), x1), x2)) -> c38(A__U41(a__U51(a__U42(mark(z0)), x1), x2), MARK(U51(U42(z0), x1))) MARK(U41(U51(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U51(mark(z0), z1), x1), x2), MARK(U51(U51(z0, z1), x1))) MARK(U41(U51(U52(z0), x1), x2)) -> c38(A__U41(a__U51(a__U52(mark(z0)), x1), x2), MARK(U51(U52(z0), x1))) MARK(U41(U51(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U51(a__U61(mark(z0), z1, z2), x1), x2), MARK(U51(U61(z0, z1, z2), x1))) MARK(U41(U51(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U51(a__U62(mark(z0), z1), x1), x2), MARK(U51(U62(z0, z1), x1))) MARK(U41(U51(length(z0), x1), x2)) -> c38(A__U41(a__U51(a__length(mark(z0)), x1), x2), MARK(U51(length(z0), x1))) MARK(U41(U51(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U51(cons(mark(z0), z1), x1), x2), MARK(U51(cons(z0, z1), x1))) MARK(U41(U51(s(z0), x1), x2)) -> c38(A__U41(a__U51(s(mark(z0)), x1), x2), MARK(U51(s(z0), x1))) MARK(U41(U51(x0, z1), x2)) -> c38(MARK(U51(x0, z1))) MARK(U41(U51(0, x1), x2)) -> c38(A__U41(a__U51(0, x1), x2)) MARK(U41(U51(nil, x1), x2)) -> c38(A__U41(a__U51(nil, x1), x2)) MARK(U41(U51(zeros, x1), x2)) -> c3(A__U41(a__U51(a__zeros, x1), x2)) MARK(U41(U51(zeros, x1), x2)) -> c3(MARK(U51(zeros, x1))) MARK(U41(U51(isNatIList(z0), x1), x2)) -> c3(A__U41(a__U51(a__isNatIList(z0), x1), x2)) MARK(U41(U51(isNatIList(z0), x1), x2)) -> c3(MARK(U51(isNatIList(z0), x1))) MARK(U41(U51(isNatList(z0), x1), x2)) -> c3(A__U41(a__U51(a__isNatList(z0), x1), x2)) MARK(U41(U51(isNatList(z0), x1), x2)) -> c3(MARK(U51(isNatList(z0), x1))) MARK(U41(U51(isNat(z0), x1), x2)) -> c3(A__U41(a__U51(a__isNat(z0), x1), x2)) MARK(U41(U51(isNat(z0), x1), x2)) -> c3(MARK(U51(isNat(z0), x1))) MARK(U41(U51(tt, x1), x2)) -> c3(A__U41(a__U51(tt, x1), x2)) MARK(U41(U51(tt, x1), x2)) -> c3(MARK(U51(tt, x1))) MARK(U41(U52(zeros), x1)) -> c38(A__U41(a__U52(a__zeros), x1), MARK(U52(zeros))) MARK(U41(U52(U11(z0)), x1)) -> c38(A__U41(a__U52(a__U11(mark(z0))), x1), MARK(U52(U11(z0)))) MARK(U41(U52(U21(z0)), x1)) -> c38(A__U41(a__U52(a__U21(mark(z0))), x1), MARK(U52(U21(z0)))) MARK(U41(U52(U31(z0)), x1)) -> c38(A__U41(a__U52(a__U31(mark(z0))), x1), MARK(U52(U31(z0)))) MARK(U41(U52(U41(z0, z1)), x1)) -> c38(A__U41(a__U52(a__U41(mark(z0), z1)), x1), MARK(U52(U41(z0, z1)))) MARK(U41(U52(U42(z0)), x1)) -> c38(A__U41(a__U52(a__U42(mark(z0))), x1), MARK(U52(U42(z0)))) MARK(U41(U52(isNatIList(z0)), x1)) -> c38(A__U41(a__U52(a__isNatIList(z0)), x1), MARK(U52(isNatIList(z0)))) MARK(U41(U52(U51(z0, z1)), x1)) -> c38(A__U41(a__U52(a__U51(mark(z0), z1)), x1), MARK(U52(U51(z0, z1)))) MARK(U41(U52(U52(z0)), x1)) -> c38(A__U41(a__U52(a__U52(mark(z0))), x1), MARK(U52(U52(z0)))) MARK(U41(U52(isNatList(z0)), x1)) -> c38(A__U41(a__U52(a__isNatList(z0)), x1), MARK(U52(isNatList(z0)))) MARK(U41(U52(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__U52(a__U61(mark(z0), z1, z2)), x1), MARK(U52(U61(z0, z1, z2)))) MARK(U41(U52(U62(z0, z1)), x1)) -> c38(A__U41(a__U52(a__U62(mark(z0), z1)), x1), MARK(U52(U62(z0, z1)))) MARK(U41(U52(isNat(z0)), x1)) -> c38(A__U41(a__U52(a__isNat(z0)), x1), MARK(U52(isNat(z0)))) MARK(U41(U52(length(z0)), x1)) -> c38(A__U41(a__U52(a__length(mark(z0))), x1), MARK(U52(length(z0)))) MARK(U41(U52(cons(z0, z1)), x1)) -> c38(A__U41(a__U52(cons(mark(z0), z1)), x1), MARK(U52(cons(z0, z1)))) MARK(U41(U52(0), x1)) -> c38(A__U41(a__U52(0), x1), MARK(U52(0))) MARK(U41(U52(tt), x1)) -> c38(A__U41(a__U52(tt), x1), MARK(U52(tt))) MARK(U41(U52(s(z0)), x1)) -> c38(A__U41(a__U52(s(mark(z0))), x1), MARK(U52(s(z0)))) MARK(U41(U52(nil), x1)) -> c38(A__U41(a__U52(nil), x1), MARK(U52(nil))) MARK(U41(U52(x0), x1)) -> c38(MARK(U52(x0))) MARK(U41(U61(zeros, x1, x2), x3)) -> c38(A__U41(a__U61(a__zeros, x1, x2), x3), MARK(U61(zeros, x1, x2))) MARK(U41(U61(U11(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U11(mark(z0)), x1, x2), x3), MARK(U61(U11(z0), x1, x2))) MARK(U41(U61(U21(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U21(mark(z0)), x1, x2), x3), MARK(U61(U21(z0), x1, x2))) MARK(U41(U61(U31(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U31(mark(z0)), x1, x2), x3), MARK(U61(U31(z0), x1, x2))) MARK(U41(U61(U41(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(a__U41(mark(z0), z1), x1, x2), x3), MARK(U61(U41(z0, z1), x1, x2))) MARK(U41(U61(U42(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U42(mark(z0)), x1, x2), x3), MARK(U61(U42(z0), x1, x2))) MARK(U41(U61(isNatIList(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__isNatIList(z0), x1, x2), x3), MARK(U61(isNatIList(z0), x1, x2))) MARK(U41(U61(U51(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(a__U51(mark(z0), z1), x1, x2), x3), MARK(U61(U51(z0, z1), x1, x2))) MARK(U41(U61(U52(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__U52(mark(z0)), x1, x2), x3), MARK(U61(U52(z0), x1, x2))) MARK(U41(U61(isNatList(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__isNatList(z0), x1, x2), x3), MARK(U61(isNatList(z0), x1, x2))) MARK(U41(U61(U61(z0, z1, z2), x1, x2), x3)) -> c38(A__U41(a__U61(a__U61(mark(z0), z1, z2), x1, x2), x3), MARK(U61(U61(z0, z1, z2), x1, x2))) MARK(U41(U61(U62(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(a__U62(mark(z0), z1), x1, x2), x3), MARK(U61(U62(z0, z1), x1, x2))) MARK(U41(U61(isNat(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__isNat(z0), x1, x2), x3), MARK(U61(isNat(z0), x1, x2))) MARK(U41(U61(length(z0), x1, x2), x3)) -> c38(A__U41(a__U61(a__length(mark(z0)), x1, x2), x3), MARK(U61(length(z0), x1, x2))) MARK(U41(U61(cons(z0, z1), x1, x2), x3)) -> c38(A__U41(a__U61(cons(mark(z0), z1), x1, x2), x3), MARK(U61(cons(z0, z1), x1, x2))) MARK(U41(U61(tt, x1, x2), x3)) -> c38(A__U41(a__U61(tt, x1, x2), x3), MARK(U61(tt, x1, x2))) MARK(U41(U61(s(z0), x1, x2), x3)) -> c38(A__U41(a__U61(s(mark(z0)), x1, x2), x3), MARK(U61(s(z0), x1, x2))) MARK(U41(U61(x0, z1, z2), x3)) -> c38(MARK(U61(x0, z1, z2))) MARK(U41(U61(0, x1, x2), x3)) -> c38(A__U41(a__U61(0, x1, x2), x3)) MARK(U41(U61(nil, x1, x2), x3)) -> c38(A__U41(a__U61(nil, x1, x2), x3)) MARK(U41(U62(zeros, x1), x2)) -> c38(A__U41(a__U62(a__zeros, x1), x2), MARK(U62(zeros, x1))) MARK(U41(U62(U11(z0), x1), x2)) -> c38(A__U41(a__U62(a__U11(mark(z0)), x1), x2), MARK(U62(U11(z0), x1))) MARK(U41(U62(U21(z0), x1), x2)) -> c38(A__U41(a__U62(a__U21(mark(z0)), x1), x2), MARK(U62(U21(z0), x1))) MARK(U41(U62(U31(z0), x1), x2)) -> c38(A__U41(a__U62(a__U31(mark(z0)), x1), x2), MARK(U62(U31(z0), x1))) MARK(U41(U62(U41(z0, z1), x1), x2)) -> c38(A__U41(a__U62(a__U41(mark(z0), z1), x1), x2), MARK(U62(U41(z0, z1), x1))) MARK(U41(U62(U42(z0), x1), x2)) -> c38(A__U41(a__U62(a__U42(mark(z0)), x1), x2), MARK(U62(U42(z0), x1))) MARK(U41(U62(isNatIList(z0), x1), x2)) -> c38(A__U41(a__U62(a__isNatIList(z0), x1), x2), MARK(U62(isNatIList(z0), x1))) MARK(U41(U62(U51(z0, z1), x1), x2)) -> c38(A__U41(a__U62(a__U51(mark(z0), z1), x1), x2), MARK(U62(U51(z0, z1), x1))) MARK(U41(U62(U52(z0), x1), x2)) -> c38(A__U41(a__U62(a__U52(mark(z0)), x1), x2), MARK(U62(U52(z0), x1))) MARK(U41(U62(isNatList(z0), x1), x2)) -> c38(A__U41(a__U62(a__isNatList(z0), x1), x2), MARK(U62(isNatList(z0), x1))) MARK(U41(U62(U61(z0, z1, z2), x1), x2)) -> c38(A__U41(a__U62(a__U61(mark(z0), z1, z2), x1), x2), MARK(U62(U61(z0, z1, z2), x1))) MARK(U41(U62(U62(z0, z1), x1), x2)) -> c38(A__U41(a__U62(a__U62(mark(z0), z1), x1), x2), MARK(U62(U62(z0, z1), x1))) MARK(U41(U62(isNat(z0), x1), x2)) -> c38(A__U41(a__U62(a__isNat(z0), x1), x2), MARK(U62(isNat(z0), x1))) MARK(U41(U62(length(z0), x1), x2)) -> c38(A__U41(a__U62(a__length(mark(z0)), x1), x2), MARK(U62(length(z0), x1))) MARK(U41(U62(cons(z0, z1), x1), x2)) -> c38(A__U41(a__U62(cons(mark(z0), z1), x1), x2), MARK(U62(cons(z0, z1), x1))) MARK(U41(U62(tt, x1), x2)) -> c38(A__U41(a__U62(tt, x1), x2), MARK(U62(tt, x1))) MARK(U41(U62(s(z0), x1), x2)) -> c38(A__U41(a__U62(s(mark(z0)), x1), x2), MARK(U62(s(z0), x1))) MARK(U41(U62(x0, z1), x2)) -> c38(MARK(U62(x0, z1))) MARK(U41(U62(0, x1), x2)) -> c38(A__U41(a__U62(0, x1), x2)) MARK(U41(U62(nil, x1), x2)) -> c38(A__U41(a__U62(nil, x1), x2)) MARK(U41(length(zeros), x1)) -> c38(A__U41(a__length(a__zeros), x1), MARK(length(zeros))) MARK(U41(length(U11(z0)), x1)) -> c38(A__U41(a__length(a__U11(mark(z0))), x1), MARK(length(U11(z0)))) MARK(U41(length(U21(z0)), x1)) -> c38(A__U41(a__length(a__U21(mark(z0))), x1), MARK(length(U21(z0)))) MARK(U41(length(U31(z0)), x1)) -> c38(A__U41(a__length(a__U31(mark(z0))), x1), MARK(length(U31(z0)))) MARK(U41(length(U41(z0, z1)), x1)) -> c38(A__U41(a__length(a__U41(mark(z0), z1)), x1), MARK(length(U41(z0, z1)))) MARK(U41(length(U42(z0)), x1)) -> c38(A__U41(a__length(a__U42(mark(z0))), x1), MARK(length(U42(z0)))) MARK(U41(length(isNatIList(z0)), x1)) -> c38(A__U41(a__length(a__isNatIList(z0)), x1), MARK(length(isNatIList(z0)))) MARK(U41(length(U51(z0, z1)), x1)) -> c38(A__U41(a__length(a__U51(mark(z0), z1)), x1), MARK(length(U51(z0, z1)))) MARK(U41(length(U52(z0)), x1)) -> c38(A__U41(a__length(a__U52(mark(z0))), x1), MARK(length(U52(z0)))) MARK(U41(length(isNatList(z0)), x1)) -> c38(A__U41(a__length(a__isNatList(z0)), x1), MARK(length(isNatList(z0)))) MARK(U41(length(U61(z0, z1, z2)), x1)) -> c38(A__U41(a__length(a__U61(mark(z0), z1, z2)), x1), MARK(length(U61(z0, z1, z2)))) MARK(U41(length(U62(z0, z1)), x1)) -> c38(A__U41(a__length(a__U62(mark(z0), z1)), x1), MARK(length(U62(z0, z1)))) MARK(U41(length(isNat(z0)), x1)) -> c38(A__U41(a__length(a__isNat(z0)), x1), MARK(length(isNat(z0)))) MARK(U41(length(length(z0)), x1)) -> c38(A__U41(a__length(a__length(mark(z0))), x1), MARK(length(length(z0)))) MARK(U41(length(cons(z0, z1)), x1)) -> c38(A__U41(a__length(cons(mark(z0), z1)), x1), MARK(length(cons(z0, z1)))) MARK(U41(length(s(z0)), x1)) -> c38(A__U41(a__length(s(mark(z0))), x1), MARK(length(s(z0)))) MARK(U41(length(x0), x1)) -> c38(MARK(length(x0))) MARK(U41(length(0), x1)) -> c38(A__U41(a__length(0), x1)) MARK(U41(length(tt), x1)) -> c38(A__U41(a__length(tt), x1)) MARK(U41(length(nil), x1)) -> c38(A__U41(a__length(nil), x1)) A__U62(tt, U41(zeros, x1)) -> c18(A__LENGTH(a__U41(a__zeros, x1))) MARK(U41(isNatIList(z0), x1)) -> c(A__U41(a__U31(a__isNatList(z0)), x1)) MARK(U41(isNatIList(zeros), x1)) -> c(A__U41(tt, x1)) MARK(U41(isNatIList(cons(z0, z1)), x1)) -> c(A__U41(a__U41(a__isNat(z0), z1), x1)) MARK(U41(isNatList(nil), x1)) -> c(A__U41(tt, x1)) MARK(U41(isNatList(cons(z0, z1)), x1)) -> c(A__U41(a__U51(a__isNat(z0), z1), x1)) K tuples:none Defined Rule Symbols: a__zeros, a__U11_1, a__U21_1, a__U31_1, a__U41_2, a__U42_1, a__U51_2, a__U52_1, a__U61_3, a__U62_2, a__isNat_1, a__isNatIList_1, a__isNatList_1, a__length_1, mark_1 Defined Pair Symbols: MARK_1, A__U41_2, A__U51_2, A__ISNAT_1, A__ISNATILIST_1, A__U61_3, A__U62_2, A__ISNATLIST_1, A__LENGTH_1 Compound Symbols: c40_1, c43_1, c46_1, c48_1, c51_1, c8_1, c12_1, c21_1, c22_1, c24_1, c35_1, c36_1, c37_1, c39_1, c42_1, c16_1, c18_2, c18_1, c26_1, c29_1, c32_1, c38_1, c_1, c41_2, c41_1, c1_1, c44_2, c44_1, c45_2, c45_1, c47_2, c47_1, c16_2, c26_2, c29_2, c32_2, c38_2, c2_1, c3_1