/export/starexec/sandbox/solver/bin/starexec_run_rcdcRelativeAlsoLower /export/starexec/sandbox/benchmark/theBenchmark.xml /export/starexec/sandbox/output/output_files -------------------------------------------------------------------------------- KILLED proof of /export/starexec/sandbox/benchmark/theBenchmark.xml # AProVE Commit ID: 794c25de1cacf0d048858bcd21c9a779e1221865 marcel 20200619 unpublished dirty The Derivational Complexity (innermost) of the given DCpxTrs could be proven to be BOUNDS(1, INF). (0) DCpxTrs (1) DerivationalComplexityToRuntimeComplexityProof [BOTH BOUNDS(ID, ID), 0 ms] (2) CpxRelTRS (3) SInnermostTerminationProof [BOTH CONCRETE BOUNDS(ID, ID), 553 ms] (4) CpxRelTRS (5) RelTrsToDecreasingLoopProblemProof [LOWER BOUND(ID), 0 ms] (6) TRS for Loop Detection (7) RenamingProof [BOTH BOUNDS(ID, ID), 0 ms] (8) CpxRelTRS (9) TypeInferenceProof [BOTH BOUNDS(ID, ID), 0 ms] (10) typed CpxTrs (11) OrderProof [LOWER BOUND(ID), 0 ms] (12) typed CpxTrs (13) RelTrsToTrsProof [UPPER BOUND(ID), 0 ms] (14) CpxTRS (15) NonCtorToCtorProof [UPPER BOUND(ID), 0 ms] (16) CpxRelTRS (17) RelTrsToWeightedTrsProof [BOTH BOUNDS(ID, ID), 0 ms] (18) CpxWeightedTrs (19) TypeInferenceProof [BOTH BOUNDS(ID, ID), 0 ms] (20) CpxTypedWeightedTrs (21) CompletionProof [UPPER BOUND(ID), 0 ms] (22) CpxTypedWeightedCompleteTrs (23) CompletionProof [UPPER BOUND(ID), 0 ms] (24) CpxTypedWeightedCompleteTrs (25) CpxTypedWeightedTrsToRntsProof [UPPER BOUND(ID), 3 ms] (26) CpxRNTS (27) CpxTrsToCdtProof [UPPER BOUND(ID), 36 ms] (28) CdtProblem (29) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 0 ms] (30) CdtProblem (31) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (32) CdtProblem (33) CdtGraphSplitRhsProof [BOTH BOUNDS(ID, ID), 0 ms] (34) CdtProblem (35) CdtLeafRemovalProof [ComplexityIfPolyImplication, 0 ms] (36) CdtProblem (37) CdtUsableRulesProof [BOTH BOUNDS(ID, ID), 97 ms] (38) CdtProblem (39) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 36 ms] (40) CdtProblem (41) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 0 ms] (42) CdtProblem (43) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (44) CdtProblem (45) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 33 ms] (46) CdtProblem (47) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (48) CdtProblem (49) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 72 ms] (50) CdtProblem (51) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (52) CdtProblem (53) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 94 ms] (54) CdtProblem (55) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 7 ms] (56) CdtProblem (57) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 33 ms] (58) CdtProblem (59) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 0 ms] (60) CdtProblem (61) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 44 ms] (62) CdtProblem (63) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 0 ms] (64) CdtProblem (65) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 49 ms] (66) CdtProblem (67) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 0 ms] (68) CdtProblem (69) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 520 ms] (70) CdtProblem (71) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 133 ms] (72) CdtProblem (73) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 256 ms] (74) CdtProblem (75) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 41 ms] (76) CdtProblem (77) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 287 ms] (78) CdtProblem (79) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 76 ms] (80) CdtProblem (81) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 113 ms] (82) CdtProblem (83) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 40 ms] (84) CdtProblem (85) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 129 ms] (86) CdtProblem (87) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 37 ms] (88) CdtProblem (89) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 127 ms] (90) CdtProblem (91) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 28 ms] (92) CdtProblem (93) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 32 ms] (94) CdtProblem (95) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 14 ms] (96) CdtProblem (97) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 61 ms] (98) CdtProblem (99) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 43 ms] (100) CdtProblem (101) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 9 ms] (102) CdtProblem (103) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 56 ms] (104) CdtProblem (105) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 81 ms] (106) CdtProblem (107) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 87 ms] (108) CdtProblem (109) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 133 ms] (110) CdtProblem (111) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 68 ms] (112) CdtProblem (113) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 47 ms] (114) CdtProblem (115) CdtLeafRemovalProof [ComplexityIfPolyImplication, 20 ms] (116) CdtProblem (117) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 65 ms] (118) CdtProblem (119) CdtLeafRemovalProof [ComplexityIfPolyImplication, 0 ms] (120) CdtProblem (121) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 41 ms] (122) CdtProblem (123) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 56 ms] (124) CdtProblem (125) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 17 ms] (126) CdtProblem (127) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 45 ms] (128) CdtProblem (129) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 53 ms] (130) CdtProblem (131) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 23 ms] (132) CdtProblem (133) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 53 ms] (134) CdtProblem (135) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 36 ms] (136) CdtProblem (137) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 46 ms] (138) CdtProblem (139) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 36 ms] (140) CdtProblem ---------------------------------------- (0) Obligation: The Derivational Complexity (innermost) of the given DCpxTrs could be proven to be BOUNDS(1, INF). The TRS R consists of the following rules: active(zeros) -> mark(cons(0, zeros)) active(U11(tt, L)) -> mark(s(length(L))) active(U21(tt)) -> mark(nil) active(U31(tt, IL, M, N)) -> mark(cons(N, take(M, IL))) active(and(tt, X)) -> mark(X) active(isNat(0)) -> mark(tt) active(isNat(length(V1))) -> mark(isNatList(V1)) active(isNat(s(V1))) -> mark(isNat(V1)) active(isNatIList(V)) -> mark(isNatList(V)) active(isNatIList(zeros)) -> mark(tt) active(isNatIList(cons(V1, V2))) -> mark(and(isNat(V1), isNatIList(V2))) active(isNatList(nil)) -> mark(tt) active(isNatList(cons(V1, V2))) -> mark(and(isNat(V1), isNatList(V2))) active(isNatList(take(V1, V2))) -> mark(and(isNat(V1), isNatIList(V2))) active(length(nil)) -> mark(0) active(length(cons(N, L))) -> mark(U11(and(isNatList(L), isNat(N)), L)) active(take(0, IL)) -> mark(U21(isNatIList(IL))) active(take(s(M), cons(N, IL))) -> mark(U31(and(isNatIList(IL), and(isNat(M), isNat(N))), IL, M, N)) mark(zeros) -> active(zeros) mark(cons(X1, X2)) -> active(cons(mark(X1), X2)) mark(0) -> active(0) mark(U11(X1, X2)) -> active(U11(mark(X1), X2)) mark(tt) -> active(tt) mark(s(X)) -> active(s(mark(X))) mark(length(X)) -> active(length(mark(X))) mark(U21(X)) -> active(U21(mark(X))) mark(nil) -> active(nil) mark(U31(X1, X2, X3, X4)) -> active(U31(mark(X1), X2, X3, X4)) mark(take(X1, X2)) -> active(take(mark(X1), mark(X2))) mark(and(X1, X2)) -> active(and(mark(X1), X2)) mark(isNat(X)) -> active(isNat(X)) mark(isNatList(X)) -> active(isNatList(X)) mark(isNatIList(X)) -> active(isNatIList(X)) cons(mark(X1), X2) -> cons(X1, X2) cons(X1, mark(X2)) -> cons(X1, X2) cons(active(X1), X2) -> cons(X1, X2) cons(X1, active(X2)) -> cons(X1, X2) U11(mark(X1), X2) -> U11(X1, X2) U11(X1, mark(X2)) -> U11(X1, X2) U11(active(X1), X2) -> U11(X1, X2) U11(X1, active(X2)) -> U11(X1, X2) s(mark(X)) -> s(X) s(active(X)) -> s(X) length(mark(X)) -> length(X) length(active(X)) -> length(X) U21(mark(X)) -> U21(X) U21(active(X)) -> U21(X) U31(mark(X1), X2, X3, X4) -> U31(X1, X2, X3, X4) U31(X1, mark(X2), X3, X4) -> U31(X1, X2, X3, X4) U31(X1, X2, mark(X3), X4) -> U31(X1, X2, X3, X4) U31(X1, X2, X3, mark(X4)) -> U31(X1, X2, X3, X4) U31(active(X1), X2, X3, X4) -> U31(X1, X2, X3, X4) U31(X1, active(X2), X3, X4) -> U31(X1, X2, X3, X4) U31(X1, X2, active(X3), X4) -> U31(X1, X2, X3, X4) U31(X1, X2, X3, active(X4)) -> U31(X1, X2, X3, X4) take(mark(X1), X2) -> take(X1, X2) take(X1, mark(X2)) -> take(X1, X2) take(active(X1), X2) -> take(X1, X2) take(X1, active(X2)) -> take(X1, X2) and(mark(X1), X2) -> and(X1, X2) and(X1, mark(X2)) -> and(X1, X2) and(active(X1), X2) -> and(X1, X2) and(X1, active(X2)) -> and(X1, X2) isNat(mark(X)) -> isNat(X) isNat(active(X)) -> isNat(X) isNatList(mark(X)) -> isNatList(X) isNatList(active(X)) -> isNatList(X) isNatIList(mark(X)) -> isNatIList(X) isNatIList(active(X)) -> isNatIList(X) S is empty. Rewrite Strategy: INNERMOST ---------------------------------------- (1) DerivationalComplexityToRuntimeComplexityProof (BOTH BOUNDS(ID, ID)) The following rules have been added to S to convert the given derivational complexity problem to a runtime complexity problem: encArg(zeros) -> zeros encArg(0) -> 0 encArg(tt) -> tt encArg(nil) -> nil encArg(cons_active(x_1)) -> active(encArg(x_1)) encArg(cons_mark(x_1)) -> mark(encArg(x_1)) encArg(cons_cons(x_1, x_2)) -> cons(encArg(x_1), encArg(x_2)) encArg(cons_U11(x_1, x_2)) -> U11(encArg(x_1), encArg(x_2)) encArg(cons_s(x_1)) -> s(encArg(x_1)) encArg(cons_length(x_1)) -> length(encArg(x_1)) encArg(cons_U21(x_1)) -> U21(encArg(x_1)) encArg(cons_U31(x_1, x_2, x_3, x_4)) -> U31(encArg(x_1), encArg(x_2), encArg(x_3), encArg(x_4)) encArg(cons_take(x_1, x_2)) -> take(encArg(x_1), encArg(x_2)) encArg(cons_and(x_1, x_2)) -> and(encArg(x_1), encArg(x_2)) encArg(cons_isNat(x_1)) -> isNat(encArg(x_1)) encArg(cons_isNatList(x_1)) -> isNatList(encArg(x_1)) encArg(cons_isNatIList(x_1)) -> isNatIList(encArg(x_1)) encode_active(x_1) -> active(encArg(x_1)) encode_zeros -> zeros encode_mark(x_1) -> mark(encArg(x_1)) encode_cons(x_1, x_2) -> cons(encArg(x_1), encArg(x_2)) encode_0 -> 0 encode_U11(x_1, x_2) -> U11(encArg(x_1), encArg(x_2)) encode_tt -> tt encode_s(x_1) -> s(encArg(x_1)) encode_length(x_1) -> length(encArg(x_1)) encode_U21(x_1) -> U21(encArg(x_1)) encode_nil -> nil encode_U31(x_1, x_2, x_3, x_4) -> U31(encArg(x_1), encArg(x_2), encArg(x_3), encArg(x_4)) encode_take(x_1, x_2) -> take(encArg(x_1), encArg(x_2)) encode_and(x_1, x_2) -> and(encArg(x_1), encArg(x_2)) encode_isNat(x_1) -> isNat(encArg(x_1)) encode_isNatList(x_1) -> isNatList(encArg(x_1)) encode_isNatIList(x_1) -> isNatIList(encArg(x_1)) ---------------------------------------- (2) Obligation: The Runtime Complexity (innermost) of the given CpxRelTRS could be proven to be BOUNDS(1, INF). The TRS R consists of the following rules: active(zeros) -> mark(cons(0, zeros)) active(U11(tt, L)) -> mark(s(length(L))) active(U21(tt)) -> mark(nil) active(U31(tt, IL, M, N)) -> mark(cons(N, take(M, IL))) active(and(tt, X)) -> mark(X) active(isNat(0)) -> mark(tt) active(isNat(length(V1))) -> mark(isNatList(V1)) active(isNat(s(V1))) -> mark(isNat(V1)) active(isNatIList(V)) -> mark(isNatList(V)) active(isNatIList(zeros)) -> mark(tt) active(isNatIList(cons(V1, V2))) -> mark(and(isNat(V1), isNatIList(V2))) active(isNatList(nil)) -> mark(tt) active(isNatList(cons(V1, V2))) -> mark(and(isNat(V1), isNatList(V2))) active(isNatList(take(V1, V2))) -> mark(and(isNat(V1), isNatIList(V2))) active(length(nil)) -> mark(0) active(length(cons(N, L))) -> mark(U11(and(isNatList(L), isNat(N)), L)) active(take(0, IL)) -> mark(U21(isNatIList(IL))) active(take(s(M), cons(N, IL))) -> mark(U31(and(isNatIList(IL), and(isNat(M), isNat(N))), IL, M, N)) mark(zeros) -> active(zeros) mark(cons(X1, X2)) -> active(cons(mark(X1), X2)) mark(0) -> active(0) mark(U11(X1, X2)) -> active(U11(mark(X1), X2)) mark(tt) -> active(tt) mark(s(X)) -> active(s(mark(X))) mark(length(X)) -> active(length(mark(X))) mark(U21(X)) -> active(U21(mark(X))) mark(nil) -> active(nil) mark(U31(X1, X2, X3, X4)) -> active(U31(mark(X1), X2, X3, X4)) mark(take(X1, X2)) -> active(take(mark(X1), mark(X2))) mark(and(X1, X2)) -> active(and(mark(X1), X2)) mark(isNat(X)) -> active(isNat(X)) mark(isNatList(X)) -> active(isNatList(X)) mark(isNatIList(X)) -> active(isNatIList(X)) cons(mark(X1), X2) -> cons(X1, X2) cons(X1, mark(X2)) -> cons(X1, X2) cons(active(X1), X2) -> cons(X1, X2) cons(X1, active(X2)) -> cons(X1, X2) U11(mark(X1), X2) -> U11(X1, X2) U11(X1, mark(X2)) -> U11(X1, X2) U11(active(X1), X2) -> U11(X1, X2) U11(X1, active(X2)) -> U11(X1, X2) s(mark(X)) -> s(X) s(active(X)) -> s(X) length(mark(X)) -> length(X) length(active(X)) -> length(X) U21(mark(X)) -> U21(X) U21(active(X)) -> U21(X) U31(mark(X1), X2, X3, X4) -> U31(X1, X2, X3, X4) U31(X1, mark(X2), X3, X4) -> U31(X1, X2, X3, X4) U31(X1, X2, mark(X3), X4) -> U31(X1, X2, X3, X4) U31(X1, X2, X3, mark(X4)) -> U31(X1, X2, X3, X4) U31(active(X1), X2, X3, X4) -> U31(X1, X2, X3, X4) U31(X1, active(X2), X3, X4) -> U31(X1, X2, X3, X4) U31(X1, X2, active(X3), X4) -> U31(X1, X2, X3, X4) U31(X1, X2, X3, active(X4)) -> U31(X1, X2, X3, X4) take(mark(X1), X2) -> take(X1, X2) take(X1, mark(X2)) -> take(X1, X2) take(active(X1), X2) -> take(X1, X2) take(X1, active(X2)) -> take(X1, X2) and(mark(X1), X2) -> and(X1, X2) and(X1, mark(X2)) -> and(X1, X2) and(active(X1), X2) -> and(X1, X2) and(X1, active(X2)) -> and(X1, X2) isNat(mark(X)) -> isNat(X) isNat(active(X)) -> isNat(X) isNatList(mark(X)) -> isNatList(X) isNatList(active(X)) -> isNatList(X) isNatIList(mark(X)) -> isNatIList(X) isNatIList(active(X)) -> isNatIList(X) The (relative) TRS S consists of the following rules: encArg(zeros) -> zeros encArg(0) -> 0 encArg(tt) -> tt encArg(nil) -> nil encArg(cons_active(x_1)) -> active(encArg(x_1)) encArg(cons_mark(x_1)) -> mark(encArg(x_1)) encArg(cons_cons(x_1, x_2)) -> cons(encArg(x_1), encArg(x_2)) encArg(cons_U11(x_1, x_2)) -> U11(encArg(x_1), encArg(x_2)) encArg(cons_s(x_1)) -> s(encArg(x_1)) encArg(cons_length(x_1)) -> length(encArg(x_1)) encArg(cons_U21(x_1)) -> U21(encArg(x_1)) encArg(cons_U31(x_1, x_2, x_3, x_4)) -> U31(encArg(x_1), encArg(x_2), encArg(x_3), encArg(x_4)) encArg(cons_take(x_1, x_2)) -> take(encArg(x_1), encArg(x_2)) encArg(cons_and(x_1, x_2)) -> and(encArg(x_1), encArg(x_2)) encArg(cons_isNat(x_1)) -> isNat(encArg(x_1)) encArg(cons_isNatList(x_1)) -> isNatList(encArg(x_1)) encArg(cons_isNatIList(x_1)) -> isNatIList(encArg(x_1)) encode_active(x_1) -> active(encArg(x_1)) encode_zeros -> zeros encode_mark(x_1) -> mark(encArg(x_1)) encode_cons(x_1, x_2) -> cons(encArg(x_1), encArg(x_2)) encode_0 -> 0 encode_U11(x_1, x_2) -> U11(encArg(x_1), encArg(x_2)) encode_tt -> tt encode_s(x_1) -> s(encArg(x_1)) encode_length(x_1) -> length(encArg(x_1)) encode_U21(x_1) -> U21(encArg(x_1)) encode_nil -> nil encode_U31(x_1, x_2, x_3, x_4) -> U31(encArg(x_1), encArg(x_2), encArg(x_3), encArg(x_4)) encode_take(x_1, x_2) -> take(encArg(x_1), encArg(x_2)) encode_and(x_1, x_2) -> and(encArg(x_1), encArg(x_2)) encode_isNat(x_1) -> isNat(encArg(x_1)) encode_isNatList(x_1) -> isNatList(encArg(x_1)) encode_isNatIList(x_1) -> isNatIList(encArg(x_1)) Rewrite Strategy: INNERMOST ---------------------------------------- (3) SInnermostTerminationProof (BOTH CONCRETE BOUNDS(ID, ID)) proved innermost termination of relative rules ---------------------------------------- (4) Obligation: The Runtime Complexity (innermost) of the given CpxRelTRS could be proven to be BOUNDS(1, INF). The TRS R consists of the following rules: active(zeros) -> mark(cons(0, zeros)) active(U11(tt, L)) -> mark(s(length(L))) active(U21(tt)) -> mark(nil) active(U31(tt, IL, M, N)) -> mark(cons(N, take(M, IL))) active(and(tt, X)) -> mark(X) active(isNat(0)) -> mark(tt) active(isNat(length(V1))) -> mark(isNatList(V1)) active(isNat(s(V1))) -> mark(isNat(V1)) active(isNatIList(V)) -> mark(isNatList(V)) active(isNatIList(zeros)) -> mark(tt) active(isNatIList(cons(V1, V2))) -> mark(and(isNat(V1), isNatIList(V2))) active(isNatList(nil)) -> mark(tt) active(isNatList(cons(V1, V2))) -> mark(and(isNat(V1), isNatList(V2))) active(isNatList(take(V1, V2))) -> mark(and(isNat(V1), isNatIList(V2))) active(length(nil)) -> mark(0) active(length(cons(N, L))) -> mark(U11(and(isNatList(L), isNat(N)), L)) active(take(0, IL)) -> mark(U21(isNatIList(IL))) active(take(s(M), cons(N, IL))) -> mark(U31(and(isNatIList(IL), and(isNat(M), isNat(N))), IL, M, N)) mark(zeros) -> active(zeros) mark(cons(X1, X2)) -> active(cons(mark(X1), X2)) mark(0) -> active(0) mark(U11(X1, X2)) -> active(U11(mark(X1), X2)) mark(tt) -> active(tt) mark(s(X)) -> active(s(mark(X))) mark(length(X)) -> active(length(mark(X))) mark(U21(X)) -> active(U21(mark(X))) mark(nil) -> active(nil) mark(U31(X1, X2, X3, X4)) -> active(U31(mark(X1), X2, X3, X4)) mark(take(X1, X2)) -> active(take(mark(X1), mark(X2))) mark(and(X1, X2)) -> active(and(mark(X1), X2)) mark(isNat(X)) -> active(isNat(X)) mark(isNatList(X)) -> active(isNatList(X)) mark(isNatIList(X)) -> active(isNatIList(X)) cons(mark(X1), X2) -> cons(X1, X2) cons(X1, mark(X2)) -> cons(X1, X2) cons(active(X1), X2) -> cons(X1, X2) cons(X1, active(X2)) -> cons(X1, X2) U11(mark(X1), X2) -> U11(X1, X2) U11(X1, mark(X2)) -> U11(X1, X2) U11(active(X1), X2) -> U11(X1, X2) U11(X1, active(X2)) -> U11(X1, X2) s(mark(X)) -> s(X) s(active(X)) -> s(X) length(mark(X)) -> length(X) length(active(X)) -> length(X) U21(mark(X)) -> U21(X) U21(active(X)) -> U21(X) U31(mark(X1), X2, X3, X4) -> U31(X1, X2, X3, X4) U31(X1, mark(X2), X3, X4) -> U31(X1, X2, X3, X4) U31(X1, X2, mark(X3), X4) -> U31(X1, X2, X3, X4) U31(X1, X2, X3, mark(X4)) -> U31(X1, X2, X3, X4) U31(active(X1), X2, X3, X4) -> U31(X1, X2, X3, X4) U31(X1, active(X2), X3, X4) -> U31(X1, X2, X3, X4) U31(X1, X2, active(X3), X4) -> U31(X1, X2, X3, X4) U31(X1, X2, X3, active(X4)) -> U31(X1, X2, X3, X4) take(mark(X1), X2) -> take(X1, X2) take(X1, mark(X2)) -> take(X1, X2) take(active(X1), X2) -> take(X1, X2) take(X1, active(X2)) -> take(X1, X2) and(mark(X1), X2) -> and(X1, X2) and(X1, mark(X2)) -> and(X1, X2) and(active(X1), X2) -> and(X1, X2) and(X1, active(X2)) -> and(X1, X2) isNat(mark(X)) -> isNat(X) isNat(active(X)) -> isNat(X) isNatList(mark(X)) -> isNatList(X) isNatList(active(X)) -> isNatList(X) isNatIList(mark(X)) -> isNatIList(X) isNatIList(active(X)) -> isNatIList(X) The (relative) TRS S consists of the following rules: encArg(zeros) -> zeros encArg(0) -> 0 encArg(tt) -> tt encArg(nil) -> nil encArg(cons_active(x_1)) -> active(encArg(x_1)) encArg(cons_mark(x_1)) -> mark(encArg(x_1)) encArg(cons_cons(x_1, x_2)) -> cons(encArg(x_1), encArg(x_2)) encArg(cons_U11(x_1, x_2)) -> U11(encArg(x_1), encArg(x_2)) encArg(cons_s(x_1)) -> s(encArg(x_1)) encArg(cons_length(x_1)) -> length(encArg(x_1)) encArg(cons_U21(x_1)) -> U21(encArg(x_1)) encArg(cons_U31(x_1, x_2, x_3, x_4)) -> U31(encArg(x_1), encArg(x_2), encArg(x_3), encArg(x_4)) encArg(cons_take(x_1, x_2)) -> take(encArg(x_1), encArg(x_2)) encArg(cons_and(x_1, x_2)) -> and(encArg(x_1), encArg(x_2)) encArg(cons_isNat(x_1)) -> isNat(encArg(x_1)) encArg(cons_isNatList(x_1)) -> isNatList(encArg(x_1)) encArg(cons_isNatIList(x_1)) -> isNatIList(encArg(x_1)) encode_active(x_1) -> active(encArg(x_1)) encode_zeros -> zeros encode_mark(x_1) -> mark(encArg(x_1)) encode_cons(x_1, x_2) -> cons(encArg(x_1), encArg(x_2)) encode_0 -> 0 encode_U11(x_1, x_2) -> U11(encArg(x_1), encArg(x_2)) encode_tt -> tt encode_s(x_1) -> s(encArg(x_1)) encode_length(x_1) -> length(encArg(x_1)) encode_U21(x_1) -> U21(encArg(x_1)) encode_nil -> nil encode_U31(x_1, x_2, x_3, x_4) -> U31(encArg(x_1), encArg(x_2), encArg(x_3), encArg(x_4)) encode_take(x_1, x_2) -> take(encArg(x_1), encArg(x_2)) encode_and(x_1, x_2) -> and(encArg(x_1), encArg(x_2)) encode_isNat(x_1) -> isNat(encArg(x_1)) encode_isNatList(x_1) -> isNatList(encArg(x_1)) encode_isNatIList(x_1) -> isNatIList(encArg(x_1)) Rewrite Strategy: INNERMOST ---------------------------------------- (5) RelTrsToDecreasingLoopProblemProof (LOWER BOUND(ID)) Transformed a relative TRS into a decreasing-loop problem. ---------------------------------------- (6) Obligation: Analyzing the following TRS for decreasing loops: The Runtime Complexity (innermost) of the given CpxRelTRS could be proven to be BOUNDS(1, INF). The TRS R consists of the following rules: active(zeros) -> mark(cons(0, zeros)) active(U11(tt, L)) -> mark(s(length(L))) active(U21(tt)) -> mark(nil) active(U31(tt, IL, M, N)) -> mark(cons(N, take(M, IL))) active(and(tt, X)) -> mark(X) active(isNat(0)) -> mark(tt) active(isNat(length(V1))) -> mark(isNatList(V1)) active(isNat(s(V1))) -> mark(isNat(V1)) active(isNatIList(V)) -> mark(isNatList(V)) active(isNatIList(zeros)) -> mark(tt) active(isNatIList(cons(V1, V2))) -> mark(and(isNat(V1), isNatIList(V2))) active(isNatList(nil)) -> mark(tt) active(isNatList(cons(V1, V2))) -> mark(and(isNat(V1), isNatList(V2))) active(isNatList(take(V1, V2))) -> mark(and(isNat(V1), isNatIList(V2))) active(length(nil)) -> mark(0) active(length(cons(N, L))) -> mark(U11(and(isNatList(L), isNat(N)), L)) active(take(0, IL)) -> mark(U21(isNatIList(IL))) active(take(s(M), cons(N, IL))) -> mark(U31(and(isNatIList(IL), and(isNat(M), isNat(N))), IL, M, N)) mark(zeros) -> active(zeros) mark(cons(X1, X2)) -> active(cons(mark(X1), X2)) mark(0) -> active(0) mark(U11(X1, X2)) -> active(U11(mark(X1), X2)) mark(tt) -> active(tt) mark(s(X)) -> active(s(mark(X))) mark(length(X)) -> active(length(mark(X))) mark(U21(X)) -> active(U21(mark(X))) mark(nil) -> active(nil) mark(U31(X1, X2, X3, X4)) -> active(U31(mark(X1), X2, X3, X4)) mark(take(X1, X2)) -> active(take(mark(X1), mark(X2))) mark(and(X1, X2)) -> active(and(mark(X1), X2)) mark(isNat(X)) -> active(isNat(X)) mark(isNatList(X)) -> active(isNatList(X)) mark(isNatIList(X)) -> active(isNatIList(X)) cons(mark(X1), X2) -> cons(X1, X2) cons(X1, mark(X2)) -> cons(X1, X2) cons(active(X1), X2) -> cons(X1, X2) cons(X1, active(X2)) -> cons(X1, X2) U11(mark(X1), X2) -> U11(X1, X2) U11(X1, mark(X2)) -> U11(X1, X2) U11(active(X1), X2) -> U11(X1, X2) U11(X1, active(X2)) -> U11(X1, X2) s(mark(X)) -> s(X) s(active(X)) -> s(X) length(mark(X)) -> length(X) length(active(X)) -> length(X) U21(mark(X)) -> U21(X) U21(active(X)) -> U21(X) U31(mark(X1), X2, X3, X4) -> U31(X1, X2, X3, X4) U31(X1, mark(X2), X3, X4) -> U31(X1, X2, X3, X4) U31(X1, X2, mark(X3), X4) -> U31(X1, X2, X3, X4) U31(X1, X2, X3, mark(X4)) -> U31(X1, X2, X3, X4) U31(active(X1), X2, X3, X4) -> U31(X1, X2, X3, X4) U31(X1, active(X2), X3, X4) -> U31(X1, X2, X3, X4) U31(X1, X2, active(X3), X4) -> U31(X1, X2, X3, X4) U31(X1, X2, X3, active(X4)) -> U31(X1, X2, X3, X4) take(mark(X1), X2) -> take(X1, X2) take(X1, mark(X2)) -> take(X1, X2) take(active(X1), X2) -> take(X1, X2) take(X1, active(X2)) -> take(X1, X2) and(mark(X1), X2) -> and(X1, X2) and(X1, mark(X2)) -> and(X1, X2) and(active(X1), X2) -> and(X1, X2) and(X1, active(X2)) -> and(X1, X2) isNat(mark(X)) -> isNat(X) isNat(active(X)) -> isNat(X) isNatList(mark(X)) -> isNatList(X) isNatList(active(X)) -> isNatList(X) isNatIList(mark(X)) -> isNatIList(X) isNatIList(active(X)) -> isNatIList(X) The (relative) TRS S consists of the following rules: encArg(zeros) -> zeros encArg(0) -> 0 encArg(tt) -> tt encArg(nil) -> nil encArg(cons_active(x_1)) -> active(encArg(x_1)) encArg(cons_mark(x_1)) -> mark(encArg(x_1)) encArg(cons_cons(x_1, x_2)) -> cons(encArg(x_1), encArg(x_2)) encArg(cons_U11(x_1, x_2)) -> U11(encArg(x_1), encArg(x_2)) encArg(cons_s(x_1)) -> s(encArg(x_1)) encArg(cons_length(x_1)) -> length(encArg(x_1)) encArg(cons_U21(x_1)) -> U21(encArg(x_1)) encArg(cons_U31(x_1, x_2, x_3, x_4)) -> U31(encArg(x_1), encArg(x_2), encArg(x_3), encArg(x_4)) encArg(cons_take(x_1, x_2)) -> take(encArg(x_1), encArg(x_2)) encArg(cons_and(x_1, x_2)) -> and(encArg(x_1), encArg(x_2)) encArg(cons_isNat(x_1)) -> isNat(encArg(x_1)) encArg(cons_isNatList(x_1)) -> isNatList(encArg(x_1)) encArg(cons_isNatIList(x_1)) -> isNatIList(encArg(x_1)) encode_active(x_1) -> active(encArg(x_1)) encode_zeros -> zeros encode_mark(x_1) -> mark(encArg(x_1)) encode_cons(x_1, x_2) -> cons(encArg(x_1), encArg(x_2)) encode_0 -> 0 encode_U11(x_1, x_2) -> U11(encArg(x_1), encArg(x_2)) encode_tt -> tt encode_s(x_1) -> s(encArg(x_1)) encode_length(x_1) -> length(encArg(x_1)) encode_U21(x_1) -> U21(encArg(x_1)) encode_nil -> nil encode_U31(x_1, x_2, x_3, x_4) -> U31(encArg(x_1), encArg(x_2), encArg(x_3), encArg(x_4)) encode_take(x_1, x_2) -> take(encArg(x_1), encArg(x_2)) encode_and(x_1, x_2) -> and(encArg(x_1), encArg(x_2)) encode_isNat(x_1) -> isNat(encArg(x_1)) encode_isNatList(x_1) -> isNatList(encArg(x_1)) encode_isNatIList(x_1) -> isNatIList(encArg(x_1)) Rewrite Strategy: INNERMOST ---------------------------------------- (7) RenamingProof (BOTH BOUNDS(ID, ID)) Renamed function symbols to avoid clashes with predefined symbol. ---------------------------------------- (8) Obligation: The Runtime Complexity (innermost) of the given CpxRelTRS could be proven to be BOUNDS(1, INF). The TRS R consists of the following rules: active(zeros) -> mark(cons(0', zeros)) active(U11(tt, L)) -> mark(s(length(L))) active(U21(tt)) -> mark(nil) active(U31(tt, IL, M, N)) -> mark(cons(N, take(M, IL))) active(and(tt, X)) -> mark(X) active(isNat(0')) -> mark(tt) active(isNat(length(V1))) -> mark(isNatList(V1)) active(isNat(s(V1))) -> mark(isNat(V1)) active(isNatIList(V)) -> mark(isNatList(V)) active(isNatIList(zeros)) -> mark(tt) active(isNatIList(cons(V1, V2))) -> mark(and(isNat(V1), isNatIList(V2))) active(isNatList(nil)) -> mark(tt) active(isNatList(cons(V1, V2))) -> mark(and(isNat(V1), isNatList(V2))) active(isNatList(take(V1, V2))) -> mark(and(isNat(V1), isNatIList(V2))) active(length(nil)) -> mark(0') active(length(cons(N, L))) -> mark(U11(and(isNatList(L), isNat(N)), L)) active(take(0', IL)) -> mark(U21(isNatIList(IL))) active(take(s(M), cons(N, IL))) -> mark(U31(and(isNatIList(IL), and(isNat(M), isNat(N))), IL, M, N)) mark(zeros) -> active(zeros) mark(cons(X1, X2)) -> active(cons(mark(X1), X2)) mark(0') -> active(0') mark(U11(X1, X2)) -> active(U11(mark(X1), X2)) mark(tt) -> active(tt) mark(s(X)) -> active(s(mark(X))) mark(length(X)) -> active(length(mark(X))) mark(U21(X)) -> active(U21(mark(X))) mark(nil) -> active(nil) mark(U31(X1, X2, X3, X4)) -> active(U31(mark(X1), X2, X3, X4)) mark(take(X1, X2)) -> active(take(mark(X1), mark(X2))) mark(and(X1, X2)) -> active(and(mark(X1), X2)) mark(isNat(X)) -> active(isNat(X)) mark(isNatList(X)) -> active(isNatList(X)) mark(isNatIList(X)) -> active(isNatIList(X)) cons(mark(X1), X2) -> cons(X1, X2) cons(X1, mark(X2)) -> cons(X1, X2) cons(active(X1), X2) -> cons(X1, X2) cons(X1, active(X2)) -> cons(X1, X2) U11(mark(X1), X2) -> U11(X1, X2) U11(X1, mark(X2)) -> U11(X1, X2) U11(active(X1), X2) -> U11(X1, X2) U11(X1, active(X2)) -> U11(X1, X2) s(mark(X)) -> s(X) s(active(X)) -> s(X) length(mark(X)) -> length(X) length(active(X)) -> length(X) U21(mark(X)) -> U21(X) U21(active(X)) -> U21(X) U31(mark(X1), X2, X3, X4) -> U31(X1, X2, X3, X4) U31(X1, mark(X2), X3, X4) -> U31(X1, X2, X3, X4) U31(X1, X2, mark(X3), X4) -> U31(X1, X2, X3, X4) U31(X1, X2, X3, mark(X4)) -> U31(X1, X2, X3, X4) U31(active(X1), X2, X3, X4) -> U31(X1, X2, X3, X4) U31(X1, active(X2), X3, X4) -> U31(X1, X2, X3, X4) U31(X1, X2, active(X3), X4) -> U31(X1, X2, X3, X4) U31(X1, X2, X3, active(X4)) -> U31(X1, X2, X3, X4) take(mark(X1), X2) -> take(X1, X2) take(X1, mark(X2)) -> take(X1, X2) take(active(X1), X2) -> take(X1, X2) take(X1, active(X2)) -> take(X1, X2) and(mark(X1), X2) -> and(X1, X2) and(X1, mark(X2)) -> and(X1, X2) and(active(X1), X2) -> and(X1, X2) and(X1, active(X2)) -> and(X1, X2) isNat(mark(X)) -> isNat(X) isNat(active(X)) -> isNat(X) isNatList(mark(X)) -> isNatList(X) isNatList(active(X)) -> isNatList(X) isNatIList(mark(X)) -> isNatIList(X) isNatIList(active(X)) -> isNatIList(X) The (relative) TRS S consists of the following rules: encArg(zeros) -> zeros encArg(0') -> 0' encArg(tt) -> tt encArg(nil) -> nil encArg(cons_active(x_1)) -> active(encArg(x_1)) encArg(cons_mark(x_1)) -> mark(encArg(x_1)) encArg(cons_cons(x_1, x_2)) -> cons(encArg(x_1), encArg(x_2)) encArg(cons_U11(x_1, x_2)) -> U11(encArg(x_1), encArg(x_2)) encArg(cons_s(x_1)) -> s(encArg(x_1)) encArg(cons_length(x_1)) -> length(encArg(x_1)) encArg(cons_U21(x_1)) -> U21(encArg(x_1)) encArg(cons_U31(x_1, x_2, x_3, x_4)) -> U31(encArg(x_1), encArg(x_2), encArg(x_3), encArg(x_4)) encArg(cons_take(x_1, x_2)) -> take(encArg(x_1), encArg(x_2)) encArg(cons_and(x_1, x_2)) -> and(encArg(x_1), encArg(x_2)) encArg(cons_isNat(x_1)) -> isNat(encArg(x_1)) encArg(cons_isNatList(x_1)) -> isNatList(encArg(x_1)) encArg(cons_isNatIList(x_1)) -> isNatIList(encArg(x_1)) encode_active(x_1) -> active(encArg(x_1)) encode_zeros -> zeros encode_mark(x_1) -> mark(encArg(x_1)) encode_cons(x_1, x_2) -> cons(encArg(x_1), encArg(x_2)) encode_0 -> 0' encode_U11(x_1, x_2) -> U11(encArg(x_1), encArg(x_2)) encode_tt -> tt encode_s(x_1) -> s(encArg(x_1)) encode_length(x_1) -> length(encArg(x_1)) encode_U21(x_1) -> U21(encArg(x_1)) encode_nil -> nil encode_U31(x_1, x_2, x_3, x_4) -> U31(encArg(x_1), encArg(x_2), encArg(x_3), encArg(x_4)) encode_take(x_1, x_2) -> take(encArg(x_1), encArg(x_2)) encode_and(x_1, x_2) -> and(encArg(x_1), encArg(x_2)) encode_isNat(x_1) -> isNat(encArg(x_1)) encode_isNatList(x_1) -> isNatList(encArg(x_1)) encode_isNatIList(x_1) -> isNatIList(encArg(x_1)) Rewrite Strategy: INNERMOST ---------------------------------------- (9) TypeInferenceProof (BOTH BOUNDS(ID, ID)) Infered types. ---------------------------------------- (10) Obligation: Innermost TRS: Rules: active(zeros) -> mark(cons(0', zeros)) active(U11(tt, L)) -> mark(s(length(L))) active(U21(tt)) -> mark(nil) active(U31(tt, IL, M, N)) -> mark(cons(N, take(M, IL))) active(and(tt, X)) -> mark(X) active(isNat(0')) -> mark(tt) active(isNat(length(V1))) -> mark(isNatList(V1)) active(isNat(s(V1))) -> mark(isNat(V1)) active(isNatIList(V)) -> mark(isNatList(V)) active(isNatIList(zeros)) -> mark(tt) active(isNatIList(cons(V1, V2))) -> mark(and(isNat(V1), isNatIList(V2))) active(isNatList(nil)) -> mark(tt) active(isNatList(cons(V1, V2))) -> mark(and(isNat(V1), isNatList(V2))) active(isNatList(take(V1, V2))) -> mark(and(isNat(V1), isNatIList(V2))) active(length(nil)) -> mark(0') active(length(cons(N, L))) -> mark(U11(and(isNatList(L), isNat(N)), L)) active(take(0', IL)) -> mark(U21(isNatIList(IL))) active(take(s(M), cons(N, IL))) -> mark(U31(and(isNatIList(IL), and(isNat(M), isNat(N))), IL, M, N)) mark(zeros) -> active(zeros) mark(cons(X1, X2)) -> active(cons(mark(X1), X2)) mark(0') -> active(0') mark(U11(X1, X2)) -> active(U11(mark(X1), X2)) mark(tt) -> active(tt) mark(s(X)) -> active(s(mark(X))) mark(length(X)) -> active(length(mark(X))) mark(U21(X)) -> active(U21(mark(X))) mark(nil) -> active(nil) mark(U31(X1, X2, X3, X4)) -> active(U31(mark(X1), X2, X3, X4)) mark(take(X1, X2)) -> active(take(mark(X1), mark(X2))) mark(and(X1, X2)) -> active(and(mark(X1), X2)) mark(isNat(X)) -> active(isNat(X)) mark(isNatList(X)) -> active(isNatList(X)) mark(isNatIList(X)) -> active(isNatIList(X)) cons(mark(X1), X2) -> cons(X1, X2) cons(X1, mark(X2)) -> cons(X1, X2) cons(active(X1), X2) -> cons(X1, X2) cons(X1, active(X2)) -> cons(X1, X2) U11(mark(X1), X2) -> U11(X1, X2) U11(X1, mark(X2)) -> U11(X1, X2) U11(active(X1), X2) -> U11(X1, X2) U11(X1, active(X2)) -> U11(X1, X2) s(mark(X)) -> s(X) s(active(X)) -> s(X) length(mark(X)) -> length(X) length(active(X)) -> length(X) U21(mark(X)) -> U21(X) U21(active(X)) -> U21(X) U31(mark(X1), X2, X3, X4) -> U31(X1, X2, X3, X4) U31(X1, mark(X2), X3, X4) -> U31(X1, X2, X3, X4) U31(X1, X2, mark(X3), X4) -> U31(X1, X2, X3, X4) U31(X1, X2, X3, mark(X4)) -> U31(X1, X2, X3, X4) U31(active(X1), X2, X3, X4) -> U31(X1, X2, X3, X4) U31(X1, active(X2), X3, X4) -> U31(X1, X2, X3, X4) U31(X1, X2, active(X3), X4) -> U31(X1, X2, X3, X4) U31(X1, X2, X3, active(X4)) -> U31(X1, X2, X3, X4) take(mark(X1), X2) -> take(X1, X2) take(X1, mark(X2)) -> take(X1, X2) take(active(X1), X2) -> take(X1, X2) take(X1, active(X2)) -> take(X1, X2) and(mark(X1), X2) -> and(X1, X2) and(X1, mark(X2)) -> and(X1, X2) and(active(X1), X2) -> and(X1, X2) and(X1, active(X2)) -> and(X1, X2) isNat(mark(X)) -> isNat(X) isNat(active(X)) -> isNat(X) isNatList(mark(X)) -> isNatList(X) isNatList(active(X)) -> isNatList(X) isNatIList(mark(X)) -> isNatIList(X) isNatIList(active(X)) -> isNatIList(X) encArg(zeros) -> zeros encArg(0') -> 0' encArg(tt) -> tt encArg(nil) -> nil encArg(cons_active(x_1)) -> active(encArg(x_1)) encArg(cons_mark(x_1)) -> mark(encArg(x_1)) encArg(cons_cons(x_1, x_2)) -> cons(encArg(x_1), encArg(x_2)) encArg(cons_U11(x_1, x_2)) -> U11(encArg(x_1), encArg(x_2)) encArg(cons_s(x_1)) -> s(encArg(x_1)) encArg(cons_length(x_1)) -> length(encArg(x_1)) encArg(cons_U21(x_1)) -> U21(encArg(x_1)) encArg(cons_U31(x_1, x_2, x_3, x_4)) -> U31(encArg(x_1), encArg(x_2), encArg(x_3), encArg(x_4)) encArg(cons_take(x_1, x_2)) -> take(encArg(x_1), encArg(x_2)) encArg(cons_and(x_1, x_2)) -> and(encArg(x_1), encArg(x_2)) encArg(cons_isNat(x_1)) -> isNat(encArg(x_1)) encArg(cons_isNatList(x_1)) -> isNatList(encArg(x_1)) encArg(cons_isNatIList(x_1)) -> isNatIList(encArg(x_1)) encode_active(x_1) -> active(encArg(x_1)) encode_zeros -> zeros encode_mark(x_1) -> mark(encArg(x_1)) encode_cons(x_1, x_2) -> cons(encArg(x_1), encArg(x_2)) encode_0 -> 0' encode_U11(x_1, x_2) -> U11(encArg(x_1), encArg(x_2)) encode_tt -> tt encode_s(x_1) -> s(encArg(x_1)) encode_length(x_1) -> length(encArg(x_1)) encode_U21(x_1) -> U21(encArg(x_1)) encode_nil -> nil encode_U31(x_1, x_2, x_3, x_4) -> U31(encArg(x_1), encArg(x_2), encArg(x_3), encArg(x_4)) encode_take(x_1, x_2) -> take(encArg(x_1), encArg(x_2)) encode_and(x_1, x_2) -> and(encArg(x_1), encArg(x_2)) encode_isNat(x_1) -> isNat(encArg(x_1)) encode_isNatList(x_1) -> isNatList(encArg(x_1)) encode_isNatIList(x_1) -> isNatIList(encArg(x_1)) Types: active :: zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList zeros :: zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList mark :: zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList cons :: zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList 0' :: zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList U11 :: zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList tt :: zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList s :: zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList length :: zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList U21 :: zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList nil :: zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList U31 :: zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList take :: zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList and :: zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList isNat :: zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList isNatList :: zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList isNatIList :: zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList encArg :: zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList cons_active :: zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList cons_mark :: zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList cons_cons :: zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList cons_U11 :: zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList cons_s :: zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList cons_length :: zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList cons_U21 :: zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList cons_U31 :: zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList cons_take :: zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList cons_and :: zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList cons_isNat :: zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList cons_isNatList :: zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList cons_isNatIList :: zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList encode_active :: zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList encode_zeros :: zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList encode_mark :: zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList encode_cons :: zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList encode_0 :: zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList encode_U11 :: zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList encode_tt :: zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList encode_s :: zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList encode_length :: zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList encode_U21 :: zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList encode_nil :: zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList encode_U31 :: zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList encode_take :: zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList encode_and :: zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList encode_isNat :: zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList encode_isNatList :: zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList encode_isNatIList :: zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList hole_zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList1_5 :: zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList gen_zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList2_5 :: Nat -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList ---------------------------------------- (11) OrderProof (LOWER BOUND(ID)) Heuristically decided to analyse the following defined symbols: active, mark, cons, s, length, take, isNatList, isNat, and, isNatIList, U11, U21, U31, encArg They will be analysed ascendingly in the following order: active = mark cons < active s < active length < active take < active isNatList < active isNat < active and < active isNatIList < active U11 < active U21 < active U31 < active active < encArg cons < mark s < mark length < mark take < mark isNatList < mark isNat < mark and < mark isNatIList < mark U11 < mark U21 < mark U31 < mark mark < encArg cons < encArg s < encArg length < encArg take < encArg isNatList < encArg isNat < encArg and < encArg isNatIList < encArg U11 < encArg U21 < encArg U31 < encArg ---------------------------------------- (12) Obligation: Innermost TRS: Rules: active(zeros) -> mark(cons(0', zeros)) active(U11(tt, L)) -> mark(s(length(L))) active(U21(tt)) -> mark(nil) active(U31(tt, IL, M, N)) -> mark(cons(N, take(M, IL))) active(and(tt, X)) -> mark(X) active(isNat(0')) -> mark(tt) active(isNat(length(V1))) -> mark(isNatList(V1)) active(isNat(s(V1))) -> mark(isNat(V1)) active(isNatIList(V)) -> mark(isNatList(V)) active(isNatIList(zeros)) -> mark(tt) active(isNatIList(cons(V1, V2))) -> mark(and(isNat(V1), isNatIList(V2))) active(isNatList(nil)) -> mark(tt) active(isNatList(cons(V1, V2))) -> mark(and(isNat(V1), isNatList(V2))) active(isNatList(take(V1, V2))) -> mark(and(isNat(V1), isNatIList(V2))) active(length(nil)) -> mark(0') active(length(cons(N, L))) -> mark(U11(and(isNatList(L), isNat(N)), L)) active(take(0', IL)) -> mark(U21(isNatIList(IL))) active(take(s(M), cons(N, IL))) -> mark(U31(and(isNatIList(IL), and(isNat(M), isNat(N))), IL, M, N)) mark(zeros) -> active(zeros) mark(cons(X1, X2)) -> active(cons(mark(X1), X2)) mark(0') -> active(0') mark(U11(X1, X2)) -> active(U11(mark(X1), X2)) mark(tt) -> active(tt) mark(s(X)) -> active(s(mark(X))) mark(length(X)) -> active(length(mark(X))) mark(U21(X)) -> active(U21(mark(X))) mark(nil) -> active(nil) mark(U31(X1, X2, X3, X4)) -> active(U31(mark(X1), X2, X3, X4)) mark(take(X1, X2)) -> active(take(mark(X1), mark(X2))) mark(and(X1, X2)) -> active(and(mark(X1), X2)) mark(isNat(X)) -> active(isNat(X)) mark(isNatList(X)) -> active(isNatList(X)) mark(isNatIList(X)) -> active(isNatIList(X)) cons(mark(X1), X2) -> cons(X1, X2) cons(X1, mark(X2)) -> cons(X1, X2) cons(active(X1), X2) -> cons(X1, X2) cons(X1, active(X2)) -> cons(X1, X2) U11(mark(X1), X2) -> U11(X1, X2) U11(X1, mark(X2)) -> U11(X1, X2) U11(active(X1), X2) -> U11(X1, X2) U11(X1, active(X2)) -> U11(X1, X2) s(mark(X)) -> s(X) s(active(X)) -> s(X) length(mark(X)) -> length(X) length(active(X)) -> length(X) U21(mark(X)) -> U21(X) U21(active(X)) -> U21(X) U31(mark(X1), X2, X3, X4) -> U31(X1, X2, X3, X4) U31(X1, mark(X2), X3, X4) -> U31(X1, X2, X3, X4) U31(X1, X2, mark(X3), X4) -> U31(X1, X2, X3, X4) U31(X1, X2, X3, mark(X4)) -> U31(X1, X2, X3, X4) U31(active(X1), X2, X3, X4) -> U31(X1, X2, X3, X4) U31(X1, active(X2), X3, X4) -> U31(X1, X2, X3, X4) U31(X1, X2, active(X3), X4) -> U31(X1, X2, X3, X4) U31(X1, X2, X3, active(X4)) -> U31(X1, X2, X3, X4) take(mark(X1), X2) -> take(X1, X2) take(X1, mark(X2)) -> take(X1, X2) take(active(X1), X2) -> take(X1, X2) take(X1, active(X2)) -> take(X1, X2) and(mark(X1), X2) -> and(X1, X2) and(X1, mark(X2)) -> and(X1, X2) and(active(X1), X2) -> and(X1, X2) and(X1, active(X2)) -> and(X1, X2) isNat(mark(X)) -> isNat(X) isNat(active(X)) -> isNat(X) isNatList(mark(X)) -> isNatList(X) isNatList(active(X)) -> isNatList(X) isNatIList(mark(X)) -> isNatIList(X) isNatIList(active(X)) -> isNatIList(X) encArg(zeros) -> zeros encArg(0') -> 0' encArg(tt) -> tt encArg(nil) -> nil encArg(cons_active(x_1)) -> active(encArg(x_1)) encArg(cons_mark(x_1)) -> mark(encArg(x_1)) encArg(cons_cons(x_1, x_2)) -> cons(encArg(x_1), encArg(x_2)) encArg(cons_U11(x_1, x_2)) -> U11(encArg(x_1), encArg(x_2)) encArg(cons_s(x_1)) -> s(encArg(x_1)) encArg(cons_length(x_1)) -> length(encArg(x_1)) encArg(cons_U21(x_1)) -> U21(encArg(x_1)) encArg(cons_U31(x_1, x_2, x_3, x_4)) -> U31(encArg(x_1), encArg(x_2), encArg(x_3), encArg(x_4)) encArg(cons_take(x_1, x_2)) -> take(encArg(x_1), encArg(x_2)) encArg(cons_and(x_1, x_2)) -> and(encArg(x_1), encArg(x_2)) encArg(cons_isNat(x_1)) -> isNat(encArg(x_1)) encArg(cons_isNatList(x_1)) -> isNatList(encArg(x_1)) encArg(cons_isNatIList(x_1)) -> isNatIList(encArg(x_1)) encode_active(x_1) -> active(encArg(x_1)) encode_zeros -> zeros encode_mark(x_1) -> mark(encArg(x_1)) encode_cons(x_1, x_2) -> cons(encArg(x_1), encArg(x_2)) encode_0 -> 0' encode_U11(x_1, x_2) -> U11(encArg(x_1), encArg(x_2)) encode_tt -> tt encode_s(x_1) -> s(encArg(x_1)) encode_length(x_1) -> length(encArg(x_1)) encode_U21(x_1) -> U21(encArg(x_1)) encode_nil -> nil encode_U31(x_1, x_2, x_3, x_4) -> U31(encArg(x_1), encArg(x_2), encArg(x_3), encArg(x_4)) encode_take(x_1, x_2) -> take(encArg(x_1), encArg(x_2)) encode_and(x_1, x_2) -> and(encArg(x_1), encArg(x_2)) encode_isNat(x_1) -> isNat(encArg(x_1)) encode_isNatList(x_1) -> isNatList(encArg(x_1)) encode_isNatIList(x_1) -> isNatIList(encArg(x_1)) Types: active :: zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList zeros :: zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList mark :: zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList cons :: zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList 0' :: zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList U11 :: zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList tt :: zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList s :: zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList length :: zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList U21 :: zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList nil :: zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList U31 :: zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList take :: zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList and :: zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList isNat :: zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList isNatList :: zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList isNatIList :: zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList encArg :: zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList cons_active :: zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList cons_mark :: zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList cons_cons :: zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList cons_U11 :: zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList cons_s :: zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList cons_length :: zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList cons_U21 :: zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList cons_U31 :: zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList cons_take :: zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList cons_and :: zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList cons_isNat :: zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList cons_isNatList :: zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList cons_isNatIList :: zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList encode_active :: zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList encode_zeros :: zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList encode_mark :: zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList encode_cons :: zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList encode_0 :: zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList encode_U11 :: zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList encode_tt :: zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList encode_s :: zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList encode_length :: zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList encode_U21 :: zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList encode_nil :: zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList encode_U31 :: zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList encode_take :: zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList encode_and :: zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList encode_isNat :: zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList encode_isNatList :: zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList encode_isNatIList :: zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList hole_zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList1_5 :: zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList gen_zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList2_5 :: Nat -> zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList Generator Equations: gen_zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList2_5(0) <=> zeros gen_zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList2_5(+(x, 1)) <=> cons_active(gen_zeros:0':tt:nil:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList2_5(x)) The following defined symbols remain to be analysed: cons, active, mark, s, length, take, isNatList, isNat, and, isNatIList, U11, U21, U31, encArg They will be analysed ascendingly in the following order: active = mark cons < active s < active length < active take < active isNatList < active isNat < active and < active isNatIList < active U11 < active U21 < active U31 < active active < encArg cons < mark s < mark length < mark take < mark isNatList < mark isNat < mark and < mark isNatIList < mark U11 < mark U21 < mark U31 < mark mark < encArg cons < encArg s < encArg length < encArg take < encArg isNatList < encArg isNat < encArg and < encArg isNatIList < encArg U11 < encArg U21 < encArg U31 < encArg ---------------------------------------- (13) RelTrsToTrsProof (UPPER BOUND(ID)) transformed relative TRS to TRS ---------------------------------------- (14) Obligation: The Runtime Complexity (innermost) of the given CpxTRS could be proven to be BOUNDS(1, INF). The TRS R consists of the following rules: active(zeros) -> mark(cons(0, zeros)) active(U11(tt, L)) -> mark(s(length(L))) active(U21(tt)) -> mark(nil) active(U31(tt, IL, M, N)) -> mark(cons(N, take(M, IL))) active(and(tt, X)) -> mark(X) active(isNat(0)) -> mark(tt) active(isNat(length(V1))) -> mark(isNatList(V1)) active(isNat(s(V1))) -> mark(isNat(V1)) active(isNatIList(V)) -> mark(isNatList(V)) active(isNatIList(zeros)) -> mark(tt) active(isNatIList(cons(V1, V2))) -> mark(and(isNat(V1), isNatIList(V2))) active(isNatList(nil)) -> mark(tt) active(isNatList(cons(V1, V2))) -> mark(and(isNat(V1), isNatList(V2))) active(isNatList(take(V1, V2))) -> mark(and(isNat(V1), isNatIList(V2))) active(length(nil)) -> mark(0) active(length(cons(N, L))) -> mark(U11(and(isNatList(L), isNat(N)), L)) active(take(0, IL)) -> mark(U21(isNatIList(IL))) active(take(s(M), cons(N, IL))) -> mark(U31(and(isNatIList(IL), and(isNat(M), isNat(N))), IL, M, N)) mark(zeros) -> active(zeros) mark(cons(X1, X2)) -> active(cons(mark(X1), X2)) mark(0) -> active(0) mark(U11(X1, X2)) -> active(U11(mark(X1), X2)) mark(tt) -> active(tt) mark(s(X)) -> active(s(mark(X))) mark(length(X)) -> active(length(mark(X))) mark(U21(X)) -> active(U21(mark(X))) mark(nil) -> active(nil) mark(U31(X1, X2, X3, X4)) -> active(U31(mark(X1), X2, X3, X4)) mark(take(X1, X2)) -> active(take(mark(X1), mark(X2))) mark(and(X1, X2)) -> active(and(mark(X1), X2)) mark(isNat(X)) -> active(isNat(X)) mark(isNatList(X)) -> active(isNatList(X)) mark(isNatIList(X)) -> active(isNatIList(X)) cons(mark(X1), X2) -> cons(X1, X2) cons(X1, mark(X2)) -> cons(X1, X2) cons(active(X1), X2) -> cons(X1, X2) cons(X1, active(X2)) -> cons(X1, X2) U11(mark(X1), X2) -> U11(X1, X2) U11(X1, mark(X2)) -> U11(X1, X2) U11(active(X1), X2) -> U11(X1, X2) U11(X1, active(X2)) -> U11(X1, X2) s(mark(X)) -> s(X) s(active(X)) -> s(X) length(mark(X)) -> length(X) length(active(X)) -> length(X) U21(mark(X)) -> U21(X) U21(active(X)) -> U21(X) U31(mark(X1), X2, X3, X4) -> U31(X1, X2, X3, X4) U31(X1, mark(X2), X3, X4) -> U31(X1, X2, X3, X4) U31(X1, X2, mark(X3), X4) -> U31(X1, X2, X3, X4) U31(X1, X2, X3, mark(X4)) -> U31(X1, X2, X3, X4) U31(active(X1), X2, X3, X4) -> U31(X1, X2, X3, X4) U31(X1, active(X2), X3, X4) -> U31(X1, X2, X3, X4) U31(X1, X2, active(X3), X4) -> U31(X1, X2, X3, X4) U31(X1, X2, X3, active(X4)) -> U31(X1, X2, X3, X4) take(mark(X1), X2) -> take(X1, X2) take(X1, mark(X2)) -> take(X1, X2) take(active(X1), X2) -> take(X1, X2) take(X1, active(X2)) -> take(X1, X2) and(mark(X1), X2) -> and(X1, X2) and(X1, mark(X2)) -> and(X1, X2) and(active(X1), X2) -> and(X1, X2) and(X1, active(X2)) -> and(X1, X2) isNat(mark(X)) -> isNat(X) isNat(active(X)) -> isNat(X) isNatList(mark(X)) -> isNatList(X) isNatList(active(X)) -> isNatList(X) isNatIList(mark(X)) -> isNatIList(X) isNatIList(active(X)) -> isNatIList(X) encArg(zeros) -> zeros encArg(0) -> 0 encArg(tt) -> tt encArg(nil) -> nil encArg(cons_active(x_1)) -> active(encArg(x_1)) encArg(cons_mark(x_1)) -> mark(encArg(x_1)) encArg(cons_cons(x_1, x_2)) -> cons(encArg(x_1), encArg(x_2)) encArg(cons_U11(x_1, x_2)) -> U11(encArg(x_1), encArg(x_2)) encArg(cons_s(x_1)) -> s(encArg(x_1)) encArg(cons_length(x_1)) -> length(encArg(x_1)) encArg(cons_U21(x_1)) -> U21(encArg(x_1)) encArg(cons_U31(x_1, x_2, x_3, x_4)) -> U31(encArg(x_1), encArg(x_2), encArg(x_3), encArg(x_4)) encArg(cons_take(x_1, x_2)) -> take(encArg(x_1), encArg(x_2)) encArg(cons_and(x_1, x_2)) -> and(encArg(x_1), encArg(x_2)) encArg(cons_isNat(x_1)) -> isNat(encArg(x_1)) encArg(cons_isNatList(x_1)) -> isNatList(encArg(x_1)) encArg(cons_isNatIList(x_1)) -> isNatIList(encArg(x_1)) encode_active(x_1) -> active(encArg(x_1)) encode_zeros -> zeros encode_mark(x_1) -> mark(encArg(x_1)) encode_cons(x_1, x_2) -> cons(encArg(x_1), encArg(x_2)) encode_0 -> 0 encode_U11(x_1, x_2) -> U11(encArg(x_1), encArg(x_2)) encode_tt -> tt encode_s(x_1) -> s(encArg(x_1)) encode_length(x_1) -> length(encArg(x_1)) encode_U21(x_1) -> U21(encArg(x_1)) encode_nil -> nil encode_U31(x_1, x_2, x_3, x_4) -> U31(encArg(x_1), encArg(x_2), encArg(x_3), encArg(x_4)) encode_take(x_1, x_2) -> take(encArg(x_1), encArg(x_2)) encode_and(x_1, x_2) -> and(encArg(x_1), encArg(x_2)) encode_isNat(x_1) -> isNat(encArg(x_1)) encode_isNatList(x_1) -> isNatList(encArg(x_1)) encode_isNatIList(x_1) -> isNatIList(encArg(x_1)) S is empty. Rewrite Strategy: INNERMOST ---------------------------------------- (15) NonCtorToCtorProof (UPPER BOUND(ID)) transformed non-ctor to ctor-system ---------------------------------------- (16) Obligation: The Runtime Complexity (innermost) of the given CpxRelTRS could be proven to be BOUNDS(1, INF). The TRS R consists of the following rules: active(zeros) -> mark(cons(0, zeros)) mark(zeros) -> active(zeros) mark(0) -> active(0) mark(tt) -> active(tt) mark(nil) -> active(nil) isNat(c_active(X)) -> isNat(X) active(c_U11(tt, L)) -> mark(s(length(L))) U31(X1, c_mark(X2), X3, X4) -> U31(X1, X2, X3, X4) cons(c_mark(X1), X2) -> cons(X1, X2) length(c_mark(X)) -> length(X) U31(c_active(X1), X2, X3, X4) -> U31(X1, X2, X3, X4) mark(c_U11(X1, X2)) -> active(U11(mark(X1), X2)) U31(c_mark(X1), X2, X3, X4) -> U31(X1, X2, X3, X4) U11(X1, c_mark(X2)) -> U11(X1, X2) take(c_mark(X1), X2) -> take(X1, X2) mark(c_isNatList(X)) -> active(isNatList(X)) active(c_length(nil)) -> mark(0) take(c_active(X1), X2) -> take(X1, X2) active(c_U21(tt)) -> mark(nil) active(c_isNatIList(c_cons(V1, V2))) -> mark(and(isNat(V1), isNatIList(V2))) active(c_isNatList(c_take(V1, V2))) -> mark(and(isNat(V1), isNatIList(V2))) active(c_take(c_s(M), c_cons(N, IL))) -> mark(U31(and(isNatIList(IL), and(isNat(M), isNat(N))), IL, M, N)) mark(c_U21(X)) -> active(U21(mark(X))) active(c_isNatList(c_cons(V1, V2))) -> mark(and(isNat(V1), isNatList(V2))) active(c_U31(tt, IL, M, N)) -> mark(cons(N, take(M, IL))) U21(c_active(X)) -> U21(X) isNat(c_mark(X)) -> isNat(X) active(c_length(c_cons(N, L))) -> mark(U11(and(isNatList(L), isNat(N)), L)) active(c_isNat(0)) -> mark(tt) U21(c_mark(X)) -> U21(X) mark(c_isNatIList(X)) -> active(isNatIList(X)) take(X1, c_active(X2)) -> take(X1, X2) U31(X1, X2, X3, c_mark(X4)) -> U31(X1, X2, X3, X4) active(c_isNatIList(V)) -> mark(isNatList(V)) isNatIList(c_active(X)) -> isNatIList(X) mark(c_s(X)) -> active(s(mark(X))) s(c_active(X)) -> s(X) and(c_active(X1), X2) -> and(X1, X2) cons(X1, c_active(X2)) -> cons(X1, X2) mark(c_and(X1, X2)) -> active(and(mark(X1), X2)) U31(X1, c_active(X2), X3, X4) -> U31(X1, X2, X3, X4) active(c_isNat(c_s(V1))) -> mark(isNat(V1)) mark(c_take(X1, X2)) -> active(take(mark(X1), mark(X2))) cons(X1, c_mark(X2)) -> cons(X1, X2) isNatIList(c_mark(X)) -> isNatIList(X) mark(c_length(X)) -> active(length(mark(X))) active(c_isNat(c_length(V1))) -> mark(isNatList(V1)) U31(X1, X2, c_mark(X3), X4) -> U31(X1, X2, X3, X4) take(X1, c_mark(X2)) -> take(X1, X2) active(c_isNatIList(zeros)) -> mark(tt) s(c_mark(X)) -> s(X) U11(c_mark(X1), X2) -> U11(X1, X2) U11(X1, c_active(X2)) -> U11(X1, X2) active(c_take(0, IL)) -> mark(U21(isNatIList(IL))) U31(X1, X2, X3, c_active(X4)) -> U31(X1, X2, X3, X4) active(c_and(tt, X)) -> mark(X) length(c_active(X)) -> length(X) isNatList(c_mark(X)) -> isNatList(X) active(c_isNatList(nil)) -> mark(tt) isNatList(c_active(X)) -> isNatList(X) cons(c_active(X1), X2) -> cons(X1, X2) mark(c_isNat(X)) -> active(isNat(X)) mark(c_cons(X1, X2)) -> active(cons(mark(X1), X2)) and(X1, c_mark(X2)) -> and(X1, X2) mark(c_U31(X1, X2, X3, X4)) -> active(U31(mark(X1), X2, X3, X4)) and(c_mark(X1), X2) -> and(X1, X2) U31(X1, X2, c_active(X3), X4) -> U31(X1, X2, X3, X4) U11(c_active(X1), X2) -> U11(X1, X2) and(X1, c_active(X2)) -> and(X1, X2) The (relative) TRS S consists of the following rules: encArg(zeros) -> zeros encArg(0) -> 0 encArg(tt) -> tt encArg(nil) -> nil encArg(cons_active(x_1)) -> active(encArg(x_1)) encArg(cons_mark(x_1)) -> mark(encArg(x_1)) encArg(cons_cons(x_1, x_2)) -> cons(encArg(x_1), encArg(x_2)) encArg(cons_U11(x_1, x_2)) -> U11(encArg(x_1), encArg(x_2)) encArg(cons_s(x_1)) -> s(encArg(x_1)) encArg(cons_length(x_1)) -> length(encArg(x_1)) encArg(cons_U21(x_1)) -> U21(encArg(x_1)) encArg(cons_U31(x_1, x_2, x_3, x_4)) -> U31(encArg(x_1), encArg(x_2), encArg(x_3), encArg(x_4)) encArg(cons_take(x_1, x_2)) -> take(encArg(x_1), encArg(x_2)) encArg(cons_and(x_1, x_2)) -> and(encArg(x_1), encArg(x_2)) encArg(cons_isNat(x_1)) -> isNat(encArg(x_1)) encArg(cons_isNatList(x_1)) -> isNatList(encArg(x_1)) encArg(cons_isNatIList(x_1)) -> isNatIList(encArg(x_1)) encode_active(x_1) -> active(encArg(x_1)) encode_zeros -> zeros encode_mark(x_1) -> mark(encArg(x_1)) encode_cons(x_1, x_2) -> cons(encArg(x_1), encArg(x_2)) encode_0 -> 0 encode_U11(x_1, x_2) -> U11(encArg(x_1), encArg(x_2)) encode_tt -> tt encode_s(x_1) -> s(encArg(x_1)) encode_length(x_1) -> length(encArg(x_1)) encode_U21(x_1) -> U21(encArg(x_1)) encode_nil -> nil encode_U31(x_1, x_2, x_3, x_4) -> U31(encArg(x_1), encArg(x_2), encArg(x_3), encArg(x_4)) encode_take(x_1, x_2) -> take(encArg(x_1), encArg(x_2)) encode_and(x_1, x_2) -> and(encArg(x_1), encArg(x_2)) encode_isNat(x_1) -> isNat(encArg(x_1)) encode_isNatList(x_1) -> isNatList(encArg(x_1)) encode_isNatIList(x_1) -> isNatIList(encArg(x_1)) isNatIList(x0) -> c_isNatIList(x0) isNat(x0) -> c_isNat(x0) U31(x0, x1, x2, x3) -> c_U31(x0, x1, x2, x3) U21(x0) -> c_U21(x0) and(x0, x1) -> c_and(x0, x1) U11(x0, x1) -> c_U11(x0, x1) s(x0) -> c_s(x0) active(x0) -> c_active(x0) length(x0) -> c_length(x0) take(x0, x1) -> c_take(x0, x1) cons(x0, x1) -> c_cons(x0, x1) isNatList(x0) -> c_isNatList(x0) mark(x0) -> c_mark(x0) Rewrite Strategy: INNERMOST ---------------------------------------- (17) RelTrsToWeightedTrsProof (BOTH BOUNDS(ID, ID)) Transformed relative TRS to weighted TRS ---------------------------------------- (18) Obligation: The Runtime Complexity (innermost) of the given CpxWeightedTrs could be proven to be BOUNDS(1, INF). The TRS R consists of the following rules: active(zeros) -> mark(cons(0, zeros)) [1] mark(zeros) -> active(zeros) [1] mark(0) -> active(0) [1] mark(tt) -> active(tt) [1] mark(nil) -> active(nil) [1] isNat(c_active(X)) -> isNat(X) [1] active(c_U11(tt, L)) -> mark(s(length(L))) [1] U31(X1, c_mark(X2), X3, X4) -> U31(X1, X2, X3, X4) [1] cons(c_mark(X1), X2) -> cons(X1, X2) [1] length(c_mark(X)) -> length(X) [1] U31(c_active(X1), X2, X3, X4) -> U31(X1, X2, X3, X4) [1] mark(c_U11(X1, X2)) -> active(U11(mark(X1), X2)) [1] U31(c_mark(X1), X2, X3, X4) -> U31(X1, X2, X3, X4) [1] U11(X1, c_mark(X2)) -> U11(X1, X2) [1] take(c_mark(X1), X2) -> take(X1, X2) [1] mark(c_isNatList(X)) -> active(isNatList(X)) [1] active(c_length(nil)) -> mark(0) [1] take(c_active(X1), X2) -> take(X1, X2) [1] active(c_U21(tt)) -> mark(nil) [1] active(c_isNatIList(c_cons(V1, V2))) -> mark(and(isNat(V1), isNatIList(V2))) [1] active(c_isNatList(c_take(V1, V2))) -> mark(and(isNat(V1), isNatIList(V2))) [1] active(c_take(c_s(M), c_cons(N, IL))) -> mark(U31(and(isNatIList(IL), and(isNat(M), isNat(N))), IL, M, N)) [1] mark(c_U21(X)) -> active(U21(mark(X))) [1] active(c_isNatList(c_cons(V1, V2))) -> mark(and(isNat(V1), isNatList(V2))) [1] active(c_U31(tt, IL, M, N)) -> mark(cons(N, take(M, IL))) [1] U21(c_active(X)) -> U21(X) [1] isNat(c_mark(X)) -> isNat(X) [1] active(c_length(c_cons(N, L))) -> mark(U11(and(isNatList(L), isNat(N)), L)) [1] active(c_isNat(0)) -> mark(tt) [1] U21(c_mark(X)) -> U21(X) [1] mark(c_isNatIList(X)) -> active(isNatIList(X)) [1] take(X1, c_active(X2)) -> take(X1, X2) [1] U31(X1, X2, X3, c_mark(X4)) -> U31(X1, X2, X3, X4) [1] active(c_isNatIList(V)) -> mark(isNatList(V)) [1] isNatIList(c_active(X)) -> isNatIList(X) [1] mark(c_s(X)) -> active(s(mark(X))) [1] s(c_active(X)) -> s(X) [1] and(c_active(X1), X2) -> and(X1, X2) [1] cons(X1, c_active(X2)) -> cons(X1, X2) [1] mark(c_and(X1, X2)) -> active(and(mark(X1), X2)) [1] U31(X1, c_active(X2), X3, X4) -> U31(X1, X2, X3, X4) [1] active(c_isNat(c_s(V1))) -> mark(isNat(V1)) [1] mark(c_take(X1, X2)) -> active(take(mark(X1), mark(X2))) [1] cons(X1, c_mark(X2)) -> cons(X1, X2) [1] isNatIList(c_mark(X)) -> isNatIList(X) [1] mark(c_length(X)) -> active(length(mark(X))) [1] active(c_isNat(c_length(V1))) -> mark(isNatList(V1)) [1] U31(X1, X2, c_mark(X3), X4) -> U31(X1, X2, X3, X4) [1] take(X1, c_mark(X2)) -> take(X1, X2) [1] active(c_isNatIList(zeros)) -> mark(tt) [1] s(c_mark(X)) -> s(X) [1] U11(c_mark(X1), X2) -> U11(X1, X2) [1] U11(X1, c_active(X2)) -> U11(X1, X2) [1] active(c_take(0, IL)) -> mark(U21(isNatIList(IL))) [1] U31(X1, X2, X3, c_active(X4)) -> U31(X1, X2, X3, X4) [1] active(c_and(tt, X)) -> mark(X) [1] length(c_active(X)) -> length(X) [1] isNatList(c_mark(X)) -> isNatList(X) [1] active(c_isNatList(nil)) -> mark(tt) [1] isNatList(c_active(X)) -> isNatList(X) [1] cons(c_active(X1), X2) -> cons(X1, X2) [1] mark(c_isNat(X)) -> active(isNat(X)) [1] mark(c_cons(X1, X2)) -> active(cons(mark(X1), X2)) [1] and(X1, c_mark(X2)) -> and(X1, X2) [1] mark(c_U31(X1, X2, X3, X4)) -> active(U31(mark(X1), X2, X3, X4)) [1] and(c_mark(X1), X2) -> and(X1, X2) [1] U31(X1, X2, c_active(X3), X4) -> U31(X1, X2, X3, X4) [1] U11(c_active(X1), X2) -> U11(X1, X2) [1] and(X1, c_active(X2)) -> and(X1, X2) [1] encArg(zeros) -> zeros [0] encArg(0) -> 0 [0] encArg(tt) -> tt [0] encArg(nil) -> nil [0] encArg(cons_active(x_1)) -> active(encArg(x_1)) [0] encArg(cons_mark(x_1)) -> mark(encArg(x_1)) [0] encArg(cons_cons(x_1, x_2)) -> cons(encArg(x_1), encArg(x_2)) [0] encArg(cons_U11(x_1, x_2)) -> U11(encArg(x_1), encArg(x_2)) [0] encArg(cons_s(x_1)) -> s(encArg(x_1)) [0] encArg(cons_length(x_1)) -> length(encArg(x_1)) [0] encArg(cons_U21(x_1)) -> U21(encArg(x_1)) [0] encArg(cons_U31(x_1, x_2, x_3, x_4)) -> U31(encArg(x_1), encArg(x_2), encArg(x_3), encArg(x_4)) [0] encArg(cons_take(x_1, x_2)) -> take(encArg(x_1), encArg(x_2)) [0] encArg(cons_and(x_1, x_2)) -> and(encArg(x_1), encArg(x_2)) [0] encArg(cons_isNat(x_1)) -> isNat(encArg(x_1)) [0] encArg(cons_isNatList(x_1)) -> isNatList(encArg(x_1)) [0] encArg(cons_isNatIList(x_1)) -> isNatIList(encArg(x_1)) [0] encode_active(x_1) -> active(encArg(x_1)) [0] encode_zeros -> zeros [0] encode_mark(x_1) -> mark(encArg(x_1)) [0] encode_cons(x_1, x_2) -> cons(encArg(x_1), encArg(x_2)) [0] encode_0 -> 0 [0] encode_U11(x_1, x_2) -> U11(encArg(x_1), encArg(x_2)) [0] encode_tt -> tt [0] encode_s(x_1) -> s(encArg(x_1)) [0] encode_length(x_1) -> length(encArg(x_1)) [0] encode_U21(x_1) -> U21(encArg(x_1)) [0] encode_nil -> nil [0] encode_U31(x_1, x_2, x_3, x_4) -> U31(encArg(x_1), encArg(x_2), encArg(x_3), encArg(x_4)) [0] encode_take(x_1, x_2) -> take(encArg(x_1), encArg(x_2)) [0] encode_and(x_1, x_2) -> and(encArg(x_1), encArg(x_2)) [0] encode_isNat(x_1) -> isNat(encArg(x_1)) [0] encode_isNatList(x_1) -> isNatList(encArg(x_1)) [0] encode_isNatIList(x_1) -> isNatIList(encArg(x_1)) [0] isNatIList(x0) -> c_isNatIList(x0) [0] isNat(x0) -> c_isNat(x0) [0] U31(x0, x1, x2, x3) -> c_U31(x0, x1, x2, x3) [0] U21(x0) -> c_U21(x0) [0] and(x0, x1) -> c_and(x0, x1) [0] U11(x0, x1) -> c_U11(x0, x1) [0] s(x0) -> c_s(x0) [0] active(x0) -> c_active(x0) [0] length(x0) -> c_length(x0) [0] take(x0, x1) -> c_take(x0, x1) [0] cons(x0, x1) -> c_cons(x0, x1) [0] isNatList(x0) -> c_isNatList(x0) [0] mark(x0) -> c_mark(x0) [0] Rewrite Strategy: INNERMOST ---------------------------------------- (19) TypeInferenceProof (BOTH BOUNDS(ID, ID)) Infered types. ---------------------------------------- (20) Obligation: Runtime Complexity Weighted TRS with Types. The TRS R consists of the following rules: active(zeros) -> mark(cons(0, zeros)) [1] mark(zeros) -> active(zeros) [1] mark(0) -> active(0) [1] mark(tt) -> active(tt) [1] mark(nil) -> active(nil) [1] isNat(c_active(X)) -> isNat(X) [1] active(c_U11(tt, L)) -> mark(s(length(L))) [1] U31(X1, c_mark(X2), X3, X4) -> U31(X1, X2, X3, X4) [1] cons(c_mark(X1), X2) -> cons(X1, X2) [1] length(c_mark(X)) -> length(X) [1] U31(c_active(X1), X2, X3, X4) -> U31(X1, X2, X3, X4) [1] mark(c_U11(X1, X2)) -> active(U11(mark(X1), X2)) [1] U31(c_mark(X1), X2, X3, X4) -> U31(X1, X2, X3, X4) [1] U11(X1, c_mark(X2)) -> U11(X1, X2) [1] take(c_mark(X1), X2) -> take(X1, X2) [1] mark(c_isNatList(X)) -> active(isNatList(X)) [1] active(c_length(nil)) -> mark(0) [1] take(c_active(X1), X2) -> take(X1, X2) [1] active(c_U21(tt)) -> mark(nil) [1] active(c_isNatIList(c_cons(V1, V2))) -> mark(and(isNat(V1), isNatIList(V2))) [1] active(c_isNatList(c_take(V1, V2))) -> mark(and(isNat(V1), isNatIList(V2))) [1] active(c_take(c_s(M), c_cons(N, IL))) -> mark(U31(and(isNatIList(IL), and(isNat(M), isNat(N))), IL, M, N)) [1] mark(c_U21(X)) -> active(U21(mark(X))) [1] active(c_isNatList(c_cons(V1, V2))) -> mark(and(isNat(V1), isNatList(V2))) [1] active(c_U31(tt, IL, M, N)) -> mark(cons(N, take(M, IL))) [1] U21(c_active(X)) -> U21(X) [1] isNat(c_mark(X)) -> isNat(X) [1] active(c_length(c_cons(N, L))) -> mark(U11(and(isNatList(L), isNat(N)), L)) [1] active(c_isNat(0)) -> mark(tt) [1] U21(c_mark(X)) -> U21(X) [1] mark(c_isNatIList(X)) -> active(isNatIList(X)) [1] take(X1, c_active(X2)) -> take(X1, X2) [1] U31(X1, X2, X3, c_mark(X4)) -> U31(X1, X2, X3, X4) [1] active(c_isNatIList(V)) -> mark(isNatList(V)) [1] isNatIList(c_active(X)) -> isNatIList(X) [1] mark(c_s(X)) -> active(s(mark(X))) [1] s(c_active(X)) -> s(X) [1] and(c_active(X1), X2) -> and(X1, X2) [1] cons(X1, c_active(X2)) -> cons(X1, X2) [1] mark(c_and(X1, X2)) -> active(and(mark(X1), X2)) [1] U31(X1, c_active(X2), X3, X4) -> U31(X1, X2, X3, X4) [1] active(c_isNat(c_s(V1))) -> mark(isNat(V1)) [1] mark(c_take(X1, X2)) -> active(take(mark(X1), mark(X2))) [1] cons(X1, c_mark(X2)) -> cons(X1, X2) [1] isNatIList(c_mark(X)) -> isNatIList(X) [1] mark(c_length(X)) -> active(length(mark(X))) [1] active(c_isNat(c_length(V1))) -> mark(isNatList(V1)) [1] U31(X1, X2, c_mark(X3), X4) -> U31(X1, X2, X3, X4) [1] take(X1, c_mark(X2)) -> take(X1, X2) [1] active(c_isNatIList(zeros)) -> mark(tt) [1] s(c_mark(X)) -> s(X) [1] U11(c_mark(X1), X2) -> U11(X1, X2) [1] U11(X1, c_active(X2)) -> U11(X1, X2) [1] active(c_take(0, IL)) -> mark(U21(isNatIList(IL))) [1] U31(X1, X2, X3, c_active(X4)) -> U31(X1, X2, X3, X4) [1] active(c_and(tt, X)) -> mark(X) [1] length(c_active(X)) -> length(X) [1] isNatList(c_mark(X)) -> isNatList(X) [1] active(c_isNatList(nil)) -> mark(tt) [1] isNatList(c_active(X)) -> isNatList(X) [1] cons(c_active(X1), X2) -> cons(X1, X2) [1] mark(c_isNat(X)) -> active(isNat(X)) [1] mark(c_cons(X1, X2)) -> active(cons(mark(X1), X2)) [1] and(X1, c_mark(X2)) -> and(X1, X2) [1] mark(c_U31(X1, X2, X3, X4)) -> active(U31(mark(X1), X2, X3, X4)) [1] and(c_mark(X1), X2) -> and(X1, X2) [1] U31(X1, X2, c_active(X3), X4) -> U31(X1, X2, X3, X4) [1] U11(c_active(X1), X2) -> U11(X1, X2) [1] and(X1, c_active(X2)) -> and(X1, X2) [1] encArg(zeros) -> zeros [0] encArg(0) -> 0 [0] encArg(tt) -> tt [0] encArg(nil) -> nil [0] encArg(cons_active(x_1)) -> active(encArg(x_1)) [0] encArg(cons_mark(x_1)) -> mark(encArg(x_1)) [0] encArg(cons_cons(x_1, x_2)) -> cons(encArg(x_1), encArg(x_2)) [0] encArg(cons_U11(x_1, x_2)) -> U11(encArg(x_1), encArg(x_2)) [0] encArg(cons_s(x_1)) -> s(encArg(x_1)) [0] encArg(cons_length(x_1)) -> length(encArg(x_1)) [0] encArg(cons_U21(x_1)) -> U21(encArg(x_1)) [0] encArg(cons_U31(x_1, x_2, x_3, x_4)) -> U31(encArg(x_1), encArg(x_2), encArg(x_3), encArg(x_4)) [0] encArg(cons_take(x_1, x_2)) -> take(encArg(x_1), encArg(x_2)) [0] encArg(cons_and(x_1, x_2)) -> and(encArg(x_1), encArg(x_2)) [0] encArg(cons_isNat(x_1)) -> isNat(encArg(x_1)) [0] encArg(cons_isNatList(x_1)) -> isNatList(encArg(x_1)) [0] encArg(cons_isNatIList(x_1)) -> isNatIList(encArg(x_1)) [0] encode_active(x_1) -> active(encArg(x_1)) [0] encode_zeros -> zeros [0] encode_mark(x_1) -> mark(encArg(x_1)) [0] encode_cons(x_1, x_2) -> cons(encArg(x_1), encArg(x_2)) [0] encode_0 -> 0 [0] encode_U11(x_1, x_2) -> U11(encArg(x_1), encArg(x_2)) [0] encode_tt -> tt [0] encode_s(x_1) -> s(encArg(x_1)) [0] encode_length(x_1) -> length(encArg(x_1)) [0] encode_U21(x_1) -> U21(encArg(x_1)) [0] encode_nil -> nil [0] encode_U31(x_1, x_2, x_3, x_4) -> U31(encArg(x_1), encArg(x_2), encArg(x_3), encArg(x_4)) [0] encode_take(x_1, x_2) -> take(encArg(x_1), encArg(x_2)) [0] encode_and(x_1, x_2) -> and(encArg(x_1), encArg(x_2)) [0] encode_isNat(x_1) -> isNat(encArg(x_1)) [0] encode_isNatList(x_1) -> isNatList(encArg(x_1)) [0] encode_isNatIList(x_1) -> isNatIList(encArg(x_1)) [0] isNatIList(x0) -> c_isNatIList(x0) [0] isNat(x0) -> c_isNat(x0) [0] U31(x0, x1, x2, x3) -> c_U31(x0, x1, x2, x3) [0] U21(x0) -> c_U21(x0) [0] and(x0, x1) -> c_and(x0, x1) [0] U11(x0, x1) -> c_U11(x0, x1) [0] s(x0) -> c_s(x0) [0] active(x0) -> c_active(x0) [0] length(x0) -> c_length(x0) [0] take(x0, x1) -> c_take(x0, x1) [0] cons(x0, x1) -> c_cons(x0, x1) [0] isNatList(x0) -> c_isNatList(x0) [0] mark(x0) -> c_mark(x0) [0] The TRS has the following type information: active :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList zeros :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList mark :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList cons :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList 0 :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList tt :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList nil :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList isNat :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList c_active :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList c_U11 :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList s :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList length :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList U31 :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList c_mark :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList U11 :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList take :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList c_isNatList :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList isNatList :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList c_length :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList c_U21 :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList c_isNatIList :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList c_cons :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList and :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList isNatIList :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList c_take :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList c_s :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList U21 :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList c_U31 :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList c_isNat :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList c_and :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList encArg :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList cons_active :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList cons_mark :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList cons_cons :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList cons_U11 :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList cons_s :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList cons_length :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList cons_U21 :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList cons_U31 :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList cons_take :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList cons_and :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList cons_isNat :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList cons_isNatList :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList cons_isNatIList :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList encode_active :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList encode_zeros :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList encode_mark :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList encode_cons :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList encode_0 :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList encode_U11 :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList encode_tt :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList encode_s :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList encode_length :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList encode_U21 :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList encode_nil :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList encode_U31 :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList encode_take :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList encode_and :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList encode_isNat :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList encode_isNatList :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList encode_isNatIList :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList Rewrite Strategy: INNERMOST ---------------------------------------- (21) CompletionProof (UPPER BOUND(ID)) The transformation into a RNTS is sound, since: (a) The obligation is a constructor system where every type has a constant constructor, (b) The following defined symbols do not have to be completely defined, as they can never occur inside other defined symbols: none (c) The following functions are completely defined: encArg_1 encode_active_1 encode_zeros encode_mark_1 encode_cons_2 encode_0 encode_U11_2 encode_tt encode_s_1 encode_length_1 encode_U21_1 encode_nil encode_U31_4 encode_take_2 encode_and_2 encode_isNat_1 encode_isNatList_1 encode_isNatIList_1 isNatIList_1 isNat_1 U31_4 U21_1 and_2 U11_2 s_1 active_1 length_1 take_2 cons_2 isNatList_1 mark_1 Due to the following rules being added: encArg(v0) -> null_encArg [0] encode_active(v0) -> null_encode_active [0] encode_zeros -> null_encode_zeros [0] encode_mark(v0) -> null_encode_mark [0] encode_cons(v0, v1) -> null_encode_cons [0] encode_0 -> null_encode_0 [0] encode_U11(v0, v1) -> null_encode_U11 [0] encode_tt -> null_encode_tt [0] encode_s(v0) -> null_encode_s [0] encode_length(v0) -> null_encode_length [0] encode_U21(v0) -> null_encode_U21 [0] encode_nil -> null_encode_nil [0] encode_U31(v0, v1, v2, v3) -> null_encode_U31 [0] encode_take(v0, v1) -> null_encode_take [0] encode_and(v0, v1) -> null_encode_and [0] encode_isNat(v0) -> null_encode_isNat [0] encode_isNatList(v0) -> null_encode_isNatList [0] encode_isNatIList(v0) -> null_encode_isNatIList [0] isNatIList(v0) -> null_isNatIList [0] isNat(v0) -> null_isNat [0] U31(v0, v1, v2, v3) -> null_U31 [0] U21(v0) -> null_U21 [0] and(v0, v1) -> null_and [0] U11(v0, v1) -> null_U11 [0] s(v0) -> null_s [0] active(v0) -> null_active [0] length(v0) -> null_length [0] take(v0, v1) -> null_take [0] cons(v0, v1) -> null_cons [0] isNatList(v0) -> null_isNatList [0] mark(v0) -> null_mark [0] And the following fresh constants: null_encArg, null_encode_active, null_encode_zeros, null_encode_mark, null_encode_cons, null_encode_0, null_encode_U11, null_encode_tt, null_encode_s, null_encode_length, null_encode_U21, null_encode_nil, null_encode_U31, null_encode_take, null_encode_and, null_encode_isNat, null_encode_isNatList, null_encode_isNatIList, null_isNatIList, null_isNat, null_U31, null_U21, null_and, null_U11, null_s, null_active, null_length, null_take, null_cons, null_isNatList, null_mark ---------------------------------------- (22) Obligation: Runtime Complexity Weighted TRS where critical functions are completely defined. The underlying TRS is: Runtime Complexity Weighted TRS with Types. The TRS R consists of the following rules: active(zeros) -> mark(cons(0, zeros)) [1] mark(zeros) -> active(zeros) [1] mark(0) -> active(0) [1] mark(tt) -> active(tt) [1] mark(nil) -> active(nil) [1] isNat(c_active(X)) -> isNat(X) [1] active(c_U11(tt, L)) -> mark(s(length(L))) [1] U31(X1, c_mark(X2), X3, X4) -> U31(X1, X2, X3, X4) [1] cons(c_mark(X1), X2) -> cons(X1, X2) [1] length(c_mark(X)) -> length(X) [1] U31(c_active(X1), X2, X3, X4) -> U31(X1, X2, X3, X4) [1] mark(c_U11(X1, X2)) -> active(U11(mark(X1), X2)) [1] U31(c_mark(X1), X2, X3, X4) -> U31(X1, X2, X3, X4) [1] U11(X1, c_mark(X2)) -> U11(X1, X2) [1] take(c_mark(X1), X2) -> take(X1, X2) [1] mark(c_isNatList(X)) -> active(isNatList(X)) [1] active(c_length(nil)) -> mark(0) [1] take(c_active(X1), X2) -> take(X1, X2) [1] active(c_U21(tt)) -> mark(nil) [1] active(c_isNatIList(c_cons(V1, V2))) -> mark(and(isNat(V1), isNatIList(V2))) [1] active(c_isNatList(c_take(V1, V2))) -> mark(and(isNat(V1), isNatIList(V2))) [1] active(c_take(c_s(M), c_cons(N, IL))) -> mark(U31(and(isNatIList(IL), and(isNat(M), isNat(N))), IL, M, N)) [1] mark(c_U21(X)) -> active(U21(mark(X))) [1] active(c_isNatList(c_cons(V1, V2))) -> mark(and(isNat(V1), isNatList(V2))) [1] active(c_U31(tt, IL, M, N)) -> mark(cons(N, take(M, IL))) [1] U21(c_active(X)) -> U21(X) [1] isNat(c_mark(X)) -> isNat(X) [1] active(c_length(c_cons(N, L))) -> mark(U11(and(isNatList(L), isNat(N)), L)) [1] active(c_isNat(0)) -> mark(tt) [1] U21(c_mark(X)) -> U21(X) [1] mark(c_isNatIList(X)) -> active(isNatIList(X)) [1] take(X1, c_active(X2)) -> take(X1, X2) [1] U31(X1, X2, X3, c_mark(X4)) -> U31(X1, X2, X3, X4) [1] active(c_isNatIList(V)) -> mark(isNatList(V)) [1] isNatIList(c_active(X)) -> isNatIList(X) [1] mark(c_s(X)) -> active(s(mark(X))) [1] s(c_active(X)) -> s(X) [1] and(c_active(X1), X2) -> and(X1, X2) [1] cons(X1, c_active(X2)) -> cons(X1, X2) [1] mark(c_and(X1, X2)) -> active(and(mark(X1), X2)) [1] U31(X1, c_active(X2), X3, X4) -> U31(X1, X2, X3, X4) [1] active(c_isNat(c_s(V1))) -> mark(isNat(V1)) [1] mark(c_take(X1, X2)) -> active(take(mark(X1), mark(X2))) [1] cons(X1, c_mark(X2)) -> cons(X1, X2) [1] isNatIList(c_mark(X)) -> isNatIList(X) [1] mark(c_length(X)) -> active(length(mark(X))) [1] active(c_isNat(c_length(V1))) -> mark(isNatList(V1)) [1] U31(X1, X2, c_mark(X3), X4) -> U31(X1, X2, X3, X4) [1] take(X1, c_mark(X2)) -> take(X1, X2) [1] active(c_isNatIList(zeros)) -> mark(tt) [1] s(c_mark(X)) -> s(X) [1] U11(c_mark(X1), X2) -> U11(X1, X2) [1] U11(X1, c_active(X2)) -> U11(X1, X2) [1] active(c_take(0, IL)) -> mark(U21(isNatIList(IL))) [1] U31(X1, X2, X3, c_active(X4)) -> U31(X1, X2, X3, X4) [1] active(c_and(tt, X)) -> mark(X) [1] length(c_active(X)) -> length(X) [1] isNatList(c_mark(X)) -> isNatList(X) [1] active(c_isNatList(nil)) -> mark(tt) [1] isNatList(c_active(X)) -> isNatList(X) [1] cons(c_active(X1), X2) -> cons(X1, X2) [1] mark(c_isNat(X)) -> active(isNat(X)) [1] mark(c_cons(X1, X2)) -> active(cons(mark(X1), X2)) [1] and(X1, c_mark(X2)) -> and(X1, X2) [1] mark(c_U31(X1, X2, X3, X4)) -> active(U31(mark(X1), X2, X3, X4)) [1] and(c_mark(X1), X2) -> and(X1, X2) [1] U31(X1, X2, c_active(X3), X4) -> U31(X1, X2, X3, X4) [1] U11(c_active(X1), X2) -> U11(X1, X2) [1] and(X1, c_active(X2)) -> and(X1, X2) [1] encArg(zeros) -> zeros [0] encArg(0) -> 0 [0] encArg(tt) -> tt [0] encArg(nil) -> nil [0] encArg(cons_active(x_1)) -> active(encArg(x_1)) [0] encArg(cons_mark(x_1)) -> mark(encArg(x_1)) [0] encArg(cons_cons(x_1, x_2)) -> cons(encArg(x_1), encArg(x_2)) [0] encArg(cons_U11(x_1, x_2)) -> U11(encArg(x_1), encArg(x_2)) [0] encArg(cons_s(x_1)) -> s(encArg(x_1)) [0] encArg(cons_length(x_1)) -> length(encArg(x_1)) [0] encArg(cons_U21(x_1)) -> U21(encArg(x_1)) [0] encArg(cons_U31(x_1, x_2, x_3, x_4)) -> U31(encArg(x_1), encArg(x_2), encArg(x_3), encArg(x_4)) [0] encArg(cons_take(x_1, x_2)) -> take(encArg(x_1), encArg(x_2)) [0] encArg(cons_and(x_1, x_2)) -> and(encArg(x_1), encArg(x_2)) [0] encArg(cons_isNat(x_1)) -> isNat(encArg(x_1)) [0] encArg(cons_isNatList(x_1)) -> isNatList(encArg(x_1)) [0] encArg(cons_isNatIList(x_1)) -> isNatIList(encArg(x_1)) [0] encode_active(x_1) -> active(encArg(x_1)) [0] encode_zeros -> zeros [0] encode_mark(x_1) -> mark(encArg(x_1)) [0] encode_cons(x_1, x_2) -> cons(encArg(x_1), encArg(x_2)) [0] encode_0 -> 0 [0] encode_U11(x_1, x_2) -> U11(encArg(x_1), encArg(x_2)) [0] encode_tt -> tt [0] encode_s(x_1) -> s(encArg(x_1)) [0] encode_length(x_1) -> length(encArg(x_1)) [0] encode_U21(x_1) -> U21(encArg(x_1)) [0] encode_nil -> nil [0] encode_U31(x_1, x_2, x_3, x_4) -> U31(encArg(x_1), encArg(x_2), encArg(x_3), encArg(x_4)) [0] encode_take(x_1, x_2) -> take(encArg(x_1), encArg(x_2)) [0] encode_and(x_1, x_2) -> and(encArg(x_1), encArg(x_2)) [0] encode_isNat(x_1) -> isNat(encArg(x_1)) [0] encode_isNatList(x_1) -> isNatList(encArg(x_1)) [0] encode_isNatIList(x_1) -> isNatIList(encArg(x_1)) [0] isNatIList(x0) -> c_isNatIList(x0) [0] isNat(x0) -> c_isNat(x0) [0] U31(x0, x1, x2, x3) -> c_U31(x0, x1, x2, x3) [0] U21(x0) -> c_U21(x0) [0] and(x0, x1) -> c_and(x0, x1) [0] U11(x0, x1) -> c_U11(x0, x1) [0] s(x0) -> c_s(x0) [0] active(x0) -> c_active(x0) [0] length(x0) -> c_length(x0) [0] take(x0, x1) -> c_take(x0, x1) [0] cons(x0, x1) -> c_cons(x0, x1) [0] isNatList(x0) -> c_isNatList(x0) [0] mark(x0) -> c_mark(x0) [0] encArg(v0) -> null_encArg [0] encode_active(v0) -> null_encode_active [0] encode_zeros -> null_encode_zeros [0] encode_mark(v0) -> null_encode_mark [0] encode_cons(v0, v1) -> null_encode_cons [0] encode_0 -> null_encode_0 [0] encode_U11(v0, v1) -> null_encode_U11 [0] encode_tt -> null_encode_tt [0] encode_s(v0) -> null_encode_s [0] encode_length(v0) -> null_encode_length [0] encode_U21(v0) -> null_encode_U21 [0] encode_nil -> null_encode_nil [0] encode_U31(v0, v1, v2, v3) -> null_encode_U31 [0] encode_take(v0, v1) -> null_encode_take [0] encode_and(v0, v1) -> null_encode_and [0] encode_isNat(v0) -> null_encode_isNat [0] encode_isNatList(v0) -> null_encode_isNatList [0] encode_isNatIList(v0) -> null_encode_isNatIList [0] isNatIList(v0) -> null_isNatIList [0] isNat(v0) -> null_isNat [0] U31(v0, v1, v2, v3) -> null_U31 [0] U21(v0) -> null_U21 [0] and(v0, v1) -> null_and [0] U11(v0, v1) -> null_U11 [0] s(v0) -> null_s [0] active(v0) -> null_active [0] length(v0) -> null_length [0] take(v0, v1) -> null_take [0] cons(v0, v1) -> null_cons [0] isNatList(v0) -> null_isNatList [0] mark(v0) -> null_mark [0] The TRS has the following type information: active :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark zeros :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark mark :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark cons :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark 0 :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark tt :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark nil :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark isNat :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark c_active :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark c_U11 :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark s :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark length :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark U31 :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark c_mark :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark U11 :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark take :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark c_isNatList :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark isNatList :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark c_length :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark c_U21 :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark c_isNatIList :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark c_cons :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark and :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark isNatIList :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark c_take :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark c_s :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark U21 :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark c_U31 :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark c_isNat :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark c_and :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark encArg :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark cons_active :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark cons_mark :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark cons_cons :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark cons_U11 :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark cons_s :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark cons_length :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark cons_U21 :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark cons_U31 :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark cons_take :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark cons_and :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark cons_isNat :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark cons_isNatList :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark cons_isNatIList :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark encode_active :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark encode_zeros :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark encode_mark :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark encode_cons :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark encode_0 :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark encode_U11 :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark encode_tt :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark encode_s :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark encode_length :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark encode_U21 :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark encode_nil :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark encode_U31 :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark encode_take :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark encode_and :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark encode_isNat :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark encode_isNatList :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark encode_isNatIList :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark null_encArg :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark null_encode_active :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark null_encode_zeros :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark null_encode_mark :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark null_encode_cons :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark null_encode_0 :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark null_encode_U11 :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark null_encode_tt :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark null_encode_s :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark null_encode_length :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark null_encode_U21 :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark null_encode_nil :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark null_encode_U31 :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark null_encode_take :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark null_encode_and :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark null_encode_isNat :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark null_encode_isNatList :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark null_encode_isNatIList :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark null_isNatIList :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark null_isNat :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark null_U31 :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark null_U21 :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark null_and :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark null_U11 :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark null_s :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark null_active :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark null_length :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark null_take :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark null_cons :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark null_isNatList :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark null_mark :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark Rewrite Strategy: INNERMOST ---------------------------------------- (23) CompletionProof (UPPER BOUND(ID)) The TRS is a completely defined constructor system, as every type has a constant constructor and the following rules were added: encArg(v0) -> null_encArg [0] encode_active(v0) -> null_encode_active [0] encode_zeros -> null_encode_zeros [0] encode_mark(v0) -> null_encode_mark [0] encode_cons(v0, v1) -> null_encode_cons [0] encode_0 -> null_encode_0 [0] encode_U11(v0, v1) -> null_encode_U11 [0] encode_tt -> null_encode_tt [0] encode_s(v0) -> null_encode_s [0] encode_length(v0) -> null_encode_length [0] encode_U21(v0) -> null_encode_U21 [0] encode_nil -> null_encode_nil [0] encode_U31(v0, v1, v2, v3) -> null_encode_U31 [0] encode_take(v0, v1) -> null_encode_take [0] encode_and(v0, v1) -> null_encode_and [0] encode_isNat(v0) -> null_encode_isNat [0] encode_isNatList(v0) -> null_encode_isNatList [0] encode_isNatIList(v0) -> null_encode_isNatIList [0] isNatIList(v0) -> null_isNatIList [0] isNat(v0) -> null_isNat [0] U31(v0, v1, v2, v3) -> null_U31 [0] U21(v0) -> null_U21 [0] and(v0, v1) -> null_and [0] U11(v0, v1) -> null_U11 [0] s(v0) -> null_s [0] active(v0) -> null_active [0] length(v0) -> null_length [0] take(v0, v1) -> null_take [0] cons(v0, v1) -> null_cons [0] isNatList(v0) -> null_isNatList [0] mark(v0) -> null_mark [0] And the following fresh constants: null_encArg, null_encode_active, null_encode_zeros, null_encode_mark, null_encode_cons, null_encode_0, null_encode_U11, null_encode_tt, null_encode_s, null_encode_length, null_encode_U21, null_encode_nil, null_encode_U31, null_encode_take, null_encode_and, null_encode_isNat, null_encode_isNatList, null_encode_isNatIList, null_isNatIList, null_isNat, null_U31, null_U21, null_and, null_U11, null_s, null_active, null_length, null_take, null_cons, null_isNatList, null_mark ---------------------------------------- (24) Obligation: Runtime Complexity Weighted TRS where all functions are completely defined. The underlying TRS is: Runtime Complexity Weighted TRS with Types. The TRS R consists of the following rules: active(zeros) -> mark(cons(0, zeros)) [1] mark(zeros) -> active(zeros) [1] mark(0) -> active(0) [1] mark(tt) -> active(tt) [1] mark(nil) -> active(nil) [1] isNat(c_active(X)) -> isNat(X) [1] active(c_U11(tt, L)) -> mark(s(length(L))) [1] U31(X1, c_mark(X2), X3, X4) -> U31(X1, X2, X3, X4) [1] cons(c_mark(X1), X2) -> cons(X1, X2) [1] length(c_mark(X)) -> length(X) [1] U31(c_active(X1), X2, X3, X4) -> U31(X1, X2, X3, X4) [1] mark(c_U11(X1, X2)) -> active(U11(mark(X1), X2)) [1] U31(c_mark(X1), X2, X3, X4) -> U31(X1, X2, X3, X4) [1] U11(X1, c_mark(X2)) -> U11(X1, X2) [1] take(c_mark(X1), X2) -> take(X1, X2) [1] mark(c_isNatList(X)) -> active(isNatList(X)) [1] active(c_length(nil)) -> mark(0) [1] take(c_active(X1), X2) -> take(X1, X2) [1] active(c_U21(tt)) -> mark(nil) [1] active(c_isNatIList(c_cons(V1, V2))) -> mark(and(isNat(V1), isNatIList(V2))) [1] active(c_isNatList(c_take(V1, V2))) -> mark(and(isNat(V1), isNatIList(V2))) [1] active(c_take(c_s(M), c_cons(N, IL))) -> mark(U31(and(isNatIList(IL), and(isNat(M), isNat(N))), IL, M, N)) [1] mark(c_U21(X)) -> active(U21(mark(X))) [1] active(c_isNatList(c_cons(V1, V2))) -> mark(and(isNat(V1), isNatList(V2))) [1] active(c_U31(tt, IL, M, N)) -> mark(cons(N, take(M, IL))) [1] U21(c_active(X)) -> U21(X) [1] isNat(c_mark(X)) -> isNat(X) [1] active(c_length(c_cons(N, L))) -> mark(U11(and(isNatList(L), isNat(N)), L)) [1] active(c_isNat(0)) -> mark(tt) [1] U21(c_mark(X)) -> U21(X) [1] mark(c_isNatIList(X)) -> active(isNatIList(X)) [1] take(X1, c_active(X2)) -> take(X1, X2) [1] U31(X1, X2, X3, c_mark(X4)) -> U31(X1, X2, X3, X4) [1] active(c_isNatIList(V)) -> mark(isNatList(V)) [1] isNatIList(c_active(X)) -> isNatIList(X) [1] mark(c_s(X)) -> active(s(mark(X))) [1] s(c_active(X)) -> s(X) [1] and(c_active(X1), X2) -> and(X1, X2) [1] cons(X1, c_active(X2)) -> cons(X1, X2) [1] mark(c_and(X1, X2)) -> active(and(mark(X1), X2)) [1] U31(X1, c_active(X2), X3, X4) -> U31(X1, X2, X3, X4) [1] active(c_isNat(c_s(V1))) -> mark(isNat(V1)) [1] mark(c_take(X1, X2)) -> active(take(mark(X1), mark(X2))) [1] cons(X1, c_mark(X2)) -> cons(X1, X2) [1] isNatIList(c_mark(X)) -> isNatIList(X) [1] mark(c_length(X)) -> active(length(mark(X))) [1] active(c_isNat(c_length(V1))) -> mark(isNatList(V1)) [1] U31(X1, X2, c_mark(X3), X4) -> U31(X1, X2, X3, X4) [1] take(X1, c_mark(X2)) -> take(X1, X2) [1] active(c_isNatIList(zeros)) -> mark(tt) [1] s(c_mark(X)) -> s(X) [1] U11(c_mark(X1), X2) -> U11(X1, X2) [1] U11(X1, c_active(X2)) -> U11(X1, X2) [1] active(c_take(0, IL)) -> mark(U21(isNatIList(IL))) [1] U31(X1, X2, X3, c_active(X4)) -> U31(X1, X2, X3, X4) [1] active(c_and(tt, X)) -> mark(X) [1] length(c_active(X)) -> length(X) [1] isNatList(c_mark(X)) -> isNatList(X) [1] active(c_isNatList(nil)) -> mark(tt) [1] isNatList(c_active(X)) -> isNatList(X) [1] cons(c_active(X1), X2) -> cons(X1, X2) [1] mark(c_isNat(X)) -> active(isNat(X)) [1] mark(c_cons(X1, X2)) -> active(cons(mark(X1), X2)) [1] and(X1, c_mark(X2)) -> and(X1, X2) [1] mark(c_U31(X1, X2, X3, X4)) -> active(U31(mark(X1), X2, X3, X4)) [1] and(c_mark(X1), X2) -> and(X1, X2) [1] U31(X1, X2, c_active(X3), X4) -> U31(X1, X2, X3, X4) [1] U11(c_active(X1), X2) -> U11(X1, X2) [1] and(X1, c_active(X2)) -> and(X1, X2) [1] encArg(zeros) -> zeros [0] encArg(0) -> 0 [0] encArg(tt) -> tt [0] encArg(nil) -> nil [0] encArg(cons_active(x_1)) -> active(encArg(x_1)) [0] encArg(cons_mark(x_1)) -> mark(encArg(x_1)) [0] encArg(cons_cons(x_1, x_2)) -> cons(encArg(x_1), encArg(x_2)) [0] encArg(cons_U11(x_1, x_2)) -> U11(encArg(x_1), encArg(x_2)) [0] encArg(cons_s(x_1)) -> s(encArg(x_1)) [0] encArg(cons_length(x_1)) -> length(encArg(x_1)) [0] encArg(cons_U21(x_1)) -> U21(encArg(x_1)) [0] encArg(cons_U31(x_1, x_2, x_3, x_4)) -> U31(encArg(x_1), encArg(x_2), encArg(x_3), encArg(x_4)) [0] encArg(cons_take(x_1, x_2)) -> take(encArg(x_1), encArg(x_2)) [0] encArg(cons_and(x_1, x_2)) -> and(encArg(x_1), encArg(x_2)) [0] encArg(cons_isNat(x_1)) -> isNat(encArg(x_1)) [0] encArg(cons_isNatList(x_1)) -> isNatList(encArg(x_1)) [0] encArg(cons_isNatIList(x_1)) -> isNatIList(encArg(x_1)) [0] encode_active(x_1) -> active(encArg(x_1)) [0] encode_zeros -> zeros [0] encode_mark(x_1) -> mark(encArg(x_1)) [0] encode_cons(x_1, x_2) -> cons(encArg(x_1), encArg(x_2)) [0] encode_0 -> 0 [0] encode_U11(x_1, x_2) -> U11(encArg(x_1), encArg(x_2)) [0] encode_tt -> tt [0] encode_s(x_1) -> s(encArg(x_1)) [0] encode_length(x_1) -> length(encArg(x_1)) [0] encode_U21(x_1) -> U21(encArg(x_1)) [0] encode_nil -> nil [0] encode_U31(x_1, x_2, x_3, x_4) -> U31(encArg(x_1), encArg(x_2), encArg(x_3), encArg(x_4)) [0] encode_take(x_1, x_2) -> take(encArg(x_1), encArg(x_2)) [0] encode_and(x_1, x_2) -> and(encArg(x_1), encArg(x_2)) [0] encode_isNat(x_1) -> isNat(encArg(x_1)) [0] encode_isNatList(x_1) -> isNatList(encArg(x_1)) [0] encode_isNatIList(x_1) -> isNatIList(encArg(x_1)) [0] isNatIList(x0) -> c_isNatIList(x0) [0] isNat(x0) -> c_isNat(x0) [0] U31(x0, x1, x2, x3) -> c_U31(x0, x1, x2, x3) [0] U21(x0) -> c_U21(x0) [0] and(x0, x1) -> c_and(x0, x1) [0] U11(x0, x1) -> c_U11(x0, x1) [0] s(x0) -> c_s(x0) [0] active(x0) -> c_active(x0) [0] length(x0) -> c_length(x0) [0] take(x0, x1) -> c_take(x0, x1) [0] cons(x0, x1) -> c_cons(x0, x1) [0] isNatList(x0) -> c_isNatList(x0) [0] mark(x0) -> c_mark(x0) [0] encArg(v0) -> null_encArg [0] encode_active(v0) -> null_encode_active [0] encode_zeros -> null_encode_zeros [0] encode_mark(v0) -> null_encode_mark [0] encode_cons(v0, v1) -> null_encode_cons [0] encode_0 -> null_encode_0 [0] encode_U11(v0, v1) -> null_encode_U11 [0] encode_tt -> null_encode_tt [0] encode_s(v0) -> null_encode_s [0] encode_length(v0) -> null_encode_length [0] encode_U21(v0) -> null_encode_U21 [0] encode_nil -> null_encode_nil [0] encode_U31(v0, v1, v2, v3) -> null_encode_U31 [0] encode_take(v0, v1) -> null_encode_take [0] encode_and(v0, v1) -> null_encode_and [0] encode_isNat(v0) -> null_encode_isNat [0] encode_isNatList(v0) -> null_encode_isNatList [0] encode_isNatIList(v0) -> null_encode_isNatIList [0] isNatIList(v0) -> null_isNatIList [0] isNat(v0) -> null_isNat [0] U31(v0, v1, v2, v3) -> null_U31 [0] U21(v0) -> null_U21 [0] and(v0, v1) -> null_and [0] U11(v0, v1) -> null_U11 [0] s(v0) -> null_s [0] active(v0) -> null_active [0] length(v0) -> null_length [0] take(v0, v1) -> null_take [0] cons(v0, v1) -> null_cons [0] isNatList(v0) -> null_isNatList [0] mark(v0) -> null_mark [0] The TRS has the following type information: active :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark zeros :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark mark :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark cons :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark 0 :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark tt :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark nil :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark isNat :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark c_active :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark c_U11 :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark s :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark length :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark U31 :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark c_mark :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark U11 :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark take :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark c_isNatList :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark isNatList :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark c_length :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark c_U21 :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark c_isNatIList :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark c_cons :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark and :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark isNatIList :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark c_take :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark c_s :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark U21 :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark c_U31 :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark c_isNat :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark c_and :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark encArg :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark cons_active :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark cons_mark :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark cons_cons :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark cons_U11 :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark cons_s :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark cons_length :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark cons_U21 :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark cons_U31 :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark cons_take :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark cons_and :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark cons_isNat :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark cons_isNatList :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark cons_isNatIList :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark encode_active :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark encode_zeros :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark encode_mark :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark encode_cons :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark encode_0 :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark encode_U11 :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark encode_tt :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark encode_s :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark encode_length :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark encode_U21 :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark encode_nil :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark encode_U31 :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark encode_take :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark encode_and :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark encode_isNat :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark encode_isNatList :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark encode_isNatIList :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark -> zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark null_encArg :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark null_encode_active :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark null_encode_zeros :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark null_encode_mark :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark null_encode_cons :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark null_encode_0 :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark null_encode_U11 :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark null_encode_tt :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark null_encode_s :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark null_encode_length :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark null_encode_U21 :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark null_encode_nil :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark null_encode_U31 :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark null_encode_take :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark null_encode_and :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark null_encode_isNat :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark null_encode_isNatList :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark null_encode_isNatIList :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark null_isNatIList :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark null_isNat :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark null_U31 :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark null_U21 :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark null_and :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark null_U11 :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark null_s :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark null_active :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark null_length :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark null_take :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark null_cons :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark null_isNatList :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark null_mark :: zeros:0:tt:nil:c_active:c_U11:c_mark:c_isNatList:c_length:c_U21:c_cons:c_isNatIList:c_take:c_s:c_U31:c_isNat:c_and:cons_active:cons_mark:cons_cons:cons_U11:cons_s:cons_length:cons_U21:cons_U31:cons_take:cons_and:cons_isNat:cons_isNatList:cons_isNatIList:null_encArg:null_encode_active:null_encode_zeros:null_encode_mark:null_encode_cons:null_encode_0:null_encode_U11:null_encode_tt:null_encode_s:null_encode_length:null_encode_U21:null_encode_nil:null_encode_U31:null_encode_take:null_encode_and:null_encode_isNat:null_encode_isNatList:null_encode_isNatIList:null_isNatIList:null_isNat:null_U31:null_U21:null_and:null_U11:null_s:null_active:null_length:null_take:null_cons:null_isNatList:null_mark Rewrite Strategy: INNERMOST ---------------------------------------- (25) CpxTypedWeightedTrsToRntsProof (UPPER BOUND(ID)) Transformed the TRS into an over-approximating RNTS by (improved) Size Abstraction. The constant constructors are abstracted as follows: zeros => 3 0 => 0 tt => 2 nil => 1 null_encArg => 0 null_encode_active => 0 null_encode_zeros => 0 null_encode_mark => 0 null_encode_cons => 0 null_encode_0 => 0 null_encode_U11 => 0 null_encode_tt => 0 null_encode_s => 0 null_encode_length => 0 null_encode_U21 => 0 null_encode_nil => 0 null_encode_U31 => 0 null_encode_take => 0 null_encode_and => 0 null_encode_isNat => 0 null_encode_isNatList => 0 null_encode_isNatIList => 0 null_isNatIList => 0 null_isNat => 0 null_U31 => 0 null_U21 => 0 null_and => 0 null_U11 => 0 null_s => 0 null_active => 0 null_length => 0 null_take => 0 null_cons => 0 null_isNatList => 0 null_mark => 0 ---------------------------------------- (26) Obligation: Complexity RNTS consisting of the following rules: U11(z, z') -{ 1 }-> U11(X1, X2) :|: X1 >= 0, z' = 1 + X2, X2 >= 0, z = X1 U11(z, z') -{ 1 }-> U11(X1, X2) :|: X1 >= 0, z = 1 + X1, X2 >= 0, z' = X2 U11(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 U11(z, z') -{ 0 }-> 1 + x0 + x1 :|: z = x0, x0 >= 0, x1 >= 0, z' = x1 U21(z) -{ 1 }-> U21(X) :|: z = 1 + X, X >= 0 U21(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 U21(z) -{ 0 }-> 1 + x0 :|: z = x0, x0 >= 0 U31(z, z', z'', z1) -{ 1 }-> U31(X1, X2, X3, X4) :|: X1 >= 0, z1 = X4, X3 >= 0, z' = 1 + X2, X2 >= 0, X4 >= 0, z = X1, z'' = X3 U31(z, z', z'', z1) -{ 1 }-> U31(X1, X2, X3, X4) :|: X1 >= 0, z1 = X4, z = 1 + X1, X3 >= 0, X2 >= 0, X4 >= 0, z' = X2, z'' = X3 U31(z, z', z'', z1) -{ 1 }-> U31(X1, X2, X3, X4) :|: z1 = 1 + X4, X1 >= 0, X3 >= 0, X2 >= 0, X4 >= 0, z = X1, z' = X2, z'' = X3 U31(z, z', z'', z1) -{ 1 }-> U31(X1, X2, X3, X4) :|: X1 >= 0, z1 = X4, X3 >= 0, X2 >= 0, X4 >= 0, z = X1, z' = X2, z'' = 1 + X3 U31(z, z', z'', z1) -{ 0 }-> 0 :|: z1 = v3, v0 >= 0, z'' = v2, v1 >= 0, z = v0, z' = v1, v2 >= 0, v3 >= 0 U31(z, z', z'', z1) -{ 0 }-> 1 + x0 + x1 + x2 + x3 :|: z = x0, x0 >= 0, x1 >= 0, z' = x1, z1 = x3, z'' = x2, x2 >= 0, x3 >= 0 active(z) -{ 1 }-> mark(X) :|: z = 1 + 2 + X, X >= 0 active(z) -{ 1 }-> mark(s(length(L))) :|: z = 1 + 2 + L, L >= 0 active(z) -{ 1 }-> mark(isNatList(V)) :|: z = 1 + V, V >= 0 active(z) -{ 1 }-> mark(isNatList(V1)) :|: V1 >= 0, z = 1 + (1 + V1) active(z) -{ 1 }-> mark(isNat(V1)) :|: V1 >= 0, z = 1 + (1 + V1) active(z) -{ 1 }-> mark(cons(N, take(M, IL))) :|: M >= 0, IL >= 0, z = 1 + 2 + IL + M + N, N >= 0 active(z) -{ 1 }-> mark(cons(0, 3)) :|: z = 3 active(z) -{ 1 }-> mark(and(isNat(V1), isNatList(V2))) :|: V1 >= 0, V2 >= 0, z = 1 + (1 + V1 + V2) active(z) -{ 1 }-> mark(and(isNat(V1), isNatIList(V2))) :|: V1 >= 0, V2 >= 0, z = 1 + (1 + V1 + V2) active(z) -{ 1 }-> mark(U31(and(isNatIList(IL), and(isNat(M), isNat(N))), IL, M, N)) :|: z = 1 + (1 + M) + (1 + N + IL), M >= 0, IL >= 0, N >= 0 active(z) -{ 1 }-> mark(U21(isNatIList(IL))) :|: z = 1 + 0 + IL, IL >= 0 active(z) -{ 1 }-> mark(U11(and(isNatList(L), isNat(N)), L)) :|: L >= 0, z = 1 + (1 + N + L), N >= 0 active(z) -{ 1 }-> mark(2) :|: z = 1 + 0 active(z) -{ 1 }-> mark(2) :|: z = 1 + 3 active(z) -{ 1 }-> mark(2) :|: z = 1 + 1 active(z) -{ 1 }-> mark(1) :|: z = 1 + 2 active(z) -{ 1 }-> mark(0) :|: z = 1 + 1 active(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 active(z) -{ 0 }-> 1 + x0 :|: z = x0, x0 >= 0 and(z, z') -{ 1 }-> and(X1, X2) :|: X1 >= 0, z = 1 + X1, X2 >= 0, z' = X2 and(z, z') -{ 1 }-> and(X1, X2) :|: X1 >= 0, z' = 1 + X2, X2 >= 0, z = X1 and(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 and(z, z') -{ 0 }-> 1 + x0 + x1 :|: z = x0, x0 >= 0, x1 >= 0, z' = x1 cons(z, z') -{ 1 }-> cons(X1, X2) :|: X1 >= 0, z = 1 + X1, X2 >= 0, z' = X2 cons(z, z') -{ 1 }-> cons(X1, X2) :|: X1 >= 0, z' = 1 + X2, X2 >= 0, z = X1 cons(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 cons(z, z') -{ 0 }-> 1 + x0 + x1 :|: z = x0, x0 >= 0, x1 >= 0, z' = x1 encArg(z) -{ 0 }-> take(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> s(encArg(x_1)) :|: z = 1 + x_1, x_1 >= 0 encArg(z) -{ 0 }-> mark(encArg(x_1)) :|: z = 1 + x_1, x_1 >= 0 encArg(z) -{ 0 }-> length(encArg(x_1)) :|: z = 1 + x_1, x_1 >= 0 encArg(z) -{ 0 }-> isNatList(encArg(x_1)) :|: z = 1 + x_1, x_1 >= 0 encArg(z) -{ 0 }-> isNatIList(encArg(x_1)) :|: z = 1 + x_1, x_1 >= 0 encArg(z) -{ 0 }-> isNat(encArg(x_1)) :|: z = 1 + x_1, x_1 >= 0 encArg(z) -{ 0 }-> cons(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> and(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> active(encArg(x_1)) :|: z = 1 + x_1, x_1 >= 0 encArg(z) -{ 0 }-> U31(encArg(x_1), encArg(x_2), encArg(x_3), encArg(x_4)) :|: x_1 >= 0, x_3 >= 0, x_2 >= 0, z = 1 + x_1 + x_2 + x_3 + x_4, x_4 >= 0 encArg(z) -{ 0 }-> U21(encArg(x_1)) :|: z = 1 + x_1, x_1 >= 0 encArg(z) -{ 0 }-> U11(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> 3 :|: z = 3 encArg(z) -{ 0 }-> 2 :|: z = 2 encArg(z) -{ 0 }-> 1 :|: z = 1 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 encode_0 -{ 0 }-> 0 :|: encode_U11(z, z') -{ 0 }-> U11(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, x_2 >= 0, z = x_1, z' = x_2 encode_U11(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 encode_U21(z) -{ 0 }-> U21(encArg(x_1)) :|: x_1 >= 0, z = x_1 encode_U21(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 encode_U31(z, z', z'', z1) -{ 0 }-> U31(encArg(x_1), encArg(x_2), encArg(x_3), encArg(x_4)) :|: x_1 >= 0, z1 = x_4, x_3 >= 0, x_2 >= 0, z = x_1, z' = x_2, z'' = x_3, x_4 >= 0 encode_U31(z, z', z'', z1) -{ 0 }-> 0 :|: z1 = v3, v0 >= 0, z'' = v2, v1 >= 0, z = v0, z' = v1, v2 >= 0, v3 >= 0 encode_active(z) -{ 0 }-> active(encArg(x_1)) :|: x_1 >= 0, z = x_1 encode_active(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 encode_and(z, z') -{ 0 }-> and(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, x_2 >= 0, z = x_1, z' = x_2 encode_and(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 encode_cons(z, z') -{ 0 }-> cons(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, x_2 >= 0, z = x_1, z' = x_2 encode_cons(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 encode_isNat(z) -{ 0 }-> isNat(encArg(x_1)) :|: x_1 >= 0, z = x_1 encode_isNat(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 encode_isNatIList(z) -{ 0 }-> isNatIList(encArg(x_1)) :|: x_1 >= 0, z = x_1 encode_isNatIList(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 encode_isNatList(z) -{ 0 }-> isNatList(encArg(x_1)) :|: x_1 >= 0, z = x_1 encode_isNatList(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 encode_length(z) -{ 0 }-> length(encArg(x_1)) :|: x_1 >= 0, z = x_1 encode_length(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 encode_mark(z) -{ 0 }-> mark(encArg(x_1)) :|: x_1 >= 0, z = x_1 encode_mark(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 encode_nil -{ 0 }-> 1 :|: encode_nil -{ 0 }-> 0 :|: encode_s(z) -{ 0 }-> s(encArg(x_1)) :|: x_1 >= 0, z = x_1 encode_s(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 encode_take(z, z') -{ 0 }-> take(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, x_2 >= 0, z = x_1, z' = x_2 encode_take(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 encode_tt -{ 0 }-> 2 :|: encode_tt -{ 0 }-> 0 :|: encode_zeros -{ 0 }-> 3 :|: encode_zeros -{ 0 }-> 0 :|: isNat(z) -{ 1 }-> isNat(X) :|: z = 1 + X, X >= 0 isNat(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 isNat(z) -{ 0 }-> 1 + x0 :|: z = x0, x0 >= 0 isNatIList(z) -{ 1 }-> isNatIList(X) :|: z = 1 + X, X >= 0 isNatIList(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 isNatIList(z) -{ 0 }-> 1 + x0 :|: z = x0, x0 >= 0 isNatList(z) -{ 1 }-> isNatList(X) :|: z = 1 + X, X >= 0 isNatList(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 isNatList(z) -{ 0 }-> 1 + x0 :|: z = x0, x0 >= 0 length(z) -{ 1 }-> length(X) :|: z = 1 + X, X >= 0 length(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 length(z) -{ 0 }-> 1 + x0 :|: z = x0, x0 >= 0 mark(z) -{ 1 }-> active(take(mark(X1), mark(X2))) :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2 mark(z) -{ 1 }-> active(s(mark(X))) :|: z = 1 + X, X >= 0 mark(z) -{ 1 }-> active(length(mark(X))) :|: z = 1 + X, X >= 0 mark(z) -{ 1 }-> active(isNatList(X)) :|: z = 1 + X, X >= 0 mark(z) -{ 1 }-> active(isNatIList(X)) :|: z = 1 + X, X >= 0 mark(z) -{ 1 }-> active(isNat(X)) :|: z = 1 + X, X >= 0 mark(z) -{ 1 }-> active(cons(mark(X1), X2)) :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2 mark(z) -{ 1 }-> active(and(mark(X1), X2)) :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2 mark(z) -{ 1 }-> active(U31(mark(X1), X2, X3, X4)) :|: X1 >= 0, z = 1 + X1 + X2 + X3 + X4, X3 >= 0, X2 >= 0, X4 >= 0 mark(z) -{ 1 }-> active(U21(mark(X))) :|: z = 1 + X, X >= 0 mark(z) -{ 1 }-> active(U11(mark(X1), X2)) :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2 mark(z) -{ 1 }-> active(3) :|: z = 3 mark(z) -{ 1 }-> active(2) :|: z = 2 mark(z) -{ 1 }-> active(1) :|: z = 1 mark(z) -{ 1 }-> active(0) :|: z = 0 mark(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 mark(z) -{ 0 }-> 1 + x0 :|: z = x0, x0 >= 0 s(z) -{ 1 }-> s(X) :|: z = 1 + X, X >= 0 s(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 s(z) -{ 0 }-> 1 + x0 :|: z = x0, x0 >= 0 take(z, z') -{ 1 }-> take(X1, X2) :|: X1 >= 0, z = 1 + X1, X2 >= 0, z' = X2 take(z, z') -{ 1 }-> take(X1, X2) :|: X1 >= 0, z' = 1 + X2, X2 >= 0, z = X1 take(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 take(z, z') -{ 0 }-> 1 + x0 + x1 :|: z = x0, x0 >= 0, x1 >= 0, z' = x1 Only complete derivations are relevant for the runtime complexity. ---------------------------------------- (27) CpxTrsToCdtProof (UPPER BOUND(ID)) Converted Cpx (relative) TRS to CDT ---------------------------------------- (28) Obligation: Complexity Dependency Tuples Problem Rules: encArg(zeros) -> zeros encArg(0) -> 0 encArg(tt) -> tt encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_U11(z0, z1)) -> U11(encArg(z0), encArg(z1)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_length(z0)) -> length(encArg(z0)) encArg(cons_U21(z0)) -> U21(encArg(z0)) encArg(cons_U31(z0, z1, z2, z3)) -> U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_isNat(z0)) -> isNat(encArg(z0)) encArg(cons_isNatList(z0)) -> isNatList(encArg(z0)) encArg(cons_isNatIList(z0)) -> isNatIList(encArg(z0)) encode_active(z0) -> active(encArg(z0)) encode_zeros -> zeros encode_mark(z0) -> mark(encArg(z0)) encode_cons(z0, z1) -> cons(encArg(z0), encArg(z1)) encode_0 -> 0 encode_U11(z0, z1) -> U11(encArg(z0), encArg(z1)) encode_tt -> tt encode_s(z0) -> s(encArg(z0)) encode_length(z0) -> length(encArg(z0)) encode_U21(z0) -> U21(encArg(z0)) encode_nil -> nil encode_U31(z0, z1, z2, z3) -> U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encode_take(z0, z1) -> take(encArg(z0), encArg(z1)) encode_and(z0, z1) -> and(encArg(z0), encArg(z1)) encode_isNat(z0) -> isNat(encArg(z0)) encode_isNatList(z0) -> isNatList(encArg(z0)) encode_isNatIList(z0) -> isNatIList(encArg(z0)) active(zeros) -> mark(cons(0, zeros)) active(U11(tt, z0)) -> mark(s(length(z0))) active(U21(tt)) -> mark(nil) active(U31(tt, z0, z1, z2)) -> mark(cons(z2, take(z1, z0))) active(and(tt, z0)) -> mark(z0) active(isNat(0)) -> mark(tt) active(isNat(length(z0))) -> mark(isNatList(z0)) active(isNat(s(z0))) -> mark(isNat(z0)) active(isNatIList(z0)) -> mark(isNatList(z0)) active(isNatIList(zeros)) -> mark(tt) active(isNatIList(cons(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(isNatList(nil)) -> mark(tt) active(isNatList(cons(z0, z1))) -> mark(and(isNat(z0), isNatList(z1))) active(isNatList(take(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(length(nil)) -> mark(0) active(length(cons(z0, z1))) -> mark(U11(and(isNatList(z1), isNat(z0)), z1)) active(take(0, z0)) -> mark(U21(isNatIList(z0))) active(take(s(z0), cons(z1, z2))) -> mark(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)) mark(zeros) -> active(zeros) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(0) -> active(0) mark(U11(z0, z1)) -> active(U11(mark(z0), z1)) mark(tt) -> active(tt) mark(s(z0)) -> active(s(mark(z0))) mark(length(z0)) -> active(length(mark(z0))) mark(U21(z0)) -> active(U21(mark(z0))) mark(nil) -> active(nil) mark(U31(z0, z1, z2, z3)) -> active(U31(mark(z0), z1, z2, z3)) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(isNat(z0)) -> active(isNat(z0)) mark(isNatList(z0)) -> active(isNatList(z0)) mark(isNatIList(z0)) -> active(isNatIList(z0)) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) U11(mark(z0), z1) -> U11(z0, z1) U11(z0, mark(z1)) -> U11(z0, z1) U11(active(z0), z1) -> U11(z0, z1) U11(z0, active(z1)) -> U11(z0, z1) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) length(mark(z0)) -> length(z0) length(active(z0)) -> length(z0) U21(mark(z0)) -> U21(z0) U21(active(z0)) -> U21(z0) U31(mark(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, mark(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, mark(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, mark(z3)) -> U31(z0, z1, z2, z3) U31(active(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, active(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, active(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, active(z3)) -> U31(z0, z1, z2, z3) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) isNat(mark(z0)) -> isNat(z0) isNat(active(z0)) -> isNat(z0) isNatList(mark(z0)) -> isNatList(z0) isNatList(active(z0)) -> isNatList(z0) isNatIList(mark(z0)) -> isNatIList(z0) isNatIList(active(z0)) -> isNatIList(z0) Tuples: ENCARG(zeros) -> c ENCARG(0) -> c1 ENCARG(tt) -> c2 ENCARG(nil) -> c3 ENCARG(cons_active(z0)) -> c4(ACTIVE(encArg(z0)), ENCARG(z0)) ENCARG(cons_mark(z0)) -> c5(MARK(encArg(z0)), ENCARG(z0)) ENCARG(cons_cons(z0, z1)) -> c6(CONS(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_U11(z0, z1)) -> c7(U11'(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_s(z0)) -> c8(S(encArg(z0)), ENCARG(z0)) ENCARG(cons_length(z0)) -> c9(LENGTH(encArg(z0)), ENCARG(z0)) ENCARG(cons_U21(z0)) -> c10(U21'(encArg(z0)), ENCARG(z0)) ENCARG(cons_U31(z0, z1, z2, z3)) -> c11(U31'(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), ENCARG(z0), ENCARG(z1), ENCARG(z2), ENCARG(z3)) ENCARG(cons_take(z0, z1)) -> c12(TAKE(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_and(z0, z1)) -> c13(AND(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_isNat(z0)) -> c14(ISNAT(encArg(z0)), ENCARG(z0)) ENCARG(cons_isNatList(z0)) -> c15(ISNATLIST(encArg(z0)), ENCARG(z0)) ENCARG(cons_isNatIList(z0)) -> c16(ISNATILIST(encArg(z0)), ENCARG(z0)) ENCODE_ACTIVE(z0) -> c17(ACTIVE(encArg(z0)), ENCARG(z0)) ENCODE_ZEROS -> c18 ENCODE_MARK(z0) -> c19(MARK(encArg(z0)), ENCARG(z0)) ENCODE_CONS(z0, z1) -> c20(CONS(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCODE_0 -> c21 ENCODE_U11(z0, z1) -> c22(U11'(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCODE_TT -> c23 ENCODE_S(z0) -> c24(S(encArg(z0)), ENCARG(z0)) ENCODE_LENGTH(z0) -> c25(LENGTH(encArg(z0)), ENCARG(z0)) ENCODE_U21(z0) -> c26(U21'(encArg(z0)), ENCARG(z0)) ENCODE_NIL -> c27 ENCODE_U31(z0, z1, z2, z3) -> c28(U31'(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), ENCARG(z0), ENCARG(z1), ENCARG(z2), ENCARG(z3)) ENCODE_TAKE(z0, z1) -> c29(TAKE(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCODE_AND(z0, z1) -> c30(AND(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCODE_ISNAT(z0) -> c31(ISNAT(encArg(z0)), ENCARG(z0)) ENCODE_ISNATLIST(z0) -> c32(ISNATLIST(encArg(z0)), ENCARG(z0)) ENCODE_ISNATILIST(z0) -> c33(ISNATILIST(encArg(z0)), ENCARG(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros)), CONS(0, zeros)) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), S(length(z0)), LENGTH(z0)) ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), AND(isNat(z0), isNatIList(z1)), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), AND(isNat(z0), isNatList(z1)), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), AND(isNat(z0), isNatIList(z1)), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(nil)) -> c48(MARK(0)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), U11'(and(isNatList(z1), isNat(z0)), z1), AND(isNatList(z1), isNat(z0)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), U21'(isNatIList(z0)), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), U31'(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1), AND(isNatIList(z2), and(isNat(z0), isNat(z1))), ISNATILIST(z2), AND(isNat(z0), isNat(z1)), ISNAT(z0), ISNAT(z1)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(cons(z0, z1)) -> c53(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(0) -> c54(ACTIVE(0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(mark(z0), z1)), U11'(mark(z0), z1), MARK(z0)) MARK(tt) -> c56(ACTIVE(tt)) MARK(s(z0)) -> c57(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(mark(z0))), LENGTH(mark(z0)), MARK(z0)) MARK(U21(z0)) -> c59(ACTIVE(U21(mark(z0))), U21'(mark(z0)), MARK(z0)) MARK(nil) -> c60(ACTIVE(nil)) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(mark(z0), z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(take(z0, z1)) -> c62(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) S tuples: ACTIVE(zeros) -> c34(MARK(cons(0, zeros)), CONS(0, zeros)) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), S(length(z0)), LENGTH(z0)) ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), AND(isNat(z0), isNatIList(z1)), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), AND(isNat(z0), isNatList(z1)), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), AND(isNat(z0), isNatIList(z1)), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(nil)) -> c48(MARK(0)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), U11'(and(isNatList(z1), isNat(z0)), z1), AND(isNatList(z1), isNat(z0)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), U21'(isNatIList(z0)), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), U31'(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1), AND(isNatIList(z2), and(isNat(z0), isNat(z1))), ISNATILIST(z2), AND(isNat(z0), isNat(z1)), ISNAT(z0), ISNAT(z1)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(cons(z0, z1)) -> c53(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(0) -> c54(ACTIVE(0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(mark(z0), z1)), U11'(mark(z0), z1), MARK(z0)) MARK(tt) -> c56(ACTIVE(tt)) MARK(s(z0)) -> c57(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(mark(z0))), LENGTH(mark(z0)), MARK(z0)) MARK(U21(z0)) -> c59(ACTIVE(U21(mark(z0))), U21'(mark(z0)), MARK(z0)) MARK(nil) -> c60(ACTIVE(nil)) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(mark(z0), z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(take(z0, z1)) -> c62(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) K tuples:none Defined Rule Symbols: active_1, mark_1, cons_2, U11_2, s_1, length_1, U21_1, U31_4, take_2, and_2, isNat_1, isNatList_1, isNatIList_1, encArg_1, encode_active_1, encode_zeros, encode_mark_1, encode_cons_2, encode_0, encode_U11_2, encode_tt, encode_s_1, encode_length_1, encode_U21_1, encode_nil, encode_U31_4, encode_take_2, encode_and_2, encode_isNat_1, encode_isNatList_1, encode_isNatIList_1 Defined Pair Symbols: ENCARG_1, ENCODE_ACTIVE_1, ENCODE_ZEROS, ENCODE_MARK_1, ENCODE_CONS_2, ENCODE_0, ENCODE_U11_2, ENCODE_TT, ENCODE_S_1, ENCODE_LENGTH_1, ENCODE_U21_1, ENCODE_NIL, ENCODE_U31_4, ENCODE_TAKE_2, ENCODE_AND_2, ENCODE_ISNAT_1, ENCODE_ISNATLIST_1, ENCODE_ISNATILIST_1, ACTIVE_1, MARK_1, CONS_2, U11'_2, S_1, LENGTH_1, U21'_1, U31'_4, TAKE_2, AND_2, ISNAT_1, ISNATLIST_1, ISNATILIST_1 Compound Symbols: c, c1, c2, c3, c4_2, c5_2, c6_3, c7_3, c8_2, c9_2, c10_2, c11_5, c12_3, c13_3, c14_2, c15_2, c16_2, c17_2, c18, c19_2, c20_3, c21, c22_3, c23, c24_2, c25_2, c26_2, c27, c28_5, c29_3, c30_3, c31_2, c32_2, c33_2, c34_2, c35_3, c36_1, c37_3, c38_1, c39_1, c40_2, c41_2, c42_2, c43_1, c44_4, c45_1, c46_4, c47_4, c48_1, c49_5, c50_3, c51_7, c52_1, c53_3, c54_1, c55_3, c56_1, c57_3, c58_3, c59_3, c60_1, c61_3, c62_4, c63_3, c64_2, c65_2, c66_2, c67_1, c68_1, c69_1, c70_1, c71_1, c72_1, c73_1, c74_1, c75_1, c76_1, c77_1, c78_1, c79_1, c80_1, c81_1, c82_1, c83_1, c84_1, c85_1, c86_1, c87_1, c88_1, c89_1, c90_1, c91_1, c92_1, c93_1, c94_1, c95_1, c96_1, c97_1, c98_1, c99_1, c100_1, c101_1, c102_1 ---------------------------------------- (29) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 8 trailing nodes: ENCARG(nil) -> c3 ENCODE_NIL -> c27 ENCODE_0 -> c21 ENCARG(tt) -> c2 ENCARG(0) -> c1 ENCODE_ZEROS -> c18 ENCODE_TT -> c23 ENCARG(zeros) -> c ---------------------------------------- (30) Obligation: Complexity Dependency Tuples Problem Rules: encArg(zeros) -> zeros encArg(0) -> 0 encArg(tt) -> tt encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_U11(z0, z1)) -> U11(encArg(z0), encArg(z1)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_length(z0)) -> length(encArg(z0)) encArg(cons_U21(z0)) -> U21(encArg(z0)) encArg(cons_U31(z0, z1, z2, z3)) -> U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_isNat(z0)) -> isNat(encArg(z0)) encArg(cons_isNatList(z0)) -> isNatList(encArg(z0)) encArg(cons_isNatIList(z0)) -> isNatIList(encArg(z0)) encode_active(z0) -> active(encArg(z0)) encode_zeros -> zeros encode_mark(z0) -> mark(encArg(z0)) encode_cons(z0, z1) -> cons(encArg(z0), encArg(z1)) encode_0 -> 0 encode_U11(z0, z1) -> U11(encArg(z0), encArg(z1)) encode_tt -> tt encode_s(z0) -> s(encArg(z0)) encode_length(z0) -> length(encArg(z0)) encode_U21(z0) -> U21(encArg(z0)) encode_nil -> nil encode_U31(z0, z1, z2, z3) -> U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encode_take(z0, z1) -> take(encArg(z0), encArg(z1)) encode_and(z0, z1) -> and(encArg(z0), encArg(z1)) encode_isNat(z0) -> isNat(encArg(z0)) encode_isNatList(z0) -> isNatList(encArg(z0)) encode_isNatIList(z0) -> isNatIList(encArg(z0)) active(zeros) -> mark(cons(0, zeros)) active(U11(tt, z0)) -> mark(s(length(z0))) active(U21(tt)) -> mark(nil) active(U31(tt, z0, z1, z2)) -> mark(cons(z2, take(z1, z0))) active(and(tt, z0)) -> mark(z0) active(isNat(0)) -> mark(tt) active(isNat(length(z0))) -> mark(isNatList(z0)) active(isNat(s(z0))) -> mark(isNat(z0)) active(isNatIList(z0)) -> mark(isNatList(z0)) active(isNatIList(zeros)) -> mark(tt) active(isNatIList(cons(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(isNatList(nil)) -> mark(tt) active(isNatList(cons(z0, z1))) -> mark(and(isNat(z0), isNatList(z1))) active(isNatList(take(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(length(nil)) -> mark(0) active(length(cons(z0, z1))) -> mark(U11(and(isNatList(z1), isNat(z0)), z1)) active(take(0, z0)) -> mark(U21(isNatIList(z0))) active(take(s(z0), cons(z1, z2))) -> mark(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)) mark(zeros) -> active(zeros) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(0) -> active(0) mark(U11(z0, z1)) -> active(U11(mark(z0), z1)) mark(tt) -> active(tt) mark(s(z0)) -> active(s(mark(z0))) mark(length(z0)) -> active(length(mark(z0))) mark(U21(z0)) -> active(U21(mark(z0))) mark(nil) -> active(nil) mark(U31(z0, z1, z2, z3)) -> active(U31(mark(z0), z1, z2, z3)) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(isNat(z0)) -> active(isNat(z0)) mark(isNatList(z0)) -> active(isNatList(z0)) mark(isNatIList(z0)) -> active(isNatIList(z0)) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) U11(mark(z0), z1) -> U11(z0, z1) U11(z0, mark(z1)) -> U11(z0, z1) U11(active(z0), z1) -> U11(z0, z1) U11(z0, active(z1)) -> U11(z0, z1) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) length(mark(z0)) -> length(z0) length(active(z0)) -> length(z0) U21(mark(z0)) -> U21(z0) U21(active(z0)) -> U21(z0) U31(mark(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, mark(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, mark(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, mark(z3)) -> U31(z0, z1, z2, z3) U31(active(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, active(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, active(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, active(z3)) -> U31(z0, z1, z2, z3) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) isNat(mark(z0)) -> isNat(z0) isNat(active(z0)) -> isNat(z0) isNatList(mark(z0)) -> isNatList(z0) isNatList(active(z0)) -> isNatList(z0) isNatIList(mark(z0)) -> isNatIList(z0) isNatIList(active(z0)) -> isNatIList(z0) Tuples: ENCARG(cons_active(z0)) -> c4(ACTIVE(encArg(z0)), ENCARG(z0)) ENCARG(cons_mark(z0)) -> c5(MARK(encArg(z0)), ENCARG(z0)) ENCARG(cons_cons(z0, z1)) -> c6(CONS(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_U11(z0, z1)) -> c7(U11'(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_s(z0)) -> c8(S(encArg(z0)), ENCARG(z0)) ENCARG(cons_length(z0)) -> c9(LENGTH(encArg(z0)), ENCARG(z0)) ENCARG(cons_U21(z0)) -> c10(U21'(encArg(z0)), ENCARG(z0)) ENCARG(cons_U31(z0, z1, z2, z3)) -> c11(U31'(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), ENCARG(z0), ENCARG(z1), ENCARG(z2), ENCARG(z3)) ENCARG(cons_take(z0, z1)) -> c12(TAKE(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_and(z0, z1)) -> c13(AND(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_isNat(z0)) -> c14(ISNAT(encArg(z0)), ENCARG(z0)) ENCARG(cons_isNatList(z0)) -> c15(ISNATLIST(encArg(z0)), ENCARG(z0)) ENCARG(cons_isNatIList(z0)) -> c16(ISNATILIST(encArg(z0)), ENCARG(z0)) ENCODE_ACTIVE(z0) -> c17(ACTIVE(encArg(z0)), ENCARG(z0)) ENCODE_MARK(z0) -> c19(MARK(encArg(z0)), ENCARG(z0)) ENCODE_CONS(z0, z1) -> c20(CONS(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCODE_U11(z0, z1) -> c22(U11'(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCODE_S(z0) -> c24(S(encArg(z0)), ENCARG(z0)) ENCODE_LENGTH(z0) -> c25(LENGTH(encArg(z0)), ENCARG(z0)) ENCODE_U21(z0) -> c26(U21'(encArg(z0)), ENCARG(z0)) ENCODE_U31(z0, z1, z2, z3) -> c28(U31'(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), ENCARG(z0), ENCARG(z1), ENCARG(z2), ENCARG(z3)) ENCODE_TAKE(z0, z1) -> c29(TAKE(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCODE_AND(z0, z1) -> c30(AND(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCODE_ISNAT(z0) -> c31(ISNAT(encArg(z0)), ENCARG(z0)) ENCODE_ISNATLIST(z0) -> c32(ISNATLIST(encArg(z0)), ENCARG(z0)) ENCODE_ISNATILIST(z0) -> c33(ISNATILIST(encArg(z0)), ENCARG(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros)), CONS(0, zeros)) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), S(length(z0)), LENGTH(z0)) ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), AND(isNat(z0), isNatIList(z1)), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), AND(isNat(z0), isNatList(z1)), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), AND(isNat(z0), isNatIList(z1)), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(nil)) -> c48(MARK(0)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), U11'(and(isNatList(z1), isNat(z0)), z1), AND(isNatList(z1), isNat(z0)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), U21'(isNatIList(z0)), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), U31'(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1), AND(isNatIList(z2), and(isNat(z0), isNat(z1))), ISNATILIST(z2), AND(isNat(z0), isNat(z1)), ISNAT(z0), ISNAT(z1)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(cons(z0, z1)) -> c53(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(0) -> c54(ACTIVE(0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(mark(z0), z1)), U11'(mark(z0), z1), MARK(z0)) MARK(tt) -> c56(ACTIVE(tt)) MARK(s(z0)) -> c57(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(mark(z0))), LENGTH(mark(z0)), MARK(z0)) MARK(U21(z0)) -> c59(ACTIVE(U21(mark(z0))), U21'(mark(z0)), MARK(z0)) MARK(nil) -> c60(ACTIVE(nil)) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(mark(z0), z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(take(z0, z1)) -> c62(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) S tuples: ACTIVE(zeros) -> c34(MARK(cons(0, zeros)), CONS(0, zeros)) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), S(length(z0)), LENGTH(z0)) ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), AND(isNat(z0), isNatIList(z1)), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), AND(isNat(z0), isNatList(z1)), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), AND(isNat(z0), isNatIList(z1)), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(nil)) -> c48(MARK(0)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), U11'(and(isNatList(z1), isNat(z0)), z1), AND(isNatList(z1), isNat(z0)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), U21'(isNatIList(z0)), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), U31'(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1), AND(isNatIList(z2), and(isNat(z0), isNat(z1))), ISNATILIST(z2), AND(isNat(z0), isNat(z1)), ISNAT(z0), ISNAT(z1)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(cons(z0, z1)) -> c53(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(0) -> c54(ACTIVE(0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(mark(z0), z1)), U11'(mark(z0), z1), MARK(z0)) MARK(tt) -> c56(ACTIVE(tt)) MARK(s(z0)) -> c57(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(mark(z0))), LENGTH(mark(z0)), MARK(z0)) MARK(U21(z0)) -> c59(ACTIVE(U21(mark(z0))), U21'(mark(z0)), MARK(z0)) MARK(nil) -> c60(ACTIVE(nil)) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(mark(z0), z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(take(z0, z1)) -> c62(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) K tuples:none Defined Rule Symbols: active_1, mark_1, cons_2, U11_2, s_1, length_1, U21_1, U31_4, take_2, and_2, isNat_1, isNatList_1, isNatIList_1, encArg_1, encode_active_1, encode_zeros, encode_mark_1, encode_cons_2, encode_0, encode_U11_2, encode_tt, encode_s_1, encode_length_1, encode_U21_1, encode_nil, encode_U31_4, encode_take_2, encode_and_2, encode_isNat_1, encode_isNatList_1, encode_isNatIList_1 Defined Pair Symbols: ENCARG_1, ENCODE_ACTIVE_1, ENCODE_MARK_1, ENCODE_CONS_2, ENCODE_U11_2, ENCODE_S_1, ENCODE_LENGTH_1, ENCODE_U21_1, ENCODE_U31_4, ENCODE_TAKE_2, ENCODE_AND_2, ENCODE_ISNAT_1, ENCODE_ISNATLIST_1, ENCODE_ISNATILIST_1, ACTIVE_1, MARK_1, CONS_2, U11'_2, S_1, LENGTH_1, U21'_1, U31'_4, TAKE_2, AND_2, ISNAT_1, ISNATLIST_1, ISNATILIST_1 Compound Symbols: c4_2, c5_2, c6_3, c7_3, c8_2, c9_2, c10_2, c11_5, c12_3, c13_3, c14_2, c15_2, c16_2, c17_2, c19_2, c20_3, c22_3, c24_2, c25_2, c26_2, c28_5, c29_3, c30_3, c31_2, c32_2, c33_2, c34_2, c35_3, c36_1, c37_3, c38_1, c39_1, c40_2, c41_2, c42_2, c43_1, c44_4, c45_1, c46_4, c47_4, c48_1, c49_5, c50_3, c51_7, c52_1, c53_3, c54_1, c55_3, c56_1, c57_3, c58_3, c59_3, c60_1, c61_3, c62_4, c63_3, c64_2, c65_2, c66_2, c67_1, c68_1, c69_1, c70_1, c71_1, c72_1, c73_1, c74_1, c75_1, c76_1, c77_1, c78_1, c79_1, c80_1, c81_1, c82_1, c83_1, c84_1, c85_1, c86_1, c87_1, c88_1, c89_1, c90_1, c91_1, c92_1, c93_1, c94_1, c95_1, c96_1, c97_1, c98_1, c99_1, c100_1, c101_1, c102_1 ---------------------------------------- (31) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 14 trailing tuple parts ---------------------------------------- (32) Obligation: Complexity Dependency Tuples Problem Rules: encArg(zeros) -> zeros encArg(0) -> 0 encArg(tt) -> tt encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_U11(z0, z1)) -> U11(encArg(z0), encArg(z1)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_length(z0)) -> length(encArg(z0)) encArg(cons_U21(z0)) -> U21(encArg(z0)) encArg(cons_U31(z0, z1, z2, z3)) -> U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_isNat(z0)) -> isNat(encArg(z0)) encArg(cons_isNatList(z0)) -> isNatList(encArg(z0)) encArg(cons_isNatIList(z0)) -> isNatIList(encArg(z0)) encode_active(z0) -> active(encArg(z0)) encode_zeros -> zeros encode_mark(z0) -> mark(encArg(z0)) encode_cons(z0, z1) -> cons(encArg(z0), encArg(z1)) encode_0 -> 0 encode_U11(z0, z1) -> U11(encArg(z0), encArg(z1)) encode_tt -> tt encode_s(z0) -> s(encArg(z0)) encode_length(z0) -> length(encArg(z0)) encode_U21(z0) -> U21(encArg(z0)) encode_nil -> nil encode_U31(z0, z1, z2, z3) -> U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encode_take(z0, z1) -> take(encArg(z0), encArg(z1)) encode_and(z0, z1) -> and(encArg(z0), encArg(z1)) encode_isNat(z0) -> isNat(encArg(z0)) encode_isNatList(z0) -> isNatList(encArg(z0)) encode_isNatIList(z0) -> isNatIList(encArg(z0)) active(zeros) -> mark(cons(0, zeros)) active(U11(tt, z0)) -> mark(s(length(z0))) active(U21(tt)) -> mark(nil) active(U31(tt, z0, z1, z2)) -> mark(cons(z2, take(z1, z0))) active(and(tt, z0)) -> mark(z0) active(isNat(0)) -> mark(tt) active(isNat(length(z0))) -> mark(isNatList(z0)) active(isNat(s(z0))) -> mark(isNat(z0)) active(isNatIList(z0)) -> mark(isNatList(z0)) active(isNatIList(zeros)) -> mark(tt) active(isNatIList(cons(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(isNatList(nil)) -> mark(tt) active(isNatList(cons(z0, z1))) -> mark(and(isNat(z0), isNatList(z1))) active(isNatList(take(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(length(nil)) -> mark(0) active(length(cons(z0, z1))) -> mark(U11(and(isNatList(z1), isNat(z0)), z1)) active(take(0, z0)) -> mark(U21(isNatIList(z0))) active(take(s(z0), cons(z1, z2))) -> mark(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)) mark(zeros) -> active(zeros) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(0) -> active(0) mark(U11(z0, z1)) -> active(U11(mark(z0), z1)) mark(tt) -> active(tt) mark(s(z0)) -> active(s(mark(z0))) mark(length(z0)) -> active(length(mark(z0))) mark(U21(z0)) -> active(U21(mark(z0))) mark(nil) -> active(nil) mark(U31(z0, z1, z2, z3)) -> active(U31(mark(z0), z1, z2, z3)) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(isNat(z0)) -> active(isNat(z0)) mark(isNatList(z0)) -> active(isNatList(z0)) mark(isNatIList(z0)) -> active(isNatIList(z0)) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) U11(mark(z0), z1) -> U11(z0, z1) U11(z0, mark(z1)) -> U11(z0, z1) U11(active(z0), z1) -> U11(z0, z1) U11(z0, active(z1)) -> U11(z0, z1) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) length(mark(z0)) -> length(z0) length(active(z0)) -> length(z0) U21(mark(z0)) -> U21(z0) U21(active(z0)) -> U21(z0) U31(mark(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, mark(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, mark(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, mark(z3)) -> U31(z0, z1, z2, z3) U31(active(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, active(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, active(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, active(z3)) -> U31(z0, z1, z2, z3) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) isNat(mark(z0)) -> isNat(z0) isNat(active(z0)) -> isNat(z0) isNatList(mark(z0)) -> isNatList(z0) isNatList(active(z0)) -> isNatList(z0) isNatIList(mark(z0)) -> isNatIList(z0) isNatIList(active(z0)) -> isNatIList(z0) Tuples: ENCARG(cons_active(z0)) -> c4(ACTIVE(encArg(z0)), ENCARG(z0)) ENCARG(cons_mark(z0)) -> c5(MARK(encArg(z0)), ENCARG(z0)) ENCARG(cons_cons(z0, z1)) -> c6(CONS(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_U11(z0, z1)) -> c7(U11'(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_s(z0)) -> c8(S(encArg(z0)), ENCARG(z0)) ENCARG(cons_length(z0)) -> c9(LENGTH(encArg(z0)), ENCARG(z0)) ENCARG(cons_U21(z0)) -> c10(U21'(encArg(z0)), ENCARG(z0)) ENCARG(cons_U31(z0, z1, z2, z3)) -> c11(U31'(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), ENCARG(z0), ENCARG(z1), ENCARG(z2), ENCARG(z3)) ENCARG(cons_take(z0, z1)) -> c12(TAKE(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_and(z0, z1)) -> c13(AND(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_isNat(z0)) -> c14(ISNAT(encArg(z0)), ENCARG(z0)) ENCARG(cons_isNatList(z0)) -> c15(ISNATLIST(encArg(z0)), ENCARG(z0)) ENCARG(cons_isNatIList(z0)) -> c16(ISNATILIST(encArg(z0)), ENCARG(z0)) ENCODE_ACTIVE(z0) -> c17(ACTIVE(encArg(z0)), ENCARG(z0)) ENCODE_MARK(z0) -> c19(MARK(encArg(z0)), ENCARG(z0)) ENCODE_CONS(z0, z1) -> c20(CONS(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCODE_U11(z0, z1) -> c22(U11'(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCODE_S(z0) -> c24(S(encArg(z0)), ENCARG(z0)) ENCODE_LENGTH(z0) -> c25(LENGTH(encArg(z0)), ENCARG(z0)) ENCODE_U21(z0) -> c26(U21'(encArg(z0)), ENCARG(z0)) ENCODE_U31(z0, z1, z2, z3) -> c28(U31'(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), ENCARG(z0), ENCARG(z1), ENCARG(z2), ENCARG(z3)) ENCODE_TAKE(z0, z1) -> c29(TAKE(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCODE_AND(z0, z1) -> c30(AND(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCODE_ISNAT(z0) -> c31(ISNAT(encArg(z0)), ENCARG(z0)) ENCODE_ISNATLIST(z0) -> c32(ISNATLIST(encArg(z0)), ENCARG(z0)) ENCODE_ISNATILIST(z0) -> c33(ISNATILIST(encArg(z0)), ENCARG(z0)) ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(cons(z0, z1)) -> c53(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(mark(z0), z1)), U11'(mark(z0), z1), MARK(z0)) MARK(s(z0)) -> c57(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(mark(z0))), LENGTH(mark(z0)), MARK(z0)) MARK(U21(z0)) -> c59(ACTIVE(U21(mark(z0))), U21'(mark(z0)), MARK(z0)) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(mark(z0), z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(take(z0, z1)) -> c62(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 S tuples: ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(cons(z0, z1)) -> c53(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(mark(z0), z1)), U11'(mark(z0), z1), MARK(z0)) MARK(s(z0)) -> c57(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(mark(z0))), LENGTH(mark(z0)), MARK(z0)) MARK(U21(z0)) -> c59(ACTIVE(U21(mark(z0))), U21'(mark(z0)), MARK(z0)) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(mark(z0), z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(take(z0, z1)) -> c62(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 K tuples:none Defined Rule Symbols: active_1, mark_1, cons_2, U11_2, s_1, length_1, U21_1, U31_4, take_2, and_2, isNat_1, isNatList_1, isNatIList_1, encArg_1, encode_active_1, encode_zeros, encode_mark_1, encode_cons_2, encode_0, encode_U11_2, encode_tt, encode_s_1, encode_length_1, encode_U21_1, encode_nil, encode_U31_4, encode_take_2, encode_and_2, encode_isNat_1, encode_isNatList_1, encode_isNatIList_1 Defined Pair Symbols: ENCARG_1, ENCODE_ACTIVE_1, ENCODE_MARK_1, ENCODE_CONS_2, ENCODE_U11_2, ENCODE_S_1, ENCODE_LENGTH_1, ENCODE_U21_1, ENCODE_U31_4, ENCODE_TAKE_2, ENCODE_AND_2, ENCODE_ISNAT_1, ENCODE_ISNATLIST_1, ENCODE_ISNATILIST_1, ACTIVE_1, MARK_1, CONS_2, U11'_2, S_1, LENGTH_1, U21'_1, U31'_4, TAKE_2, AND_2, ISNAT_1, ISNATLIST_1, ISNATILIST_1 Compound Symbols: c4_2, c5_2, c6_3, c7_3, c8_2, c9_2, c10_2, c11_5, c12_3, c13_3, c14_2, c15_2, c16_2, c17_2, c19_2, c20_3, c22_3, c24_2, c25_2, c26_2, c28_5, c29_3, c30_3, c31_2, c32_2, c33_2, c36_1, c37_3, c38_1, c39_1, c40_2, c41_2, c42_2, c43_1, c45_1, c48_1, c52_1, c53_3, c55_3, c57_3, c58_3, c59_3, c61_3, c62_4, c63_3, c64_2, c65_2, c66_2, c67_1, c68_1, c69_1, c70_1, c71_1, c72_1, c73_1, c74_1, c75_1, c76_1, c77_1, c78_1, c79_1, c80_1, c81_1, c82_1, c83_1, c84_1, c85_1, c86_1, c87_1, c88_1, c89_1, c90_1, c91_1, c92_1, c93_1, c94_1, c95_1, c96_1, c97_1, c98_1, c99_1, c100_1, c101_1, c102_1, c34_1, c35_2, c44_3, c46_3, c47_3, c49_3, c50_2, c51_4, c54, c56, c60 ---------------------------------------- (33) CdtGraphSplitRhsProof (BOTH BOUNDS(ID, ID)) Split RHS of tuples not part of any SCC ---------------------------------------- (34) Obligation: Complexity Dependency Tuples Problem Rules: encArg(zeros) -> zeros encArg(0) -> 0 encArg(tt) -> tt encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_U11(z0, z1)) -> U11(encArg(z0), encArg(z1)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_length(z0)) -> length(encArg(z0)) encArg(cons_U21(z0)) -> U21(encArg(z0)) encArg(cons_U31(z0, z1, z2, z3)) -> U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_isNat(z0)) -> isNat(encArg(z0)) encArg(cons_isNatList(z0)) -> isNatList(encArg(z0)) encArg(cons_isNatIList(z0)) -> isNatIList(encArg(z0)) encode_active(z0) -> active(encArg(z0)) encode_zeros -> zeros encode_mark(z0) -> mark(encArg(z0)) encode_cons(z0, z1) -> cons(encArg(z0), encArg(z1)) encode_0 -> 0 encode_U11(z0, z1) -> U11(encArg(z0), encArg(z1)) encode_tt -> tt encode_s(z0) -> s(encArg(z0)) encode_length(z0) -> length(encArg(z0)) encode_U21(z0) -> U21(encArg(z0)) encode_nil -> nil encode_U31(z0, z1, z2, z3) -> U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encode_take(z0, z1) -> take(encArg(z0), encArg(z1)) encode_and(z0, z1) -> and(encArg(z0), encArg(z1)) encode_isNat(z0) -> isNat(encArg(z0)) encode_isNatList(z0) -> isNatList(encArg(z0)) encode_isNatIList(z0) -> isNatIList(encArg(z0)) active(zeros) -> mark(cons(0, zeros)) active(U11(tt, z0)) -> mark(s(length(z0))) active(U21(tt)) -> mark(nil) active(U31(tt, z0, z1, z2)) -> mark(cons(z2, take(z1, z0))) active(and(tt, z0)) -> mark(z0) active(isNat(0)) -> mark(tt) active(isNat(length(z0))) -> mark(isNatList(z0)) active(isNat(s(z0))) -> mark(isNat(z0)) active(isNatIList(z0)) -> mark(isNatList(z0)) active(isNatIList(zeros)) -> mark(tt) active(isNatIList(cons(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(isNatList(nil)) -> mark(tt) active(isNatList(cons(z0, z1))) -> mark(and(isNat(z0), isNatList(z1))) active(isNatList(take(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(length(nil)) -> mark(0) active(length(cons(z0, z1))) -> mark(U11(and(isNatList(z1), isNat(z0)), z1)) active(take(0, z0)) -> mark(U21(isNatIList(z0))) active(take(s(z0), cons(z1, z2))) -> mark(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)) mark(zeros) -> active(zeros) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(0) -> active(0) mark(U11(z0, z1)) -> active(U11(mark(z0), z1)) mark(tt) -> active(tt) mark(s(z0)) -> active(s(mark(z0))) mark(length(z0)) -> active(length(mark(z0))) mark(U21(z0)) -> active(U21(mark(z0))) mark(nil) -> active(nil) mark(U31(z0, z1, z2, z3)) -> active(U31(mark(z0), z1, z2, z3)) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(isNat(z0)) -> active(isNat(z0)) mark(isNatList(z0)) -> active(isNatList(z0)) mark(isNatIList(z0)) -> active(isNatIList(z0)) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) U11(mark(z0), z1) -> U11(z0, z1) U11(z0, mark(z1)) -> U11(z0, z1) U11(active(z0), z1) -> U11(z0, z1) U11(z0, active(z1)) -> U11(z0, z1) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) length(mark(z0)) -> length(z0) length(active(z0)) -> length(z0) U21(mark(z0)) -> U21(z0) U21(active(z0)) -> U21(z0) U31(mark(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, mark(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, mark(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, mark(z3)) -> U31(z0, z1, z2, z3) U31(active(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, active(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, active(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, active(z3)) -> U31(z0, z1, z2, z3) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) isNat(mark(z0)) -> isNat(z0) isNat(active(z0)) -> isNat(z0) isNatList(mark(z0)) -> isNatList(z0) isNatList(active(z0)) -> isNatList(z0) isNatIList(mark(z0)) -> isNatIList(z0) isNatIList(active(z0)) -> isNatIList(z0) Tuples: ENCARG(cons_active(z0)) -> c4(ACTIVE(encArg(z0)), ENCARG(z0)) ENCARG(cons_mark(z0)) -> c5(MARK(encArg(z0)), ENCARG(z0)) ENCARG(cons_cons(z0, z1)) -> c6(CONS(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_U11(z0, z1)) -> c7(U11'(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_s(z0)) -> c8(S(encArg(z0)), ENCARG(z0)) ENCARG(cons_length(z0)) -> c9(LENGTH(encArg(z0)), ENCARG(z0)) ENCARG(cons_U21(z0)) -> c10(U21'(encArg(z0)), ENCARG(z0)) ENCARG(cons_U31(z0, z1, z2, z3)) -> c11(U31'(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), ENCARG(z0), ENCARG(z1), ENCARG(z2), ENCARG(z3)) ENCARG(cons_take(z0, z1)) -> c12(TAKE(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_and(z0, z1)) -> c13(AND(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_isNat(z0)) -> c14(ISNAT(encArg(z0)), ENCARG(z0)) ENCARG(cons_isNatList(z0)) -> c15(ISNATLIST(encArg(z0)), ENCARG(z0)) ENCARG(cons_isNatIList(z0)) -> c16(ISNATILIST(encArg(z0)), ENCARG(z0)) ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(cons(z0, z1)) -> c53(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(mark(z0), z1)), U11'(mark(z0), z1), MARK(z0)) MARK(s(z0)) -> c57(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(mark(z0))), LENGTH(mark(z0)), MARK(z0)) MARK(U21(z0)) -> c59(ACTIVE(U21(mark(z0))), U21'(mark(z0)), MARK(z0)) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(mark(z0), z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(take(z0, z1)) -> c62(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 ENCODE_ACTIVE(z0) -> c(ACTIVE(encArg(z0))) ENCODE_ACTIVE(z0) -> c(ENCARG(z0)) ENCODE_MARK(z0) -> c(MARK(encArg(z0))) ENCODE_MARK(z0) -> c(ENCARG(z0)) ENCODE_CONS(z0, z1) -> c(CONS(encArg(z0), encArg(z1))) ENCODE_CONS(z0, z1) -> c(ENCARG(z0)) ENCODE_CONS(z0, z1) -> c(ENCARG(z1)) ENCODE_U11(z0, z1) -> c(U11'(encArg(z0), encArg(z1))) ENCODE_U11(z0, z1) -> c(ENCARG(z0)) ENCODE_U11(z0, z1) -> c(ENCARG(z1)) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_S(z0) -> c(ENCARG(z0)) ENCODE_LENGTH(z0) -> c(LENGTH(encArg(z0))) ENCODE_LENGTH(z0) -> c(ENCARG(z0)) ENCODE_U21(z0) -> c(U21'(encArg(z0))) ENCODE_U21(z0) -> c(ENCARG(z0)) ENCODE_U31(z0, z1, z2, z3) -> c(U31'(encArg(z0), encArg(z1), encArg(z2), encArg(z3))) ENCODE_U31(z0, z1, z2, z3) -> c(ENCARG(z0)) ENCODE_U31(z0, z1, z2, z3) -> c(ENCARG(z1)) ENCODE_U31(z0, z1, z2, z3) -> c(ENCARG(z2)) ENCODE_U31(z0, z1, z2, z3) -> c(ENCARG(z3)) ENCODE_TAKE(z0, z1) -> c(TAKE(encArg(z0), encArg(z1))) ENCODE_TAKE(z0, z1) -> c(ENCARG(z0)) ENCODE_TAKE(z0, z1) -> c(ENCARG(z1)) ENCODE_AND(z0, z1) -> c(AND(encArg(z0), encArg(z1))) ENCODE_AND(z0, z1) -> c(ENCARG(z0)) ENCODE_AND(z0, z1) -> c(ENCARG(z1)) ENCODE_ISNAT(z0) -> c(ISNAT(encArg(z0))) ENCODE_ISNAT(z0) -> c(ENCARG(z0)) ENCODE_ISNATLIST(z0) -> c(ISNATLIST(encArg(z0))) ENCODE_ISNATLIST(z0) -> c(ENCARG(z0)) ENCODE_ISNATILIST(z0) -> c(ISNATILIST(encArg(z0))) ENCODE_ISNATILIST(z0) -> c(ENCARG(z0)) S tuples: ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(cons(z0, z1)) -> c53(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(mark(z0), z1)), U11'(mark(z0), z1), MARK(z0)) MARK(s(z0)) -> c57(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(mark(z0))), LENGTH(mark(z0)), MARK(z0)) MARK(U21(z0)) -> c59(ACTIVE(U21(mark(z0))), U21'(mark(z0)), MARK(z0)) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(mark(z0), z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(take(z0, z1)) -> c62(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 K tuples:none Defined Rule Symbols: active_1, mark_1, cons_2, U11_2, s_1, length_1, U21_1, U31_4, take_2, and_2, isNat_1, isNatList_1, isNatIList_1, encArg_1, encode_active_1, encode_zeros, encode_mark_1, encode_cons_2, encode_0, encode_U11_2, encode_tt, encode_s_1, encode_length_1, encode_U21_1, encode_nil, encode_U31_4, encode_take_2, encode_and_2, encode_isNat_1, encode_isNatList_1, encode_isNatIList_1 Defined Pair Symbols: ENCARG_1, ACTIVE_1, MARK_1, CONS_2, U11'_2, S_1, LENGTH_1, U21'_1, U31'_4, TAKE_2, AND_2, ISNAT_1, ISNATLIST_1, ISNATILIST_1, ENCODE_ACTIVE_1, ENCODE_MARK_1, ENCODE_CONS_2, ENCODE_U11_2, ENCODE_S_1, ENCODE_LENGTH_1, ENCODE_U21_1, ENCODE_U31_4, ENCODE_TAKE_2, ENCODE_AND_2, ENCODE_ISNAT_1, ENCODE_ISNATLIST_1, ENCODE_ISNATILIST_1 Compound Symbols: c4_2, c5_2, c6_3, c7_3, c8_2, c9_2, c10_2, c11_5, c12_3, c13_3, c14_2, c15_2, c16_2, c36_1, c37_3, c38_1, c39_1, c40_2, c41_2, c42_2, c43_1, c45_1, c48_1, c52_1, c53_3, c55_3, c57_3, c58_3, c59_3, c61_3, c62_4, c63_3, c64_2, c65_2, c66_2, c67_1, c68_1, c69_1, c70_1, c71_1, c72_1, c73_1, c74_1, c75_1, c76_1, c77_1, c78_1, c79_1, c80_1, c81_1, c82_1, c83_1, c84_1, c85_1, c86_1, c87_1, c88_1, c89_1, c90_1, c91_1, c92_1, c93_1, c94_1, c95_1, c96_1, c97_1, c98_1, c99_1, c100_1, c101_1, c102_1, c34_1, c35_2, c44_3, c46_3, c47_3, c49_3, c50_2, c51_4, c54, c56, c60, c_1 ---------------------------------------- (35) CdtLeafRemovalProof (ComplexityIfPolyImplication) Removed 20 leading nodes: ENCODE_ACTIVE(z0) -> c(ENCARG(z0)) ENCODE_MARK(z0) -> c(ENCARG(z0)) ENCODE_CONS(z0, z1) -> c(ENCARG(z0)) ENCODE_CONS(z0, z1) -> c(ENCARG(z1)) ENCODE_U11(z0, z1) -> c(ENCARG(z0)) ENCODE_U11(z0, z1) -> c(ENCARG(z1)) ENCODE_S(z0) -> c(ENCARG(z0)) ENCODE_LENGTH(z0) -> c(ENCARG(z0)) ENCODE_U21(z0) -> c(ENCARG(z0)) ENCODE_U31(z0, z1, z2, z3) -> c(ENCARG(z0)) ENCODE_U31(z0, z1, z2, z3) -> c(ENCARG(z1)) ENCODE_U31(z0, z1, z2, z3) -> c(ENCARG(z2)) ENCODE_U31(z0, z1, z2, z3) -> c(ENCARG(z3)) ENCODE_TAKE(z0, z1) -> c(ENCARG(z0)) ENCODE_TAKE(z0, z1) -> c(ENCARG(z1)) ENCODE_AND(z0, z1) -> c(ENCARG(z0)) ENCODE_AND(z0, z1) -> c(ENCARG(z1)) ENCODE_ISNAT(z0) -> c(ENCARG(z0)) ENCODE_ISNATLIST(z0) -> c(ENCARG(z0)) ENCODE_ISNATILIST(z0) -> c(ENCARG(z0)) ---------------------------------------- (36) Obligation: Complexity Dependency Tuples Problem Rules: encArg(zeros) -> zeros encArg(0) -> 0 encArg(tt) -> tt encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_U11(z0, z1)) -> U11(encArg(z0), encArg(z1)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_length(z0)) -> length(encArg(z0)) encArg(cons_U21(z0)) -> U21(encArg(z0)) encArg(cons_U31(z0, z1, z2, z3)) -> U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_isNat(z0)) -> isNat(encArg(z0)) encArg(cons_isNatList(z0)) -> isNatList(encArg(z0)) encArg(cons_isNatIList(z0)) -> isNatIList(encArg(z0)) encode_active(z0) -> active(encArg(z0)) encode_zeros -> zeros encode_mark(z0) -> mark(encArg(z0)) encode_cons(z0, z1) -> cons(encArg(z0), encArg(z1)) encode_0 -> 0 encode_U11(z0, z1) -> U11(encArg(z0), encArg(z1)) encode_tt -> tt encode_s(z0) -> s(encArg(z0)) encode_length(z0) -> length(encArg(z0)) encode_U21(z0) -> U21(encArg(z0)) encode_nil -> nil encode_U31(z0, z1, z2, z3) -> U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encode_take(z0, z1) -> take(encArg(z0), encArg(z1)) encode_and(z0, z1) -> and(encArg(z0), encArg(z1)) encode_isNat(z0) -> isNat(encArg(z0)) encode_isNatList(z0) -> isNatList(encArg(z0)) encode_isNatIList(z0) -> isNatIList(encArg(z0)) active(zeros) -> mark(cons(0, zeros)) active(U11(tt, z0)) -> mark(s(length(z0))) active(U21(tt)) -> mark(nil) active(U31(tt, z0, z1, z2)) -> mark(cons(z2, take(z1, z0))) active(and(tt, z0)) -> mark(z0) active(isNat(0)) -> mark(tt) active(isNat(length(z0))) -> mark(isNatList(z0)) active(isNat(s(z0))) -> mark(isNat(z0)) active(isNatIList(z0)) -> mark(isNatList(z0)) active(isNatIList(zeros)) -> mark(tt) active(isNatIList(cons(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(isNatList(nil)) -> mark(tt) active(isNatList(cons(z0, z1))) -> mark(and(isNat(z0), isNatList(z1))) active(isNatList(take(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(length(nil)) -> mark(0) active(length(cons(z0, z1))) -> mark(U11(and(isNatList(z1), isNat(z0)), z1)) active(take(0, z0)) -> mark(U21(isNatIList(z0))) active(take(s(z0), cons(z1, z2))) -> mark(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)) mark(zeros) -> active(zeros) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(0) -> active(0) mark(U11(z0, z1)) -> active(U11(mark(z0), z1)) mark(tt) -> active(tt) mark(s(z0)) -> active(s(mark(z0))) mark(length(z0)) -> active(length(mark(z0))) mark(U21(z0)) -> active(U21(mark(z0))) mark(nil) -> active(nil) mark(U31(z0, z1, z2, z3)) -> active(U31(mark(z0), z1, z2, z3)) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(isNat(z0)) -> active(isNat(z0)) mark(isNatList(z0)) -> active(isNatList(z0)) mark(isNatIList(z0)) -> active(isNatIList(z0)) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) U11(mark(z0), z1) -> U11(z0, z1) U11(z0, mark(z1)) -> U11(z0, z1) U11(active(z0), z1) -> U11(z0, z1) U11(z0, active(z1)) -> U11(z0, z1) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) length(mark(z0)) -> length(z0) length(active(z0)) -> length(z0) U21(mark(z0)) -> U21(z0) U21(active(z0)) -> U21(z0) U31(mark(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, mark(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, mark(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, mark(z3)) -> U31(z0, z1, z2, z3) U31(active(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, active(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, active(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, active(z3)) -> U31(z0, z1, z2, z3) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) isNat(mark(z0)) -> isNat(z0) isNat(active(z0)) -> isNat(z0) isNatList(mark(z0)) -> isNatList(z0) isNatList(active(z0)) -> isNatList(z0) isNatIList(mark(z0)) -> isNatIList(z0) isNatIList(active(z0)) -> isNatIList(z0) Tuples: ENCARG(cons_active(z0)) -> c4(ACTIVE(encArg(z0)), ENCARG(z0)) ENCARG(cons_mark(z0)) -> c5(MARK(encArg(z0)), ENCARG(z0)) ENCARG(cons_cons(z0, z1)) -> c6(CONS(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_U11(z0, z1)) -> c7(U11'(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_s(z0)) -> c8(S(encArg(z0)), ENCARG(z0)) ENCARG(cons_length(z0)) -> c9(LENGTH(encArg(z0)), ENCARG(z0)) ENCARG(cons_U21(z0)) -> c10(U21'(encArg(z0)), ENCARG(z0)) ENCARG(cons_U31(z0, z1, z2, z3)) -> c11(U31'(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), ENCARG(z0), ENCARG(z1), ENCARG(z2), ENCARG(z3)) ENCARG(cons_take(z0, z1)) -> c12(TAKE(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_and(z0, z1)) -> c13(AND(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_isNat(z0)) -> c14(ISNAT(encArg(z0)), ENCARG(z0)) ENCARG(cons_isNatList(z0)) -> c15(ISNATLIST(encArg(z0)), ENCARG(z0)) ENCARG(cons_isNatIList(z0)) -> c16(ISNATILIST(encArg(z0)), ENCARG(z0)) ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(cons(z0, z1)) -> c53(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(mark(z0), z1)), U11'(mark(z0), z1), MARK(z0)) MARK(s(z0)) -> c57(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(mark(z0))), LENGTH(mark(z0)), MARK(z0)) MARK(U21(z0)) -> c59(ACTIVE(U21(mark(z0))), U21'(mark(z0)), MARK(z0)) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(mark(z0), z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(take(z0, z1)) -> c62(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 ENCODE_ACTIVE(z0) -> c(ACTIVE(encArg(z0))) ENCODE_MARK(z0) -> c(MARK(encArg(z0))) ENCODE_CONS(z0, z1) -> c(CONS(encArg(z0), encArg(z1))) ENCODE_U11(z0, z1) -> c(U11'(encArg(z0), encArg(z1))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_LENGTH(z0) -> c(LENGTH(encArg(z0))) ENCODE_U21(z0) -> c(U21'(encArg(z0))) ENCODE_U31(z0, z1, z2, z3) -> c(U31'(encArg(z0), encArg(z1), encArg(z2), encArg(z3))) ENCODE_TAKE(z0, z1) -> c(TAKE(encArg(z0), encArg(z1))) ENCODE_AND(z0, z1) -> c(AND(encArg(z0), encArg(z1))) ENCODE_ISNAT(z0) -> c(ISNAT(encArg(z0))) ENCODE_ISNATLIST(z0) -> c(ISNATLIST(encArg(z0))) ENCODE_ISNATILIST(z0) -> c(ISNATILIST(encArg(z0))) S tuples: ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(cons(z0, z1)) -> c53(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(mark(z0), z1)), U11'(mark(z0), z1), MARK(z0)) MARK(s(z0)) -> c57(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(mark(z0))), LENGTH(mark(z0)), MARK(z0)) MARK(U21(z0)) -> c59(ACTIVE(U21(mark(z0))), U21'(mark(z0)), MARK(z0)) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(mark(z0), z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(take(z0, z1)) -> c62(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 K tuples:none Defined Rule Symbols: active_1, mark_1, cons_2, U11_2, s_1, length_1, U21_1, U31_4, take_2, and_2, isNat_1, isNatList_1, isNatIList_1, encArg_1, encode_active_1, encode_zeros, encode_mark_1, encode_cons_2, encode_0, encode_U11_2, encode_tt, encode_s_1, encode_length_1, encode_U21_1, encode_nil, encode_U31_4, encode_take_2, encode_and_2, encode_isNat_1, encode_isNatList_1, encode_isNatIList_1 Defined Pair Symbols: ENCARG_1, ACTIVE_1, MARK_1, CONS_2, U11'_2, S_1, LENGTH_1, U21'_1, U31'_4, TAKE_2, AND_2, ISNAT_1, ISNATLIST_1, ISNATILIST_1, ENCODE_ACTIVE_1, ENCODE_MARK_1, ENCODE_CONS_2, ENCODE_U11_2, ENCODE_S_1, ENCODE_LENGTH_1, ENCODE_U21_1, ENCODE_U31_4, ENCODE_TAKE_2, ENCODE_AND_2, ENCODE_ISNAT_1, ENCODE_ISNATLIST_1, ENCODE_ISNATILIST_1 Compound Symbols: c4_2, c5_2, c6_3, c7_3, c8_2, c9_2, c10_2, c11_5, c12_3, c13_3, c14_2, c15_2, c16_2, c36_1, c37_3, c38_1, c39_1, c40_2, c41_2, c42_2, c43_1, c45_1, c48_1, c52_1, c53_3, c55_3, c57_3, c58_3, c59_3, c61_3, c62_4, c63_3, c64_2, c65_2, c66_2, c67_1, c68_1, c69_1, c70_1, c71_1, c72_1, c73_1, c74_1, c75_1, c76_1, c77_1, c78_1, c79_1, c80_1, c81_1, c82_1, c83_1, c84_1, c85_1, c86_1, c87_1, c88_1, c89_1, c90_1, c91_1, c92_1, c93_1, c94_1, c95_1, c96_1, c97_1, c98_1, c99_1, c100_1, c101_1, c102_1, c34_1, c35_2, c44_3, c46_3, c47_3, c49_3, c50_2, c51_4, c54, c56, c60, c_1 ---------------------------------------- (37) CdtUsableRulesProof (BOTH BOUNDS(ID, ID)) The following rules are not usable and were removed: encode_active(z0) -> active(encArg(z0)) encode_zeros -> zeros encode_mark(z0) -> mark(encArg(z0)) encode_cons(z0, z1) -> cons(encArg(z0), encArg(z1)) encode_0 -> 0 encode_U11(z0, z1) -> U11(encArg(z0), encArg(z1)) encode_tt -> tt encode_s(z0) -> s(encArg(z0)) encode_length(z0) -> length(encArg(z0)) encode_U21(z0) -> U21(encArg(z0)) encode_nil -> nil encode_U31(z0, z1, z2, z3) -> U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encode_take(z0, z1) -> take(encArg(z0), encArg(z1)) encode_and(z0, z1) -> and(encArg(z0), encArg(z1)) encode_isNat(z0) -> isNat(encArg(z0)) encode_isNatList(z0) -> isNatList(encArg(z0)) encode_isNatIList(z0) -> isNatIList(encArg(z0)) ---------------------------------------- (38) Obligation: Complexity Dependency Tuples Problem Rules: encArg(zeros) -> zeros encArg(0) -> 0 encArg(tt) -> tt encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_U11(z0, z1)) -> U11(encArg(z0), encArg(z1)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_length(z0)) -> length(encArg(z0)) encArg(cons_U21(z0)) -> U21(encArg(z0)) encArg(cons_U31(z0, z1, z2, z3)) -> U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_isNat(z0)) -> isNat(encArg(z0)) encArg(cons_isNatList(z0)) -> isNatList(encArg(z0)) encArg(cons_isNatIList(z0)) -> isNatIList(encArg(z0)) active(zeros) -> mark(cons(0, zeros)) active(U11(tt, z0)) -> mark(s(length(z0))) active(U21(tt)) -> mark(nil) active(U31(tt, z0, z1, z2)) -> mark(cons(z2, take(z1, z0))) active(and(tt, z0)) -> mark(z0) active(isNat(0)) -> mark(tt) active(isNat(length(z0))) -> mark(isNatList(z0)) active(isNat(s(z0))) -> mark(isNat(z0)) active(isNatIList(z0)) -> mark(isNatList(z0)) active(isNatIList(zeros)) -> mark(tt) active(isNatIList(cons(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(isNatList(nil)) -> mark(tt) active(isNatList(cons(z0, z1))) -> mark(and(isNat(z0), isNatList(z1))) active(isNatList(take(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(length(nil)) -> mark(0) active(length(cons(z0, z1))) -> mark(U11(and(isNatList(z1), isNat(z0)), z1)) active(take(0, z0)) -> mark(U21(isNatIList(z0))) active(take(s(z0), cons(z1, z2))) -> mark(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)) mark(zeros) -> active(zeros) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(0) -> active(0) mark(U11(z0, z1)) -> active(U11(mark(z0), z1)) mark(tt) -> active(tt) mark(s(z0)) -> active(s(mark(z0))) mark(length(z0)) -> active(length(mark(z0))) mark(U21(z0)) -> active(U21(mark(z0))) mark(nil) -> active(nil) mark(U31(z0, z1, z2, z3)) -> active(U31(mark(z0), z1, z2, z3)) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(isNat(z0)) -> active(isNat(z0)) mark(isNatList(z0)) -> active(isNatList(z0)) mark(isNatIList(z0)) -> active(isNatIList(z0)) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) U11(mark(z0), z1) -> U11(z0, z1) U11(z0, mark(z1)) -> U11(z0, z1) U11(active(z0), z1) -> U11(z0, z1) U11(z0, active(z1)) -> U11(z0, z1) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) length(mark(z0)) -> length(z0) length(active(z0)) -> length(z0) U21(mark(z0)) -> U21(z0) U21(active(z0)) -> U21(z0) U31(mark(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, mark(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, mark(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, mark(z3)) -> U31(z0, z1, z2, z3) U31(active(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, active(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, active(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, active(z3)) -> U31(z0, z1, z2, z3) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) isNat(mark(z0)) -> isNat(z0) isNat(active(z0)) -> isNat(z0) isNatList(mark(z0)) -> isNatList(z0) isNatList(active(z0)) -> isNatList(z0) isNatIList(mark(z0)) -> isNatIList(z0) isNatIList(active(z0)) -> isNatIList(z0) Tuples: ENCARG(cons_active(z0)) -> c4(ACTIVE(encArg(z0)), ENCARG(z0)) ENCARG(cons_mark(z0)) -> c5(MARK(encArg(z0)), ENCARG(z0)) ENCARG(cons_cons(z0, z1)) -> c6(CONS(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_U11(z0, z1)) -> c7(U11'(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_s(z0)) -> c8(S(encArg(z0)), ENCARG(z0)) ENCARG(cons_length(z0)) -> c9(LENGTH(encArg(z0)), ENCARG(z0)) ENCARG(cons_U21(z0)) -> c10(U21'(encArg(z0)), ENCARG(z0)) ENCARG(cons_U31(z0, z1, z2, z3)) -> c11(U31'(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), ENCARG(z0), ENCARG(z1), ENCARG(z2), ENCARG(z3)) ENCARG(cons_take(z0, z1)) -> c12(TAKE(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_and(z0, z1)) -> c13(AND(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_isNat(z0)) -> c14(ISNAT(encArg(z0)), ENCARG(z0)) ENCARG(cons_isNatList(z0)) -> c15(ISNATLIST(encArg(z0)), ENCARG(z0)) ENCARG(cons_isNatIList(z0)) -> c16(ISNATILIST(encArg(z0)), ENCARG(z0)) ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(cons(z0, z1)) -> c53(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(mark(z0), z1)), U11'(mark(z0), z1), MARK(z0)) MARK(s(z0)) -> c57(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(mark(z0))), LENGTH(mark(z0)), MARK(z0)) MARK(U21(z0)) -> c59(ACTIVE(U21(mark(z0))), U21'(mark(z0)), MARK(z0)) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(mark(z0), z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(take(z0, z1)) -> c62(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 ENCODE_ACTIVE(z0) -> c(ACTIVE(encArg(z0))) ENCODE_MARK(z0) -> c(MARK(encArg(z0))) ENCODE_CONS(z0, z1) -> c(CONS(encArg(z0), encArg(z1))) ENCODE_U11(z0, z1) -> c(U11'(encArg(z0), encArg(z1))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_LENGTH(z0) -> c(LENGTH(encArg(z0))) ENCODE_U21(z0) -> c(U21'(encArg(z0))) ENCODE_U31(z0, z1, z2, z3) -> c(U31'(encArg(z0), encArg(z1), encArg(z2), encArg(z3))) ENCODE_TAKE(z0, z1) -> c(TAKE(encArg(z0), encArg(z1))) ENCODE_AND(z0, z1) -> c(AND(encArg(z0), encArg(z1))) ENCODE_ISNAT(z0) -> c(ISNAT(encArg(z0))) ENCODE_ISNATLIST(z0) -> c(ISNATLIST(encArg(z0))) ENCODE_ISNATILIST(z0) -> c(ISNATILIST(encArg(z0))) S tuples: ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(cons(z0, z1)) -> c53(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(mark(z0), z1)), U11'(mark(z0), z1), MARK(z0)) MARK(s(z0)) -> c57(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(mark(z0))), LENGTH(mark(z0)), MARK(z0)) MARK(U21(z0)) -> c59(ACTIVE(U21(mark(z0))), U21'(mark(z0)), MARK(z0)) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(mark(z0), z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(take(z0, z1)) -> c62(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 K tuples:none Defined Rule Symbols: encArg_1, active_1, mark_1, cons_2, U11_2, s_1, length_1, U21_1, U31_4, take_2, and_2, isNat_1, isNatList_1, isNatIList_1 Defined Pair Symbols: ENCARG_1, ACTIVE_1, MARK_1, CONS_2, U11'_2, S_1, LENGTH_1, U21'_1, U31'_4, TAKE_2, AND_2, ISNAT_1, ISNATLIST_1, ISNATILIST_1, ENCODE_ACTIVE_1, ENCODE_MARK_1, ENCODE_CONS_2, ENCODE_U11_2, ENCODE_S_1, ENCODE_LENGTH_1, ENCODE_U21_1, ENCODE_U31_4, ENCODE_TAKE_2, ENCODE_AND_2, ENCODE_ISNAT_1, ENCODE_ISNATLIST_1, ENCODE_ISNATILIST_1 Compound Symbols: c4_2, c5_2, c6_3, c7_3, c8_2, c9_2, c10_2, c11_5, c12_3, c13_3, c14_2, c15_2, c16_2, c36_1, c37_3, c38_1, c39_1, c40_2, c41_2, c42_2, c43_1, c45_1, c48_1, c52_1, c53_3, c55_3, c57_3, c58_3, c59_3, c61_3, c62_4, c63_3, c64_2, c65_2, c66_2, c67_1, c68_1, c69_1, c70_1, c71_1, c72_1, c73_1, c74_1, c75_1, c76_1, c77_1, c78_1, c79_1, c80_1, c81_1, c82_1, c83_1, c84_1, c85_1, c86_1, c87_1, c88_1, c89_1, c90_1, c91_1, c92_1, c93_1, c94_1, c95_1, c96_1, c97_1, c98_1, c99_1, c100_1, c101_1, c102_1, c34_1, c35_2, c44_3, c46_3, c47_3, c49_3, c50_2, c51_4, c54, c56, c60, c_1 ---------------------------------------- (39) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace ENCARG(cons_active(z0)) -> c4(ACTIVE(encArg(z0)), ENCARG(z0)) by ENCARG(cons_active(zeros)) -> c4(ACTIVE(zeros), ENCARG(zeros)) ENCARG(cons_active(0)) -> c4(ACTIVE(0), ENCARG(0)) ENCARG(cons_active(tt)) -> c4(ACTIVE(tt), ENCARG(tt)) ENCARG(cons_active(nil)) -> c4(ACTIVE(nil), ENCARG(nil)) ENCARG(cons_active(cons_active(z0))) -> c4(ACTIVE(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_active(cons_mark(z0))) -> c4(ACTIVE(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_active(cons_cons(z0, z1))) -> c4(ACTIVE(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_active(cons_U11(z0, z1))) -> c4(ACTIVE(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_active(cons_s(z0))) -> c4(ACTIVE(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_active(cons_length(z0))) -> c4(ACTIVE(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_active(cons_U21(z0))) -> c4(ACTIVE(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_active(cons_U31(z0, z1, z2, z3))) -> c4(ACTIVE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_active(cons_take(z0, z1))) -> c4(ACTIVE(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_active(cons_and(z0, z1))) -> c4(ACTIVE(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_active(cons_isNat(z0))) -> c4(ACTIVE(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_active(cons_isNatList(z0))) -> c4(ACTIVE(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_active(cons_isNatIList(z0))) -> c4(ACTIVE(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ---------------------------------------- (40) Obligation: Complexity Dependency Tuples Problem Rules: encArg(zeros) -> zeros encArg(0) -> 0 encArg(tt) -> tt encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_U11(z0, z1)) -> U11(encArg(z0), encArg(z1)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_length(z0)) -> length(encArg(z0)) encArg(cons_U21(z0)) -> U21(encArg(z0)) encArg(cons_U31(z0, z1, z2, z3)) -> U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_isNat(z0)) -> isNat(encArg(z0)) encArg(cons_isNatList(z0)) -> isNatList(encArg(z0)) encArg(cons_isNatIList(z0)) -> isNatIList(encArg(z0)) active(zeros) -> mark(cons(0, zeros)) active(U11(tt, z0)) -> mark(s(length(z0))) active(U21(tt)) -> mark(nil) active(U31(tt, z0, z1, z2)) -> mark(cons(z2, take(z1, z0))) active(and(tt, z0)) -> mark(z0) active(isNat(0)) -> mark(tt) active(isNat(length(z0))) -> mark(isNatList(z0)) active(isNat(s(z0))) -> mark(isNat(z0)) active(isNatIList(z0)) -> mark(isNatList(z0)) active(isNatIList(zeros)) -> mark(tt) active(isNatIList(cons(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(isNatList(nil)) -> mark(tt) active(isNatList(cons(z0, z1))) -> mark(and(isNat(z0), isNatList(z1))) active(isNatList(take(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(length(nil)) -> mark(0) active(length(cons(z0, z1))) -> mark(U11(and(isNatList(z1), isNat(z0)), z1)) active(take(0, z0)) -> mark(U21(isNatIList(z0))) active(take(s(z0), cons(z1, z2))) -> mark(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)) mark(zeros) -> active(zeros) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(0) -> active(0) mark(U11(z0, z1)) -> active(U11(mark(z0), z1)) mark(tt) -> active(tt) mark(s(z0)) -> active(s(mark(z0))) mark(length(z0)) -> active(length(mark(z0))) mark(U21(z0)) -> active(U21(mark(z0))) mark(nil) -> active(nil) mark(U31(z0, z1, z2, z3)) -> active(U31(mark(z0), z1, z2, z3)) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(isNat(z0)) -> active(isNat(z0)) mark(isNatList(z0)) -> active(isNatList(z0)) mark(isNatIList(z0)) -> active(isNatIList(z0)) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) U11(mark(z0), z1) -> U11(z0, z1) U11(z0, mark(z1)) -> U11(z0, z1) U11(active(z0), z1) -> U11(z0, z1) U11(z0, active(z1)) -> U11(z0, z1) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) length(mark(z0)) -> length(z0) length(active(z0)) -> length(z0) U21(mark(z0)) -> U21(z0) U21(active(z0)) -> U21(z0) U31(mark(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, mark(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, mark(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, mark(z3)) -> U31(z0, z1, z2, z3) U31(active(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, active(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, active(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, active(z3)) -> U31(z0, z1, z2, z3) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) isNat(mark(z0)) -> isNat(z0) isNat(active(z0)) -> isNat(z0) isNatList(mark(z0)) -> isNatList(z0) isNatList(active(z0)) -> isNatList(z0) isNatIList(mark(z0)) -> isNatIList(z0) isNatIList(active(z0)) -> isNatIList(z0) Tuples: ENCARG(cons_mark(z0)) -> c5(MARK(encArg(z0)), ENCARG(z0)) ENCARG(cons_cons(z0, z1)) -> c6(CONS(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_U11(z0, z1)) -> c7(U11'(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_s(z0)) -> c8(S(encArg(z0)), ENCARG(z0)) ENCARG(cons_length(z0)) -> c9(LENGTH(encArg(z0)), ENCARG(z0)) ENCARG(cons_U21(z0)) -> c10(U21'(encArg(z0)), ENCARG(z0)) ENCARG(cons_U31(z0, z1, z2, z3)) -> c11(U31'(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), ENCARG(z0), ENCARG(z1), ENCARG(z2), ENCARG(z3)) ENCARG(cons_take(z0, z1)) -> c12(TAKE(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_and(z0, z1)) -> c13(AND(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_isNat(z0)) -> c14(ISNAT(encArg(z0)), ENCARG(z0)) ENCARG(cons_isNatList(z0)) -> c15(ISNATLIST(encArg(z0)), ENCARG(z0)) ENCARG(cons_isNatIList(z0)) -> c16(ISNATILIST(encArg(z0)), ENCARG(z0)) ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(cons(z0, z1)) -> c53(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(mark(z0), z1)), U11'(mark(z0), z1), MARK(z0)) MARK(s(z0)) -> c57(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(mark(z0))), LENGTH(mark(z0)), MARK(z0)) MARK(U21(z0)) -> c59(ACTIVE(U21(mark(z0))), U21'(mark(z0)), MARK(z0)) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(mark(z0), z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(take(z0, z1)) -> c62(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 ENCODE_ACTIVE(z0) -> c(ACTIVE(encArg(z0))) ENCODE_MARK(z0) -> c(MARK(encArg(z0))) ENCODE_CONS(z0, z1) -> c(CONS(encArg(z0), encArg(z1))) ENCODE_U11(z0, z1) -> c(U11'(encArg(z0), encArg(z1))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_LENGTH(z0) -> c(LENGTH(encArg(z0))) ENCODE_U21(z0) -> c(U21'(encArg(z0))) ENCODE_U31(z0, z1, z2, z3) -> c(U31'(encArg(z0), encArg(z1), encArg(z2), encArg(z3))) ENCODE_TAKE(z0, z1) -> c(TAKE(encArg(z0), encArg(z1))) ENCODE_AND(z0, z1) -> c(AND(encArg(z0), encArg(z1))) ENCODE_ISNAT(z0) -> c(ISNAT(encArg(z0))) ENCODE_ISNATLIST(z0) -> c(ISNATLIST(encArg(z0))) ENCODE_ISNATILIST(z0) -> c(ISNATILIST(encArg(z0))) ENCARG(cons_active(zeros)) -> c4(ACTIVE(zeros), ENCARG(zeros)) ENCARG(cons_active(0)) -> c4(ACTIVE(0), ENCARG(0)) ENCARG(cons_active(tt)) -> c4(ACTIVE(tt), ENCARG(tt)) ENCARG(cons_active(nil)) -> c4(ACTIVE(nil), ENCARG(nil)) ENCARG(cons_active(cons_active(z0))) -> c4(ACTIVE(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_active(cons_mark(z0))) -> c4(ACTIVE(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_active(cons_cons(z0, z1))) -> c4(ACTIVE(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_active(cons_U11(z0, z1))) -> c4(ACTIVE(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_active(cons_s(z0))) -> c4(ACTIVE(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_active(cons_length(z0))) -> c4(ACTIVE(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_active(cons_U21(z0))) -> c4(ACTIVE(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_active(cons_U31(z0, z1, z2, z3))) -> c4(ACTIVE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_active(cons_take(z0, z1))) -> c4(ACTIVE(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_active(cons_and(z0, z1))) -> c4(ACTIVE(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_active(cons_isNat(z0))) -> c4(ACTIVE(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_active(cons_isNatList(z0))) -> c4(ACTIVE(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_active(cons_isNatIList(z0))) -> c4(ACTIVE(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) S tuples: ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(cons(z0, z1)) -> c53(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(mark(z0), z1)), U11'(mark(z0), z1), MARK(z0)) MARK(s(z0)) -> c57(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(mark(z0))), LENGTH(mark(z0)), MARK(z0)) MARK(U21(z0)) -> c59(ACTIVE(U21(mark(z0))), U21'(mark(z0)), MARK(z0)) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(mark(z0), z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(take(z0, z1)) -> c62(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 K tuples:none Defined Rule Symbols: encArg_1, active_1, mark_1, cons_2, U11_2, s_1, length_1, U21_1, U31_4, take_2, and_2, isNat_1, isNatList_1, isNatIList_1 Defined Pair Symbols: ENCARG_1, ACTIVE_1, MARK_1, CONS_2, U11'_2, S_1, LENGTH_1, U21'_1, U31'_4, TAKE_2, AND_2, ISNAT_1, ISNATLIST_1, ISNATILIST_1, ENCODE_ACTIVE_1, ENCODE_MARK_1, ENCODE_CONS_2, ENCODE_U11_2, ENCODE_S_1, ENCODE_LENGTH_1, ENCODE_U21_1, ENCODE_U31_4, ENCODE_TAKE_2, ENCODE_AND_2, ENCODE_ISNAT_1, ENCODE_ISNATLIST_1, ENCODE_ISNATILIST_1 Compound Symbols: c5_2, c6_3, c7_3, c8_2, c9_2, c10_2, c11_5, c12_3, c13_3, c14_2, c15_2, c16_2, c36_1, c37_3, c38_1, c39_1, c40_2, c41_2, c42_2, c43_1, c45_1, c48_1, c52_1, c53_3, c55_3, c57_3, c58_3, c59_3, c61_3, c62_4, c63_3, c64_2, c65_2, c66_2, c67_1, c68_1, c69_1, c70_1, c71_1, c72_1, c73_1, c74_1, c75_1, c76_1, c77_1, c78_1, c79_1, c80_1, c81_1, c82_1, c83_1, c84_1, c85_1, c86_1, c87_1, c88_1, c89_1, c90_1, c91_1, c92_1, c93_1, c94_1, c95_1, c96_1, c97_1, c98_1, c99_1, c100_1, c101_1, c102_1, c34_1, c35_2, c44_3, c46_3, c47_3, c49_3, c50_2, c51_4, c54, c56, c60, c_1, c4_2 ---------------------------------------- (41) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 3 trailing nodes: ENCARG(cons_active(nil)) -> c4(ACTIVE(nil), ENCARG(nil)) ENCARG(cons_active(tt)) -> c4(ACTIVE(tt), ENCARG(tt)) ENCARG(cons_active(0)) -> c4(ACTIVE(0), ENCARG(0)) ---------------------------------------- (42) Obligation: Complexity Dependency Tuples Problem Rules: encArg(zeros) -> zeros encArg(0) -> 0 encArg(tt) -> tt encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_U11(z0, z1)) -> U11(encArg(z0), encArg(z1)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_length(z0)) -> length(encArg(z0)) encArg(cons_U21(z0)) -> U21(encArg(z0)) encArg(cons_U31(z0, z1, z2, z3)) -> U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_isNat(z0)) -> isNat(encArg(z0)) encArg(cons_isNatList(z0)) -> isNatList(encArg(z0)) encArg(cons_isNatIList(z0)) -> isNatIList(encArg(z0)) active(zeros) -> mark(cons(0, zeros)) active(U11(tt, z0)) -> mark(s(length(z0))) active(U21(tt)) -> mark(nil) active(U31(tt, z0, z1, z2)) -> mark(cons(z2, take(z1, z0))) active(and(tt, z0)) -> mark(z0) active(isNat(0)) -> mark(tt) active(isNat(length(z0))) -> mark(isNatList(z0)) active(isNat(s(z0))) -> mark(isNat(z0)) active(isNatIList(z0)) -> mark(isNatList(z0)) active(isNatIList(zeros)) -> mark(tt) active(isNatIList(cons(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(isNatList(nil)) -> mark(tt) active(isNatList(cons(z0, z1))) -> mark(and(isNat(z0), isNatList(z1))) active(isNatList(take(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(length(nil)) -> mark(0) active(length(cons(z0, z1))) -> mark(U11(and(isNatList(z1), isNat(z0)), z1)) active(take(0, z0)) -> mark(U21(isNatIList(z0))) active(take(s(z0), cons(z1, z2))) -> mark(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)) mark(zeros) -> active(zeros) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(0) -> active(0) mark(U11(z0, z1)) -> active(U11(mark(z0), z1)) mark(tt) -> active(tt) mark(s(z0)) -> active(s(mark(z0))) mark(length(z0)) -> active(length(mark(z0))) mark(U21(z0)) -> active(U21(mark(z0))) mark(nil) -> active(nil) mark(U31(z0, z1, z2, z3)) -> active(U31(mark(z0), z1, z2, z3)) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(isNat(z0)) -> active(isNat(z0)) mark(isNatList(z0)) -> active(isNatList(z0)) mark(isNatIList(z0)) -> active(isNatIList(z0)) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) U11(mark(z0), z1) -> U11(z0, z1) U11(z0, mark(z1)) -> U11(z0, z1) U11(active(z0), z1) -> U11(z0, z1) U11(z0, active(z1)) -> U11(z0, z1) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) length(mark(z0)) -> length(z0) length(active(z0)) -> length(z0) U21(mark(z0)) -> U21(z0) U21(active(z0)) -> U21(z0) U31(mark(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, mark(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, mark(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, mark(z3)) -> U31(z0, z1, z2, z3) U31(active(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, active(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, active(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, active(z3)) -> U31(z0, z1, z2, z3) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) isNat(mark(z0)) -> isNat(z0) isNat(active(z0)) -> isNat(z0) isNatList(mark(z0)) -> isNatList(z0) isNatList(active(z0)) -> isNatList(z0) isNatIList(mark(z0)) -> isNatIList(z0) isNatIList(active(z0)) -> isNatIList(z0) Tuples: ENCARG(cons_mark(z0)) -> c5(MARK(encArg(z0)), ENCARG(z0)) ENCARG(cons_cons(z0, z1)) -> c6(CONS(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_U11(z0, z1)) -> c7(U11'(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_s(z0)) -> c8(S(encArg(z0)), ENCARG(z0)) ENCARG(cons_length(z0)) -> c9(LENGTH(encArg(z0)), ENCARG(z0)) ENCARG(cons_U21(z0)) -> c10(U21'(encArg(z0)), ENCARG(z0)) ENCARG(cons_U31(z0, z1, z2, z3)) -> c11(U31'(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), ENCARG(z0), ENCARG(z1), ENCARG(z2), ENCARG(z3)) ENCARG(cons_take(z0, z1)) -> c12(TAKE(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_and(z0, z1)) -> c13(AND(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_isNat(z0)) -> c14(ISNAT(encArg(z0)), ENCARG(z0)) ENCARG(cons_isNatList(z0)) -> c15(ISNATLIST(encArg(z0)), ENCARG(z0)) ENCARG(cons_isNatIList(z0)) -> c16(ISNATILIST(encArg(z0)), ENCARG(z0)) ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(cons(z0, z1)) -> c53(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(mark(z0), z1)), U11'(mark(z0), z1), MARK(z0)) MARK(s(z0)) -> c57(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(mark(z0))), LENGTH(mark(z0)), MARK(z0)) MARK(U21(z0)) -> c59(ACTIVE(U21(mark(z0))), U21'(mark(z0)), MARK(z0)) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(mark(z0), z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(take(z0, z1)) -> c62(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 ENCODE_ACTIVE(z0) -> c(ACTIVE(encArg(z0))) ENCODE_MARK(z0) -> c(MARK(encArg(z0))) ENCODE_CONS(z0, z1) -> c(CONS(encArg(z0), encArg(z1))) ENCODE_U11(z0, z1) -> c(U11'(encArg(z0), encArg(z1))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_LENGTH(z0) -> c(LENGTH(encArg(z0))) ENCODE_U21(z0) -> c(U21'(encArg(z0))) ENCODE_U31(z0, z1, z2, z3) -> c(U31'(encArg(z0), encArg(z1), encArg(z2), encArg(z3))) ENCODE_TAKE(z0, z1) -> c(TAKE(encArg(z0), encArg(z1))) ENCODE_AND(z0, z1) -> c(AND(encArg(z0), encArg(z1))) ENCODE_ISNAT(z0) -> c(ISNAT(encArg(z0))) ENCODE_ISNATLIST(z0) -> c(ISNATLIST(encArg(z0))) ENCODE_ISNATILIST(z0) -> c(ISNATILIST(encArg(z0))) ENCARG(cons_active(zeros)) -> c4(ACTIVE(zeros), ENCARG(zeros)) ENCARG(cons_active(cons_active(z0))) -> c4(ACTIVE(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_active(cons_mark(z0))) -> c4(ACTIVE(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_active(cons_cons(z0, z1))) -> c4(ACTIVE(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_active(cons_U11(z0, z1))) -> c4(ACTIVE(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_active(cons_s(z0))) -> c4(ACTIVE(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_active(cons_length(z0))) -> c4(ACTIVE(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_active(cons_U21(z0))) -> c4(ACTIVE(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_active(cons_U31(z0, z1, z2, z3))) -> c4(ACTIVE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_active(cons_take(z0, z1))) -> c4(ACTIVE(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_active(cons_and(z0, z1))) -> c4(ACTIVE(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_active(cons_isNat(z0))) -> c4(ACTIVE(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_active(cons_isNatList(z0))) -> c4(ACTIVE(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_active(cons_isNatIList(z0))) -> c4(ACTIVE(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) S tuples: ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(cons(z0, z1)) -> c53(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(mark(z0), z1)), U11'(mark(z0), z1), MARK(z0)) MARK(s(z0)) -> c57(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(mark(z0))), LENGTH(mark(z0)), MARK(z0)) MARK(U21(z0)) -> c59(ACTIVE(U21(mark(z0))), U21'(mark(z0)), MARK(z0)) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(mark(z0), z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(take(z0, z1)) -> c62(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 K tuples:none Defined Rule Symbols: encArg_1, active_1, mark_1, cons_2, U11_2, s_1, length_1, U21_1, U31_4, take_2, and_2, isNat_1, isNatList_1, isNatIList_1 Defined Pair Symbols: ENCARG_1, ACTIVE_1, MARK_1, CONS_2, U11'_2, S_1, LENGTH_1, U21'_1, U31'_4, TAKE_2, AND_2, ISNAT_1, ISNATLIST_1, ISNATILIST_1, ENCODE_ACTIVE_1, ENCODE_MARK_1, ENCODE_CONS_2, ENCODE_U11_2, ENCODE_S_1, ENCODE_LENGTH_1, ENCODE_U21_1, ENCODE_U31_4, ENCODE_TAKE_2, ENCODE_AND_2, ENCODE_ISNAT_1, ENCODE_ISNATLIST_1, ENCODE_ISNATILIST_1 Compound Symbols: c5_2, c6_3, c7_3, c8_2, c9_2, c10_2, c11_5, c12_3, c13_3, c14_2, c15_2, c16_2, c36_1, c37_3, c38_1, c39_1, c40_2, c41_2, c42_2, c43_1, c45_1, c48_1, c52_1, c53_3, c55_3, c57_3, c58_3, c59_3, c61_3, c62_4, c63_3, c64_2, c65_2, c66_2, c67_1, c68_1, c69_1, c70_1, c71_1, c72_1, c73_1, c74_1, c75_1, c76_1, c77_1, c78_1, c79_1, c80_1, c81_1, c82_1, c83_1, c84_1, c85_1, c86_1, c87_1, c88_1, c89_1, c90_1, c91_1, c92_1, c93_1, c94_1, c95_1, c96_1, c97_1, c98_1, c99_1, c100_1, c101_1, c102_1, c34_1, c35_2, c44_3, c46_3, c47_3, c49_3, c50_2, c51_4, c54, c56, c60, c_1, c4_2 ---------------------------------------- (43) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 1 trailing tuple parts ---------------------------------------- (44) Obligation: Complexity Dependency Tuples Problem Rules: encArg(zeros) -> zeros encArg(0) -> 0 encArg(tt) -> tt encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_U11(z0, z1)) -> U11(encArg(z0), encArg(z1)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_length(z0)) -> length(encArg(z0)) encArg(cons_U21(z0)) -> U21(encArg(z0)) encArg(cons_U31(z0, z1, z2, z3)) -> U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_isNat(z0)) -> isNat(encArg(z0)) encArg(cons_isNatList(z0)) -> isNatList(encArg(z0)) encArg(cons_isNatIList(z0)) -> isNatIList(encArg(z0)) active(zeros) -> mark(cons(0, zeros)) active(U11(tt, z0)) -> mark(s(length(z0))) active(U21(tt)) -> mark(nil) active(U31(tt, z0, z1, z2)) -> mark(cons(z2, take(z1, z0))) active(and(tt, z0)) -> mark(z0) active(isNat(0)) -> mark(tt) active(isNat(length(z0))) -> mark(isNatList(z0)) active(isNat(s(z0))) -> mark(isNat(z0)) active(isNatIList(z0)) -> mark(isNatList(z0)) active(isNatIList(zeros)) -> mark(tt) active(isNatIList(cons(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(isNatList(nil)) -> mark(tt) active(isNatList(cons(z0, z1))) -> mark(and(isNat(z0), isNatList(z1))) active(isNatList(take(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(length(nil)) -> mark(0) active(length(cons(z0, z1))) -> mark(U11(and(isNatList(z1), isNat(z0)), z1)) active(take(0, z0)) -> mark(U21(isNatIList(z0))) active(take(s(z0), cons(z1, z2))) -> mark(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)) mark(zeros) -> active(zeros) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(0) -> active(0) mark(U11(z0, z1)) -> active(U11(mark(z0), z1)) mark(tt) -> active(tt) mark(s(z0)) -> active(s(mark(z0))) mark(length(z0)) -> active(length(mark(z0))) mark(U21(z0)) -> active(U21(mark(z0))) mark(nil) -> active(nil) mark(U31(z0, z1, z2, z3)) -> active(U31(mark(z0), z1, z2, z3)) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(isNat(z0)) -> active(isNat(z0)) mark(isNatList(z0)) -> active(isNatList(z0)) mark(isNatIList(z0)) -> active(isNatIList(z0)) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) U11(mark(z0), z1) -> U11(z0, z1) U11(z0, mark(z1)) -> U11(z0, z1) U11(active(z0), z1) -> U11(z0, z1) U11(z0, active(z1)) -> U11(z0, z1) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) length(mark(z0)) -> length(z0) length(active(z0)) -> length(z0) U21(mark(z0)) -> U21(z0) U21(active(z0)) -> U21(z0) U31(mark(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, mark(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, mark(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, mark(z3)) -> U31(z0, z1, z2, z3) U31(active(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, active(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, active(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, active(z3)) -> U31(z0, z1, z2, z3) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) isNat(mark(z0)) -> isNat(z0) isNat(active(z0)) -> isNat(z0) isNatList(mark(z0)) -> isNatList(z0) isNatList(active(z0)) -> isNatList(z0) isNatIList(mark(z0)) -> isNatIList(z0) isNatIList(active(z0)) -> isNatIList(z0) Tuples: ENCARG(cons_mark(z0)) -> c5(MARK(encArg(z0)), ENCARG(z0)) ENCARG(cons_cons(z0, z1)) -> c6(CONS(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_U11(z0, z1)) -> c7(U11'(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_s(z0)) -> c8(S(encArg(z0)), ENCARG(z0)) ENCARG(cons_length(z0)) -> c9(LENGTH(encArg(z0)), ENCARG(z0)) ENCARG(cons_U21(z0)) -> c10(U21'(encArg(z0)), ENCARG(z0)) ENCARG(cons_U31(z0, z1, z2, z3)) -> c11(U31'(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), ENCARG(z0), ENCARG(z1), ENCARG(z2), ENCARG(z3)) ENCARG(cons_take(z0, z1)) -> c12(TAKE(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_and(z0, z1)) -> c13(AND(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_isNat(z0)) -> c14(ISNAT(encArg(z0)), ENCARG(z0)) ENCARG(cons_isNatList(z0)) -> c15(ISNATLIST(encArg(z0)), ENCARG(z0)) ENCARG(cons_isNatIList(z0)) -> c16(ISNATILIST(encArg(z0)), ENCARG(z0)) ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(cons(z0, z1)) -> c53(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(mark(z0), z1)), U11'(mark(z0), z1), MARK(z0)) MARK(s(z0)) -> c57(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(mark(z0))), LENGTH(mark(z0)), MARK(z0)) MARK(U21(z0)) -> c59(ACTIVE(U21(mark(z0))), U21'(mark(z0)), MARK(z0)) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(mark(z0), z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(take(z0, z1)) -> c62(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 ENCODE_ACTIVE(z0) -> c(ACTIVE(encArg(z0))) ENCODE_MARK(z0) -> c(MARK(encArg(z0))) ENCODE_CONS(z0, z1) -> c(CONS(encArg(z0), encArg(z1))) ENCODE_U11(z0, z1) -> c(U11'(encArg(z0), encArg(z1))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_LENGTH(z0) -> c(LENGTH(encArg(z0))) ENCODE_U21(z0) -> c(U21'(encArg(z0))) ENCODE_U31(z0, z1, z2, z3) -> c(U31'(encArg(z0), encArg(z1), encArg(z2), encArg(z3))) ENCODE_TAKE(z0, z1) -> c(TAKE(encArg(z0), encArg(z1))) ENCODE_AND(z0, z1) -> c(AND(encArg(z0), encArg(z1))) ENCODE_ISNAT(z0) -> c(ISNAT(encArg(z0))) ENCODE_ISNATLIST(z0) -> c(ISNATLIST(encArg(z0))) ENCODE_ISNATILIST(z0) -> c(ISNATILIST(encArg(z0))) ENCARG(cons_active(cons_active(z0))) -> c4(ACTIVE(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_active(cons_mark(z0))) -> c4(ACTIVE(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_active(cons_cons(z0, z1))) -> c4(ACTIVE(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_active(cons_U11(z0, z1))) -> c4(ACTIVE(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_active(cons_s(z0))) -> c4(ACTIVE(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_active(cons_length(z0))) -> c4(ACTIVE(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_active(cons_U21(z0))) -> c4(ACTIVE(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_active(cons_U31(z0, z1, z2, z3))) -> c4(ACTIVE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_active(cons_take(z0, z1))) -> c4(ACTIVE(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_active(cons_and(z0, z1))) -> c4(ACTIVE(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_active(cons_isNat(z0))) -> c4(ACTIVE(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_active(cons_isNatList(z0))) -> c4(ACTIVE(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_active(cons_isNatIList(z0))) -> c4(ACTIVE(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_active(zeros)) -> c4(ACTIVE(zeros)) S tuples: ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(cons(z0, z1)) -> c53(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(mark(z0), z1)), U11'(mark(z0), z1), MARK(z0)) MARK(s(z0)) -> c57(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(mark(z0))), LENGTH(mark(z0)), MARK(z0)) MARK(U21(z0)) -> c59(ACTIVE(U21(mark(z0))), U21'(mark(z0)), MARK(z0)) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(mark(z0), z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(take(z0, z1)) -> c62(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 K tuples:none Defined Rule Symbols: encArg_1, active_1, mark_1, cons_2, U11_2, s_1, length_1, U21_1, U31_4, take_2, and_2, isNat_1, isNatList_1, isNatIList_1 Defined Pair Symbols: ENCARG_1, ACTIVE_1, MARK_1, CONS_2, U11'_2, S_1, LENGTH_1, U21'_1, U31'_4, TAKE_2, AND_2, ISNAT_1, ISNATLIST_1, ISNATILIST_1, ENCODE_ACTIVE_1, ENCODE_MARK_1, ENCODE_CONS_2, ENCODE_U11_2, ENCODE_S_1, ENCODE_LENGTH_1, ENCODE_U21_1, ENCODE_U31_4, ENCODE_TAKE_2, ENCODE_AND_2, ENCODE_ISNAT_1, ENCODE_ISNATLIST_1, ENCODE_ISNATILIST_1 Compound Symbols: c5_2, c6_3, c7_3, c8_2, c9_2, c10_2, c11_5, c12_3, c13_3, c14_2, c15_2, c16_2, c36_1, c37_3, c38_1, c39_1, c40_2, c41_2, c42_2, c43_1, c45_1, c48_1, c52_1, c53_3, c55_3, c57_3, c58_3, c59_3, c61_3, c62_4, c63_3, c64_2, c65_2, c66_2, c67_1, c68_1, c69_1, c70_1, c71_1, c72_1, c73_1, c74_1, c75_1, c76_1, c77_1, c78_1, c79_1, c80_1, c81_1, c82_1, c83_1, c84_1, c85_1, c86_1, c87_1, c88_1, c89_1, c90_1, c91_1, c92_1, c93_1, c94_1, c95_1, c96_1, c97_1, c98_1, c99_1, c100_1, c101_1, c102_1, c34_1, c35_2, c44_3, c46_3, c47_3, c49_3, c50_2, c51_4, c54, c56, c60, c_1, c4_2, c4_1 ---------------------------------------- (45) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace ENCARG(cons_mark(z0)) -> c5(MARK(encArg(z0)), ENCARG(z0)) by ENCARG(cons_mark(zeros)) -> c5(MARK(zeros), ENCARG(zeros)) ENCARG(cons_mark(0)) -> c5(MARK(0), ENCARG(0)) ENCARG(cons_mark(tt)) -> c5(MARK(tt), ENCARG(tt)) ENCARG(cons_mark(nil)) -> c5(MARK(nil), ENCARG(nil)) ENCARG(cons_mark(cons_active(z0))) -> c5(MARK(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_mark(cons_mark(z0))) -> c5(MARK(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_mark(cons_cons(z0, z1))) -> c5(MARK(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_mark(cons_U11(z0, z1))) -> c5(MARK(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_mark(cons_s(z0))) -> c5(MARK(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_mark(cons_length(z0))) -> c5(MARK(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_mark(cons_U21(z0))) -> c5(MARK(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_mark(cons_U31(z0, z1, z2, z3))) -> c5(MARK(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_mark(cons_take(z0, z1))) -> c5(MARK(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(cons_and(z0, z1))) -> c5(MARK(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_mark(cons_isNat(z0))) -> c5(MARK(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_mark(cons_isNatList(z0))) -> c5(MARK(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_mark(cons_isNatIList(z0))) -> c5(MARK(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ---------------------------------------- (46) Obligation: Complexity Dependency Tuples Problem Rules: encArg(zeros) -> zeros encArg(0) -> 0 encArg(tt) -> tt encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_U11(z0, z1)) -> U11(encArg(z0), encArg(z1)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_length(z0)) -> length(encArg(z0)) encArg(cons_U21(z0)) -> U21(encArg(z0)) encArg(cons_U31(z0, z1, z2, z3)) -> U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_isNat(z0)) -> isNat(encArg(z0)) encArg(cons_isNatList(z0)) -> isNatList(encArg(z0)) encArg(cons_isNatIList(z0)) -> isNatIList(encArg(z0)) active(zeros) -> mark(cons(0, zeros)) active(U11(tt, z0)) -> mark(s(length(z0))) active(U21(tt)) -> mark(nil) active(U31(tt, z0, z1, z2)) -> mark(cons(z2, take(z1, z0))) active(and(tt, z0)) -> mark(z0) active(isNat(0)) -> mark(tt) active(isNat(length(z0))) -> mark(isNatList(z0)) active(isNat(s(z0))) -> mark(isNat(z0)) active(isNatIList(z0)) -> mark(isNatList(z0)) active(isNatIList(zeros)) -> mark(tt) active(isNatIList(cons(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(isNatList(nil)) -> mark(tt) active(isNatList(cons(z0, z1))) -> mark(and(isNat(z0), isNatList(z1))) active(isNatList(take(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(length(nil)) -> mark(0) active(length(cons(z0, z1))) -> mark(U11(and(isNatList(z1), isNat(z0)), z1)) active(take(0, z0)) -> mark(U21(isNatIList(z0))) active(take(s(z0), cons(z1, z2))) -> mark(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)) mark(zeros) -> active(zeros) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(0) -> active(0) mark(U11(z0, z1)) -> active(U11(mark(z0), z1)) mark(tt) -> active(tt) mark(s(z0)) -> active(s(mark(z0))) mark(length(z0)) -> active(length(mark(z0))) mark(U21(z0)) -> active(U21(mark(z0))) mark(nil) -> active(nil) mark(U31(z0, z1, z2, z3)) -> active(U31(mark(z0), z1, z2, z3)) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(isNat(z0)) -> active(isNat(z0)) mark(isNatList(z0)) -> active(isNatList(z0)) mark(isNatIList(z0)) -> active(isNatIList(z0)) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) U11(mark(z0), z1) -> U11(z0, z1) U11(z0, mark(z1)) -> U11(z0, z1) U11(active(z0), z1) -> U11(z0, z1) U11(z0, active(z1)) -> U11(z0, z1) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) length(mark(z0)) -> length(z0) length(active(z0)) -> length(z0) U21(mark(z0)) -> U21(z0) U21(active(z0)) -> U21(z0) U31(mark(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, mark(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, mark(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, mark(z3)) -> U31(z0, z1, z2, z3) U31(active(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, active(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, active(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, active(z3)) -> U31(z0, z1, z2, z3) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) isNat(mark(z0)) -> isNat(z0) isNat(active(z0)) -> isNat(z0) isNatList(mark(z0)) -> isNatList(z0) isNatList(active(z0)) -> isNatList(z0) isNatIList(mark(z0)) -> isNatIList(z0) isNatIList(active(z0)) -> isNatIList(z0) Tuples: ENCARG(cons_cons(z0, z1)) -> c6(CONS(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_U11(z0, z1)) -> c7(U11'(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_s(z0)) -> c8(S(encArg(z0)), ENCARG(z0)) ENCARG(cons_length(z0)) -> c9(LENGTH(encArg(z0)), ENCARG(z0)) ENCARG(cons_U21(z0)) -> c10(U21'(encArg(z0)), ENCARG(z0)) ENCARG(cons_U31(z0, z1, z2, z3)) -> c11(U31'(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), ENCARG(z0), ENCARG(z1), ENCARG(z2), ENCARG(z3)) ENCARG(cons_take(z0, z1)) -> c12(TAKE(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_and(z0, z1)) -> c13(AND(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_isNat(z0)) -> c14(ISNAT(encArg(z0)), ENCARG(z0)) ENCARG(cons_isNatList(z0)) -> c15(ISNATLIST(encArg(z0)), ENCARG(z0)) ENCARG(cons_isNatIList(z0)) -> c16(ISNATILIST(encArg(z0)), ENCARG(z0)) ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(cons(z0, z1)) -> c53(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(mark(z0), z1)), U11'(mark(z0), z1), MARK(z0)) MARK(s(z0)) -> c57(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(mark(z0))), LENGTH(mark(z0)), MARK(z0)) MARK(U21(z0)) -> c59(ACTIVE(U21(mark(z0))), U21'(mark(z0)), MARK(z0)) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(mark(z0), z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(take(z0, z1)) -> c62(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 ENCODE_ACTIVE(z0) -> c(ACTIVE(encArg(z0))) ENCODE_MARK(z0) -> c(MARK(encArg(z0))) ENCODE_CONS(z0, z1) -> c(CONS(encArg(z0), encArg(z1))) ENCODE_U11(z0, z1) -> c(U11'(encArg(z0), encArg(z1))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_LENGTH(z0) -> c(LENGTH(encArg(z0))) ENCODE_U21(z0) -> c(U21'(encArg(z0))) ENCODE_U31(z0, z1, z2, z3) -> c(U31'(encArg(z0), encArg(z1), encArg(z2), encArg(z3))) ENCODE_TAKE(z0, z1) -> c(TAKE(encArg(z0), encArg(z1))) ENCODE_AND(z0, z1) -> c(AND(encArg(z0), encArg(z1))) ENCODE_ISNAT(z0) -> c(ISNAT(encArg(z0))) ENCODE_ISNATLIST(z0) -> c(ISNATLIST(encArg(z0))) ENCODE_ISNATILIST(z0) -> c(ISNATILIST(encArg(z0))) ENCARG(cons_active(cons_active(z0))) -> c4(ACTIVE(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_active(cons_mark(z0))) -> c4(ACTIVE(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_active(cons_cons(z0, z1))) -> c4(ACTIVE(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_active(cons_U11(z0, z1))) -> c4(ACTIVE(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_active(cons_s(z0))) -> c4(ACTIVE(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_active(cons_length(z0))) -> c4(ACTIVE(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_active(cons_U21(z0))) -> c4(ACTIVE(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_active(cons_U31(z0, z1, z2, z3))) -> c4(ACTIVE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_active(cons_take(z0, z1))) -> c4(ACTIVE(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_active(cons_and(z0, z1))) -> c4(ACTIVE(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_active(cons_isNat(z0))) -> c4(ACTIVE(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_active(cons_isNatList(z0))) -> c4(ACTIVE(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_active(cons_isNatIList(z0))) -> c4(ACTIVE(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_active(zeros)) -> c4(ACTIVE(zeros)) ENCARG(cons_mark(zeros)) -> c5(MARK(zeros), ENCARG(zeros)) ENCARG(cons_mark(0)) -> c5(MARK(0), ENCARG(0)) ENCARG(cons_mark(tt)) -> c5(MARK(tt), ENCARG(tt)) ENCARG(cons_mark(nil)) -> c5(MARK(nil), ENCARG(nil)) ENCARG(cons_mark(cons_active(z0))) -> c5(MARK(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_mark(cons_mark(z0))) -> c5(MARK(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_mark(cons_cons(z0, z1))) -> c5(MARK(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_mark(cons_U11(z0, z1))) -> c5(MARK(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_mark(cons_s(z0))) -> c5(MARK(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_mark(cons_length(z0))) -> c5(MARK(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_mark(cons_U21(z0))) -> c5(MARK(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_mark(cons_U31(z0, z1, z2, z3))) -> c5(MARK(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_mark(cons_take(z0, z1))) -> c5(MARK(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(cons_and(z0, z1))) -> c5(MARK(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_mark(cons_isNat(z0))) -> c5(MARK(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_mark(cons_isNatList(z0))) -> c5(MARK(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_mark(cons_isNatIList(z0))) -> c5(MARK(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) S tuples: ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(cons(z0, z1)) -> c53(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(mark(z0), z1)), U11'(mark(z0), z1), MARK(z0)) MARK(s(z0)) -> c57(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(mark(z0))), LENGTH(mark(z0)), MARK(z0)) MARK(U21(z0)) -> c59(ACTIVE(U21(mark(z0))), U21'(mark(z0)), MARK(z0)) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(mark(z0), z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(take(z0, z1)) -> c62(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 K tuples:none Defined Rule Symbols: encArg_1, active_1, mark_1, cons_2, U11_2, s_1, length_1, U21_1, U31_4, take_2, and_2, isNat_1, isNatList_1, isNatIList_1 Defined Pair Symbols: ENCARG_1, ACTIVE_1, MARK_1, CONS_2, U11'_2, S_1, LENGTH_1, U21'_1, U31'_4, TAKE_2, AND_2, ISNAT_1, ISNATLIST_1, ISNATILIST_1, ENCODE_ACTIVE_1, ENCODE_MARK_1, ENCODE_CONS_2, ENCODE_U11_2, ENCODE_S_1, ENCODE_LENGTH_1, ENCODE_U21_1, ENCODE_U31_4, ENCODE_TAKE_2, ENCODE_AND_2, ENCODE_ISNAT_1, ENCODE_ISNATLIST_1, ENCODE_ISNATILIST_1 Compound Symbols: c6_3, c7_3, c8_2, c9_2, c10_2, c11_5, c12_3, c13_3, c14_2, c15_2, c16_2, c36_1, c37_3, c38_1, c39_1, c40_2, c41_2, c42_2, c43_1, c45_1, c48_1, c52_1, c53_3, c55_3, c57_3, c58_3, c59_3, c61_3, c62_4, c63_3, c64_2, c65_2, c66_2, c67_1, c68_1, c69_1, c70_1, c71_1, c72_1, c73_1, c74_1, c75_1, c76_1, c77_1, c78_1, c79_1, c80_1, c81_1, c82_1, c83_1, c84_1, c85_1, c86_1, c87_1, c88_1, c89_1, c90_1, c91_1, c92_1, c93_1, c94_1, c95_1, c96_1, c97_1, c98_1, c99_1, c100_1, c101_1, c102_1, c34_1, c35_2, c44_3, c46_3, c47_3, c49_3, c50_2, c51_4, c54, c56, c60, c_1, c4_2, c4_1, c5_2 ---------------------------------------- (47) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 4 trailing tuple parts ---------------------------------------- (48) Obligation: Complexity Dependency Tuples Problem Rules: encArg(zeros) -> zeros encArg(0) -> 0 encArg(tt) -> tt encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_U11(z0, z1)) -> U11(encArg(z0), encArg(z1)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_length(z0)) -> length(encArg(z0)) encArg(cons_U21(z0)) -> U21(encArg(z0)) encArg(cons_U31(z0, z1, z2, z3)) -> U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_isNat(z0)) -> isNat(encArg(z0)) encArg(cons_isNatList(z0)) -> isNatList(encArg(z0)) encArg(cons_isNatIList(z0)) -> isNatIList(encArg(z0)) active(zeros) -> mark(cons(0, zeros)) active(U11(tt, z0)) -> mark(s(length(z0))) active(U21(tt)) -> mark(nil) active(U31(tt, z0, z1, z2)) -> mark(cons(z2, take(z1, z0))) active(and(tt, z0)) -> mark(z0) active(isNat(0)) -> mark(tt) active(isNat(length(z0))) -> mark(isNatList(z0)) active(isNat(s(z0))) -> mark(isNat(z0)) active(isNatIList(z0)) -> mark(isNatList(z0)) active(isNatIList(zeros)) -> mark(tt) active(isNatIList(cons(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(isNatList(nil)) -> mark(tt) active(isNatList(cons(z0, z1))) -> mark(and(isNat(z0), isNatList(z1))) active(isNatList(take(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(length(nil)) -> mark(0) active(length(cons(z0, z1))) -> mark(U11(and(isNatList(z1), isNat(z0)), z1)) active(take(0, z0)) -> mark(U21(isNatIList(z0))) active(take(s(z0), cons(z1, z2))) -> mark(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)) mark(zeros) -> active(zeros) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(0) -> active(0) mark(U11(z0, z1)) -> active(U11(mark(z0), z1)) mark(tt) -> active(tt) mark(s(z0)) -> active(s(mark(z0))) mark(length(z0)) -> active(length(mark(z0))) mark(U21(z0)) -> active(U21(mark(z0))) mark(nil) -> active(nil) mark(U31(z0, z1, z2, z3)) -> active(U31(mark(z0), z1, z2, z3)) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(isNat(z0)) -> active(isNat(z0)) mark(isNatList(z0)) -> active(isNatList(z0)) mark(isNatIList(z0)) -> active(isNatIList(z0)) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) U11(mark(z0), z1) -> U11(z0, z1) U11(z0, mark(z1)) -> U11(z0, z1) U11(active(z0), z1) -> U11(z0, z1) U11(z0, active(z1)) -> U11(z0, z1) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) length(mark(z0)) -> length(z0) length(active(z0)) -> length(z0) U21(mark(z0)) -> U21(z0) U21(active(z0)) -> U21(z0) U31(mark(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, mark(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, mark(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, mark(z3)) -> U31(z0, z1, z2, z3) U31(active(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, active(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, active(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, active(z3)) -> U31(z0, z1, z2, z3) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) isNat(mark(z0)) -> isNat(z0) isNat(active(z0)) -> isNat(z0) isNatList(mark(z0)) -> isNatList(z0) isNatList(active(z0)) -> isNatList(z0) isNatIList(mark(z0)) -> isNatIList(z0) isNatIList(active(z0)) -> isNatIList(z0) Tuples: ENCARG(cons_cons(z0, z1)) -> c6(CONS(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_U11(z0, z1)) -> c7(U11'(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_s(z0)) -> c8(S(encArg(z0)), ENCARG(z0)) ENCARG(cons_length(z0)) -> c9(LENGTH(encArg(z0)), ENCARG(z0)) ENCARG(cons_U21(z0)) -> c10(U21'(encArg(z0)), ENCARG(z0)) ENCARG(cons_U31(z0, z1, z2, z3)) -> c11(U31'(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), ENCARG(z0), ENCARG(z1), ENCARG(z2), ENCARG(z3)) ENCARG(cons_take(z0, z1)) -> c12(TAKE(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_and(z0, z1)) -> c13(AND(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_isNat(z0)) -> c14(ISNAT(encArg(z0)), ENCARG(z0)) ENCARG(cons_isNatList(z0)) -> c15(ISNATLIST(encArg(z0)), ENCARG(z0)) ENCARG(cons_isNatIList(z0)) -> c16(ISNATILIST(encArg(z0)), ENCARG(z0)) ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(cons(z0, z1)) -> c53(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(mark(z0), z1)), U11'(mark(z0), z1), MARK(z0)) MARK(s(z0)) -> c57(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(mark(z0))), LENGTH(mark(z0)), MARK(z0)) MARK(U21(z0)) -> c59(ACTIVE(U21(mark(z0))), U21'(mark(z0)), MARK(z0)) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(mark(z0), z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(take(z0, z1)) -> c62(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 ENCODE_ACTIVE(z0) -> c(ACTIVE(encArg(z0))) ENCODE_MARK(z0) -> c(MARK(encArg(z0))) ENCODE_CONS(z0, z1) -> c(CONS(encArg(z0), encArg(z1))) ENCODE_U11(z0, z1) -> c(U11'(encArg(z0), encArg(z1))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_LENGTH(z0) -> c(LENGTH(encArg(z0))) ENCODE_U21(z0) -> c(U21'(encArg(z0))) ENCODE_U31(z0, z1, z2, z3) -> c(U31'(encArg(z0), encArg(z1), encArg(z2), encArg(z3))) ENCODE_TAKE(z0, z1) -> c(TAKE(encArg(z0), encArg(z1))) ENCODE_AND(z0, z1) -> c(AND(encArg(z0), encArg(z1))) ENCODE_ISNAT(z0) -> c(ISNAT(encArg(z0))) ENCODE_ISNATLIST(z0) -> c(ISNATLIST(encArg(z0))) ENCODE_ISNATILIST(z0) -> c(ISNATILIST(encArg(z0))) ENCARG(cons_active(cons_active(z0))) -> c4(ACTIVE(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_active(cons_mark(z0))) -> c4(ACTIVE(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_active(cons_cons(z0, z1))) -> c4(ACTIVE(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_active(cons_U11(z0, z1))) -> c4(ACTIVE(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_active(cons_s(z0))) -> c4(ACTIVE(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_active(cons_length(z0))) -> c4(ACTIVE(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_active(cons_U21(z0))) -> c4(ACTIVE(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_active(cons_U31(z0, z1, z2, z3))) -> c4(ACTIVE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_active(cons_take(z0, z1))) -> c4(ACTIVE(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_active(cons_and(z0, z1))) -> c4(ACTIVE(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_active(cons_isNat(z0))) -> c4(ACTIVE(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_active(cons_isNatList(z0))) -> c4(ACTIVE(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_active(cons_isNatIList(z0))) -> c4(ACTIVE(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_active(zeros)) -> c4(ACTIVE(zeros)) ENCARG(cons_mark(cons_active(z0))) -> c5(MARK(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_mark(cons_mark(z0))) -> c5(MARK(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_mark(cons_cons(z0, z1))) -> c5(MARK(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_mark(cons_U11(z0, z1))) -> c5(MARK(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_mark(cons_s(z0))) -> c5(MARK(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_mark(cons_length(z0))) -> c5(MARK(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_mark(cons_U21(z0))) -> c5(MARK(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_mark(cons_U31(z0, z1, z2, z3))) -> c5(MARK(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_mark(cons_take(z0, z1))) -> c5(MARK(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(cons_and(z0, z1))) -> c5(MARK(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_mark(cons_isNat(z0))) -> c5(MARK(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_mark(cons_isNatList(z0))) -> c5(MARK(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_mark(cons_isNatIList(z0))) -> c5(MARK(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_mark(zeros)) -> c5(MARK(zeros)) ENCARG(cons_mark(0)) -> c5(MARK(0)) ENCARG(cons_mark(tt)) -> c5(MARK(tt)) ENCARG(cons_mark(nil)) -> c5(MARK(nil)) S tuples: ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(cons(z0, z1)) -> c53(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(mark(z0), z1)), U11'(mark(z0), z1), MARK(z0)) MARK(s(z0)) -> c57(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(mark(z0))), LENGTH(mark(z0)), MARK(z0)) MARK(U21(z0)) -> c59(ACTIVE(U21(mark(z0))), U21'(mark(z0)), MARK(z0)) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(mark(z0), z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(take(z0, z1)) -> c62(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 K tuples:none Defined Rule Symbols: encArg_1, active_1, mark_1, cons_2, U11_2, s_1, length_1, U21_1, U31_4, take_2, and_2, isNat_1, isNatList_1, isNatIList_1 Defined Pair Symbols: ENCARG_1, ACTIVE_1, MARK_1, CONS_2, U11'_2, S_1, LENGTH_1, U21'_1, U31'_4, TAKE_2, AND_2, ISNAT_1, ISNATLIST_1, ISNATILIST_1, ENCODE_ACTIVE_1, ENCODE_MARK_1, ENCODE_CONS_2, ENCODE_U11_2, ENCODE_S_1, ENCODE_LENGTH_1, ENCODE_U21_1, ENCODE_U31_4, ENCODE_TAKE_2, ENCODE_AND_2, ENCODE_ISNAT_1, ENCODE_ISNATLIST_1, ENCODE_ISNATILIST_1 Compound Symbols: c6_3, c7_3, c8_2, c9_2, c10_2, c11_5, c12_3, c13_3, c14_2, c15_2, c16_2, c36_1, c37_3, c38_1, c39_1, c40_2, c41_2, c42_2, c43_1, c45_1, c48_1, c52_1, c53_3, c55_3, c57_3, c58_3, c59_3, c61_3, c62_4, c63_3, c64_2, c65_2, c66_2, c67_1, c68_1, c69_1, c70_1, c71_1, c72_1, c73_1, c74_1, c75_1, c76_1, c77_1, c78_1, c79_1, c80_1, c81_1, c82_1, c83_1, c84_1, c85_1, c86_1, c87_1, c88_1, c89_1, c90_1, c91_1, c92_1, c93_1, c94_1, c95_1, c96_1, c97_1, c98_1, c99_1, c100_1, c101_1, c102_1, c34_1, c35_2, c44_3, c46_3, c47_3, c49_3, c50_2, c51_4, c54, c56, c60, c_1, c4_2, c4_1, c5_2, c5_1 ---------------------------------------- (49) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace ENCARG(cons_cons(z0, z1)) -> c6(CONS(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) by ENCARG(cons_cons(x0, zeros)) -> c6(CONS(encArg(x0), zeros), ENCARG(x0), ENCARG(zeros)) ENCARG(cons_cons(x0, 0)) -> c6(CONS(encArg(x0), 0), ENCARG(x0), ENCARG(0)) ENCARG(cons_cons(x0, tt)) -> c6(CONS(encArg(x0), tt), ENCARG(x0), ENCARG(tt)) ENCARG(cons_cons(x0, nil)) -> c6(CONS(encArg(x0), nil), ENCARG(x0), ENCARG(nil)) ENCARG(cons_cons(x0, cons_active(z0))) -> c6(CONS(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_cons(x0, cons_mark(z0))) -> c6(CONS(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_cons(x0, cons_cons(z0, z1))) -> c6(CONS(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_cons(x0, cons_U11(z0, z1))) -> c6(CONS(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_cons(x0, cons_s(z0))) -> c6(CONS(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_cons(x0, cons_length(z0))) -> c6(CONS(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_cons(x0, cons_U21(z0))) -> c6(CONS(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_cons(x0, cons_U31(z0, z1, z2, z3))) -> c6(CONS(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_cons(x0, cons_take(z0, z1))) -> c6(CONS(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_cons(x0, cons_and(z0, z1))) -> c6(CONS(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_cons(x0, cons_isNat(z0))) -> c6(CONS(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_cons(x0, cons_isNatList(z0))) -> c6(CONS(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_cons(x0, cons_isNatIList(z0))) -> c6(CONS(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_cons(zeros, x1)) -> c6(CONS(zeros, encArg(x1)), ENCARG(zeros), ENCARG(x1)) ENCARG(cons_cons(0, x1)) -> c6(CONS(0, encArg(x1)), ENCARG(0), ENCARG(x1)) ENCARG(cons_cons(tt, x1)) -> c6(CONS(tt, encArg(x1)), ENCARG(tt), ENCARG(x1)) ENCARG(cons_cons(nil, x1)) -> c6(CONS(nil, encArg(x1)), ENCARG(nil), ENCARG(x1)) ENCARG(cons_cons(cons_active(z0), x1)) -> c6(CONS(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_mark(z0), x1)) -> c6(CONS(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_cons(z0, z1), x1)) -> c6(CONS(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_U11(z0, z1), x1)) -> c6(CONS(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_s(z0), x1)) -> c6(CONS(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_length(z0), x1)) -> c6(CONS(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U21(z0), x1)) -> c6(CONS(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U31(z0, z1, z2, z3), x1)) -> c6(CONS(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_cons(cons_take(z0, z1), x1)) -> c6(CONS(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_and(z0, z1), x1)) -> c6(CONS(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_isNat(z0), x1)) -> c6(CONS(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_isNatList(z0), x1)) -> c6(CONS(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_isNatIList(z0), x1)) -> c6(CONS(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ---------------------------------------- (50) Obligation: Complexity Dependency Tuples Problem Rules: encArg(zeros) -> zeros encArg(0) -> 0 encArg(tt) -> tt encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_U11(z0, z1)) -> U11(encArg(z0), encArg(z1)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_length(z0)) -> length(encArg(z0)) encArg(cons_U21(z0)) -> U21(encArg(z0)) encArg(cons_U31(z0, z1, z2, z3)) -> U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_isNat(z0)) -> isNat(encArg(z0)) encArg(cons_isNatList(z0)) -> isNatList(encArg(z0)) encArg(cons_isNatIList(z0)) -> isNatIList(encArg(z0)) active(zeros) -> mark(cons(0, zeros)) active(U11(tt, z0)) -> mark(s(length(z0))) active(U21(tt)) -> mark(nil) active(U31(tt, z0, z1, z2)) -> mark(cons(z2, take(z1, z0))) active(and(tt, z0)) -> mark(z0) active(isNat(0)) -> mark(tt) active(isNat(length(z0))) -> mark(isNatList(z0)) active(isNat(s(z0))) -> mark(isNat(z0)) active(isNatIList(z0)) -> mark(isNatList(z0)) active(isNatIList(zeros)) -> mark(tt) active(isNatIList(cons(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(isNatList(nil)) -> mark(tt) active(isNatList(cons(z0, z1))) -> mark(and(isNat(z0), isNatList(z1))) active(isNatList(take(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(length(nil)) -> mark(0) active(length(cons(z0, z1))) -> mark(U11(and(isNatList(z1), isNat(z0)), z1)) active(take(0, z0)) -> mark(U21(isNatIList(z0))) active(take(s(z0), cons(z1, z2))) -> mark(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)) mark(zeros) -> active(zeros) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(0) -> active(0) mark(U11(z0, z1)) -> active(U11(mark(z0), z1)) mark(tt) -> active(tt) mark(s(z0)) -> active(s(mark(z0))) mark(length(z0)) -> active(length(mark(z0))) mark(U21(z0)) -> active(U21(mark(z0))) mark(nil) -> active(nil) mark(U31(z0, z1, z2, z3)) -> active(U31(mark(z0), z1, z2, z3)) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(isNat(z0)) -> active(isNat(z0)) mark(isNatList(z0)) -> active(isNatList(z0)) mark(isNatIList(z0)) -> active(isNatIList(z0)) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) U11(mark(z0), z1) -> U11(z0, z1) U11(z0, mark(z1)) -> U11(z0, z1) U11(active(z0), z1) -> U11(z0, z1) U11(z0, active(z1)) -> U11(z0, z1) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) length(mark(z0)) -> length(z0) length(active(z0)) -> length(z0) U21(mark(z0)) -> U21(z0) U21(active(z0)) -> U21(z0) U31(mark(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, mark(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, mark(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, mark(z3)) -> U31(z0, z1, z2, z3) U31(active(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, active(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, active(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, active(z3)) -> U31(z0, z1, z2, z3) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) isNat(mark(z0)) -> isNat(z0) isNat(active(z0)) -> isNat(z0) isNatList(mark(z0)) -> isNatList(z0) isNatList(active(z0)) -> isNatList(z0) isNatIList(mark(z0)) -> isNatIList(z0) isNatIList(active(z0)) -> isNatIList(z0) Tuples: ENCARG(cons_U11(z0, z1)) -> c7(U11'(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_s(z0)) -> c8(S(encArg(z0)), ENCARG(z0)) ENCARG(cons_length(z0)) -> c9(LENGTH(encArg(z0)), ENCARG(z0)) ENCARG(cons_U21(z0)) -> c10(U21'(encArg(z0)), ENCARG(z0)) ENCARG(cons_U31(z0, z1, z2, z3)) -> c11(U31'(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), ENCARG(z0), ENCARG(z1), ENCARG(z2), ENCARG(z3)) ENCARG(cons_take(z0, z1)) -> c12(TAKE(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_and(z0, z1)) -> c13(AND(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_isNat(z0)) -> c14(ISNAT(encArg(z0)), ENCARG(z0)) ENCARG(cons_isNatList(z0)) -> c15(ISNATLIST(encArg(z0)), ENCARG(z0)) ENCARG(cons_isNatIList(z0)) -> c16(ISNATILIST(encArg(z0)), ENCARG(z0)) ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(cons(z0, z1)) -> c53(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(mark(z0), z1)), U11'(mark(z0), z1), MARK(z0)) MARK(s(z0)) -> c57(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(mark(z0))), LENGTH(mark(z0)), MARK(z0)) MARK(U21(z0)) -> c59(ACTIVE(U21(mark(z0))), U21'(mark(z0)), MARK(z0)) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(mark(z0), z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(take(z0, z1)) -> c62(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 ENCODE_ACTIVE(z0) -> c(ACTIVE(encArg(z0))) ENCODE_MARK(z0) -> c(MARK(encArg(z0))) ENCODE_CONS(z0, z1) -> c(CONS(encArg(z0), encArg(z1))) ENCODE_U11(z0, z1) -> c(U11'(encArg(z0), encArg(z1))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_LENGTH(z0) -> c(LENGTH(encArg(z0))) ENCODE_U21(z0) -> c(U21'(encArg(z0))) ENCODE_U31(z0, z1, z2, z3) -> c(U31'(encArg(z0), encArg(z1), encArg(z2), encArg(z3))) ENCODE_TAKE(z0, z1) -> c(TAKE(encArg(z0), encArg(z1))) ENCODE_AND(z0, z1) -> c(AND(encArg(z0), encArg(z1))) ENCODE_ISNAT(z0) -> c(ISNAT(encArg(z0))) ENCODE_ISNATLIST(z0) -> c(ISNATLIST(encArg(z0))) ENCODE_ISNATILIST(z0) -> c(ISNATILIST(encArg(z0))) ENCARG(cons_active(cons_active(z0))) -> c4(ACTIVE(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_active(cons_mark(z0))) -> c4(ACTIVE(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_active(cons_cons(z0, z1))) -> c4(ACTIVE(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_active(cons_U11(z0, z1))) -> c4(ACTIVE(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_active(cons_s(z0))) -> c4(ACTIVE(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_active(cons_length(z0))) -> c4(ACTIVE(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_active(cons_U21(z0))) -> c4(ACTIVE(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_active(cons_U31(z0, z1, z2, z3))) -> c4(ACTIVE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_active(cons_take(z0, z1))) -> c4(ACTIVE(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_active(cons_and(z0, z1))) -> c4(ACTIVE(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_active(cons_isNat(z0))) -> c4(ACTIVE(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_active(cons_isNatList(z0))) -> c4(ACTIVE(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_active(cons_isNatIList(z0))) -> c4(ACTIVE(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_active(zeros)) -> c4(ACTIVE(zeros)) ENCARG(cons_mark(cons_active(z0))) -> c5(MARK(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_mark(cons_mark(z0))) -> c5(MARK(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_mark(cons_cons(z0, z1))) -> c5(MARK(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_mark(cons_U11(z0, z1))) -> c5(MARK(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_mark(cons_s(z0))) -> c5(MARK(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_mark(cons_length(z0))) -> c5(MARK(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_mark(cons_U21(z0))) -> c5(MARK(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_mark(cons_U31(z0, z1, z2, z3))) -> c5(MARK(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_mark(cons_take(z0, z1))) -> c5(MARK(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(cons_and(z0, z1))) -> c5(MARK(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_mark(cons_isNat(z0))) -> c5(MARK(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_mark(cons_isNatList(z0))) -> c5(MARK(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_mark(cons_isNatIList(z0))) -> c5(MARK(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_mark(zeros)) -> c5(MARK(zeros)) ENCARG(cons_mark(0)) -> c5(MARK(0)) ENCARG(cons_mark(tt)) -> c5(MARK(tt)) ENCARG(cons_mark(nil)) -> c5(MARK(nil)) ENCARG(cons_cons(x0, zeros)) -> c6(CONS(encArg(x0), zeros), ENCARG(x0), ENCARG(zeros)) ENCARG(cons_cons(x0, 0)) -> c6(CONS(encArg(x0), 0), ENCARG(x0), ENCARG(0)) ENCARG(cons_cons(x0, tt)) -> c6(CONS(encArg(x0), tt), ENCARG(x0), ENCARG(tt)) ENCARG(cons_cons(x0, nil)) -> c6(CONS(encArg(x0), nil), ENCARG(x0), ENCARG(nil)) ENCARG(cons_cons(x0, cons_active(z0))) -> c6(CONS(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_cons(x0, cons_mark(z0))) -> c6(CONS(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_cons(x0, cons_cons(z0, z1))) -> c6(CONS(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_cons(x0, cons_U11(z0, z1))) -> c6(CONS(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_cons(x0, cons_s(z0))) -> c6(CONS(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_cons(x0, cons_length(z0))) -> c6(CONS(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_cons(x0, cons_U21(z0))) -> c6(CONS(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_cons(x0, cons_U31(z0, z1, z2, z3))) -> c6(CONS(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_cons(x0, cons_take(z0, z1))) -> c6(CONS(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_cons(x0, cons_and(z0, z1))) -> c6(CONS(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_cons(x0, cons_isNat(z0))) -> c6(CONS(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_cons(x0, cons_isNatList(z0))) -> c6(CONS(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_cons(x0, cons_isNatIList(z0))) -> c6(CONS(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_cons(zeros, x1)) -> c6(CONS(zeros, encArg(x1)), ENCARG(zeros), ENCARG(x1)) ENCARG(cons_cons(0, x1)) -> c6(CONS(0, encArg(x1)), ENCARG(0), ENCARG(x1)) ENCARG(cons_cons(tt, x1)) -> c6(CONS(tt, encArg(x1)), ENCARG(tt), ENCARG(x1)) ENCARG(cons_cons(nil, x1)) -> c6(CONS(nil, encArg(x1)), ENCARG(nil), ENCARG(x1)) ENCARG(cons_cons(cons_active(z0), x1)) -> c6(CONS(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_mark(z0), x1)) -> c6(CONS(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_cons(z0, z1), x1)) -> c6(CONS(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_U11(z0, z1), x1)) -> c6(CONS(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_s(z0), x1)) -> c6(CONS(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_length(z0), x1)) -> c6(CONS(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U21(z0), x1)) -> c6(CONS(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U31(z0, z1, z2, z3), x1)) -> c6(CONS(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_cons(cons_take(z0, z1), x1)) -> c6(CONS(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_and(z0, z1), x1)) -> c6(CONS(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_isNat(z0), x1)) -> c6(CONS(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_isNatList(z0), x1)) -> c6(CONS(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_isNatIList(z0), x1)) -> c6(CONS(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) S tuples: ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(cons(z0, z1)) -> c53(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(mark(z0), z1)), U11'(mark(z0), z1), MARK(z0)) MARK(s(z0)) -> c57(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(mark(z0))), LENGTH(mark(z0)), MARK(z0)) MARK(U21(z0)) -> c59(ACTIVE(U21(mark(z0))), U21'(mark(z0)), MARK(z0)) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(mark(z0), z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(take(z0, z1)) -> c62(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 K tuples:none Defined Rule Symbols: encArg_1, active_1, mark_1, cons_2, U11_2, s_1, length_1, U21_1, U31_4, take_2, and_2, isNat_1, isNatList_1, isNatIList_1 Defined Pair Symbols: ENCARG_1, ACTIVE_1, MARK_1, CONS_2, U11'_2, S_1, LENGTH_1, U21'_1, U31'_4, TAKE_2, AND_2, ISNAT_1, ISNATLIST_1, ISNATILIST_1, ENCODE_ACTIVE_1, ENCODE_MARK_1, ENCODE_CONS_2, ENCODE_U11_2, ENCODE_S_1, ENCODE_LENGTH_1, ENCODE_U21_1, ENCODE_U31_4, ENCODE_TAKE_2, ENCODE_AND_2, ENCODE_ISNAT_1, ENCODE_ISNATLIST_1, ENCODE_ISNATILIST_1 Compound Symbols: c7_3, c8_2, c9_2, c10_2, c11_5, c12_3, c13_3, c14_2, c15_2, c16_2, c36_1, c37_3, c38_1, c39_1, c40_2, c41_2, c42_2, c43_1, c45_1, c48_1, c52_1, c53_3, c55_3, c57_3, c58_3, c59_3, c61_3, c62_4, c63_3, c64_2, c65_2, c66_2, c67_1, c68_1, c69_1, c70_1, c71_1, c72_1, c73_1, c74_1, c75_1, c76_1, c77_1, c78_1, c79_1, c80_1, c81_1, c82_1, c83_1, c84_1, c85_1, c86_1, c87_1, c88_1, c89_1, c90_1, c91_1, c92_1, c93_1, c94_1, c95_1, c96_1, c97_1, c98_1, c99_1, c100_1, c101_1, c102_1, c34_1, c35_2, c44_3, c46_3, c47_3, c49_3, c50_2, c51_4, c54, c56, c60, c_1, c4_2, c4_1, c5_2, c5_1, c6_3 ---------------------------------------- (51) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 8 trailing tuple parts ---------------------------------------- (52) Obligation: Complexity Dependency Tuples Problem Rules: encArg(zeros) -> zeros encArg(0) -> 0 encArg(tt) -> tt encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_U11(z0, z1)) -> U11(encArg(z0), encArg(z1)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_length(z0)) -> length(encArg(z0)) encArg(cons_U21(z0)) -> U21(encArg(z0)) encArg(cons_U31(z0, z1, z2, z3)) -> U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_isNat(z0)) -> isNat(encArg(z0)) encArg(cons_isNatList(z0)) -> isNatList(encArg(z0)) encArg(cons_isNatIList(z0)) -> isNatIList(encArg(z0)) active(zeros) -> mark(cons(0, zeros)) active(U11(tt, z0)) -> mark(s(length(z0))) active(U21(tt)) -> mark(nil) active(U31(tt, z0, z1, z2)) -> mark(cons(z2, take(z1, z0))) active(and(tt, z0)) -> mark(z0) active(isNat(0)) -> mark(tt) active(isNat(length(z0))) -> mark(isNatList(z0)) active(isNat(s(z0))) -> mark(isNat(z0)) active(isNatIList(z0)) -> mark(isNatList(z0)) active(isNatIList(zeros)) -> mark(tt) active(isNatIList(cons(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(isNatList(nil)) -> mark(tt) active(isNatList(cons(z0, z1))) -> mark(and(isNat(z0), isNatList(z1))) active(isNatList(take(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(length(nil)) -> mark(0) active(length(cons(z0, z1))) -> mark(U11(and(isNatList(z1), isNat(z0)), z1)) active(take(0, z0)) -> mark(U21(isNatIList(z0))) active(take(s(z0), cons(z1, z2))) -> mark(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)) mark(zeros) -> active(zeros) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(0) -> active(0) mark(U11(z0, z1)) -> active(U11(mark(z0), z1)) mark(tt) -> active(tt) mark(s(z0)) -> active(s(mark(z0))) mark(length(z0)) -> active(length(mark(z0))) mark(U21(z0)) -> active(U21(mark(z0))) mark(nil) -> active(nil) mark(U31(z0, z1, z2, z3)) -> active(U31(mark(z0), z1, z2, z3)) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(isNat(z0)) -> active(isNat(z0)) mark(isNatList(z0)) -> active(isNatList(z0)) mark(isNatIList(z0)) -> active(isNatIList(z0)) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) U11(mark(z0), z1) -> U11(z0, z1) U11(z0, mark(z1)) -> U11(z0, z1) U11(active(z0), z1) -> U11(z0, z1) U11(z0, active(z1)) -> U11(z0, z1) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) length(mark(z0)) -> length(z0) length(active(z0)) -> length(z0) U21(mark(z0)) -> U21(z0) U21(active(z0)) -> U21(z0) U31(mark(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, mark(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, mark(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, mark(z3)) -> U31(z0, z1, z2, z3) U31(active(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, active(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, active(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, active(z3)) -> U31(z0, z1, z2, z3) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) isNat(mark(z0)) -> isNat(z0) isNat(active(z0)) -> isNat(z0) isNatList(mark(z0)) -> isNatList(z0) isNatList(active(z0)) -> isNatList(z0) isNatIList(mark(z0)) -> isNatIList(z0) isNatIList(active(z0)) -> isNatIList(z0) Tuples: ENCARG(cons_U11(z0, z1)) -> c7(U11'(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_s(z0)) -> c8(S(encArg(z0)), ENCARG(z0)) ENCARG(cons_length(z0)) -> c9(LENGTH(encArg(z0)), ENCARG(z0)) ENCARG(cons_U21(z0)) -> c10(U21'(encArg(z0)), ENCARG(z0)) ENCARG(cons_U31(z0, z1, z2, z3)) -> c11(U31'(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), ENCARG(z0), ENCARG(z1), ENCARG(z2), ENCARG(z3)) ENCARG(cons_take(z0, z1)) -> c12(TAKE(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_and(z0, z1)) -> c13(AND(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_isNat(z0)) -> c14(ISNAT(encArg(z0)), ENCARG(z0)) ENCARG(cons_isNatList(z0)) -> c15(ISNATLIST(encArg(z0)), ENCARG(z0)) ENCARG(cons_isNatIList(z0)) -> c16(ISNATILIST(encArg(z0)), ENCARG(z0)) ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(cons(z0, z1)) -> c53(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(mark(z0), z1)), U11'(mark(z0), z1), MARK(z0)) MARK(s(z0)) -> c57(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(mark(z0))), LENGTH(mark(z0)), MARK(z0)) MARK(U21(z0)) -> c59(ACTIVE(U21(mark(z0))), U21'(mark(z0)), MARK(z0)) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(mark(z0), z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(take(z0, z1)) -> c62(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 ENCODE_ACTIVE(z0) -> c(ACTIVE(encArg(z0))) ENCODE_MARK(z0) -> c(MARK(encArg(z0))) ENCODE_CONS(z0, z1) -> c(CONS(encArg(z0), encArg(z1))) ENCODE_U11(z0, z1) -> c(U11'(encArg(z0), encArg(z1))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_LENGTH(z0) -> c(LENGTH(encArg(z0))) ENCODE_U21(z0) -> c(U21'(encArg(z0))) ENCODE_U31(z0, z1, z2, z3) -> c(U31'(encArg(z0), encArg(z1), encArg(z2), encArg(z3))) ENCODE_TAKE(z0, z1) -> c(TAKE(encArg(z0), encArg(z1))) ENCODE_AND(z0, z1) -> c(AND(encArg(z0), encArg(z1))) ENCODE_ISNAT(z0) -> c(ISNAT(encArg(z0))) ENCODE_ISNATLIST(z0) -> c(ISNATLIST(encArg(z0))) ENCODE_ISNATILIST(z0) -> c(ISNATILIST(encArg(z0))) ENCARG(cons_active(cons_active(z0))) -> c4(ACTIVE(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_active(cons_mark(z0))) -> c4(ACTIVE(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_active(cons_cons(z0, z1))) -> c4(ACTIVE(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_active(cons_U11(z0, z1))) -> c4(ACTIVE(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_active(cons_s(z0))) -> c4(ACTIVE(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_active(cons_length(z0))) -> c4(ACTIVE(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_active(cons_U21(z0))) -> c4(ACTIVE(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_active(cons_U31(z0, z1, z2, z3))) -> c4(ACTIVE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_active(cons_take(z0, z1))) -> c4(ACTIVE(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_active(cons_and(z0, z1))) -> c4(ACTIVE(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_active(cons_isNat(z0))) -> c4(ACTIVE(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_active(cons_isNatList(z0))) -> c4(ACTIVE(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_active(cons_isNatIList(z0))) -> c4(ACTIVE(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_active(zeros)) -> c4(ACTIVE(zeros)) ENCARG(cons_mark(cons_active(z0))) -> c5(MARK(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_mark(cons_mark(z0))) -> c5(MARK(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_mark(cons_cons(z0, z1))) -> c5(MARK(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_mark(cons_U11(z0, z1))) -> c5(MARK(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_mark(cons_s(z0))) -> c5(MARK(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_mark(cons_length(z0))) -> c5(MARK(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_mark(cons_U21(z0))) -> c5(MARK(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_mark(cons_U31(z0, z1, z2, z3))) -> c5(MARK(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_mark(cons_take(z0, z1))) -> c5(MARK(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(cons_and(z0, z1))) -> c5(MARK(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_mark(cons_isNat(z0))) -> c5(MARK(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_mark(cons_isNatList(z0))) -> c5(MARK(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_mark(cons_isNatIList(z0))) -> c5(MARK(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_mark(zeros)) -> c5(MARK(zeros)) ENCARG(cons_mark(0)) -> c5(MARK(0)) ENCARG(cons_mark(tt)) -> c5(MARK(tt)) ENCARG(cons_mark(nil)) -> c5(MARK(nil)) ENCARG(cons_cons(x0, cons_active(z0))) -> c6(CONS(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_cons(x0, cons_mark(z0))) -> c6(CONS(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_cons(x0, cons_cons(z0, z1))) -> c6(CONS(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_cons(x0, cons_U11(z0, z1))) -> c6(CONS(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_cons(x0, cons_s(z0))) -> c6(CONS(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_cons(x0, cons_length(z0))) -> c6(CONS(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_cons(x0, cons_U21(z0))) -> c6(CONS(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_cons(x0, cons_U31(z0, z1, z2, z3))) -> c6(CONS(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_cons(x0, cons_take(z0, z1))) -> c6(CONS(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_cons(x0, cons_and(z0, z1))) -> c6(CONS(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_cons(x0, cons_isNat(z0))) -> c6(CONS(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_cons(x0, cons_isNatList(z0))) -> c6(CONS(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_cons(x0, cons_isNatIList(z0))) -> c6(CONS(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_cons(cons_active(z0), x1)) -> c6(CONS(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_mark(z0), x1)) -> c6(CONS(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_cons(z0, z1), x1)) -> c6(CONS(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_U11(z0, z1), x1)) -> c6(CONS(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_s(z0), x1)) -> c6(CONS(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_length(z0), x1)) -> c6(CONS(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U21(z0), x1)) -> c6(CONS(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U31(z0, z1, z2, z3), x1)) -> c6(CONS(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_cons(cons_take(z0, z1), x1)) -> c6(CONS(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_and(z0, z1), x1)) -> c6(CONS(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_isNat(z0), x1)) -> c6(CONS(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_isNatList(z0), x1)) -> c6(CONS(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_isNatIList(z0), x1)) -> c6(CONS(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_cons(x0, zeros)) -> c6(CONS(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_cons(x0, 0)) -> c6(CONS(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_cons(x0, tt)) -> c6(CONS(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_cons(x0, nil)) -> c6(CONS(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_cons(zeros, x1)) -> c6(CONS(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(0, x1)) -> c6(CONS(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(tt, x1)) -> c6(CONS(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(nil, x1)) -> c6(CONS(nil, encArg(x1)), ENCARG(x1)) S tuples: ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(cons(z0, z1)) -> c53(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(mark(z0), z1)), U11'(mark(z0), z1), MARK(z0)) MARK(s(z0)) -> c57(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(mark(z0))), LENGTH(mark(z0)), MARK(z0)) MARK(U21(z0)) -> c59(ACTIVE(U21(mark(z0))), U21'(mark(z0)), MARK(z0)) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(mark(z0), z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(take(z0, z1)) -> c62(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 K tuples:none Defined Rule Symbols: encArg_1, active_1, mark_1, cons_2, U11_2, s_1, length_1, U21_1, U31_4, take_2, and_2, isNat_1, isNatList_1, isNatIList_1 Defined Pair Symbols: ENCARG_1, ACTIVE_1, MARK_1, CONS_2, U11'_2, S_1, LENGTH_1, U21'_1, U31'_4, TAKE_2, AND_2, ISNAT_1, ISNATLIST_1, ISNATILIST_1, ENCODE_ACTIVE_1, ENCODE_MARK_1, ENCODE_CONS_2, ENCODE_U11_2, ENCODE_S_1, ENCODE_LENGTH_1, ENCODE_U21_1, ENCODE_U31_4, ENCODE_TAKE_2, ENCODE_AND_2, ENCODE_ISNAT_1, ENCODE_ISNATLIST_1, ENCODE_ISNATILIST_1 Compound Symbols: c7_3, c8_2, c9_2, c10_2, c11_5, c12_3, c13_3, c14_2, c15_2, c16_2, c36_1, c37_3, c38_1, c39_1, c40_2, c41_2, c42_2, c43_1, c45_1, c48_1, c52_1, c53_3, c55_3, c57_3, c58_3, c59_3, c61_3, c62_4, c63_3, c64_2, c65_2, c66_2, c67_1, c68_1, c69_1, c70_1, c71_1, c72_1, c73_1, c74_1, c75_1, c76_1, c77_1, c78_1, c79_1, c80_1, c81_1, c82_1, c83_1, c84_1, c85_1, c86_1, c87_1, c88_1, c89_1, c90_1, c91_1, c92_1, c93_1, c94_1, c95_1, c96_1, c97_1, c98_1, c99_1, c100_1, c101_1, c102_1, c34_1, c35_2, c44_3, c46_3, c47_3, c49_3, c50_2, c51_4, c54, c56, c60, c_1, c4_2, c4_1, c5_2, c5_1, c6_3, c6_2 ---------------------------------------- (53) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace ENCARG(cons_U11(z0, z1)) -> c7(U11'(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) by ENCARG(cons_U11(x0, zeros)) -> c7(U11'(encArg(x0), zeros), ENCARG(x0), ENCARG(zeros)) ENCARG(cons_U11(x0, 0)) -> c7(U11'(encArg(x0), 0), ENCARG(x0), ENCARG(0)) ENCARG(cons_U11(x0, tt)) -> c7(U11'(encArg(x0), tt), ENCARG(x0), ENCARG(tt)) ENCARG(cons_U11(x0, nil)) -> c7(U11'(encArg(x0), nil), ENCARG(x0), ENCARG(nil)) ENCARG(cons_U11(x0, cons_active(z0))) -> c7(U11'(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_U11(x0, cons_mark(z0))) -> c7(U11'(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_U11(x0, cons_cons(z0, z1))) -> c7(U11'(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U11(x0, cons_U11(z0, z1))) -> c7(U11'(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U11(x0, cons_s(z0))) -> c7(U11'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_U11(x0, cons_length(z0))) -> c7(U11'(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_U11(x0, cons_U21(z0))) -> c7(U11'(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_U11(x0, cons_U31(z0, z1, z2, z3))) -> c7(U11'(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U11(x0, cons_take(z0, z1))) -> c7(U11'(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_U11(x0, cons_and(z0, z1))) -> c7(U11'(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_U11(x0, cons_isNat(z0))) -> c7(U11'(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_U11(x0, cons_isNatList(z0))) -> c7(U11'(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_U11(x0, cons_isNatIList(z0))) -> c7(U11'(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U11(zeros, x1)) -> c7(U11'(zeros, encArg(x1)), ENCARG(zeros), ENCARG(x1)) ENCARG(cons_U11(0, x1)) -> c7(U11'(0, encArg(x1)), ENCARG(0), ENCARG(x1)) ENCARG(cons_U11(tt, x1)) -> c7(U11'(tt, encArg(x1)), ENCARG(tt), ENCARG(x1)) ENCARG(cons_U11(nil, x1)) -> c7(U11'(nil, encArg(x1)), ENCARG(nil), ENCARG(x1)) ENCARG(cons_U11(cons_active(z0), x1)) -> c7(U11'(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_mark(z0), x1)) -> c7(U11'(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_cons(z0, z1), x1)) -> c7(U11'(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_U11(z0, z1), x1)) -> c7(U11'(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_s(z0), x1)) -> c7(U11'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_length(z0), x1)) -> c7(U11'(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_U21(z0), x1)) -> c7(U11'(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_U31(z0, z1, z2, z3), x1)) -> c7(U11'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_U11(cons_take(z0, z1), x1)) -> c7(U11'(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_and(z0, z1), x1)) -> c7(U11'(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_isNat(z0), x1)) -> c7(U11'(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_isNatList(z0), x1)) -> c7(U11'(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_isNatIList(z0), x1)) -> c7(U11'(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ---------------------------------------- (54) Obligation: Complexity Dependency Tuples Problem Rules: encArg(zeros) -> zeros encArg(0) -> 0 encArg(tt) -> tt encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_U11(z0, z1)) -> U11(encArg(z0), encArg(z1)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_length(z0)) -> length(encArg(z0)) encArg(cons_U21(z0)) -> U21(encArg(z0)) encArg(cons_U31(z0, z1, z2, z3)) -> U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_isNat(z0)) -> isNat(encArg(z0)) encArg(cons_isNatList(z0)) -> isNatList(encArg(z0)) encArg(cons_isNatIList(z0)) -> isNatIList(encArg(z0)) active(zeros) -> mark(cons(0, zeros)) active(U11(tt, z0)) -> mark(s(length(z0))) active(U21(tt)) -> mark(nil) active(U31(tt, z0, z1, z2)) -> mark(cons(z2, take(z1, z0))) active(and(tt, z0)) -> mark(z0) active(isNat(0)) -> mark(tt) active(isNat(length(z0))) -> mark(isNatList(z0)) active(isNat(s(z0))) -> mark(isNat(z0)) active(isNatIList(z0)) -> mark(isNatList(z0)) active(isNatIList(zeros)) -> mark(tt) active(isNatIList(cons(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(isNatList(nil)) -> mark(tt) active(isNatList(cons(z0, z1))) -> mark(and(isNat(z0), isNatList(z1))) active(isNatList(take(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(length(nil)) -> mark(0) active(length(cons(z0, z1))) -> mark(U11(and(isNatList(z1), isNat(z0)), z1)) active(take(0, z0)) -> mark(U21(isNatIList(z0))) active(take(s(z0), cons(z1, z2))) -> mark(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)) mark(zeros) -> active(zeros) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(0) -> active(0) mark(U11(z0, z1)) -> active(U11(mark(z0), z1)) mark(tt) -> active(tt) mark(s(z0)) -> active(s(mark(z0))) mark(length(z0)) -> active(length(mark(z0))) mark(U21(z0)) -> active(U21(mark(z0))) mark(nil) -> active(nil) mark(U31(z0, z1, z2, z3)) -> active(U31(mark(z0), z1, z2, z3)) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(isNat(z0)) -> active(isNat(z0)) mark(isNatList(z0)) -> active(isNatList(z0)) mark(isNatIList(z0)) -> active(isNatIList(z0)) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) U11(mark(z0), z1) -> U11(z0, z1) U11(z0, mark(z1)) -> U11(z0, z1) U11(active(z0), z1) -> U11(z0, z1) U11(z0, active(z1)) -> U11(z0, z1) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) length(mark(z0)) -> length(z0) length(active(z0)) -> length(z0) U21(mark(z0)) -> U21(z0) U21(active(z0)) -> U21(z0) U31(mark(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, mark(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, mark(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, mark(z3)) -> U31(z0, z1, z2, z3) U31(active(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, active(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, active(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, active(z3)) -> U31(z0, z1, z2, z3) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) isNat(mark(z0)) -> isNat(z0) isNat(active(z0)) -> isNat(z0) isNatList(mark(z0)) -> isNatList(z0) isNatList(active(z0)) -> isNatList(z0) isNatIList(mark(z0)) -> isNatIList(z0) isNatIList(active(z0)) -> isNatIList(z0) Tuples: ENCARG(cons_s(z0)) -> c8(S(encArg(z0)), ENCARG(z0)) ENCARG(cons_length(z0)) -> c9(LENGTH(encArg(z0)), ENCARG(z0)) ENCARG(cons_U21(z0)) -> c10(U21'(encArg(z0)), ENCARG(z0)) ENCARG(cons_U31(z0, z1, z2, z3)) -> c11(U31'(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), ENCARG(z0), ENCARG(z1), ENCARG(z2), ENCARG(z3)) ENCARG(cons_take(z0, z1)) -> c12(TAKE(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_and(z0, z1)) -> c13(AND(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_isNat(z0)) -> c14(ISNAT(encArg(z0)), ENCARG(z0)) ENCARG(cons_isNatList(z0)) -> c15(ISNATLIST(encArg(z0)), ENCARG(z0)) ENCARG(cons_isNatIList(z0)) -> c16(ISNATILIST(encArg(z0)), ENCARG(z0)) ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(cons(z0, z1)) -> c53(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(mark(z0), z1)), U11'(mark(z0), z1), MARK(z0)) MARK(s(z0)) -> c57(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(mark(z0))), LENGTH(mark(z0)), MARK(z0)) MARK(U21(z0)) -> c59(ACTIVE(U21(mark(z0))), U21'(mark(z0)), MARK(z0)) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(mark(z0), z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(take(z0, z1)) -> c62(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 ENCODE_ACTIVE(z0) -> c(ACTIVE(encArg(z0))) ENCODE_MARK(z0) -> c(MARK(encArg(z0))) ENCODE_CONS(z0, z1) -> c(CONS(encArg(z0), encArg(z1))) ENCODE_U11(z0, z1) -> c(U11'(encArg(z0), encArg(z1))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_LENGTH(z0) -> c(LENGTH(encArg(z0))) ENCODE_U21(z0) -> c(U21'(encArg(z0))) ENCODE_U31(z0, z1, z2, z3) -> c(U31'(encArg(z0), encArg(z1), encArg(z2), encArg(z3))) ENCODE_TAKE(z0, z1) -> c(TAKE(encArg(z0), encArg(z1))) ENCODE_AND(z0, z1) -> c(AND(encArg(z0), encArg(z1))) ENCODE_ISNAT(z0) -> c(ISNAT(encArg(z0))) ENCODE_ISNATLIST(z0) -> c(ISNATLIST(encArg(z0))) ENCODE_ISNATILIST(z0) -> c(ISNATILIST(encArg(z0))) ENCARG(cons_active(cons_active(z0))) -> c4(ACTIVE(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_active(cons_mark(z0))) -> c4(ACTIVE(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_active(cons_cons(z0, z1))) -> c4(ACTIVE(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_active(cons_U11(z0, z1))) -> c4(ACTIVE(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_active(cons_s(z0))) -> c4(ACTIVE(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_active(cons_length(z0))) -> c4(ACTIVE(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_active(cons_U21(z0))) -> c4(ACTIVE(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_active(cons_U31(z0, z1, z2, z3))) -> c4(ACTIVE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_active(cons_take(z0, z1))) -> c4(ACTIVE(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_active(cons_and(z0, z1))) -> c4(ACTIVE(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_active(cons_isNat(z0))) -> c4(ACTIVE(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_active(cons_isNatList(z0))) -> c4(ACTIVE(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_active(cons_isNatIList(z0))) -> c4(ACTIVE(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_active(zeros)) -> c4(ACTIVE(zeros)) ENCARG(cons_mark(cons_active(z0))) -> c5(MARK(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_mark(cons_mark(z0))) -> c5(MARK(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_mark(cons_cons(z0, z1))) -> c5(MARK(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_mark(cons_U11(z0, z1))) -> c5(MARK(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_mark(cons_s(z0))) -> c5(MARK(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_mark(cons_length(z0))) -> c5(MARK(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_mark(cons_U21(z0))) -> c5(MARK(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_mark(cons_U31(z0, z1, z2, z3))) -> c5(MARK(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_mark(cons_take(z0, z1))) -> c5(MARK(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(cons_and(z0, z1))) -> c5(MARK(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_mark(cons_isNat(z0))) -> c5(MARK(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_mark(cons_isNatList(z0))) -> c5(MARK(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_mark(cons_isNatIList(z0))) -> c5(MARK(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_mark(zeros)) -> c5(MARK(zeros)) ENCARG(cons_mark(0)) -> c5(MARK(0)) ENCARG(cons_mark(tt)) -> c5(MARK(tt)) ENCARG(cons_mark(nil)) -> c5(MARK(nil)) ENCARG(cons_cons(x0, cons_active(z0))) -> c6(CONS(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_cons(x0, cons_mark(z0))) -> c6(CONS(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_cons(x0, cons_cons(z0, z1))) -> c6(CONS(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_cons(x0, cons_U11(z0, z1))) -> c6(CONS(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_cons(x0, cons_s(z0))) -> c6(CONS(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_cons(x0, cons_length(z0))) -> c6(CONS(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_cons(x0, cons_U21(z0))) -> c6(CONS(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_cons(x0, cons_U31(z0, z1, z2, z3))) -> c6(CONS(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_cons(x0, cons_take(z0, z1))) -> c6(CONS(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_cons(x0, cons_and(z0, z1))) -> c6(CONS(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_cons(x0, cons_isNat(z0))) -> c6(CONS(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_cons(x0, cons_isNatList(z0))) -> c6(CONS(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_cons(x0, cons_isNatIList(z0))) -> c6(CONS(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_cons(cons_active(z0), x1)) -> c6(CONS(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_mark(z0), x1)) -> c6(CONS(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_cons(z0, z1), x1)) -> c6(CONS(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_U11(z0, z1), x1)) -> c6(CONS(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_s(z0), x1)) -> c6(CONS(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_length(z0), x1)) -> c6(CONS(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U21(z0), x1)) -> c6(CONS(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U31(z0, z1, z2, z3), x1)) -> c6(CONS(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_cons(cons_take(z0, z1), x1)) -> c6(CONS(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_and(z0, z1), x1)) -> c6(CONS(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_isNat(z0), x1)) -> c6(CONS(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_isNatList(z0), x1)) -> c6(CONS(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_isNatIList(z0), x1)) -> c6(CONS(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_cons(x0, zeros)) -> c6(CONS(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_cons(x0, 0)) -> c6(CONS(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_cons(x0, tt)) -> c6(CONS(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_cons(x0, nil)) -> c6(CONS(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_cons(zeros, x1)) -> c6(CONS(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(0, x1)) -> c6(CONS(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(tt, x1)) -> c6(CONS(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(nil, x1)) -> c6(CONS(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(x0, zeros)) -> c7(U11'(encArg(x0), zeros), ENCARG(x0), ENCARG(zeros)) ENCARG(cons_U11(x0, 0)) -> c7(U11'(encArg(x0), 0), ENCARG(x0), ENCARG(0)) ENCARG(cons_U11(x0, tt)) -> c7(U11'(encArg(x0), tt), ENCARG(x0), ENCARG(tt)) ENCARG(cons_U11(x0, nil)) -> c7(U11'(encArg(x0), nil), ENCARG(x0), ENCARG(nil)) ENCARG(cons_U11(x0, cons_active(z0))) -> c7(U11'(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_U11(x0, cons_mark(z0))) -> c7(U11'(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_U11(x0, cons_cons(z0, z1))) -> c7(U11'(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U11(x0, cons_U11(z0, z1))) -> c7(U11'(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U11(x0, cons_s(z0))) -> c7(U11'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_U11(x0, cons_length(z0))) -> c7(U11'(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_U11(x0, cons_U21(z0))) -> c7(U11'(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_U11(x0, cons_U31(z0, z1, z2, z3))) -> c7(U11'(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U11(x0, cons_take(z0, z1))) -> c7(U11'(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_U11(x0, cons_and(z0, z1))) -> c7(U11'(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_U11(x0, cons_isNat(z0))) -> c7(U11'(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_U11(x0, cons_isNatList(z0))) -> c7(U11'(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_U11(x0, cons_isNatIList(z0))) -> c7(U11'(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U11(zeros, x1)) -> c7(U11'(zeros, encArg(x1)), ENCARG(zeros), ENCARG(x1)) ENCARG(cons_U11(0, x1)) -> c7(U11'(0, encArg(x1)), ENCARG(0), ENCARG(x1)) ENCARG(cons_U11(tt, x1)) -> c7(U11'(tt, encArg(x1)), ENCARG(tt), ENCARG(x1)) ENCARG(cons_U11(nil, x1)) -> c7(U11'(nil, encArg(x1)), ENCARG(nil), ENCARG(x1)) ENCARG(cons_U11(cons_active(z0), x1)) -> c7(U11'(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_mark(z0), x1)) -> c7(U11'(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_cons(z0, z1), x1)) -> c7(U11'(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_U11(z0, z1), x1)) -> c7(U11'(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_s(z0), x1)) -> c7(U11'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_length(z0), x1)) -> c7(U11'(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_U21(z0), x1)) -> c7(U11'(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_U31(z0, z1, z2, z3), x1)) -> c7(U11'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_U11(cons_take(z0, z1), x1)) -> c7(U11'(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_and(z0, z1), x1)) -> c7(U11'(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_isNat(z0), x1)) -> c7(U11'(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_isNatList(z0), x1)) -> c7(U11'(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_isNatIList(z0), x1)) -> c7(U11'(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) S tuples: ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(cons(z0, z1)) -> c53(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(mark(z0), z1)), U11'(mark(z0), z1), MARK(z0)) MARK(s(z0)) -> c57(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(mark(z0))), LENGTH(mark(z0)), MARK(z0)) MARK(U21(z0)) -> c59(ACTIVE(U21(mark(z0))), U21'(mark(z0)), MARK(z0)) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(mark(z0), z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(take(z0, z1)) -> c62(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 K tuples:none Defined Rule Symbols: encArg_1, active_1, mark_1, cons_2, U11_2, s_1, length_1, U21_1, U31_4, take_2, and_2, isNat_1, isNatList_1, isNatIList_1 Defined Pair Symbols: ENCARG_1, ACTIVE_1, MARK_1, CONS_2, U11'_2, S_1, LENGTH_1, U21'_1, U31'_4, TAKE_2, AND_2, ISNAT_1, ISNATLIST_1, ISNATILIST_1, ENCODE_ACTIVE_1, ENCODE_MARK_1, ENCODE_CONS_2, ENCODE_U11_2, ENCODE_S_1, ENCODE_LENGTH_1, ENCODE_U21_1, ENCODE_U31_4, ENCODE_TAKE_2, ENCODE_AND_2, ENCODE_ISNAT_1, ENCODE_ISNATLIST_1, ENCODE_ISNATILIST_1 Compound Symbols: c8_2, c9_2, c10_2, c11_5, c12_3, c13_3, c14_2, c15_2, c16_2, c36_1, c37_3, c38_1, c39_1, c40_2, c41_2, c42_2, c43_1, c45_1, c48_1, c52_1, c53_3, c55_3, c57_3, c58_3, c59_3, c61_3, c62_4, c63_3, c64_2, c65_2, c66_2, c67_1, c68_1, c69_1, c70_1, c71_1, c72_1, c73_1, c74_1, c75_1, c76_1, c77_1, c78_1, c79_1, c80_1, c81_1, c82_1, c83_1, c84_1, c85_1, c86_1, c87_1, c88_1, c89_1, c90_1, c91_1, c92_1, c93_1, c94_1, c95_1, c96_1, c97_1, c98_1, c99_1, c100_1, c101_1, c102_1, c34_1, c35_2, c44_3, c46_3, c47_3, c49_3, c50_2, c51_4, c54, c56, c60, c_1, c4_2, c4_1, c5_2, c5_1, c6_3, c6_2, c7_3 ---------------------------------------- (55) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 8 trailing tuple parts ---------------------------------------- (56) Obligation: Complexity Dependency Tuples Problem Rules: encArg(zeros) -> zeros encArg(0) -> 0 encArg(tt) -> tt encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_U11(z0, z1)) -> U11(encArg(z0), encArg(z1)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_length(z0)) -> length(encArg(z0)) encArg(cons_U21(z0)) -> U21(encArg(z0)) encArg(cons_U31(z0, z1, z2, z3)) -> U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_isNat(z0)) -> isNat(encArg(z0)) encArg(cons_isNatList(z0)) -> isNatList(encArg(z0)) encArg(cons_isNatIList(z0)) -> isNatIList(encArg(z0)) active(zeros) -> mark(cons(0, zeros)) active(U11(tt, z0)) -> mark(s(length(z0))) active(U21(tt)) -> mark(nil) active(U31(tt, z0, z1, z2)) -> mark(cons(z2, take(z1, z0))) active(and(tt, z0)) -> mark(z0) active(isNat(0)) -> mark(tt) active(isNat(length(z0))) -> mark(isNatList(z0)) active(isNat(s(z0))) -> mark(isNat(z0)) active(isNatIList(z0)) -> mark(isNatList(z0)) active(isNatIList(zeros)) -> mark(tt) active(isNatIList(cons(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(isNatList(nil)) -> mark(tt) active(isNatList(cons(z0, z1))) -> mark(and(isNat(z0), isNatList(z1))) active(isNatList(take(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(length(nil)) -> mark(0) active(length(cons(z0, z1))) -> mark(U11(and(isNatList(z1), isNat(z0)), z1)) active(take(0, z0)) -> mark(U21(isNatIList(z0))) active(take(s(z0), cons(z1, z2))) -> mark(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)) mark(zeros) -> active(zeros) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(0) -> active(0) mark(U11(z0, z1)) -> active(U11(mark(z0), z1)) mark(tt) -> active(tt) mark(s(z0)) -> active(s(mark(z0))) mark(length(z0)) -> active(length(mark(z0))) mark(U21(z0)) -> active(U21(mark(z0))) mark(nil) -> active(nil) mark(U31(z0, z1, z2, z3)) -> active(U31(mark(z0), z1, z2, z3)) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(isNat(z0)) -> active(isNat(z0)) mark(isNatList(z0)) -> active(isNatList(z0)) mark(isNatIList(z0)) -> active(isNatIList(z0)) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) U11(mark(z0), z1) -> U11(z0, z1) U11(z0, mark(z1)) -> U11(z0, z1) U11(active(z0), z1) -> U11(z0, z1) U11(z0, active(z1)) -> U11(z0, z1) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) length(mark(z0)) -> length(z0) length(active(z0)) -> length(z0) U21(mark(z0)) -> U21(z0) U21(active(z0)) -> U21(z0) U31(mark(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, mark(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, mark(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, mark(z3)) -> U31(z0, z1, z2, z3) U31(active(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, active(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, active(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, active(z3)) -> U31(z0, z1, z2, z3) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) isNat(mark(z0)) -> isNat(z0) isNat(active(z0)) -> isNat(z0) isNatList(mark(z0)) -> isNatList(z0) isNatList(active(z0)) -> isNatList(z0) isNatIList(mark(z0)) -> isNatIList(z0) isNatIList(active(z0)) -> isNatIList(z0) Tuples: ENCARG(cons_s(z0)) -> c8(S(encArg(z0)), ENCARG(z0)) ENCARG(cons_length(z0)) -> c9(LENGTH(encArg(z0)), ENCARG(z0)) ENCARG(cons_U21(z0)) -> c10(U21'(encArg(z0)), ENCARG(z0)) ENCARG(cons_U31(z0, z1, z2, z3)) -> c11(U31'(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), ENCARG(z0), ENCARG(z1), ENCARG(z2), ENCARG(z3)) ENCARG(cons_take(z0, z1)) -> c12(TAKE(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_and(z0, z1)) -> c13(AND(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_isNat(z0)) -> c14(ISNAT(encArg(z0)), ENCARG(z0)) ENCARG(cons_isNatList(z0)) -> c15(ISNATLIST(encArg(z0)), ENCARG(z0)) ENCARG(cons_isNatIList(z0)) -> c16(ISNATILIST(encArg(z0)), ENCARG(z0)) ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(cons(z0, z1)) -> c53(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(mark(z0), z1)), U11'(mark(z0), z1), MARK(z0)) MARK(s(z0)) -> c57(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(mark(z0))), LENGTH(mark(z0)), MARK(z0)) MARK(U21(z0)) -> c59(ACTIVE(U21(mark(z0))), U21'(mark(z0)), MARK(z0)) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(mark(z0), z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(take(z0, z1)) -> c62(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 ENCODE_ACTIVE(z0) -> c(ACTIVE(encArg(z0))) ENCODE_MARK(z0) -> c(MARK(encArg(z0))) ENCODE_CONS(z0, z1) -> c(CONS(encArg(z0), encArg(z1))) ENCODE_U11(z0, z1) -> c(U11'(encArg(z0), encArg(z1))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_LENGTH(z0) -> c(LENGTH(encArg(z0))) ENCODE_U21(z0) -> c(U21'(encArg(z0))) ENCODE_U31(z0, z1, z2, z3) -> c(U31'(encArg(z0), encArg(z1), encArg(z2), encArg(z3))) ENCODE_TAKE(z0, z1) -> c(TAKE(encArg(z0), encArg(z1))) ENCODE_AND(z0, z1) -> c(AND(encArg(z0), encArg(z1))) ENCODE_ISNAT(z0) -> c(ISNAT(encArg(z0))) ENCODE_ISNATLIST(z0) -> c(ISNATLIST(encArg(z0))) ENCODE_ISNATILIST(z0) -> c(ISNATILIST(encArg(z0))) ENCARG(cons_active(cons_active(z0))) -> c4(ACTIVE(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_active(cons_mark(z0))) -> c4(ACTIVE(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_active(cons_cons(z0, z1))) -> c4(ACTIVE(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_active(cons_U11(z0, z1))) -> c4(ACTIVE(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_active(cons_s(z0))) -> c4(ACTIVE(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_active(cons_length(z0))) -> c4(ACTIVE(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_active(cons_U21(z0))) -> c4(ACTIVE(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_active(cons_U31(z0, z1, z2, z3))) -> c4(ACTIVE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_active(cons_take(z0, z1))) -> c4(ACTIVE(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_active(cons_and(z0, z1))) -> c4(ACTIVE(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_active(cons_isNat(z0))) -> c4(ACTIVE(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_active(cons_isNatList(z0))) -> c4(ACTIVE(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_active(cons_isNatIList(z0))) -> c4(ACTIVE(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_active(zeros)) -> c4(ACTIVE(zeros)) ENCARG(cons_mark(cons_active(z0))) -> c5(MARK(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_mark(cons_mark(z0))) -> c5(MARK(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_mark(cons_cons(z0, z1))) -> c5(MARK(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_mark(cons_U11(z0, z1))) -> c5(MARK(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_mark(cons_s(z0))) -> c5(MARK(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_mark(cons_length(z0))) -> c5(MARK(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_mark(cons_U21(z0))) -> c5(MARK(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_mark(cons_U31(z0, z1, z2, z3))) -> c5(MARK(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_mark(cons_take(z0, z1))) -> c5(MARK(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(cons_and(z0, z1))) -> c5(MARK(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_mark(cons_isNat(z0))) -> c5(MARK(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_mark(cons_isNatList(z0))) -> c5(MARK(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_mark(cons_isNatIList(z0))) -> c5(MARK(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_mark(zeros)) -> c5(MARK(zeros)) ENCARG(cons_mark(0)) -> c5(MARK(0)) ENCARG(cons_mark(tt)) -> c5(MARK(tt)) ENCARG(cons_mark(nil)) -> c5(MARK(nil)) ENCARG(cons_cons(x0, cons_active(z0))) -> c6(CONS(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_cons(x0, cons_mark(z0))) -> c6(CONS(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_cons(x0, cons_cons(z0, z1))) -> c6(CONS(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_cons(x0, cons_U11(z0, z1))) -> c6(CONS(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_cons(x0, cons_s(z0))) -> c6(CONS(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_cons(x0, cons_length(z0))) -> c6(CONS(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_cons(x0, cons_U21(z0))) -> c6(CONS(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_cons(x0, cons_U31(z0, z1, z2, z3))) -> c6(CONS(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_cons(x0, cons_take(z0, z1))) -> c6(CONS(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_cons(x0, cons_and(z0, z1))) -> c6(CONS(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_cons(x0, cons_isNat(z0))) -> c6(CONS(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_cons(x0, cons_isNatList(z0))) -> c6(CONS(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_cons(x0, cons_isNatIList(z0))) -> c6(CONS(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_cons(cons_active(z0), x1)) -> c6(CONS(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_mark(z0), x1)) -> c6(CONS(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_cons(z0, z1), x1)) -> c6(CONS(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_U11(z0, z1), x1)) -> c6(CONS(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_s(z0), x1)) -> c6(CONS(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_length(z0), x1)) -> c6(CONS(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U21(z0), x1)) -> c6(CONS(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U31(z0, z1, z2, z3), x1)) -> c6(CONS(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_cons(cons_take(z0, z1), x1)) -> c6(CONS(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_and(z0, z1), x1)) -> c6(CONS(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_isNat(z0), x1)) -> c6(CONS(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_isNatList(z0), x1)) -> c6(CONS(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_isNatIList(z0), x1)) -> c6(CONS(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_cons(x0, zeros)) -> c6(CONS(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_cons(x0, 0)) -> c6(CONS(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_cons(x0, tt)) -> c6(CONS(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_cons(x0, nil)) -> c6(CONS(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_cons(zeros, x1)) -> c6(CONS(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(0, x1)) -> c6(CONS(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(tt, x1)) -> c6(CONS(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(nil, x1)) -> c6(CONS(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(x0, cons_active(z0))) -> c7(U11'(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_U11(x0, cons_mark(z0))) -> c7(U11'(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_U11(x0, cons_cons(z0, z1))) -> c7(U11'(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U11(x0, cons_U11(z0, z1))) -> c7(U11'(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U11(x0, cons_s(z0))) -> c7(U11'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_U11(x0, cons_length(z0))) -> c7(U11'(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_U11(x0, cons_U21(z0))) -> c7(U11'(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_U11(x0, cons_U31(z0, z1, z2, z3))) -> c7(U11'(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U11(x0, cons_take(z0, z1))) -> c7(U11'(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_U11(x0, cons_and(z0, z1))) -> c7(U11'(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_U11(x0, cons_isNat(z0))) -> c7(U11'(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_U11(x0, cons_isNatList(z0))) -> c7(U11'(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_U11(x0, cons_isNatIList(z0))) -> c7(U11'(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U11(cons_active(z0), x1)) -> c7(U11'(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_mark(z0), x1)) -> c7(U11'(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_cons(z0, z1), x1)) -> c7(U11'(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_U11(z0, z1), x1)) -> c7(U11'(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_s(z0), x1)) -> c7(U11'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_length(z0), x1)) -> c7(U11'(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_U21(z0), x1)) -> c7(U11'(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_U31(z0, z1, z2, z3), x1)) -> c7(U11'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_U11(cons_take(z0, z1), x1)) -> c7(U11'(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_and(z0, z1), x1)) -> c7(U11'(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_isNat(z0), x1)) -> c7(U11'(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_isNatList(z0), x1)) -> c7(U11'(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_isNatIList(z0), x1)) -> c7(U11'(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_U11(x0, zeros)) -> c7(U11'(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_U11(x0, 0)) -> c7(U11'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_U11(x0, tt)) -> c7(U11'(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_U11(x0, nil)) -> c7(U11'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_U11(zeros, x1)) -> c7(U11'(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(0, x1)) -> c7(U11'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(tt, x1)) -> c7(U11'(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(nil, x1)) -> c7(U11'(nil, encArg(x1)), ENCARG(x1)) S tuples: ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(cons(z0, z1)) -> c53(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(mark(z0), z1)), U11'(mark(z0), z1), MARK(z0)) MARK(s(z0)) -> c57(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(mark(z0))), LENGTH(mark(z0)), MARK(z0)) MARK(U21(z0)) -> c59(ACTIVE(U21(mark(z0))), U21'(mark(z0)), MARK(z0)) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(mark(z0), z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(take(z0, z1)) -> c62(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 K tuples:none Defined Rule Symbols: encArg_1, active_1, mark_1, cons_2, U11_2, s_1, length_1, U21_1, U31_4, take_2, and_2, isNat_1, isNatList_1, isNatIList_1 Defined Pair Symbols: ENCARG_1, ACTIVE_1, MARK_1, CONS_2, U11'_2, S_1, LENGTH_1, U21'_1, U31'_4, TAKE_2, AND_2, ISNAT_1, ISNATLIST_1, ISNATILIST_1, ENCODE_ACTIVE_1, ENCODE_MARK_1, ENCODE_CONS_2, ENCODE_U11_2, ENCODE_S_1, ENCODE_LENGTH_1, ENCODE_U21_1, ENCODE_U31_4, ENCODE_TAKE_2, ENCODE_AND_2, ENCODE_ISNAT_1, ENCODE_ISNATLIST_1, ENCODE_ISNATILIST_1 Compound Symbols: c8_2, c9_2, c10_2, c11_5, c12_3, c13_3, c14_2, c15_2, c16_2, c36_1, c37_3, c38_1, c39_1, c40_2, c41_2, c42_2, c43_1, c45_1, c48_1, c52_1, c53_3, c55_3, c57_3, c58_3, c59_3, c61_3, c62_4, c63_3, c64_2, c65_2, c66_2, c67_1, c68_1, c69_1, c70_1, c71_1, c72_1, c73_1, c74_1, c75_1, c76_1, c77_1, c78_1, c79_1, c80_1, c81_1, c82_1, c83_1, c84_1, c85_1, c86_1, c87_1, c88_1, c89_1, c90_1, c91_1, c92_1, c93_1, c94_1, c95_1, c96_1, c97_1, c98_1, c99_1, c100_1, c101_1, c102_1, c34_1, c35_2, c44_3, c46_3, c47_3, c49_3, c50_2, c51_4, c54, c56, c60, c_1, c4_2, c4_1, c5_2, c5_1, c6_3, c6_2, c7_3, c7_2 ---------------------------------------- (57) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace ENCARG(cons_s(z0)) -> c8(S(encArg(z0)), ENCARG(z0)) by ENCARG(cons_s(zeros)) -> c8(S(zeros), ENCARG(zeros)) ENCARG(cons_s(0)) -> c8(S(0), ENCARG(0)) ENCARG(cons_s(tt)) -> c8(S(tt), ENCARG(tt)) ENCARG(cons_s(nil)) -> c8(S(nil), ENCARG(nil)) ENCARG(cons_s(cons_active(z0))) -> c8(S(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_s(cons_mark(z0))) -> c8(S(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_s(cons_cons(z0, z1))) -> c8(S(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_s(cons_U11(z0, z1))) -> c8(S(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_s(cons_s(z0))) -> c8(S(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_length(z0))) -> c8(S(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_s(cons_U21(z0))) -> c8(S(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_s(cons_U31(z0, z1, z2, z3))) -> c8(S(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_s(cons_take(z0, z1))) -> c8(S(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_s(cons_and(z0, z1))) -> c8(S(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_s(cons_isNat(z0))) -> c8(S(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_s(cons_isNatList(z0))) -> c8(S(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_s(cons_isNatIList(z0))) -> c8(S(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ---------------------------------------- (58) Obligation: Complexity Dependency Tuples Problem Rules: encArg(zeros) -> zeros encArg(0) -> 0 encArg(tt) -> tt encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_U11(z0, z1)) -> U11(encArg(z0), encArg(z1)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_length(z0)) -> length(encArg(z0)) encArg(cons_U21(z0)) -> U21(encArg(z0)) encArg(cons_U31(z0, z1, z2, z3)) -> U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_isNat(z0)) -> isNat(encArg(z0)) encArg(cons_isNatList(z0)) -> isNatList(encArg(z0)) encArg(cons_isNatIList(z0)) -> isNatIList(encArg(z0)) active(zeros) -> mark(cons(0, zeros)) active(U11(tt, z0)) -> mark(s(length(z0))) active(U21(tt)) -> mark(nil) active(U31(tt, z0, z1, z2)) -> mark(cons(z2, take(z1, z0))) active(and(tt, z0)) -> mark(z0) active(isNat(0)) -> mark(tt) active(isNat(length(z0))) -> mark(isNatList(z0)) active(isNat(s(z0))) -> mark(isNat(z0)) active(isNatIList(z0)) -> mark(isNatList(z0)) active(isNatIList(zeros)) -> mark(tt) active(isNatIList(cons(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(isNatList(nil)) -> mark(tt) active(isNatList(cons(z0, z1))) -> mark(and(isNat(z0), isNatList(z1))) active(isNatList(take(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(length(nil)) -> mark(0) active(length(cons(z0, z1))) -> mark(U11(and(isNatList(z1), isNat(z0)), z1)) active(take(0, z0)) -> mark(U21(isNatIList(z0))) active(take(s(z0), cons(z1, z2))) -> mark(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)) mark(zeros) -> active(zeros) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(0) -> active(0) mark(U11(z0, z1)) -> active(U11(mark(z0), z1)) mark(tt) -> active(tt) mark(s(z0)) -> active(s(mark(z0))) mark(length(z0)) -> active(length(mark(z0))) mark(U21(z0)) -> active(U21(mark(z0))) mark(nil) -> active(nil) mark(U31(z0, z1, z2, z3)) -> active(U31(mark(z0), z1, z2, z3)) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(isNat(z0)) -> active(isNat(z0)) mark(isNatList(z0)) -> active(isNatList(z0)) mark(isNatIList(z0)) -> active(isNatIList(z0)) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) U11(mark(z0), z1) -> U11(z0, z1) U11(z0, mark(z1)) -> U11(z0, z1) U11(active(z0), z1) -> U11(z0, z1) U11(z0, active(z1)) -> U11(z0, z1) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) length(mark(z0)) -> length(z0) length(active(z0)) -> length(z0) U21(mark(z0)) -> U21(z0) U21(active(z0)) -> U21(z0) U31(mark(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, mark(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, mark(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, mark(z3)) -> U31(z0, z1, z2, z3) U31(active(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, active(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, active(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, active(z3)) -> U31(z0, z1, z2, z3) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) isNat(mark(z0)) -> isNat(z0) isNat(active(z0)) -> isNat(z0) isNatList(mark(z0)) -> isNatList(z0) isNatList(active(z0)) -> isNatList(z0) isNatIList(mark(z0)) -> isNatIList(z0) isNatIList(active(z0)) -> isNatIList(z0) Tuples: ENCARG(cons_length(z0)) -> c9(LENGTH(encArg(z0)), ENCARG(z0)) ENCARG(cons_U21(z0)) -> c10(U21'(encArg(z0)), ENCARG(z0)) ENCARG(cons_U31(z0, z1, z2, z3)) -> c11(U31'(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), ENCARG(z0), ENCARG(z1), ENCARG(z2), ENCARG(z3)) ENCARG(cons_take(z0, z1)) -> c12(TAKE(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_and(z0, z1)) -> c13(AND(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_isNat(z0)) -> c14(ISNAT(encArg(z0)), ENCARG(z0)) ENCARG(cons_isNatList(z0)) -> c15(ISNATLIST(encArg(z0)), ENCARG(z0)) ENCARG(cons_isNatIList(z0)) -> c16(ISNATILIST(encArg(z0)), ENCARG(z0)) ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(cons(z0, z1)) -> c53(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(mark(z0), z1)), U11'(mark(z0), z1), MARK(z0)) MARK(s(z0)) -> c57(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(mark(z0))), LENGTH(mark(z0)), MARK(z0)) MARK(U21(z0)) -> c59(ACTIVE(U21(mark(z0))), U21'(mark(z0)), MARK(z0)) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(mark(z0), z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(take(z0, z1)) -> c62(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 ENCODE_ACTIVE(z0) -> c(ACTIVE(encArg(z0))) ENCODE_MARK(z0) -> c(MARK(encArg(z0))) ENCODE_CONS(z0, z1) -> c(CONS(encArg(z0), encArg(z1))) ENCODE_U11(z0, z1) -> c(U11'(encArg(z0), encArg(z1))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_LENGTH(z0) -> c(LENGTH(encArg(z0))) ENCODE_U21(z0) -> c(U21'(encArg(z0))) ENCODE_U31(z0, z1, z2, z3) -> c(U31'(encArg(z0), encArg(z1), encArg(z2), encArg(z3))) ENCODE_TAKE(z0, z1) -> c(TAKE(encArg(z0), encArg(z1))) ENCODE_AND(z0, z1) -> c(AND(encArg(z0), encArg(z1))) ENCODE_ISNAT(z0) -> c(ISNAT(encArg(z0))) ENCODE_ISNATLIST(z0) -> c(ISNATLIST(encArg(z0))) ENCODE_ISNATILIST(z0) -> c(ISNATILIST(encArg(z0))) ENCARG(cons_active(cons_active(z0))) -> c4(ACTIVE(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_active(cons_mark(z0))) -> c4(ACTIVE(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_active(cons_cons(z0, z1))) -> c4(ACTIVE(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_active(cons_U11(z0, z1))) -> c4(ACTIVE(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_active(cons_s(z0))) -> c4(ACTIVE(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_active(cons_length(z0))) -> c4(ACTIVE(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_active(cons_U21(z0))) -> c4(ACTIVE(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_active(cons_U31(z0, z1, z2, z3))) -> c4(ACTIVE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_active(cons_take(z0, z1))) -> c4(ACTIVE(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_active(cons_and(z0, z1))) -> c4(ACTIVE(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_active(cons_isNat(z0))) -> c4(ACTIVE(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_active(cons_isNatList(z0))) -> c4(ACTIVE(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_active(cons_isNatIList(z0))) -> c4(ACTIVE(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_active(zeros)) -> c4(ACTIVE(zeros)) ENCARG(cons_mark(cons_active(z0))) -> c5(MARK(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_mark(cons_mark(z0))) -> c5(MARK(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_mark(cons_cons(z0, z1))) -> c5(MARK(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_mark(cons_U11(z0, z1))) -> c5(MARK(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_mark(cons_s(z0))) -> c5(MARK(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_mark(cons_length(z0))) -> c5(MARK(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_mark(cons_U21(z0))) -> c5(MARK(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_mark(cons_U31(z0, z1, z2, z3))) -> c5(MARK(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_mark(cons_take(z0, z1))) -> c5(MARK(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(cons_and(z0, z1))) -> c5(MARK(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_mark(cons_isNat(z0))) -> c5(MARK(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_mark(cons_isNatList(z0))) -> c5(MARK(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_mark(cons_isNatIList(z0))) -> c5(MARK(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_mark(zeros)) -> c5(MARK(zeros)) ENCARG(cons_mark(0)) -> c5(MARK(0)) ENCARG(cons_mark(tt)) -> c5(MARK(tt)) ENCARG(cons_mark(nil)) -> c5(MARK(nil)) ENCARG(cons_cons(x0, cons_active(z0))) -> c6(CONS(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_cons(x0, cons_mark(z0))) -> c6(CONS(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_cons(x0, cons_cons(z0, z1))) -> c6(CONS(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_cons(x0, cons_U11(z0, z1))) -> c6(CONS(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_cons(x0, cons_s(z0))) -> c6(CONS(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_cons(x0, cons_length(z0))) -> c6(CONS(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_cons(x0, cons_U21(z0))) -> c6(CONS(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_cons(x0, cons_U31(z0, z1, z2, z3))) -> c6(CONS(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_cons(x0, cons_take(z0, z1))) -> c6(CONS(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_cons(x0, cons_and(z0, z1))) -> c6(CONS(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_cons(x0, cons_isNat(z0))) -> c6(CONS(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_cons(x0, cons_isNatList(z0))) -> c6(CONS(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_cons(x0, cons_isNatIList(z0))) -> c6(CONS(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_cons(cons_active(z0), x1)) -> c6(CONS(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_mark(z0), x1)) -> c6(CONS(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_cons(z0, z1), x1)) -> c6(CONS(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_U11(z0, z1), x1)) -> c6(CONS(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_s(z0), x1)) -> c6(CONS(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_length(z0), x1)) -> c6(CONS(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U21(z0), x1)) -> c6(CONS(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U31(z0, z1, z2, z3), x1)) -> c6(CONS(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_cons(cons_take(z0, z1), x1)) -> c6(CONS(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_and(z0, z1), x1)) -> c6(CONS(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_isNat(z0), x1)) -> c6(CONS(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_isNatList(z0), x1)) -> c6(CONS(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_isNatIList(z0), x1)) -> c6(CONS(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_cons(x0, zeros)) -> c6(CONS(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_cons(x0, 0)) -> c6(CONS(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_cons(x0, tt)) -> c6(CONS(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_cons(x0, nil)) -> c6(CONS(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_cons(zeros, x1)) -> c6(CONS(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(0, x1)) -> c6(CONS(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(tt, x1)) -> c6(CONS(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(nil, x1)) -> c6(CONS(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(x0, cons_active(z0))) -> c7(U11'(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_U11(x0, cons_mark(z0))) -> c7(U11'(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_U11(x0, cons_cons(z0, z1))) -> c7(U11'(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U11(x0, cons_U11(z0, z1))) -> c7(U11'(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U11(x0, cons_s(z0))) -> c7(U11'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_U11(x0, cons_length(z0))) -> c7(U11'(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_U11(x0, cons_U21(z0))) -> c7(U11'(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_U11(x0, cons_U31(z0, z1, z2, z3))) -> c7(U11'(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U11(x0, cons_take(z0, z1))) -> c7(U11'(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_U11(x0, cons_and(z0, z1))) -> c7(U11'(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_U11(x0, cons_isNat(z0))) -> c7(U11'(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_U11(x0, cons_isNatList(z0))) -> c7(U11'(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_U11(x0, cons_isNatIList(z0))) -> c7(U11'(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U11(cons_active(z0), x1)) -> c7(U11'(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_mark(z0), x1)) -> c7(U11'(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_cons(z0, z1), x1)) -> c7(U11'(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_U11(z0, z1), x1)) -> c7(U11'(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_s(z0), x1)) -> c7(U11'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_length(z0), x1)) -> c7(U11'(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_U21(z0), x1)) -> c7(U11'(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_U31(z0, z1, z2, z3), x1)) -> c7(U11'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_U11(cons_take(z0, z1), x1)) -> c7(U11'(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_and(z0, z1), x1)) -> c7(U11'(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_isNat(z0), x1)) -> c7(U11'(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_isNatList(z0), x1)) -> c7(U11'(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_isNatIList(z0), x1)) -> c7(U11'(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_U11(x0, zeros)) -> c7(U11'(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_U11(x0, 0)) -> c7(U11'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_U11(x0, tt)) -> c7(U11'(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_U11(x0, nil)) -> c7(U11'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_U11(zeros, x1)) -> c7(U11'(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(0, x1)) -> c7(U11'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(tt, x1)) -> c7(U11'(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(nil, x1)) -> c7(U11'(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_s(zeros)) -> c8(S(zeros), ENCARG(zeros)) ENCARG(cons_s(0)) -> c8(S(0), ENCARG(0)) ENCARG(cons_s(tt)) -> c8(S(tt), ENCARG(tt)) ENCARG(cons_s(nil)) -> c8(S(nil), ENCARG(nil)) ENCARG(cons_s(cons_active(z0))) -> c8(S(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_s(cons_mark(z0))) -> c8(S(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_s(cons_cons(z0, z1))) -> c8(S(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_s(cons_U11(z0, z1))) -> c8(S(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_s(cons_s(z0))) -> c8(S(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_length(z0))) -> c8(S(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_s(cons_U21(z0))) -> c8(S(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_s(cons_U31(z0, z1, z2, z3))) -> c8(S(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_s(cons_take(z0, z1))) -> c8(S(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_s(cons_and(z0, z1))) -> c8(S(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_s(cons_isNat(z0))) -> c8(S(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_s(cons_isNatList(z0))) -> c8(S(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_s(cons_isNatIList(z0))) -> c8(S(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) S tuples: ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(cons(z0, z1)) -> c53(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(mark(z0), z1)), U11'(mark(z0), z1), MARK(z0)) MARK(s(z0)) -> c57(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(mark(z0))), LENGTH(mark(z0)), MARK(z0)) MARK(U21(z0)) -> c59(ACTIVE(U21(mark(z0))), U21'(mark(z0)), MARK(z0)) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(mark(z0), z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(take(z0, z1)) -> c62(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 K tuples:none Defined Rule Symbols: encArg_1, active_1, mark_1, cons_2, U11_2, s_1, length_1, U21_1, U31_4, take_2, and_2, isNat_1, isNatList_1, isNatIList_1 Defined Pair Symbols: ENCARG_1, ACTIVE_1, MARK_1, CONS_2, U11'_2, S_1, LENGTH_1, U21'_1, U31'_4, TAKE_2, AND_2, ISNAT_1, ISNATLIST_1, ISNATILIST_1, ENCODE_ACTIVE_1, ENCODE_MARK_1, ENCODE_CONS_2, ENCODE_U11_2, ENCODE_S_1, ENCODE_LENGTH_1, ENCODE_U21_1, ENCODE_U31_4, ENCODE_TAKE_2, ENCODE_AND_2, ENCODE_ISNAT_1, ENCODE_ISNATLIST_1, ENCODE_ISNATILIST_1 Compound Symbols: c9_2, c10_2, c11_5, c12_3, c13_3, c14_2, c15_2, c16_2, c36_1, c37_3, c38_1, c39_1, c40_2, c41_2, c42_2, c43_1, c45_1, c48_1, c52_1, c53_3, c55_3, c57_3, c58_3, c59_3, c61_3, c62_4, c63_3, c64_2, c65_2, c66_2, c67_1, c68_1, c69_1, c70_1, c71_1, c72_1, c73_1, c74_1, c75_1, c76_1, c77_1, c78_1, c79_1, c80_1, c81_1, c82_1, c83_1, c84_1, c85_1, c86_1, c87_1, c88_1, c89_1, c90_1, c91_1, c92_1, c93_1, c94_1, c95_1, c96_1, c97_1, c98_1, c99_1, c100_1, c101_1, c102_1, c34_1, c35_2, c44_3, c46_3, c47_3, c49_3, c50_2, c51_4, c54, c56, c60, c_1, c4_2, c4_1, c5_2, c5_1, c6_3, c6_2, c7_3, c7_2, c8_2 ---------------------------------------- (59) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 4 trailing nodes: ENCARG(cons_s(zeros)) -> c8(S(zeros), ENCARG(zeros)) ENCARG(cons_s(nil)) -> c8(S(nil), ENCARG(nil)) ENCARG(cons_s(tt)) -> c8(S(tt), ENCARG(tt)) ENCARG(cons_s(0)) -> c8(S(0), ENCARG(0)) ---------------------------------------- (60) Obligation: Complexity Dependency Tuples Problem Rules: encArg(zeros) -> zeros encArg(0) -> 0 encArg(tt) -> tt encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_U11(z0, z1)) -> U11(encArg(z0), encArg(z1)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_length(z0)) -> length(encArg(z0)) encArg(cons_U21(z0)) -> U21(encArg(z0)) encArg(cons_U31(z0, z1, z2, z3)) -> U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_isNat(z0)) -> isNat(encArg(z0)) encArg(cons_isNatList(z0)) -> isNatList(encArg(z0)) encArg(cons_isNatIList(z0)) -> isNatIList(encArg(z0)) active(zeros) -> mark(cons(0, zeros)) active(U11(tt, z0)) -> mark(s(length(z0))) active(U21(tt)) -> mark(nil) active(U31(tt, z0, z1, z2)) -> mark(cons(z2, take(z1, z0))) active(and(tt, z0)) -> mark(z0) active(isNat(0)) -> mark(tt) active(isNat(length(z0))) -> mark(isNatList(z0)) active(isNat(s(z0))) -> mark(isNat(z0)) active(isNatIList(z0)) -> mark(isNatList(z0)) active(isNatIList(zeros)) -> mark(tt) active(isNatIList(cons(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(isNatList(nil)) -> mark(tt) active(isNatList(cons(z0, z1))) -> mark(and(isNat(z0), isNatList(z1))) active(isNatList(take(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(length(nil)) -> mark(0) active(length(cons(z0, z1))) -> mark(U11(and(isNatList(z1), isNat(z0)), z1)) active(take(0, z0)) -> mark(U21(isNatIList(z0))) active(take(s(z0), cons(z1, z2))) -> mark(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)) mark(zeros) -> active(zeros) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(0) -> active(0) mark(U11(z0, z1)) -> active(U11(mark(z0), z1)) mark(tt) -> active(tt) mark(s(z0)) -> active(s(mark(z0))) mark(length(z0)) -> active(length(mark(z0))) mark(U21(z0)) -> active(U21(mark(z0))) mark(nil) -> active(nil) mark(U31(z0, z1, z2, z3)) -> active(U31(mark(z0), z1, z2, z3)) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(isNat(z0)) -> active(isNat(z0)) mark(isNatList(z0)) -> active(isNatList(z0)) mark(isNatIList(z0)) -> active(isNatIList(z0)) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) U11(mark(z0), z1) -> U11(z0, z1) U11(z0, mark(z1)) -> U11(z0, z1) U11(active(z0), z1) -> U11(z0, z1) U11(z0, active(z1)) -> U11(z0, z1) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) length(mark(z0)) -> length(z0) length(active(z0)) -> length(z0) U21(mark(z0)) -> U21(z0) U21(active(z0)) -> U21(z0) U31(mark(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, mark(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, mark(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, mark(z3)) -> U31(z0, z1, z2, z3) U31(active(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, active(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, active(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, active(z3)) -> U31(z0, z1, z2, z3) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) isNat(mark(z0)) -> isNat(z0) isNat(active(z0)) -> isNat(z0) isNatList(mark(z0)) -> isNatList(z0) isNatList(active(z0)) -> isNatList(z0) isNatIList(mark(z0)) -> isNatIList(z0) isNatIList(active(z0)) -> isNatIList(z0) Tuples: ENCARG(cons_length(z0)) -> c9(LENGTH(encArg(z0)), ENCARG(z0)) ENCARG(cons_U21(z0)) -> c10(U21'(encArg(z0)), ENCARG(z0)) ENCARG(cons_U31(z0, z1, z2, z3)) -> c11(U31'(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), ENCARG(z0), ENCARG(z1), ENCARG(z2), ENCARG(z3)) ENCARG(cons_take(z0, z1)) -> c12(TAKE(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_and(z0, z1)) -> c13(AND(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_isNat(z0)) -> c14(ISNAT(encArg(z0)), ENCARG(z0)) ENCARG(cons_isNatList(z0)) -> c15(ISNATLIST(encArg(z0)), ENCARG(z0)) ENCARG(cons_isNatIList(z0)) -> c16(ISNATILIST(encArg(z0)), ENCARG(z0)) ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(cons(z0, z1)) -> c53(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(mark(z0), z1)), U11'(mark(z0), z1), MARK(z0)) MARK(s(z0)) -> c57(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(mark(z0))), LENGTH(mark(z0)), MARK(z0)) MARK(U21(z0)) -> c59(ACTIVE(U21(mark(z0))), U21'(mark(z0)), MARK(z0)) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(mark(z0), z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(take(z0, z1)) -> c62(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 ENCODE_ACTIVE(z0) -> c(ACTIVE(encArg(z0))) ENCODE_MARK(z0) -> c(MARK(encArg(z0))) ENCODE_CONS(z0, z1) -> c(CONS(encArg(z0), encArg(z1))) ENCODE_U11(z0, z1) -> c(U11'(encArg(z0), encArg(z1))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_LENGTH(z0) -> c(LENGTH(encArg(z0))) ENCODE_U21(z0) -> c(U21'(encArg(z0))) ENCODE_U31(z0, z1, z2, z3) -> c(U31'(encArg(z0), encArg(z1), encArg(z2), encArg(z3))) ENCODE_TAKE(z0, z1) -> c(TAKE(encArg(z0), encArg(z1))) ENCODE_AND(z0, z1) -> c(AND(encArg(z0), encArg(z1))) ENCODE_ISNAT(z0) -> c(ISNAT(encArg(z0))) ENCODE_ISNATLIST(z0) -> c(ISNATLIST(encArg(z0))) ENCODE_ISNATILIST(z0) -> c(ISNATILIST(encArg(z0))) ENCARG(cons_active(cons_active(z0))) -> c4(ACTIVE(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_active(cons_mark(z0))) -> c4(ACTIVE(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_active(cons_cons(z0, z1))) -> c4(ACTIVE(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_active(cons_U11(z0, z1))) -> c4(ACTIVE(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_active(cons_s(z0))) -> c4(ACTIVE(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_active(cons_length(z0))) -> c4(ACTIVE(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_active(cons_U21(z0))) -> c4(ACTIVE(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_active(cons_U31(z0, z1, z2, z3))) -> c4(ACTIVE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_active(cons_take(z0, z1))) -> c4(ACTIVE(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_active(cons_and(z0, z1))) -> c4(ACTIVE(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_active(cons_isNat(z0))) -> c4(ACTIVE(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_active(cons_isNatList(z0))) -> c4(ACTIVE(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_active(cons_isNatIList(z0))) -> c4(ACTIVE(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_active(zeros)) -> c4(ACTIVE(zeros)) ENCARG(cons_mark(cons_active(z0))) -> c5(MARK(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_mark(cons_mark(z0))) -> c5(MARK(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_mark(cons_cons(z0, z1))) -> c5(MARK(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_mark(cons_U11(z0, z1))) -> c5(MARK(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_mark(cons_s(z0))) -> c5(MARK(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_mark(cons_length(z0))) -> c5(MARK(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_mark(cons_U21(z0))) -> c5(MARK(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_mark(cons_U31(z0, z1, z2, z3))) -> c5(MARK(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_mark(cons_take(z0, z1))) -> c5(MARK(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(cons_and(z0, z1))) -> c5(MARK(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_mark(cons_isNat(z0))) -> c5(MARK(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_mark(cons_isNatList(z0))) -> c5(MARK(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_mark(cons_isNatIList(z0))) -> c5(MARK(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_mark(zeros)) -> c5(MARK(zeros)) ENCARG(cons_mark(0)) -> c5(MARK(0)) ENCARG(cons_mark(tt)) -> c5(MARK(tt)) ENCARG(cons_mark(nil)) -> c5(MARK(nil)) ENCARG(cons_cons(x0, cons_active(z0))) -> c6(CONS(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_cons(x0, cons_mark(z0))) -> c6(CONS(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_cons(x0, cons_cons(z0, z1))) -> c6(CONS(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_cons(x0, cons_U11(z0, z1))) -> c6(CONS(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_cons(x0, cons_s(z0))) -> c6(CONS(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_cons(x0, cons_length(z0))) -> c6(CONS(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_cons(x0, cons_U21(z0))) -> c6(CONS(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_cons(x0, cons_U31(z0, z1, z2, z3))) -> c6(CONS(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_cons(x0, cons_take(z0, z1))) -> c6(CONS(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_cons(x0, cons_and(z0, z1))) -> c6(CONS(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_cons(x0, cons_isNat(z0))) -> c6(CONS(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_cons(x0, cons_isNatList(z0))) -> c6(CONS(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_cons(x0, cons_isNatIList(z0))) -> c6(CONS(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_cons(cons_active(z0), x1)) -> c6(CONS(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_mark(z0), x1)) -> c6(CONS(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_cons(z0, z1), x1)) -> c6(CONS(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_U11(z0, z1), x1)) -> c6(CONS(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_s(z0), x1)) -> c6(CONS(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_length(z0), x1)) -> c6(CONS(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U21(z0), x1)) -> c6(CONS(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U31(z0, z1, z2, z3), x1)) -> c6(CONS(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_cons(cons_take(z0, z1), x1)) -> c6(CONS(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_and(z0, z1), x1)) -> c6(CONS(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_isNat(z0), x1)) -> c6(CONS(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_isNatList(z0), x1)) -> c6(CONS(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_isNatIList(z0), x1)) -> c6(CONS(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_cons(x0, zeros)) -> c6(CONS(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_cons(x0, 0)) -> c6(CONS(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_cons(x0, tt)) -> c6(CONS(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_cons(x0, nil)) -> c6(CONS(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_cons(zeros, x1)) -> c6(CONS(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(0, x1)) -> c6(CONS(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(tt, x1)) -> c6(CONS(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(nil, x1)) -> c6(CONS(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(x0, cons_active(z0))) -> c7(U11'(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_U11(x0, cons_mark(z0))) -> c7(U11'(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_U11(x0, cons_cons(z0, z1))) -> c7(U11'(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U11(x0, cons_U11(z0, z1))) -> c7(U11'(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U11(x0, cons_s(z0))) -> c7(U11'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_U11(x0, cons_length(z0))) -> c7(U11'(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_U11(x0, cons_U21(z0))) -> c7(U11'(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_U11(x0, cons_U31(z0, z1, z2, z3))) -> c7(U11'(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U11(x0, cons_take(z0, z1))) -> c7(U11'(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_U11(x0, cons_and(z0, z1))) -> c7(U11'(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_U11(x0, cons_isNat(z0))) -> c7(U11'(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_U11(x0, cons_isNatList(z0))) -> c7(U11'(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_U11(x0, cons_isNatIList(z0))) -> c7(U11'(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U11(cons_active(z0), x1)) -> c7(U11'(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_mark(z0), x1)) -> c7(U11'(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_cons(z0, z1), x1)) -> c7(U11'(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_U11(z0, z1), x1)) -> c7(U11'(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_s(z0), x1)) -> c7(U11'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_length(z0), x1)) -> c7(U11'(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_U21(z0), x1)) -> c7(U11'(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_U31(z0, z1, z2, z3), x1)) -> c7(U11'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_U11(cons_take(z0, z1), x1)) -> c7(U11'(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_and(z0, z1), x1)) -> c7(U11'(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_isNat(z0), x1)) -> c7(U11'(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_isNatList(z0), x1)) -> c7(U11'(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_isNatIList(z0), x1)) -> c7(U11'(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_U11(x0, zeros)) -> c7(U11'(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_U11(x0, 0)) -> c7(U11'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_U11(x0, tt)) -> c7(U11'(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_U11(x0, nil)) -> c7(U11'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_U11(zeros, x1)) -> c7(U11'(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(0, x1)) -> c7(U11'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(tt, x1)) -> c7(U11'(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(nil, x1)) -> c7(U11'(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_s(cons_active(z0))) -> c8(S(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_s(cons_mark(z0))) -> c8(S(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_s(cons_cons(z0, z1))) -> c8(S(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_s(cons_U11(z0, z1))) -> c8(S(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_s(cons_s(z0))) -> c8(S(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_length(z0))) -> c8(S(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_s(cons_U21(z0))) -> c8(S(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_s(cons_U31(z0, z1, z2, z3))) -> c8(S(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_s(cons_take(z0, z1))) -> c8(S(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_s(cons_and(z0, z1))) -> c8(S(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_s(cons_isNat(z0))) -> c8(S(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_s(cons_isNatList(z0))) -> c8(S(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_s(cons_isNatIList(z0))) -> c8(S(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) S tuples: ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(cons(z0, z1)) -> c53(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(mark(z0), z1)), U11'(mark(z0), z1), MARK(z0)) MARK(s(z0)) -> c57(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(mark(z0))), LENGTH(mark(z0)), MARK(z0)) MARK(U21(z0)) -> c59(ACTIVE(U21(mark(z0))), U21'(mark(z0)), MARK(z0)) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(mark(z0), z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(take(z0, z1)) -> c62(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 K tuples:none Defined Rule Symbols: encArg_1, active_1, mark_1, cons_2, U11_2, s_1, length_1, U21_1, U31_4, take_2, and_2, isNat_1, isNatList_1, isNatIList_1 Defined Pair Symbols: ENCARG_1, ACTIVE_1, MARK_1, CONS_2, U11'_2, S_1, LENGTH_1, U21'_1, U31'_4, TAKE_2, AND_2, ISNAT_1, ISNATLIST_1, ISNATILIST_1, ENCODE_ACTIVE_1, ENCODE_MARK_1, ENCODE_CONS_2, ENCODE_U11_2, ENCODE_S_1, ENCODE_LENGTH_1, ENCODE_U21_1, ENCODE_U31_4, ENCODE_TAKE_2, ENCODE_AND_2, ENCODE_ISNAT_1, ENCODE_ISNATLIST_1, ENCODE_ISNATILIST_1 Compound Symbols: c9_2, c10_2, c11_5, c12_3, c13_3, c14_2, c15_2, c16_2, c36_1, c37_3, c38_1, c39_1, c40_2, c41_2, c42_2, c43_1, c45_1, c48_1, c52_1, c53_3, c55_3, c57_3, c58_3, c59_3, c61_3, c62_4, c63_3, c64_2, c65_2, c66_2, c67_1, c68_1, c69_1, c70_1, c71_1, c72_1, c73_1, c74_1, c75_1, c76_1, c77_1, c78_1, c79_1, c80_1, c81_1, c82_1, c83_1, c84_1, c85_1, c86_1, c87_1, c88_1, c89_1, c90_1, c91_1, c92_1, c93_1, c94_1, c95_1, c96_1, c97_1, c98_1, c99_1, c100_1, c101_1, c102_1, c34_1, c35_2, c44_3, c46_3, c47_3, c49_3, c50_2, c51_4, c54, c56, c60, c_1, c4_2, c4_1, c5_2, c5_1, c6_3, c6_2, c7_3, c7_2, c8_2 ---------------------------------------- (61) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace ENCARG(cons_length(z0)) -> c9(LENGTH(encArg(z0)), ENCARG(z0)) by ENCARG(cons_length(zeros)) -> c9(LENGTH(zeros), ENCARG(zeros)) ENCARG(cons_length(0)) -> c9(LENGTH(0), ENCARG(0)) ENCARG(cons_length(tt)) -> c9(LENGTH(tt), ENCARG(tt)) ENCARG(cons_length(nil)) -> c9(LENGTH(nil), ENCARG(nil)) ENCARG(cons_length(cons_active(z0))) -> c9(LENGTH(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_length(cons_mark(z0))) -> c9(LENGTH(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_length(cons_cons(z0, z1))) -> c9(LENGTH(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_length(cons_U11(z0, z1))) -> c9(LENGTH(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_length(cons_s(z0))) -> c9(LENGTH(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_length(cons_length(z0))) -> c9(LENGTH(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_length(cons_U21(z0))) -> c9(LENGTH(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_length(cons_U31(z0, z1, z2, z3))) -> c9(LENGTH(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_length(cons_take(z0, z1))) -> c9(LENGTH(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_length(cons_and(z0, z1))) -> c9(LENGTH(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_length(cons_isNat(z0))) -> c9(LENGTH(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_length(cons_isNatList(z0))) -> c9(LENGTH(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_length(cons_isNatIList(z0))) -> c9(LENGTH(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ---------------------------------------- (62) Obligation: Complexity Dependency Tuples Problem Rules: encArg(zeros) -> zeros encArg(0) -> 0 encArg(tt) -> tt encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_U11(z0, z1)) -> U11(encArg(z0), encArg(z1)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_length(z0)) -> length(encArg(z0)) encArg(cons_U21(z0)) -> U21(encArg(z0)) encArg(cons_U31(z0, z1, z2, z3)) -> U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_isNat(z0)) -> isNat(encArg(z0)) encArg(cons_isNatList(z0)) -> isNatList(encArg(z0)) encArg(cons_isNatIList(z0)) -> isNatIList(encArg(z0)) active(zeros) -> mark(cons(0, zeros)) active(U11(tt, z0)) -> mark(s(length(z0))) active(U21(tt)) -> mark(nil) active(U31(tt, z0, z1, z2)) -> mark(cons(z2, take(z1, z0))) active(and(tt, z0)) -> mark(z0) active(isNat(0)) -> mark(tt) active(isNat(length(z0))) -> mark(isNatList(z0)) active(isNat(s(z0))) -> mark(isNat(z0)) active(isNatIList(z0)) -> mark(isNatList(z0)) active(isNatIList(zeros)) -> mark(tt) active(isNatIList(cons(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(isNatList(nil)) -> mark(tt) active(isNatList(cons(z0, z1))) -> mark(and(isNat(z0), isNatList(z1))) active(isNatList(take(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(length(nil)) -> mark(0) active(length(cons(z0, z1))) -> mark(U11(and(isNatList(z1), isNat(z0)), z1)) active(take(0, z0)) -> mark(U21(isNatIList(z0))) active(take(s(z0), cons(z1, z2))) -> mark(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)) mark(zeros) -> active(zeros) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(0) -> active(0) mark(U11(z0, z1)) -> active(U11(mark(z0), z1)) mark(tt) -> active(tt) mark(s(z0)) -> active(s(mark(z0))) mark(length(z0)) -> active(length(mark(z0))) mark(U21(z0)) -> active(U21(mark(z0))) mark(nil) -> active(nil) mark(U31(z0, z1, z2, z3)) -> active(U31(mark(z0), z1, z2, z3)) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(isNat(z0)) -> active(isNat(z0)) mark(isNatList(z0)) -> active(isNatList(z0)) mark(isNatIList(z0)) -> active(isNatIList(z0)) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) U11(mark(z0), z1) -> U11(z0, z1) U11(z0, mark(z1)) -> U11(z0, z1) U11(active(z0), z1) -> U11(z0, z1) U11(z0, active(z1)) -> U11(z0, z1) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) length(mark(z0)) -> length(z0) length(active(z0)) -> length(z0) U21(mark(z0)) -> U21(z0) U21(active(z0)) -> U21(z0) U31(mark(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, mark(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, mark(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, mark(z3)) -> U31(z0, z1, z2, z3) U31(active(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, active(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, active(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, active(z3)) -> U31(z0, z1, z2, z3) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) isNat(mark(z0)) -> isNat(z0) isNat(active(z0)) -> isNat(z0) isNatList(mark(z0)) -> isNatList(z0) isNatList(active(z0)) -> isNatList(z0) isNatIList(mark(z0)) -> isNatIList(z0) isNatIList(active(z0)) -> isNatIList(z0) Tuples: ENCARG(cons_U21(z0)) -> c10(U21'(encArg(z0)), ENCARG(z0)) ENCARG(cons_U31(z0, z1, z2, z3)) -> c11(U31'(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), ENCARG(z0), ENCARG(z1), ENCARG(z2), ENCARG(z3)) ENCARG(cons_take(z0, z1)) -> c12(TAKE(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_and(z0, z1)) -> c13(AND(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_isNat(z0)) -> c14(ISNAT(encArg(z0)), ENCARG(z0)) ENCARG(cons_isNatList(z0)) -> c15(ISNATLIST(encArg(z0)), ENCARG(z0)) ENCARG(cons_isNatIList(z0)) -> c16(ISNATILIST(encArg(z0)), ENCARG(z0)) ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(cons(z0, z1)) -> c53(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(mark(z0), z1)), U11'(mark(z0), z1), MARK(z0)) MARK(s(z0)) -> c57(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(mark(z0))), LENGTH(mark(z0)), MARK(z0)) MARK(U21(z0)) -> c59(ACTIVE(U21(mark(z0))), U21'(mark(z0)), MARK(z0)) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(mark(z0), z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(take(z0, z1)) -> c62(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 ENCODE_ACTIVE(z0) -> c(ACTIVE(encArg(z0))) ENCODE_MARK(z0) -> c(MARK(encArg(z0))) ENCODE_CONS(z0, z1) -> c(CONS(encArg(z0), encArg(z1))) ENCODE_U11(z0, z1) -> c(U11'(encArg(z0), encArg(z1))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_LENGTH(z0) -> c(LENGTH(encArg(z0))) ENCODE_U21(z0) -> c(U21'(encArg(z0))) ENCODE_U31(z0, z1, z2, z3) -> c(U31'(encArg(z0), encArg(z1), encArg(z2), encArg(z3))) ENCODE_TAKE(z0, z1) -> c(TAKE(encArg(z0), encArg(z1))) ENCODE_AND(z0, z1) -> c(AND(encArg(z0), encArg(z1))) ENCODE_ISNAT(z0) -> c(ISNAT(encArg(z0))) ENCODE_ISNATLIST(z0) -> c(ISNATLIST(encArg(z0))) ENCODE_ISNATILIST(z0) -> c(ISNATILIST(encArg(z0))) ENCARG(cons_active(cons_active(z0))) -> c4(ACTIVE(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_active(cons_mark(z0))) -> c4(ACTIVE(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_active(cons_cons(z0, z1))) -> c4(ACTIVE(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_active(cons_U11(z0, z1))) -> c4(ACTIVE(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_active(cons_s(z0))) -> c4(ACTIVE(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_active(cons_length(z0))) -> c4(ACTIVE(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_active(cons_U21(z0))) -> c4(ACTIVE(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_active(cons_U31(z0, z1, z2, z3))) -> c4(ACTIVE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_active(cons_take(z0, z1))) -> c4(ACTIVE(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_active(cons_and(z0, z1))) -> c4(ACTIVE(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_active(cons_isNat(z0))) -> c4(ACTIVE(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_active(cons_isNatList(z0))) -> c4(ACTIVE(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_active(cons_isNatIList(z0))) -> c4(ACTIVE(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_active(zeros)) -> c4(ACTIVE(zeros)) ENCARG(cons_mark(cons_active(z0))) -> c5(MARK(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_mark(cons_mark(z0))) -> c5(MARK(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_mark(cons_cons(z0, z1))) -> c5(MARK(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_mark(cons_U11(z0, z1))) -> c5(MARK(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_mark(cons_s(z0))) -> c5(MARK(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_mark(cons_length(z0))) -> c5(MARK(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_mark(cons_U21(z0))) -> c5(MARK(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_mark(cons_U31(z0, z1, z2, z3))) -> c5(MARK(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_mark(cons_take(z0, z1))) -> c5(MARK(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(cons_and(z0, z1))) -> c5(MARK(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_mark(cons_isNat(z0))) -> c5(MARK(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_mark(cons_isNatList(z0))) -> c5(MARK(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_mark(cons_isNatIList(z0))) -> c5(MARK(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_mark(zeros)) -> c5(MARK(zeros)) ENCARG(cons_mark(0)) -> c5(MARK(0)) ENCARG(cons_mark(tt)) -> c5(MARK(tt)) ENCARG(cons_mark(nil)) -> c5(MARK(nil)) ENCARG(cons_cons(x0, cons_active(z0))) -> c6(CONS(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_cons(x0, cons_mark(z0))) -> c6(CONS(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_cons(x0, cons_cons(z0, z1))) -> c6(CONS(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_cons(x0, cons_U11(z0, z1))) -> c6(CONS(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_cons(x0, cons_s(z0))) -> c6(CONS(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_cons(x0, cons_length(z0))) -> c6(CONS(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_cons(x0, cons_U21(z0))) -> c6(CONS(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_cons(x0, cons_U31(z0, z1, z2, z3))) -> c6(CONS(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_cons(x0, cons_take(z0, z1))) -> c6(CONS(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_cons(x0, cons_and(z0, z1))) -> c6(CONS(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_cons(x0, cons_isNat(z0))) -> c6(CONS(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_cons(x0, cons_isNatList(z0))) -> c6(CONS(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_cons(x0, cons_isNatIList(z0))) -> c6(CONS(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_cons(cons_active(z0), x1)) -> c6(CONS(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_mark(z0), x1)) -> c6(CONS(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_cons(z0, z1), x1)) -> c6(CONS(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_U11(z0, z1), x1)) -> c6(CONS(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_s(z0), x1)) -> c6(CONS(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_length(z0), x1)) -> c6(CONS(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U21(z0), x1)) -> c6(CONS(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U31(z0, z1, z2, z3), x1)) -> c6(CONS(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_cons(cons_take(z0, z1), x1)) -> c6(CONS(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_and(z0, z1), x1)) -> c6(CONS(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_isNat(z0), x1)) -> c6(CONS(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_isNatList(z0), x1)) -> c6(CONS(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_isNatIList(z0), x1)) -> c6(CONS(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_cons(x0, zeros)) -> c6(CONS(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_cons(x0, 0)) -> c6(CONS(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_cons(x0, tt)) -> c6(CONS(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_cons(x0, nil)) -> c6(CONS(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_cons(zeros, x1)) -> c6(CONS(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(0, x1)) -> c6(CONS(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(tt, x1)) -> c6(CONS(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(nil, x1)) -> c6(CONS(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(x0, cons_active(z0))) -> c7(U11'(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_U11(x0, cons_mark(z0))) -> c7(U11'(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_U11(x0, cons_cons(z0, z1))) -> c7(U11'(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U11(x0, cons_U11(z0, z1))) -> c7(U11'(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U11(x0, cons_s(z0))) -> c7(U11'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_U11(x0, cons_length(z0))) -> c7(U11'(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_U11(x0, cons_U21(z0))) -> c7(U11'(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_U11(x0, cons_U31(z0, z1, z2, z3))) -> c7(U11'(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U11(x0, cons_take(z0, z1))) -> c7(U11'(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_U11(x0, cons_and(z0, z1))) -> c7(U11'(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_U11(x0, cons_isNat(z0))) -> c7(U11'(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_U11(x0, cons_isNatList(z0))) -> c7(U11'(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_U11(x0, cons_isNatIList(z0))) -> c7(U11'(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U11(cons_active(z0), x1)) -> c7(U11'(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_mark(z0), x1)) -> c7(U11'(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_cons(z0, z1), x1)) -> c7(U11'(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_U11(z0, z1), x1)) -> c7(U11'(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_s(z0), x1)) -> c7(U11'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_length(z0), x1)) -> c7(U11'(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_U21(z0), x1)) -> c7(U11'(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_U31(z0, z1, z2, z3), x1)) -> c7(U11'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_U11(cons_take(z0, z1), x1)) -> c7(U11'(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_and(z0, z1), x1)) -> c7(U11'(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_isNat(z0), x1)) -> c7(U11'(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_isNatList(z0), x1)) -> c7(U11'(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_isNatIList(z0), x1)) -> c7(U11'(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_U11(x0, zeros)) -> c7(U11'(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_U11(x0, 0)) -> c7(U11'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_U11(x0, tt)) -> c7(U11'(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_U11(x0, nil)) -> c7(U11'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_U11(zeros, x1)) -> c7(U11'(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(0, x1)) -> c7(U11'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(tt, x1)) -> c7(U11'(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(nil, x1)) -> c7(U11'(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_s(cons_active(z0))) -> c8(S(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_s(cons_mark(z0))) -> c8(S(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_s(cons_cons(z0, z1))) -> c8(S(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_s(cons_U11(z0, z1))) -> c8(S(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_s(cons_s(z0))) -> c8(S(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_length(z0))) -> c8(S(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_s(cons_U21(z0))) -> c8(S(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_s(cons_U31(z0, z1, z2, z3))) -> c8(S(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_s(cons_take(z0, z1))) -> c8(S(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_s(cons_and(z0, z1))) -> c8(S(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_s(cons_isNat(z0))) -> c8(S(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_s(cons_isNatList(z0))) -> c8(S(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_s(cons_isNatIList(z0))) -> c8(S(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_length(zeros)) -> c9(LENGTH(zeros), ENCARG(zeros)) ENCARG(cons_length(0)) -> c9(LENGTH(0), ENCARG(0)) ENCARG(cons_length(tt)) -> c9(LENGTH(tt), ENCARG(tt)) ENCARG(cons_length(nil)) -> c9(LENGTH(nil), ENCARG(nil)) ENCARG(cons_length(cons_active(z0))) -> c9(LENGTH(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_length(cons_mark(z0))) -> c9(LENGTH(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_length(cons_cons(z0, z1))) -> c9(LENGTH(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_length(cons_U11(z0, z1))) -> c9(LENGTH(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_length(cons_s(z0))) -> c9(LENGTH(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_length(cons_length(z0))) -> c9(LENGTH(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_length(cons_U21(z0))) -> c9(LENGTH(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_length(cons_U31(z0, z1, z2, z3))) -> c9(LENGTH(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_length(cons_take(z0, z1))) -> c9(LENGTH(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_length(cons_and(z0, z1))) -> c9(LENGTH(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_length(cons_isNat(z0))) -> c9(LENGTH(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_length(cons_isNatList(z0))) -> c9(LENGTH(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_length(cons_isNatIList(z0))) -> c9(LENGTH(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) S tuples: ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(cons(z0, z1)) -> c53(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(mark(z0), z1)), U11'(mark(z0), z1), MARK(z0)) MARK(s(z0)) -> c57(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(mark(z0))), LENGTH(mark(z0)), MARK(z0)) MARK(U21(z0)) -> c59(ACTIVE(U21(mark(z0))), U21'(mark(z0)), MARK(z0)) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(mark(z0), z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(take(z0, z1)) -> c62(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 K tuples:none Defined Rule Symbols: encArg_1, active_1, mark_1, cons_2, U11_2, s_1, length_1, U21_1, U31_4, take_2, and_2, isNat_1, isNatList_1, isNatIList_1 Defined Pair Symbols: ENCARG_1, ACTIVE_1, MARK_1, CONS_2, U11'_2, S_1, LENGTH_1, U21'_1, U31'_4, TAKE_2, AND_2, ISNAT_1, ISNATLIST_1, ISNATILIST_1, ENCODE_ACTIVE_1, ENCODE_MARK_1, ENCODE_CONS_2, ENCODE_U11_2, ENCODE_S_1, ENCODE_LENGTH_1, ENCODE_U21_1, ENCODE_U31_4, ENCODE_TAKE_2, ENCODE_AND_2, ENCODE_ISNAT_1, ENCODE_ISNATLIST_1, ENCODE_ISNATILIST_1 Compound Symbols: c10_2, c11_5, c12_3, c13_3, c14_2, c15_2, c16_2, c36_1, c37_3, c38_1, c39_1, c40_2, c41_2, c42_2, c43_1, c45_1, c48_1, c52_1, c53_3, c55_3, c57_3, c58_3, c59_3, c61_3, c62_4, c63_3, c64_2, c65_2, c66_2, c67_1, c68_1, c69_1, c70_1, c71_1, c72_1, c73_1, c74_1, c75_1, c76_1, c77_1, c78_1, c79_1, c80_1, c81_1, c82_1, c83_1, c84_1, c85_1, c86_1, c87_1, c88_1, c89_1, c90_1, c91_1, c92_1, c93_1, c94_1, c95_1, c96_1, c97_1, c98_1, c99_1, c100_1, c101_1, c102_1, c34_1, c35_2, c44_3, c46_3, c47_3, c49_3, c50_2, c51_4, c54, c56, c60, c_1, c4_2, c4_1, c5_2, c5_1, c6_3, c6_2, c7_3, c7_2, c8_2, c9_2 ---------------------------------------- (63) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 4 trailing nodes: ENCARG(cons_length(nil)) -> c9(LENGTH(nil), ENCARG(nil)) ENCARG(cons_length(tt)) -> c9(LENGTH(tt), ENCARG(tt)) ENCARG(cons_length(0)) -> c9(LENGTH(0), ENCARG(0)) ENCARG(cons_length(zeros)) -> c9(LENGTH(zeros), ENCARG(zeros)) ---------------------------------------- (64) Obligation: Complexity Dependency Tuples Problem Rules: encArg(zeros) -> zeros encArg(0) -> 0 encArg(tt) -> tt encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_U11(z0, z1)) -> U11(encArg(z0), encArg(z1)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_length(z0)) -> length(encArg(z0)) encArg(cons_U21(z0)) -> U21(encArg(z0)) encArg(cons_U31(z0, z1, z2, z3)) -> U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_isNat(z0)) -> isNat(encArg(z0)) encArg(cons_isNatList(z0)) -> isNatList(encArg(z0)) encArg(cons_isNatIList(z0)) -> isNatIList(encArg(z0)) active(zeros) -> mark(cons(0, zeros)) active(U11(tt, z0)) -> mark(s(length(z0))) active(U21(tt)) -> mark(nil) active(U31(tt, z0, z1, z2)) -> mark(cons(z2, take(z1, z0))) active(and(tt, z0)) -> mark(z0) active(isNat(0)) -> mark(tt) active(isNat(length(z0))) -> mark(isNatList(z0)) active(isNat(s(z0))) -> mark(isNat(z0)) active(isNatIList(z0)) -> mark(isNatList(z0)) active(isNatIList(zeros)) -> mark(tt) active(isNatIList(cons(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(isNatList(nil)) -> mark(tt) active(isNatList(cons(z0, z1))) -> mark(and(isNat(z0), isNatList(z1))) active(isNatList(take(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(length(nil)) -> mark(0) active(length(cons(z0, z1))) -> mark(U11(and(isNatList(z1), isNat(z0)), z1)) active(take(0, z0)) -> mark(U21(isNatIList(z0))) active(take(s(z0), cons(z1, z2))) -> mark(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)) mark(zeros) -> active(zeros) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(0) -> active(0) mark(U11(z0, z1)) -> active(U11(mark(z0), z1)) mark(tt) -> active(tt) mark(s(z0)) -> active(s(mark(z0))) mark(length(z0)) -> active(length(mark(z0))) mark(U21(z0)) -> active(U21(mark(z0))) mark(nil) -> active(nil) mark(U31(z0, z1, z2, z3)) -> active(U31(mark(z0), z1, z2, z3)) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(isNat(z0)) -> active(isNat(z0)) mark(isNatList(z0)) -> active(isNatList(z0)) mark(isNatIList(z0)) -> active(isNatIList(z0)) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) U11(mark(z0), z1) -> U11(z0, z1) U11(z0, mark(z1)) -> U11(z0, z1) U11(active(z0), z1) -> U11(z0, z1) U11(z0, active(z1)) -> U11(z0, z1) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) length(mark(z0)) -> length(z0) length(active(z0)) -> length(z0) U21(mark(z0)) -> U21(z0) U21(active(z0)) -> U21(z0) U31(mark(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, mark(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, mark(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, mark(z3)) -> U31(z0, z1, z2, z3) U31(active(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, active(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, active(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, active(z3)) -> U31(z0, z1, z2, z3) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) isNat(mark(z0)) -> isNat(z0) isNat(active(z0)) -> isNat(z0) isNatList(mark(z0)) -> isNatList(z0) isNatList(active(z0)) -> isNatList(z0) isNatIList(mark(z0)) -> isNatIList(z0) isNatIList(active(z0)) -> isNatIList(z0) Tuples: ENCARG(cons_U21(z0)) -> c10(U21'(encArg(z0)), ENCARG(z0)) ENCARG(cons_U31(z0, z1, z2, z3)) -> c11(U31'(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), ENCARG(z0), ENCARG(z1), ENCARG(z2), ENCARG(z3)) ENCARG(cons_take(z0, z1)) -> c12(TAKE(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_and(z0, z1)) -> c13(AND(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_isNat(z0)) -> c14(ISNAT(encArg(z0)), ENCARG(z0)) ENCARG(cons_isNatList(z0)) -> c15(ISNATLIST(encArg(z0)), ENCARG(z0)) ENCARG(cons_isNatIList(z0)) -> c16(ISNATILIST(encArg(z0)), ENCARG(z0)) ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(cons(z0, z1)) -> c53(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(mark(z0), z1)), U11'(mark(z0), z1), MARK(z0)) MARK(s(z0)) -> c57(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(mark(z0))), LENGTH(mark(z0)), MARK(z0)) MARK(U21(z0)) -> c59(ACTIVE(U21(mark(z0))), U21'(mark(z0)), MARK(z0)) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(mark(z0), z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(take(z0, z1)) -> c62(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 ENCODE_ACTIVE(z0) -> c(ACTIVE(encArg(z0))) ENCODE_MARK(z0) -> c(MARK(encArg(z0))) ENCODE_CONS(z0, z1) -> c(CONS(encArg(z0), encArg(z1))) ENCODE_U11(z0, z1) -> c(U11'(encArg(z0), encArg(z1))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_LENGTH(z0) -> c(LENGTH(encArg(z0))) ENCODE_U21(z0) -> c(U21'(encArg(z0))) ENCODE_U31(z0, z1, z2, z3) -> c(U31'(encArg(z0), encArg(z1), encArg(z2), encArg(z3))) ENCODE_TAKE(z0, z1) -> c(TAKE(encArg(z0), encArg(z1))) ENCODE_AND(z0, z1) -> c(AND(encArg(z0), encArg(z1))) ENCODE_ISNAT(z0) -> c(ISNAT(encArg(z0))) ENCODE_ISNATLIST(z0) -> c(ISNATLIST(encArg(z0))) ENCODE_ISNATILIST(z0) -> c(ISNATILIST(encArg(z0))) ENCARG(cons_active(cons_active(z0))) -> c4(ACTIVE(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_active(cons_mark(z0))) -> c4(ACTIVE(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_active(cons_cons(z0, z1))) -> c4(ACTIVE(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_active(cons_U11(z0, z1))) -> c4(ACTIVE(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_active(cons_s(z0))) -> c4(ACTIVE(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_active(cons_length(z0))) -> c4(ACTIVE(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_active(cons_U21(z0))) -> c4(ACTIVE(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_active(cons_U31(z0, z1, z2, z3))) -> c4(ACTIVE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_active(cons_take(z0, z1))) -> c4(ACTIVE(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_active(cons_and(z0, z1))) -> c4(ACTIVE(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_active(cons_isNat(z0))) -> c4(ACTIVE(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_active(cons_isNatList(z0))) -> c4(ACTIVE(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_active(cons_isNatIList(z0))) -> c4(ACTIVE(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_active(zeros)) -> c4(ACTIVE(zeros)) ENCARG(cons_mark(cons_active(z0))) -> c5(MARK(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_mark(cons_mark(z0))) -> c5(MARK(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_mark(cons_cons(z0, z1))) -> c5(MARK(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_mark(cons_U11(z0, z1))) -> c5(MARK(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_mark(cons_s(z0))) -> c5(MARK(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_mark(cons_length(z0))) -> c5(MARK(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_mark(cons_U21(z0))) -> c5(MARK(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_mark(cons_U31(z0, z1, z2, z3))) -> c5(MARK(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_mark(cons_take(z0, z1))) -> c5(MARK(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(cons_and(z0, z1))) -> c5(MARK(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_mark(cons_isNat(z0))) -> c5(MARK(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_mark(cons_isNatList(z0))) -> c5(MARK(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_mark(cons_isNatIList(z0))) -> c5(MARK(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_mark(zeros)) -> c5(MARK(zeros)) ENCARG(cons_mark(0)) -> c5(MARK(0)) ENCARG(cons_mark(tt)) -> c5(MARK(tt)) ENCARG(cons_mark(nil)) -> c5(MARK(nil)) ENCARG(cons_cons(x0, cons_active(z0))) -> c6(CONS(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_cons(x0, cons_mark(z0))) -> c6(CONS(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_cons(x0, cons_cons(z0, z1))) -> c6(CONS(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_cons(x0, cons_U11(z0, z1))) -> c6(CONS(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_cons(x0, cons_s(z0))) -> c6(CONS(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_cons(x0, cons_length(z0))) -> c6(CONS(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_cons(x0, cons_U21(z0))) -> c6(CONS(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_cons(x0, cons_U31(z0, z1, z2, z3))) -> c6(CONS(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_cons(x0, cons_take(z0, z1))) -> c6(CONS(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_cons(x0, cons_and(z0, z1))) -> c6(CONS(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_cons(x0, cons_isNat(z0))) -> c6(CONS(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_cons(x0, cons_isNatList(z0))) -> c6(CONS(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_cons(x0, cons_isNatIList(z0))) -> c6(CONS(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_cons(cons_active(z0), x1)) -> c6(CONS(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_mark(z0), x1)) -> c6(CONS(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_cons(z0, z1), x1)) -> c6(CONS(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_U11(z0, z1), x1)) -> c6(CONS(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_s(z0), x1)) -> c6(CONS(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_length(z0), x1)) -> c6(CONS(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U21(z0), x1)) -> c6(CONS(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U31(z0, z1, z2, z3), x1)) -> c6(CONS(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_cons(cons_take(z0, z1), x1)) -> c6(CONS(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_and(z0, z1), x1)) -> c6(CONS(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_isNat(z0), x1)) -> c6(CONS(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_isNatList(z0), x1)) -> c6(CONS(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_isNatIList(z0), x1)) -> c6(CONS(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_cons(x0, zeros)) -> c6(CONS(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_cons(x0, 0)) -> c6(CONS(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_cons(x0, tt)) -> c6(CONS(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_cons(x0, nil)) -> c6(CONS(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_cons(zeros, x1)) -> c6(CONS(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(0, x1)) -> c6(CONS(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(tt, x1)) -> c6(CONS(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(nil, x1)) -> c6(CONS(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(x0, cons_active(z0))) -> c7(U11'(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_U11(x0, cons_mark(z0))) -> c7(U11'(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_U11(x0, cons_cons(z0, z1))) -> c7(U11'(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U11(x0, cons_U11(z0, z1))) -> c7(U11'(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U11(x0, cons_s(z0))) -> c7(U11'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_U11(x0, cons_length(z0))) -> c7(U11'(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_U11(x0, cons_U21(z0))) -> c7(U11'(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_U11(x0, cons_U31(z0, z1, z2, z3))) -> c7(U11'(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U11(x0, cons_take(z0, z1))) -> c7(U11'(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_U11(x0, cons_and(z0, z1))) -> c7(U11'(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_U11(x0, cons_isNat(z0))) -> c7(U11'(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_U11(x0, cons_isNatList(z0))) -> c7(U11'(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_U11(x0, cons_isNatIList(z0))) -> c7(U11'(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U11(cons_active(z0), x1)) -> c7(U11'(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_mark(z0), x1)) -> c7(U11'(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_cons(z0, z1), x1)) -> c7(U11'(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_U11(z0, z1), x1)) -> c7(U11'(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_s(z0), x1)) -> c7(U11'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_length(z0), x1)) -> c7(U11'(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_U21(z0), x1)) -> c7(U11'(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_U31(z0, z1, z2, z3), x1)) -> c7(U11'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_U11(cons_take(z0, z1), x1)) -> c7(U11'(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_and(z0, z1), x1)) -> c7(U11'(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_isNat(z0), x1)) -> c7(U11'(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_isNatList(z0), x1)) -> c7(U11'(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_isNatIList(z0), x1)) -> c7(U11'(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_U11(x0, zeros)) -> c7(U11'(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_U11(x0, 0)) -> c7(U11'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_U11(x0, tt)) -> c7(U11'(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_U11(x0, nil)) -> c7(U11'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_U11(zeros, x1)) -> c7(U11'(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(0, x1)) -> c7(U11'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(tt, x1)) -> c7(U11'(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(nil, x1)) -> c7(U11'(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_s(cons_active(z0))) -> c8(S(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_s(cons_mark(z0))) -> c8(S(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_s(cons_cons(z0, z1))) -> c8(S(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_s(cons_U11(z0, z1))) -> c8(S(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_s(cons_s(z0))) -> c8(S(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_length(z0))) -> c8(S(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_s(cons_U21(z0))) -> c8(S(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_s(cons_U31(z0, z1, z2, z3))) -> c8(S(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_s(cons_take(z0, z1))) -> c8(S(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_s(cons_and(z0, z1))) -> c8(S(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_s(cons_isNat(z0))) -> c8(S(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_s(cons_isNatList(z0))) -> c8(S(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_s(cons_isNatIList(z0))) -> c8(S(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_length(cons_active(z0))) -> c9(LENGTH(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_length(cons_mark(z0))) -> c9(LENGTH(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_length(cons_cons(z0, z1))) -> c9(LENGTH(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_length(cons_U11(z0, z1))) -> c9(LENGTH(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_length(cons_s(z0))) -> c9(LENGTH(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_length(cons_length(z0))) -> c9(LENGTH(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_length(cons_U21(z0))) -> c9(LENGTH(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_length(cons_U31(z0, z1, z2, z3))) -> c9(LENGTH(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_length(cons_take(z0, z1))) -> c9(LENGTH(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_length(cons_and(z0, z1))) -> c9(LENGTH(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_length(cons_isNat(z0))) -> c9(LENGTH(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_length(cons_isNatList(z0))) -> c9(LENGTH(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_length(cons_isNatIList(z0))) -> c9(LENGTH(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) S tuples: ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(cons(z0, z1)) -> c53(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(mark(z0), z1)), U11'(mark(z0), z1), MARK(z0)) MARK(s(z0)) -> c57(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(mark(z0))), LENGTH(mark(z0)), MARK(z0)) MARK(U21(z0)) -> c59(ACTIVE(U21(mark(z0))), U21'(mark(z0)), MARK(z0)) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(mark(z0), z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(take(z0, z1)) -> c62(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 K tuples:none Defined Rule Symbols: encArg_1, active_1, mark_1, cons_2, U11_2, s_1, length_1, U21_1, U31_4, take_2, and_2, isNat_1, isNatList_1, isNatIList_1 Defined Pair Symbols: ENCARG_1, ACTIVE_1, MARK_1, CONS_2, U11'_2, S_1, LENGTH_1, U21'_1, U31'_4, TAKE_2, AND_2, ISNAT_1, ISNATLIST_1, ISNATILIST_1, ENCODE_ACTIVE_1, ENCODE_MARK_1, ENCODE_CONS_2, ENCODE_U11_2, ENCODE_S_1, ENCODE_LENGTH_1, ENCODE_U21_1, ENCODE_U31_4, ENCODE_TAKE_2, ENCODE_AND_2, ENCODE_ISNAT_1, ENCODE_ISNATLIST_1, ENCODE_ISNATILIST_1 Compound Symbols: c10_2, c11_5, c12_3, c13_3, c14_2, c15_2, c16_2, c36_1, c37_3, c38_1, c39_1, c40_2, c41_2, c42_2, c43_1, c45_1, c48_1, c52_1, c53_3, c55_3, c57_3, c58_3, c59_3, c61_3, c62_4, c63_3, c64_2, c65_2, c66_2, c67_1, c68_1, c69_1, c70_1, c71_1, c72_1, c73_1, c74_1, c75_1, c76_1, c77_1, c78_1, c79_1, c80_1, c81_1, c82_1, c83_1, c84_1, c85_1, c86_1, c87_1, c88_1, c89_1, c90_1, c91_1, c92_1, c93_1, c94_1, c95_1, c96_1, c97_1, c98_1, c99_1, c100_1, c101_1, c102_1, c34_1, c35_2, c44_3, c46_3, c47_3, c49_3, c50_2, c51_4, c54, c56, c60, c_1, c4_2, c4_1, c5_2, c5_1, c6_3, c6_2, c7_3, c7_2, c8_2, c9_2 ---------------------------------------- (65) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace ENCARG(cons_U21(z0)) -> c10(U21'(encArg(z0)), ENCARG(z0)) by ENCARG(cons_U21(zeros)) -> c10(U21'(zeros), ENCARG(zeros)) ENCARG(cons_U21(0)) -> c10(U21'(0), ENCARG(0)) ENCARG(cons_U21(tt)) -> c10(U21'(tt), ENCARG(tt)) ENCARG(cons_U21(nil)) -> c10(U21'(nil), ENCARG(nil)) ENCARG(cons_U21(cons_active(z0))) -> c10(U21'(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_U21(cons_mark(z0))) -> c10(U21'(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_U21(cons_cons(z0, z1))) -> c10(U21'(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U21(cons_U11(z0, z1))) -> c10(U21'(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U21(cons_s(z0))) -> c10(U21'(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_U21(cons_length(z0))) -> c10(U21'(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_U21(cons_U21(z0))) -> c10(U21'(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_U21(cons_U31(z0, z1, z2, z3))) -> c10(U21'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U21(cons_take(z0, z1))) -> c10(U21'(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_U21(cons_and(z0, z1))) -> c10(U21'(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_U21(cons_isNat(z0))) -> c10(U21'(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_U21(cons_isNatList(z0))) -> c10(U21'(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_U21(cons_isNatIList(z0))) -> c10(U21'(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ---------------------------------------- (66) Obligation: Complexity Dependency Tuples Problem Rules: encArg(zeros) -> zeros encArg(0) -> 0 encArg(tt) -> tt encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_U11(z0, z1)) -> U11(encArg(z0), encArg(z1)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_length(z0)) -> length(encArg(z0)) encArg(cons_U21(z0)) -> U21(encArg(z0)) encArg(cons_U31(z0, z1, z2, z3)) -> U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_isNat(z0)) -> isNat(encArg(z0)) encArg(cons_isNatList(z0)) -> isNatList(encArg(z0)) encArg(cons_isNatIList(z0)) -> isNatIList(encArg(z0)) active(zeros) -> mark(cons(0, zeros)) active(U11(tt, z0)) -> mark(s(length(z0))) active(U21(tt)) -> mark(nil) active(U31(tt, z0, z1, z2)) -> mark(cons(z2, take(z1, z0))) active(and(tt, z0)) -> mark(z0) active(isNat(0)) -> mark(tt) active(isNat(length(z0))) -> mark(isNatList(z0)) active(isNat(s(z0))) -> mark(isNat(z0)) active(isNatIList(z0)) -> mark(isNatList(z0)) active(isNatIList(zeros)) -> mark(tt) active(isNatIList(cons(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(isNatList(nil)) -> mark(tt) active(isNatList(cons(z0, z1))) -> mark(and(isNat(z0), isNatList(z1))) active(isNatList(take(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(length(nil)) -> mark(0) active(length(cons(z0, z1))) -> mark(U11(and(isNatList(z1), isNat(z0)), z1)) active(take(0, z0)) -> mark(U21(isNatIList(z0))) active(take(s(z0), cons(z1, z2))) -> mark(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)) mark(zeros) -> active(zeros) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(0) -> active(0) mark(U11(z0, z1)) -> active(U11(mark(z0), z1)) mark(tt) -> active(tt) mark(s(z0)) -> active(s(mark(z0))) mark(length(z0)) -> active(length(mark(z0))) mark(U21(z0)) -> active(U21(mark(z0))) mark(nil) -> active(nil) mark(U31(z0, z1, z2, z3)) -> active(U31(mark(z0), z1, z2, z3)) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(isNat(z0)) -> active(isNat(z0)) mark(isNatList(z0)) -> active(isNatList(z0)) mark(isNatIList(z0)) -> active(isNatIList(z0)) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) U11(mark(z0), z1) -> U11(z0, z1) U11(z0, mark(z1)) -> U11(z0, z1) U11(active(z0), z1) -> U11(z0, z1) U11(z0, active(z1)) -> U11(z0, z1) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) length(mark(z0)) -> length(z0) length(active(z0)) -> length(z0) U21(mark(z0)) -> U21(z0) U21(active(z0)) -> U21(z0) U31(mark(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, mark(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, mark(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, mark(z3)) -> U31(z0, z1, z2, z3) U31(active(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, active(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, active(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, active(z3)) -> U31(z0, z1, z2, z3) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) isNat(mark(z0)) -> isNat(z0) isNat(active(z0)) -> isNat(z0) isNatList(mark(z0)) -> isNatList(z0) isNatList(active(z0)) -> isNatList(z0) isNatIList(mark(z0)) -> isNatIList(z0) isNatIList(active(z0)) -> isNatIList(z0) Tuples: ENCARG(cons_U31(z0, z1, z2, z3)) -> c11(U31'(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), ENCARG(z0), ENCARG(z1), ENCARG(z2), ENCARG(z3)) ENCARG(cons_take(z0, z1)) -> c12(TAKE(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_and(z0, z1)) -> c13(AND(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_isNat(z0)) -> c14(ISNAT(encArg(z0)), ENCARG(z0)) ENCARG(cons_isNatList(z0)) -> c15(ISNATLIST(encArg(z0)), ENCARG(z0)) ENCARG(cons_isNatIList(z0)) -> c16(ISNATILIST(encArg(z0)), ENCARG(z0)) ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(cons(z0, z1)) -> c53(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(mark(z0), z1)), U11'(mark(z0), z1), MARK(z0)) MARK(s(z0)) -> c57(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(mark(z0))), LENGTH(mark(z0)), MARK(z0)) MARK(U21(z0)) -> c59(ACTIVE(U21(mark(z0))), U21'(mark(z0)), MARK(z0)) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(mark(z0), z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(take(z0, z1)) -> c62(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 ENCODE_ACTIVE(z0) -> c(ACTIVE(encArg(z0))) ENCODE_MARK(z0) -> c(MARK(encArg(z0))) ENCODE_CONS(z0, z1) -> c(CONS(encArg(z0), encArg(z1))) ENCODE_U11(z0, z1) -> c(U11'(encArg(z0), encArg(z1))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_LENGTH(z0) -> c(LENGTH(encArg(z0))) ENCODE_U21(z0) -> c(U21'(encArg(z0))) ENCODE_U31(z0, z1, z2, z3) -> c(U31'(encArg(z0), encArg(z1), encArg(z2), encArg(z3))) ENCODE_TAKE(z0, z1) -> c(TAKE(encArg(z0), encArg(z1))) ENCODE_AND(z0, z1) -> c(AND(encArg(z0), encArg(z1))) ENCODE_ISNAT(z0) -> c(ISNAT(encArg(z0))) ENCODE_ISNATLIST(z0) -> c(ISNATLIST(encArg(z0))) ENCODE_ISNATILIST(z0) -> c(ISNATILIST(encArg(z0))) ENCARG(cons_active(cons_active(z0))) -> c4(ACTIVE(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_active(cons_mark(z0))) -> c4(ACTIVE(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_active(cons_cons(z0, z1))) -> c4(ACTIVE(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_active(cons_U11(z0, z1))) -> c4(ACTIVE(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_active(cons_s(z0))) -> c4(ACTIVE(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_active(cons_length(z0))) -> c4(ACTIVE(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_active(cons_U21(z0))) -> c4(ACTIVE(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_active(cons_U31(z0, z1, z2, z3))) -> c4(ACTIVE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_active(cons_take(z0, z1))) -> c4(ACTIVE(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_active(cons_and(z0, z1))) -> c4(ACTIVE(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_active(cons_isNat(z0))) -> c4(ACTIVE(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_active(cons_isNatList(z0))) -> c4(ACTIVE(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_active(cons_isNatIList(z0))) -> c4(ACTIVE(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_active(zeros)) -> c4(ACTIVE(zeros)) ENCARG(cons_mark(cons_active(z0))) -> c5(MARK(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_mark(cons_mark(z0))) -> c5(MARK(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_mark(cons_cons(z0, z1))) -> c5(MARK(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_mark(cons_U11(z0, z1))) -> c5(MARK(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_mark(cons_s(z0))) -> c5(MARK(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_mark(cons_length(z0))) -> c5(MARK(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_mark(cons_U21(z0))) -> c5(MARK(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_mark(cons_U31(z0, z1, z2, z3))) -> c5(MARK(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_mark(cons_take(z0, z1))) -> c5(MARK(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(cons_and(z0, z1))) -> c5(MARK(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_mark(cons_isNat(z0))) -> c5(MARK(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_mark(cons_isNatList(z0))) -> c5(MARK(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_mark(cons_isNatIList(z0))) -> c5(MARK(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_mark(zeros)) -> c5(MARK(zeros)) ENCARG(cons_mark(0)) -> c5(MARK(0)) ENCARG(cons_mark(tt)) -> c5(MARK(tt)) ENCARG(cons_mark(nil)) -> c5(MARK(nil)) ENCARG(cons_cons(x0, cons_active(z0))) -> c6(CONS(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_cons(x0, cons_mark(z0))) -> c6(CONS(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_cons(x0, cons_cons(z0, z1))) -> c6(CONS(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_cons(x0, cons_U11(z0, z1))) -> c6(CONS(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_cons(x0, cons_s(z0))) -> c6(CONS(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_cons(x0, cons_length(z0))) -> c6(CONS(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_cons(x0, cons_U21(z0))) -> c6(CONS(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_cons(x0, cons_U31(z0, z1, z2, z3))) -> c6(CONS(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_cons(x0, cons_take(z0, z1))) -> c6(CONS(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_cons(x0, cons_and(z0, z1))) -> c6(CONS(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_cons(x0, cons_isNat(z0))) -> c6(CONS(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_cons(x0, cons_isNatList(z0))) -> c6(CONS(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_cons(x0, cons_isNatIList(z0))) -> c6(CONS(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_cons(cons_active(z0), x1)) -> c6(CONS(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_mark(z0), x1)) -> c6(CONS(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_cons(z0, z1), x1)) -> c6(CONS(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_U11(z0, z1), x1)) -> c6(CONS(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_s(z0), x1)) -> c6(CONS(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_length(z0), x1)) -> c6(CONS(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U21(z0), x1)) -> c6(CONS(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U31(z0, z1, z2, z3), x1)) -> c6(CONS(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_cons(cons_take(z0, z1), x1)) -> c6(CONS(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_and(z0, z1), x1)) -> c6(CONS(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_isNat(z0), x1)) -> c6(CONS(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_isNatList(z0), x1)) -> c6(CONS(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_isNatIList(z0), x1)) -> c6(CONS(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_cons(x0, zeros)) -> c6(CONS(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_cons(x0, 0)) -> c6(CONS(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_cons(x0, tt)) -> c6(CONS(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_cons(x0, nil)) -> c6(CONS(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_cons(zeros, x1)) -> c6(CONS(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(0, x1)) -> c6(CONS(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(tt, x1)) -> c6(CONS(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(nil, x1)) -> c6(CONS(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(x0, cons_active(z0))) -> c7(U11'(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_U11(x0, cons_mark(z0))) -> c7(U11'(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_U11(x0, cons_cons(z0, z1))) -> c7(U11'(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U11(x0, cons_U11(z0, z1))) -> c7(U11'(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U11(x0, cons_s(z0))) -> c7(U11'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_U11(x0, cons_length(z0))) -> c7(U11'(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_U11(x0, cons_U21(z0))) -> c7(U11'(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_U11(x0, cons_U31(z0, z1, z2, z3))) -> c7(U11'(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U11(x0, cons_take(z0, z1))) -> c7(U11'(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_U11(x0, cons_and(z0, z1))) -> c7(U11'(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_U11(x0, cons_isNat(z0))) -> c7(U11'(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_U11(x0, cons_isNatList(z0))) -> c7(U11'(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_U11(x0, cons_isNatIList(z0))) -> c7(U11'(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U11(cons_active(z0), x1)) -> c7(U11'(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_mark(z0), x1)) -> c7(U11'(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_cons(z0, z1), x1)) -> c7(U11'(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_U11(z0, z1), x1)) -> c7(U11'(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_s(z0), x1)) -> c7(U11'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_length(z0), x1)) -> c7(U11'(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_U21(z0), x1)) -> c7(U11'(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_U31(z0, z1, z2, z3), x1)) -> c7(U11'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_U11(cons_take(z0, z1), x1)) -> c7(U11'(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_and(z0, z1), x1)) -> c7(U11'(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_isNat(z0), x1)) -> c7(U11'(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_isNatList(z0), x1)) -> c7(U11'(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_isNatIList(z0), x1)) -> c7(U11'(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_U11(x0, zeros)) -> c7(U11'(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_U11(x0, 0)) -> c7(U11'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_U11(x0, tt)) -> c7(U11'(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_U11(x0, nil)) -> c7(U11'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_U11(zeros, x1)) -> c7(U11'(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(0, x1)) -> c7(U11'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(tt, x1)) -> c7(U11'(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(nil, x1)) -> c7(U11'(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_s(cons_active(z0))) -> c8(S(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_s(cons_mark(z0))) -> c8(S(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_s(cons_cons(z0, z1))) -> c8(S(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_s(cons_U11(z0, z1))) -> c8(S(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_s(cons_s(z0))) -> c8(S(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_length(z0))) -> c8(S(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_s(cons_U21(z0))) -> c8(S(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_s(cons_U31(z0, z1, z2, z3))) -> c8(S(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_s(cons_take(z0, z1))) -> c8(S(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_s(cons_and(z0, z1))) -> c8(S(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_s(cons_isNat(z0))) -> c8(S(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_s(cons_isNatList(z0))) -> c8(S(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_s(cons_isNatIList(z0))) -> c8(S(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_length(cons_active(z0))) -> c9(LENGTH(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_length(cons_mark(z0))) -> c9(LENGTH(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_length(cons_cons(z0, z1))) -> c9(LENGTH(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_length(cons_U11(z0, z1))) -> c9(LENGTH(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_length(cons_s(z0))) -> c9(LENGTH(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_length(cons_length(z0))) -> c9(LENGTH(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_length(cons_U21(z0))) -> c9(LENGTH(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_length(cons_U31(z0, z1, z2, z3))) -> c9(LENGTH(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_length(cons_take(z0, z1))) -> c9(LENGTH(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_length(cons_and(z0, z1))) -> c9(LENGTH(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_length(cons_isNat(z0))) -> c9(LENGTH(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_length(cons_isNatList(z0))) -> c9(LENGTH(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_length(cons_isNatIList(z0))) -> c9(LENGTH(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U21(zeros)) -> c10(U21'(zeros), ENCARG(zeros)) ENCARG(cons_U21(0)) -> c10(U21'(0), ENCARG(0)) ENCARG(cons_U21(tt)) -> c10(U21'(tt), ENCARG(tt)) ENCARG(cons_U21(nil)) -> c10(U21'(nil), ENCARG(nil)) ENCARG(cons_U21(cons_active(z0))) -> c10(U21'(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_U21(cons_mark(z0))) -> c10(U21'(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_U21(cons_cons(z0, z1))) -> c10(U21'(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U21(cons_U11(z0, z1))) -> c10(U21'(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U21(cons_s(z0))) -> c10(U21'(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_U21(cons_length(z0))) -> c10(U21'(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_U21(cons_U21(z0))) -> c10(U21'(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_U21(cons_U31(z0, z1, z2, z3))) -> c10(U21'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U21(cons_take(z0, z1))) -> c10(U21'(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_U21(cons_and(z0, z1))) -> c10(U21'(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_U21(cons_isNat(z0))) -> c10(U21'(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_U21(cons_isNatList(z0))) -> c10(U21'(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_U21(cons_isNatIList(z0))) -> c10(U21'(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) S tuples: ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(cons(z0, z1)) -> c53(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(mark(z0), z1)), U11'(mark(z0), z1), MARK(z0)) MARK(s(z0)) -> c57(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(mark(z0))), LENGTH(mark(z0)), MARK(z0)) MARK(U21(z0)) -> c59(ACTIVE(U21(mark(z0))), U21'(mark(z0)), MARK(z0)) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(mark(z0), z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(take(z0, z1)) -> c62(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 K tuples:none Defined Rule Symbols: encArg_1, active_1, mark_1, cons_2, U11_2, s_1, length_1, U21_1, U31_4, take_2, and_2, isNat_1, isNatList_1, isNatIList_1 Defined Pair Symbols: ENCARG_1, ACTIVE_1, MARK_1, CONS_2, U11'_2, S_1, LENGTH_1, U21'_1, U31'_4, TAKE_2, AND_2, ISNAT_1, ISNATLIST_1, ISNATILIST_1, ENCODE_ACTIVE_1, ENCODE_MARK_1, ENCODE_CONS_2, ENCODE_U11_2, ENCODE_S_1, ENCODE_LENGTH_1, ENCODE_U21_1, ENCODE_U31_4, ENCODE_TAKE_2, ENCODE_AND_2, ENCODE_ISNAT_1, ENCODE_ISNATLIST_1, ENCODE_ISNATILIST_1 Compound Symbols: c11_5, c12_3, c13_3, c14_2, c15_2, c16_2, c36_1, c37_3, c38_1, c39_1, c40_2, c41_2, c42_2, c43_1, c45_1, c48_1, c52_1, c53_3, c55_3, c57_3, c58_3, c59_3, c61_3, c62_4, c63_3, c64_2, c65_2, c66_2, c67_1, c68_1, c69_1, c70_1, c71_1, c72_1, c73_1, c74_1, c75_1, c76_1, c77_1, c78_1, c79_1, c80_1, c81_1, c82_1, c83_1, c84_1, c85_1, c86_1, c87_1, c88_1, c89_1, c90_1, c91_1, c92_1, c93_1, c94_1, c95_1, c96_1, c97_1, c98_1, c99_1, c100_1, c101_1, c102_1, c34_1, c35_2, c44_3, c46_3, c47_3, c49_3, c50_2, c51_4, c54, c56, c60, c_1, c4_2, c4_1, c5_2, c5_1, c6_3, c6_2, c7_3, c7_2, c8_2, c9_2, c10_2 ---------------------------------------- (67) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 4 trailing nodes: ENCARG(cons_U21(nil)) -> c10(U21'(nil), ENCARG(nil)) ENCARG(cons_U21(zeros)) -> c10(U21'(zeros), ENCARG(zeros)) ENCARG(cons_U21(0)) -> c10(U21'(0), ENCARG(0)) ENCARG(cons_U21(tt)) -> c10(U21'(tt), ENCARG(tt)) ---------------------------------------- (68) Obligation: Complexity Dependency Tuples Problem Rules: encArg(zeros) -> zeros encArg(0) -> 0 encArg(tt) -> tt encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_U11(z0, z1)) -> U11(encArg(z0), encArg(z1)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_length(z0)) -> length(encArg(z0)) encArg(cons_U21(z0)) -> U21(encArg(z0)) encArg(cons_U31(z0, z1, z2, z3)) -> U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_isNat(z0)) -> isNat(encArg(z0)) encArg(cons_isNatList(z0)) -> isNatList(encArg(z0)) encArg(cons_isNatIList(z0)) -> isNatIList(encArg(z0)) active(zeros) -> mark(cons(0, zeros)) active(U11(tt, z0)) -> mark(s(length(z0))) active(U21(tt)) -> mark(nil) active(U31(tt, z0, z1, z2)) -> mark(cons(z2, take(z1, z0))) active(and(tt, z0)) -> mark(z0) active(isNat(0)) -> mark(tt) active(isNat(length(z0))) -> mark(isNatList(z0)) active(isNat(s(z0))) -> mark(isNat(z0)) active(isNatIList(z0)) -> mark(isNatList(z0)) active(isNatIList(zeros)) -> mark(tt) active(isNatIList(cons(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(isNatList(nil)) -> mark(tt) active(isNatList(cons(z0, z1))) -> mark(and(isNat(z0), isNatList(z1))) active(isNatList(take(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(length(nil)) -> mark(0) active(length(cons(z0, z1))) -> mark(U11(and(isNatList(z1), isNat(z0)), z1)) active(take(0, z0)) -> mark(U21(isNatIList(z0))) active(take(s(z0), cons(z1, z2))) -> mark(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)) mark(zeros) -> active(zeros) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(0) -> active(0) mark(U11(z0, z1)) -> active(U11(mark(z0), z1)) mark(tt) -> active(tt) mark(s(z0)) -> active(s(mark(z0))) mark(length(z0)) -> active(length(mark(z0))) mark(U21(z0)) -> active(U21(mark(z0))) mark(nil) -> active(nil) mark(U31(z0, z1, z2, z3)) -> active(U31(mark(z0), z1, z2, z3)) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(isNat(z0)) -> active(isNat(z0)) mark(isNatList(z0)) -> active(isNatList(z0)) mark(isNatIList(z0)) -> active(isNatIList(z0)) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) U11(mark(z0), z1) -> U11(z0, z1) U11(z0, mark(z1)) -> U11(z0, z1) U11(active(z0), z1) -> U11(z0, z1) U11(z0, active(z1)) -> U11(z0, z1) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) length(mark(z0)) -> length(z0) length(active(z0)) -> length(z0) U21(mark(z0)) -> U21(z0) U21(active(z0)) -> U21(z0) U31(mark(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, mark(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, mark(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, mark(z3)) -> U31(z0, z1, z2, z3) U31(active(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, active(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, active(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, active(z3)) -> U31(z0, z1, z2, z3) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) isNat(mark(z0)) -> isNat(z0) isNat(active(z0)) -> isNat(z0) isNatList(mark(z0)) -> isNatList(z0) isNatList(active(z0)) -> isNatList(z0) isNatIList(mark(z0)) -> isNatIList(z0) isNatIList(active(z0)) -> isNatIList(z0) Tuples: ENCARG(cons_U31(z0, z1, z2, z3)) -> c11(U31'(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), ENCARG(z0), ENCARG(z1), ENCARG(z2), ENCARG(z3)) ENCARG(cons_take(z0, z1)) -> c12(TAKE(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_and(z0, z1)) -> c13(AND(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_isNat(z0)) -> c14(ISNAT(encArg(z0)), ENCARG(z0)) ENCARG(cons_isNatList(z0)) -> c15(ISNATLIST(encArg(z0)), ENCARG(z0)) ENCARG(cons_isNatIList(z0)) -> c16(ISNATILIST(encArg(z0)), ENCARG(z0)) ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(cons(z0, z1)) -> c53(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(mark(z0), z1)), U11'(mark(z0), z1), MARK(z0)) MARK(s(z0)) -> c57(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(mark(z0))), LENGTH(mark(z0)), MARK(z0)) MARK(U21(z0)) -> c59(ACTIVE(U21(mark(z0))), U21'(mark(z0)), MARK(z0)) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(mark(z0), z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(take(z0, z1)) -> c62(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 ENCODE_ACTIVE(z0) -> c(ACTIVE(encArg(z0))) ENCODE_MARK(z0) -> c(MARK(encArg(z0))) ENCODE_CONS(z0, z1) -> c(CONS(encArg(z0), encArg(z1))) ENCODE_U11(z0, z1) -> c(U11'(encArg(z0), encArg(z1))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_LENGTH(z0) -> c(LENGTH(encArg(z0))) ENCODE_U21(z0) -> c(U21'(encArg(z0))) ENCODE_U31(z0, z1, z2, z3) -> c(U31'(encArg(z0), encArg(z1), encArg(z2), encArg(z3))) ENCODE_TAKE(z0, z1) -> c(TAKE(encArg(z0), encArg(z1))) ENCODE_AND(z0, z1) -> c(AND(encArg(z0), encArg(z1))) ENCODE_ISNAT(z0) -> c(ISNAT(encArg(z0))) ENCODE_ISNATLIST(z0) -> c(ISNATLIST(encArg(z0))) ENCODE_ISNATILIST(z0) -> c(ISNATILIST(encArg(z0))) ENCARG(cons_active(cons_active(z0))) -> c4(ACTIVE(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_active(cons_mark(z0))) -> c4(ACTIVE(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_active(cons_cons(z0, z1))) -> c4(ACTIVE(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_active(cons_U11(z0, z1))) -> c4(ACTIVE(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_active(cons_s(z0))) -> c4(ACTIVE(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_active(cons_length(z0))) -> c4(ACTIVE(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_active(cons_U21(z0))) -> c4(ACTIVE(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_active(cons_U31(z0, z1, z2, z3))) -> c4(ACTIVE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_active(cons_take(z0, z1))) -> c4(ACTIVE(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_active(cons_and(z0, z1))) -> c4(ACTIVE(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_active(cons_isNat(z0))) -> c4(ACTIVE(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_active(cons_isNatList(z0))) -> c4(ACTIVE(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_active(cons_isNatIList(z0))) -> c4(ACTIVE(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_active(zeros)) -> c4(ACTIVE(zeros)) ENCARG(cons_mark(cons_active(z0))) -> c5(MARK(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_mark(cons_mark(z0))) -> c5(MARK(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_mark(cons_cons(z0, z1))) -> c5(MARK(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_mark(cons_U11(z0, z1))) -> c5(MARK(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_mark(cons_s(z0))) -> c5(MARK(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_mark(cons_length(z0))) -> c5(MARK(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_mark(cons_U21(z0))) -> c5(MARK(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_mark(cons_U31(z0, z1, z2, z3))) -> c5(MARK(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_mark(cons_take(z0, z1))) -> c5(MARK(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(cons_and(z0, z1))) -> c5(MARK(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_mark(cons_isNat(z0))) -> c5(MARK(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_mark(cons_isNatList(z0))) -> c5(MARK(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_mark(cons_isNatIList(z0))) -> c5(MARK(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_mark(zeros)) -> c5(MARK(zeros)) ENCARG(cons_mark(0)) -> c5(MARK(0)) ENCARG(cons_mark(tt)) -> c5(MARK(tt)) ENCARG(cons_mark(nil)) -> c5(MARK(nil)) ENCARG(cons_cons(x0, cons_active(z0))) -> c6(CONS(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_cons(x0, cons_mark(z0))) -> c6(CONS(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_cons(x0, cons_cons(z0, z1))) -> c6(CONS(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_cons(x0, cons_U11(z0, z1))) -> c6(CONS(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_cons(x0, cons_s(z0))) -> c6(CONS(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_cons(x0, cons_length(z0))) -> c6(CONS(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_cons(x0, cons_U21(z0))) -> c6(CONS(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_cons(x0, cons_U31(z0, z1, z2, z3))) -> c6(CONS(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_cons(x0, cons_take(z0, z1))) -> c6(CONS(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_cons(x0, cons_and(z0, z1))) -> c6(CONS(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_cons(x0, cons_isNat(z0))) -> c6(CONS(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_cons(x0, cons_isNatList(z0))) -> c6(CONS(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_cons(x0, cons_isNatIList(z0))) -> c6(CONS(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_cons(cons_active(z0), x1)) -> c6(CONS(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_mark(z0), x1)) -> c6(CONS(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_cons(z0, z1), x1)) -> c6(CONS(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_U11(z0, z1), x1)) -> c6(CONS(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_s(z0), x1)) -> c6(CONS(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_length(z0), x1)) -> c6(CONS(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U21(z0), x1)) -> c6(CONS(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U31(z0, z1, z2, z3), x1)) -> c6(CONS(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_cons(cons_take(z0, z1), x1)) -> c6(CONS(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_and(z0, z1), x1)) -> c6(CONS(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_isNat(z0), x1)) -> c6(CONS(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_isNatList(z0), x1)) -> c6(CONS(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_isNatIList(z0), x1)) -> c6(CONS(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_cons(x0, zeros)) -> c6(CONS(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_cons(x0, 0)) -> c6(CONS(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_cons(x0, tt)) -> c6(CONS(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_cons(x0, nil)) -> c6(CONS(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_cons(zeros, x1)) -> c6(CONS(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(0, x1)) -> c6(CONS(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(tt, x1)) -> c6(CONS(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(nil, x1)) -> c6(CONS(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(x0, cons_active(z0))) -> c7(U11'(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_U11(x0, cons_mark(z0))) -> c7(U11'(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_U11(x0, cons_cons(z0, z1))) -> c7(U11'(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U11(x0, cons_U11(z0, z1))) -> c7(U11'(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U11(x0, cons_s(z0))) -> c7(U11'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_U11(x0, cons_length(z0))) -> c7(U11'(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_U11(x0, cons_U21(z0))) -> c7(U11'(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_U11(x0, cons_U31(z0, z1, z2, z3))) -> c7(U11'(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U11(x0, cons_take(z0, z1))) -> c7(U11'(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_U11(x0, cons_and(z0, z1))) -> c7(U11'(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_U11(x0, cons_isNat(z0))) -> c7(U11'(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_U11(x0, cons_isNatList(z0))) -> c7(U11'(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_U11(x0, cons_isNatIList(z0))) -> c7(U11'(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U11(cons_active(z0), x1)) -> c7(U11'(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_mark(z0), x1)) -> c7(U11'(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_cons(z0, z1), x1)) -> c7(U11'(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_U11(z0, z1), x1)) -> c7(U11'(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_s(z0), x1)) -> c7(U11'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_length(z0), x1)) -> c7(U11'(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_U21(z0), x1)) -> c7(U11'(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_U31(z0, z1, z2, z3), x1)) -> c7(U11'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_U11(cons_take(z0, z1), x1)) -> c7(U11'(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_and(z0, z1), x1)) -> c7(U11'(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_isNat(z0), x1)) -> c7(U11'(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_isNatList(z0), x1)) -> c7(U11'(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_isNatIList(z0), x1)) -> c7(U11'(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_U11(x0, zeros)) -> c7(U11'(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_U11(x0, 0)) -> c7(U11'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_U11(x0, tt)) -> c7(U11'(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_U11(x0, nil)) -> c7(U11'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_U11(zeros, x1)) -> c7(U11'(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(0, x1)) -> c7(U11'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(tt, x1)) -> c7(U11'(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(nil, x1)) -> c7(U11'(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_s(cons_active(z0))) -> c8(S(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_s(cons_mark(z0))) -> c8(S(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_s(cons_cons(z0, z1))) -> c8(S(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_s(cons_U11(z0, z1))) -> c8(S(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_s(cons_s(z0))) -> c8(S(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_length(z0))) -> c8(S(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_s(cons_U21(z0))) -> c8(S(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_s(cons_U31(z0, z1, z2, z3))) -> c8(S(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_s(cons_take(z0, z1))) -> c8(S(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_s(cons_and(z0, z1))) -> c8(S(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_s(cons_isNat(z0))) -> c8(S(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_s(cons_isNatList(z0))) -> c8(S(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_s(cons_isNatIList(z0))) -> c8(S(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_length(cons_active(z0))) -> c9(LENGTH(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_length(cons_mark(z0))) -> c9(LENGTH(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_length(cons_cons(z0, z1))) -> c9(LENGTH(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_length(cons_U11(z0, z1))) -> c9(LENGTH(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_length(cons_s(z0))) -> c9(LENGTH(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_length(cons_length(z0))) -> c9(LENGTH(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_length(cons_U21(z0))) -> c9(LENGTH(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_length(cons_U31(z0, z1, z2, z3))) -> c9(LENGTH(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_length(cons_take(z0, z1))) -> c9(LENGTH(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_length(cons_and(z0, z1))) -> c9(LENGTH(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_length(cons_isNat(z0))) -> c9(LENGTH(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_length(cons_isNatList(z0))) -> c9(LENGTH(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_length(cons_isNatIList(z0))) -> c9(LENGTH(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U21(cons_active(z0))) -> c10(U21'(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_U21(cons_mark(z0))) -> c10(U21'(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_U21(cons_cons(z0, z1))) -> c10(U21'(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U21(cons_U11(z0, z1))) -> c10(U21'(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U21(cons_s(z0))) -> c10(U21'(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_U21(cons_length(z0))) -> c10(U21'(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_U21(cons_U21(z0))) -> c10(U21'(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_U21(cons_U31(z0, z1, z2, z3))) -> c10(U21'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U21(cons_take(z0, z1))) -> c10(U21'(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_U21(cons_and(z0, z1))) -> c10(U21'(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_U21(cons_isNat(z0))) -> c10(U21'(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_U21(cons_isNatList(z0))) -> c10(U21'(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_U21(cons_isNatIList(z0))) -> c10(U21'(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) S tuples: ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(cons(z0, z1)) -> c53(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(mark(z0), z1)), U11'(mark(z0), z1), MARK(z0)) MARK(s(z0)) -> c57(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(mark(z0))), LENGTH(mark(z0)), MARK(z0)) MARK(U21(z0)) -> c59(ACTIVE(U21(mark(z0))), U21'(mark(z0)), MARK(z0)) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(mark(z0), z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(take(z0, z1)) -> c62(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 K tuples:none Defined Rule Symbols: encArg_1, active_1, mark_1, cons_2, U11_2, s_1, length_1, U21_1, U31_4, take_2, and_2, isNat_1, isNatList_1, isNatIList_1 Defined Pair Symbols: ENCARG_1, ACTIVE_1, MARK_1, CONS_2, U11'_2, S_1, LENGTH_1, U21'_1, U31'_4, TAKE_2, AND_2, ISNAT_1, ISNATLIST_1, ISNATILIST_1, ENCODE_ACTIVE_1, ENCODE_MARK_1, ENCODE_CONS_2, ENCODE_U11_2, ENCODE_S_1, ENCODE_LENGTH_1, ENCODE_U21_1, ENCODE_U31_4, ENCODE_TAKE_2, ENCODE_AND_2, ENCODE_ISNAT_1, ENCODE_ISNATLIST_1, ENCODE_ISNATILIST_1 Compound Symbols: c11_5, c12_3, c13_3, c14_2, c15_2, c16_2, c36_1, c37_3, c38_1, c39_1, c40_2, c41_2, c42_2, c43_1, c45_1, c48_1, c52_1, c53_3, c55_3, c57_3, c58_3, c59_3, c61_3, c62_4, c63_3, c64_2, c65_2, c66_2, c67_1, c68_1, c69_1, c70_1, c71_1, c72_1, c73_1, c74_1, c75_1, c76_1, c77_1, c78_1, c79_1, c80_1, c81_1, c82_1, c83_1, c84_1, c85_1, c86_1, c87_1, c88_1, c89_1, c90_1, c91_1, c92_1, c93_1, c94_1, c95_1, c96_1, c97_1, c98_1, c99_1, c100_1, c101_1, c102_1, c34_1, c35_2, c44_3, c46_3, c47_3, c49_3, c50_2, c51_4, c54, c56, c60, c_1, c4_2, c4_1, c5_2, c5_1, c6_3, c6_2, c7_3, c7_2, c8_2, c9_2, c10_2 ---------------------------------------- (69) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace ENCARG(cons_U31(z0, z1, z2, z3)) -> c11(U31'(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), ENCARG(z0), ENCARG(z1), ENCARG(z2), ENCARG(z3)) by ENCARG(cons_U31(x0, x1, x2, zeros)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), zeros), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(zeros)) ENCARG(cons_U31(x0, x1, x2, 0)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), 0), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(0)) ENCARG(cons_U31(x0, x1, x2, tt)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), tt), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(tt)) ENCARG(cons_U31(x0, x1, x2, nil)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), nil), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(nil)) ENCARG(cons_U31(x0, x1, x2, cons_active(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), active(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_active(z0))) ENCARG(cons_U31(x0, x1, x2, cons_mark(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), mark(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_mark(z0))) ENCARG(cons_U31(x0, x1, x2, cons_cons(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_U11(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_s(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), s(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_s(z0))) ENCARG(cons_U31(x0, x1, x2, cons_length(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), length(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_length(z0))) ENCARG(cons_U31(x0, x1, x2, cons_U21(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U21(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U21(z0))) ENCARG(cons_U31(x0, x1, x2, cons_U31(z0, z1, z2, z3))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U31(x0, x1, x2, cons_take(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_take(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_and(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_and(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_isNat(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNat(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNat(z0))) ENCARG(cons_U31(x0, x1, x2, cons_isNatList(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNatList(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNatList(z0))) ENCARG(cons_U31(x0, x1, x2, cons_isNatIList(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U31(x0, x1, zeros, x3)) -> c11(U31'(encArg(x0), encArg(x1), zeros, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(zeros), ENCARG(x3)) ENCARG(cons_U31(x0, x1, 0, x3)) -> c11(U31'(encArg(x0), encArg(x1), 0, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(0), ENCARG(x3)) ENCARG(cons_U31(x0, x1, tt, x3)) -> c11(U31'(encArg(x0), encArg(x1), tt, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(tt), ENCARG(x3)) ENCARG(cons_U31(x0, x1, nil, x3)) -> c11(U31'(encArg(x0), encArg(x1), nil, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(nil), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_active(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), active(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_active(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_mark(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), mark(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_mark(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_cons(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), cons(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_cons(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U11(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), U11(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U11(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_s(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), s(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_s(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_length(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), length(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_length(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U21(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), U21(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U21(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U31(z0, z1, z2, z3), x3)) -> c11(U31'(encArg(x0), encArg(x1), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_take(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), take(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_take(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_and(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), and(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_and(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNat(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNat(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNat(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNatList(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNatList(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNatList(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNatIList(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNatIList(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNatIList(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, zeros, x2, x3)) -> c11(U31'(encArg(x0), zeros, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(zeros), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, 0, x2, x3)) -> c11(U31'(encArg(x0), 0, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, tt, x2, x3)) -> c11(U31'(encArg(x0), tt, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(tt), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, nil, x2, x3)) -> c11(U31'(encArg(x0), nil, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(nil), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_active(z0), x2, x3)) -> c11(U31'(encArg(x0), active(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_active(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_mark(z0), x2, x3)) -> c11(U31'(encArg(x0), mark(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_mark(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_cons(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), cons(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_cons(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U11(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), U11(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U11(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_s(z0), x2, x3)) -> c11(U31'(encArg(x0), s(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_s(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_length(z0), x2, x3)) -> c11(U31'(encArg(x0), length(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_length(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U21(z0), x2, x3)) -> c11(U31'(encArg(x0), U21(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U21(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U31(z0, z1, z2, z3), x2, x3)) -> c11(U31'(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_take(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), take(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_take(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_and(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), and(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_and(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNat(z0), x2, x3)) -> c11(U31'(encArg(x0), isNat(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNat(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNatList(z0), x2, x3)) -> c11(U31'(encArg(x0), isNatList(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNatList(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNatIList(z0), x2, x3)) -> c11(U31'(encArg(x0), isNatIList(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNatIList(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(zeros, x1, x2, x3)) -> c11(U31'(zeros, encArg(x1), encArg(x2), encArg(x3)), ENCARG(zeros), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(0, x1, x2, x3)) -> c11(U31'(0, encArg(x1), encArg(x2), encArg(x3)), ENCARG(0), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(tt, x1, x2, x3)) -> c11(U31'(tt, encArg(x1), encArg(x2), encArg(x3)), ENCARG(tt), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(nil, x1, x2, x3)) -> c11(U31'(nil, encArg(x1), encArg(x2), encArg(x3)), ENCARG(nil), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_active(z0), x1, x2, x3)) -> c11(U31'(active(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_active(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_mark(z0), x1, x2, x3)) -> c11(U31'(mark(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_mark(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_cons(z0, z1), x1, x2, x3)) -> c11(U31'(cons(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_cons(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U11(z0, z1), x1, x2, x3)) -> c11(U31'(U11(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U11(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_s(z0), x1, x2, x3)) -> c11(U31'(s(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_s(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_length(z0), x1, x2, x3)) -> c11(U31'(length(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_length(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U21(z0), x1, x2, x3)) -> c11(U31'(U21(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U21(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U31(z0, z1, z2, z3), x1, x2, x3)) -> c11(U31'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_take(z0, z1), x1, x2, x3)) -> c11(U31'(take(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_take(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_and(z0, z1), x1, x2, x3)) -> c11(U31'(and(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_and(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNat(z0), x1, x2, x3)) -> c11(U31'(isNat(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNat(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNatList(z0), x1, x2, x3)) -> c11(U31'(isNatList(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNatList(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNatIList(z0), x1, x2, x3)) -> c11(U31'(isNatIList(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNatIList(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ---------------------------------------- (70) Obligation: Complexity Dependency Tuples Problem Rules: encArg(zeros) -> zeros encArg(0) -> 0 encArg(tt) -> tt encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_U11(z0, z1)) -> U11(encArg(z0), encArg(z1)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_length(z0)) -> length(encArg(z0)) encArg(cons_U21(z0)) -> U21(encArg(z0)) encArg(cons_U31(z0, z1, z2, z3)) -> U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_isNat(z0)) -> isNat(encArg(z0)) encArg(cons_isNatList(z0)) -> isNatList(encArg(z0)) encArg(cons_isNatIList(z0)) -> isNatIList(encArg(z0)) active(zeros) -> mark(cons(0, zeros)) active(U11(tt, z0)) -> mark(s(length(z0))) active(U21(tt)) -> mark(nil) active(U31(tt, z0, z1, z2)) -> mark(cons(z2, take(z1, z0))) active(and(tt, z0)) -> mark(z0) active(isNat(0)) -> mark(tt) active(isNat(length(z0))) -> mark(isNatList(z0)) active(isNat(s(z0))) -> mark(isNat(z0)) active(isNatIList(z0)) -> mark(isNatList(z0)) active(isNatIList(zeros)) -> mark(tt) active(isNatIList(cons(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(isNatList(nil)) -> mark(tt) active(isNatList(cons(z0, z1))) -> mark(and(isNat(z0), isNatList(z1))) active(isNatList(take(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(length(nil)) -> mark(0) active(length(cons(z0, z1))) -> mark(U11(and(isNatList(z1), isNat(z0)), z1)) active(take(0, z0)) -> mark(U21(isNatIList(z0))) active(take(s(z0), cons(z1, z2))) -> mark(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)) mark(zeros) -> active(zeros) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(0) -> active(0) mark(U11(z0, z1)) -> active(U11(mark(z0), z1)) mark(tt) -> active(tt) mark(s(z0)) -> active(s(mark(z0))) mark(length(z0)) -> active(length(mark(z0))) mark(U21(z0)) -> active(U21(mark(z0))) mark(nil) -> active(nil) mark(U31(z0, z1, z2, z3)) -> active(U31(mark(z0), z1, z2, z3)) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(isNat(z0)) -> active(isNat(z0)) mark(isNatList(z0)) -> active(isNatList(z0)) mark(isNatIList(z0)) -> active(isNatIList(z0)) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) U11(mark(z0), z1) -> U11(z0, z1) U11(z0, mark(z1)) -> U11(z0, z1) U11(active(z0), z1) -> U11(z0, z1) U11(z0, active(z1)) -> U11(z0, z1) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) length(mark(z0)) -> length(z0) length(active(z0)) -> length(z0) U21(mark(z0)) -> U21(z0) U21(active(z0)) -> U21(z0) U31(mark(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, mark(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, mark(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, mark(z3)) -> U31(z0, z1, z2, z3) U31(active(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, active(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, active(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, active(z3)) -> U31(z0, z1, z2, z3) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) isNat(mark(z0)) -> isNat(z0) isNat(active(z0)) -> isNat(z0) isNatList(mark(z0)) -> isNatList(z0) isNatList(active(z0)) -> isNatList(z0) isNatIList(mark(z0)) -> isNatIList(z0) isNatIList(active(z0)) -> isNatIList(z0) Tuples: ENCARG(cons_take(z0, z1)) -> c12(TAKE(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_and(z0, z1)) -> c13(AND(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_isNat(z0)) -> c14(ISNAT(encArg(z0)), ENCARG(z0)) ENCARG(cons_isNatList(z0)) -> c15(ISNATLIST(encArg(z0)), ENCARG(z0)) ENCARG(cons_isNatIList(z0)) -> c16(ISNATILIST(encArg(z0)), ENCARG(z0)) ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(cons(z0, z1)) -> c53(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(mark(z0), z1)), U11'(mark(z0), z1), MARK(z0)) MARK(s(z0)) -> c57(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(mark(z0))), LENGTH(mark(z0)), MARK(z0)) MARK(U21(z0)) -> c59(ACTIVE(U21(mark(z0))), U21'(mark(z0)), MARK(z0)) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(mark(z0), z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(take(z0, z1)) -> c62(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 ENCODE_ACTIVE(z0) -> c(ACTIVE(encArg(z0))) ENCODE_MARK(z0) -> c(MARK(encArg(z0))) ENCODE_CONS(z0, z1) -> c(CONS(encArg(z0), encArg(z1))) ENCODE_U11(z0, z1) -> c(U11'(encArg(z0), encArg(z1))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_LENGTH(z0) -> c(LENGTH(encArg(z0))) ENCODE_U21(z0) -> c(U21'(encArg(z0))) ENCODE_U31(z0, z1, z2, z3) -> c(U31'(encArg(z0), encArg(z1), encArg(z2), encArg(z3))) ENCODE_TAKE(z0, z1) -> c(TAKE(encArg(z0), encArg(z1))) ENCODE_AND(z0, z1) -> c(AND(encArg(z0), encArg(z1))) ENCODE_ISNAT(z0) -> c(ISNAT(encArg(z0))) ENCODE_ISNATLIST(z0) -> c(ISNATLIST(encArg(z0))) ENCODE_ISNATILIST(z0) -> c(ISNATILIST(encArg(z0))) ENCARG(cons_active(cons_active(z0))) -> c4(ACTIVE(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_active(cons_mark(z0))) -> c4(ACTIVE(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_active(cons_cons(z0, z1))) -> c4(ACTIVE(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_active(cons_U11(z0, z1))) -> c4(ACTIVE(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_active(cons_s(z0))) -> c4(ACTIVE(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_active(cons_length(z0))) -> c4(ACTIVE(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_active(cons_U21(z0))) -> c4(ACTIVE(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_active(cons_U31(z0, z1, z2, z3))) -> c4(ACTIVE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_active(cons_take(z0, z1))) -> c4(ACTIVE(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_active(cons_and(z0, z1))) -> c4(ACTIVE(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_active(cons_isNat(z0))) -> c4(ACTIVE(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_active(cons_isNatList(z0))) -> c4(ACTIVE(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_active(cons_isNatIList(z0))) -> c4(ACTIVE(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_active(zeros)) -> c4(ACTIVE(zeros)) ENCARG(cons_mark(cons_active(z0))) -> c5(MARK(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_mark(cons_mark(z0))) -> c5(MARK(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_mark(cons_cons(z0, z1))) -> c5(MARK(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_mark(cons_U11(z0, z1))) -> c5(MARK(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_mark(cons_s(z0))) -> c5(MARK(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_mark(cons_length(z0))) -> c5(MARK(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_mark(cons_U21(z0))) -> c5(MARK(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_mark(cons_U31(z0, z1, z2, z3))) -> c5(MARK(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_mark(cons_take(z0, z1))) -> c5(MARK(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(cons_and(z0, z1))) -> c5(MARK(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_mark(cons_isNat(z0))) -> c5(MARK(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_mark(cons_isNatList(z0))) -> c5(MARK(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_mark(cons_isNatIList(z0))) -> c5(MARK(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_mark(zeros)) -> c5(MARK(zeros)) ENCARG(cons_mark(0)) -> c5(MARK(0)) ENCARG(cons_mark(tt)) -> c5(MARK(tt)) ENCARG(cons_mark(nil)) -> c5(MARK(nil)) ENCARG(cons_cons(x0, cons_active(z0))) -> c6(CONS(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_cons(x0, cons_mark(z0))) -> c6(CONS(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_cons(x0, cons_cons(z0, z1))) -> c6(CONS(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_cons(x0, cons_U11(z0, z1))) -> c6(CONS(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_cons(x0, cons_s(z0))) -> c6(CONS(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_cons(x0, cons_length(z0))) -> c6(CONS(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_cons(x0, cons_U21(z0))) -> c6(CONS(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_cons(x0, cons_U31(z0, z1, z2, z3))) -> c6(CONS(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_cons(x0, cons_take(z0, z1))) -> c6(CONS(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_cons(x0, cons_and(z0, z1))) -> c6(CONS(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_cons(x0, cons_isNat(z0))) -> c6(CONS(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_cons(x0, cons_isNatList(z0))) -> c6(CONS(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_cons(x0, cons_isNatIList(z0))) -> c6(CONS(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_cons(cons_active(z0), x1)) -> c6(CONS(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_mark(z0), x1)) -> c6(CONS(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_cons(z0, z1), x1)) -> c6(CONS(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_U11(z0, z1), x1)) -> c6(CONS(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_s(z0), x1)) -> c6(CONS(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_length(z0), x1)) -> c6(CONS(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U21(z0), x1)) -> c6(CONS(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U31(z0, z1, z2, z3), x1)) -> c6(CONS(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_cons(cons_take(z0, z1), x1)) -> c6(CONS(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_and(z0, z1), x1)) -> c6(CONS(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_isNat(z0), x1)) -> c6(CONS(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_isNatList(z0), x1)) -> c6(CONS(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_isNatIList(z0), x1)) -> c6(CONS(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_cons(x0, zeros)) -> c6(CONS(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_cons(x0, 0)) -> c6(CONS(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_cons(x0, tt)) -> c6(CONS(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_cons(x0, nil)) -> c6(CONS(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_cons(zeros, x1)) -> c6(CONS(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(0, x1)) -> c6(CONS(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(tt, x1)) -> c6(CONS(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(nil, x1)) -> c6(CONS(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(x0, cons_active(z0))) -> c7(U11'(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_U11(x0, cons_mark(z0))) -> c7(U11'(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_U11(x0, cons_cons(z0, z1))) -> c7(U11'(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U11(x0, cons_U11(z0, z1))) -> c7(U11'(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U11(x0, cons_s(z0))) -> c7(U11'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_U11(x0, cons_length(z0))) -> c7(U11'(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_U11(x0, cons_U21(z0))) -> c7(U11'(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_U11(x0, cons_U31(z0, z1, z2, z3))) -> c7(U11'(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U11(x0, cons_take(z0, z1))) -> c7(U11'(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_U11(x0, cons_and(z0, z1))) -> c7(U11'(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_U11(x0, cons_isNat(z0))) -> c7(U11'(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_U11(x0, cons_isNatList(z0))) -> c7(U11'(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_U11(x0, cons_isNatIList(z0))) -> c7(U11'(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U11(cons_active(z0), x1)) -> c7(U11'(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_mark(z0), x1)) -> c7(U11'(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_cons(z0, z1), x1)) -> c7(U11'(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_U11(z0, z1), x1)) -> c7(U11'(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_s(z0), x1)) -> c7(U11'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_length(z0), x1)) -> c7(U11'(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_U21(z0), x1)) -> c7(U11'(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_U31(z0, z1, z2, z3), x1)) -> c7(U11'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_U11(cons_take(z0, z1), x1)) -> c7(U11'(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_and(z0, z1), x1)) -> c7(U11'(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_isNat(z0), x1)) -> c7(U11'(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_isNatList(z0), x1)) -> c7(U11'(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_isNatIList(z0), x1)) -> c7(U11'(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_U11(x0, zeros)) -> c7(U11'(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_U11(x0, 0)) -> c7(U11'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_U11(x0, tt)) -> c7(U11'(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_U11(x0, nil)) -> c7(U11'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_U11(zeros, x1)) -> c7(U11'(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(0, x1)) -> c7(U11'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(tt, x1)) -> c7(U11'(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(nil, x1)) -> c7(U11'(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_s(cons_active(z0))) -> c8(S(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_s(cons_mark(z0))) -> c8(S(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_s(cons_cons(z0, z1))) -> c8(S(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_s(cons_U11(z0, z1))) -> c8(S(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_s(cons_s(z0))) -> c8(S(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_length(z0))) -> c8(S(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_s(cons_U21(z0))) -> c8(S(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_s(cons_U31(z0, z1, z2, z3))) -> c8(S(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_s(cons_take(z0, z1))) -> c8(S(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_s(cons_and(z0, z1))) -> c8(S(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_s(cons_isNat(z0))) -> c8(S(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_s(cons_isNatList(z0))) -> c8(S(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_s(cons_isNatIList(z0))) -> c8(S(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_length(cons_active(z0))) -> c9(LENGTH(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_length(cons_mark(z0))) -> c9(LENGTH(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_length(cons_cons(z0, z1))) -> c9(LENGTH(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_length(cons_U11(z0, z1))) -> c9(LENGTH(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_length(cons_s(z0))) -> c9(LENGTH(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_length(cons_length(z0))) -> c9(LENGTH(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_length(cons_U21(z0))) -> c9(LENGTH(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_length(cons_U31(z0, z1, z2, z3))) -> c9(LENGTH(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_length(cons_take(z0, z1))) -> c9(LENGTH(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_length(cons_and(z0, z1))) -> c9(LENGTH(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_length(cons_isNat(z0))) -> c9(LENGTH(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_length(cons_isNatList(z0))) -> c9(LENGTH(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_length(cons_isNatIList(z0))) -> c9(LENGTH(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U21(cons_active(z0))) -> c10(U21'(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_U21(cons_mark(z0))) -> c10(U21'(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_U21(cons_cons(z0, z1))) -> c10(U21'(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U21(cons_U11(z0, z1))) -> c10(U21'(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U21(cons_s(z0))) -> c10(U21'(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_U21(cons_length(z0))) -> c10(U21'(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_U21(cons_U21(z0))) -> c10(U21'(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_U21(cons_U31(z0, z1, z2, z3))) -> c10(U21'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U21(cons_take(z0, z1))) -> c10(U21'(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_U21(cons_and(z0, z1))) -> c10(U21'(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_U21(cons_isNat(z0))) -> c10(U21'(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_U21(cons_isNatList(z0))) -> c10(U21'(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_U21(cons_isNatIList(z0))) -> c10(U21'(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U31(x0, x1, x2, zeros)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), zeros), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(zeros)) ENCARG(cons_U31(x0, x1, x2, 0)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), 0), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(0)) ENCARG(cons_U31(x0, x1, x2, tt)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), tt), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(tt)) ENCARG(cons_U31(x0, x1, x2, nil)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), nil), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(nil)) ENCARG(cons_U31(x0, x1, x2, cons_active(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), active(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_active(z0))) ENCARG(cons_U31(x0, x1, x2, cons_mark(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), mark(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_mark(z0))) ENCARG(cons_U31(x0, x1, x2, cons_cons(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_U11(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_s(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), s(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_s(z0))) ENCARG(cons_U31(x0, x1, x2, cons_length(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), length(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_length(z0))) ENCARG(cons_U31(x0, x1, x2, cons_U21(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U21(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U21(z0))) ENCARG(cons_U31(x0, x1, x2, cons_U31(z0, z1, z2, z3))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U31(x0, x1, x2, cons_take(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_take(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_and(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_and(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_isNat(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNat(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNat(z0))) ENCARG(cons_U31(x0, x1, x2, cons_isNatList(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNatList(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNatList(z0))) ENCARG(cons_U31(x0, x1, x2, cons_isNatIList(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U31(x0, x1, zeros, x3)) -> c11(U31'(encArg(x0), encArg(x1), zeros, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(zeros), ENCARG(x3)) ENCARG(cons_U31(x0, x1, 0, x3)) -> c11(U31'(encArg(x0), encArg(x1), 0, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(0), ENCARG(x3)) ENCARG(cons_U31(x0, x1, tt, x3)) -> c11(U31'(encArg(x0), encArg(x1), tt, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(tt), ENCARG(x3)) ENCARG(cons_U31(x0, x1, nil, x3)) -> c11(U31'(encArg(x0), encArg(x1), nil, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(nil), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_active(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), active(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_active(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_mark(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), mark(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_mark(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_cons(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), cons(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_cons(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U11(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), U11(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U11(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_s(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), s(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_s(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_length(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), length(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_length(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U21(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), U21(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U21(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U31(z0, z1, z2, z3), x3)) -> c11(U31'(encArg(x0), encArg(x1), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_take(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), take(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_take(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_and(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), and(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_and(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNat(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNat(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNat(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNatList(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNatList(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNatList(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNatIList(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNatIList(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNatIList(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, zeros, x2, x3)) -> c11(U31'(encArg(x0), zeros, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(zeros), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, 0, x2, x3)) -> c11(U31'(encArg(x0), 0, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, tt, x2, x3)) -> c11(U31'(encArg(x0), tt, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(tt), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, nil, x2, x3)) -> c11(U31'(encArg(x0), nil, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(nil), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_active(z0), x2, x3)) -> c11(U31'(encArg(x0), active(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_active(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_mark(z0), x2, x3)) -> c11(U31'(encArg(x0), mark(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_mark(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_cons(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), cons(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_cons(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U11(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), U11(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U11(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_s(z0), x2, x3)) -> c11(U31'(encArg(x0), s(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_s(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_length(z0), x2, x3)) -> c11(U31'(encArg(x0), length(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_length(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U21(z0), x2, x3)) -> c11(U31'(encArg(x0), U21(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U21(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U31(z0, z1, z2, z3), x2, x3)) -> c11(U31'(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_take(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), take(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_take(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_and(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), and(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_and(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNat(z0), x2, x3)) -> c11(U31'(encArg(x0), isNat(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNat(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNatList(z0), x2, x3)) -> c11(U31'(encArg(x0), isNatList(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNatList(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNatIList(z0), x2, x3)) -> c11(U31'(encArg(x0), isNatIList(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNatIList(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(zeros, x1, x2, x3)) -> c11(U31'(zeros, encArg(x1), encArg(x2), encArg(x3)), ENCARG(zeros), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(0, x1, x2, x3)) -> c11(U31'(0, encArg(x1), encArg(x2), encArg(x3)), ENCARG(0), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(tt, x1, x2, x3)) -> c11(U31'(tt, encArg(x1), encArg(x2), encArg(x3)), ENCARG(tt), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(nil, x1, x2, x3)) -> c11(U31'(nil, encArg(x1), encArg(x2), encArg(x3)), ENCARG(nil), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_active(z0), x1, x2, x3)) -> c11(U31'(active(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_active(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_mark(z0), x1, x2, x3)) -> c11(U31'(mark(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_mark(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_cons(z0, z1), x1, x2, x3)) -> c11(U31'(cons(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_cons(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U11(z0, z1), x1, x2, x3)) -> c11(U31'(U11(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U11(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_s(z0), x1, x2, x3)) -> c11(U31'(s(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_s(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_length(z0), x1, x2, x3)) -> c11(U31'(length(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_length(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U21(z0), x1, x2, x3)) -> c11(U31'(U21(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U21(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U31(z0, z1, z2, z3), x1, x2, x3)) -> c11(U31'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_take(z0, z1), x1, x2, x3)) -> c11(U31'(take(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_take(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_and(z0, z1), x1, x2, x3)) -> c11(U31'(and(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_and(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNat(z0), x1, x2, x3)) -> c11(U31'(isNat(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNat(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNatList(z0), x1, x2, x3)) -> c11(U31'(isNatList(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNatList(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNatIList(z0), x1, x2, x3)) -> c11(U31'(isNatIList(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNatIList(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) S tuples: ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(cons(z0, z1)) -> c53(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(mark(z0), z1)), U11'(mark(z0), z1), MARK(z0)) MARK(s(z0)) -> c57(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(mark(z0))), LENGTH(mark(z0)), MARK(z0)) MARK(U21(z0)) -> c59(ACTIVE(U21(mark(z0))), U21'(mark(z0)), MARK(z0)) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(mark(z0), z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(take(z0, z1)) -> c62(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 K tuples:none Defined Rule Symbols: encArg_1, active_1, mark_1, cons_2, U11_2, s_1, length_1, U21_1, U31_4, take_2, and_2, isNat_1, isNatList_1, isNatIList_1 Defined Pair Symbols: ENCARG_1, ACTIVE_1, MARK_1, CONS_2, U11'_2, S_1, LENGTH_1, U21'_1, U31'_4, TAKE_2, AND_2, ISNAT_1, ISNATLIST_1, ISNATILIST_1, ENCODE_ACTIVE_1, ENCODE_MARK_1, ENCODE_CONS_2, ENCODE_U11_2, ENCODE_S_1, ENCODE_LENGTH_1, ENCODE_U21_1, ENCODE_U31_4, ENCODE_TAKE_2, ENCODE_AND_2, ENCODE_ISNAT_1, ENCODE_ISNATLIST_1, ENCODE_ISNATILIST_1 Compound Symbols: c12_3, c13_3, c14_2, c15_2, c16_2, c36_1, c37_3, c38_1, c39_1, c40_2, c41_2, c42_2, c43_1, c45_1, c48_1, c52_1, c53_3, c55_3, c57_3, c58_3, c59_3, c61_3, c62_4, c63_3, c64_2, c65_2, c66_2, c67_1, c68_1, c69_1, c70_1, c71_1, c72_1, c73_1, c74_1, c75_1, c76_1, c77_1, c78_1, c79_1, c80_1, c81_1, c82_1, c83_1, c84_1, c85_1, c86_1, c87_1, c88_1, c89_1, c90_1, c91_1, c92_1, c93_1, c94_1, c95_1, c96_1, c97_1, c98_1, c99_1, c100_1, c101_1, c102_1, c34_1, c35_2, c44_3, c46_3, c47_3, c49_3, c50_2, c51_4, c54, c56, c60, c_1, c4_2, c4_1, c5_2, c5_1, c6_3, c6_2, c7_3, c7_2, c8_2, c9_2, c10_2, c11_5 ---------------------------------------- (71) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 16 trailing tuple parts ---------------------------------------- (72) Obligation: Complexity Dependency Tuples Problem Rules: encArg(zeros) -> zeros encArg(0) -> 0 encArg(tt) -> tt encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_U11(z0, z1)) -> U11(encArg(z0), encArg(z1)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_length(z0)) -> length(encArg(z0)) encArg(cons_U21(z0)) -> U21(encArg(z0)) encArg(cons_U31(z0, z1, z2, z3)) -> U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_isNat(z0)) -> isNat(encArg(z0)) encArg(cons_isNatList(z0)) -> isNatList(encArg(z0)) encArg(cons_isNatIList(z0)) -> isNatIList(encArg(z0)) active(zeros) -> mark(cons(0, zeros)) active(U11(tt, z0)) -> mark(s(length(z0))) active(U21(tt)) -> mark(nil) active(U31(tt, z0, z1, z2)) -> mark(cons(z2, take(z1, z0))) active(and(tt, z0)) -> mark(z0) active(isNat(0)) -> mark(tt) active(isNat(length(z0))) -> mark(isNatList(z0)) active(isNat(s(z0))) -> mark(isNat(z0)) active(isNatIList(z0)) -> mark(isNatList(z0)) active(isNatIList(zeros)) -> mark(tt) active(isNatIList(cons(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(isNatList(nil)) -> mark(tt) active(isNatList(cons(z0, z1))) -> mark(and(isNat(z0), isNatList(z1))) active(isNatList(take(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(length(nil)) -> mark(0) active(length(cons(z0, z1))) -> mark(U11(and(isNatList(z1), isNat(z0)), z1)) active(take(0, z0)) -> mark(U21(isNatIList(z0))) active(take(s(z0), cons(z1, z2))) -> mark(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)) mark(zeros) -> active(zeros) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(0) -> active(0) mark(U11(z0, z1)) -> active(U11(mark(z0), z1)) mark(tt) -> active(tt) mark(s(z0)) -> active(s(mark(z0))) mark(length(z0)) -> active(length(mark(z0))) mark(U21(z0)) -> active(U21(mark(z0))) mark(nil) -> active(nil) mark(U31(z0, z1, z2, z3)) -> active(U31(mark(z0), z1, z2, z3)) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(isNat(z0)) -> active(isNat(z0)) mark(isNatList(z0)) -> active(isNatList(z0)) mark(isNatIList(z0)) -> active(isNatIList(z0)) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) U11(mark(z0), z1) -> U11(z0, z1) U11(z0, mark(z1)) -> U11(z0, z1) U11(active(z0), z1) -> U11(z0, z1) U11(z0, active(z1)) -> U11(z0, z1) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) length(mark(z0)) -> length(z0) length(active(z0)) -> length(z0) U21(mark(z0)) -> U21(z0) U21(active(z0)) -> U21(z0) U31(mark(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, mark(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, mark(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, mark(z3)) -> U31(z0, z1, z2, z3) U31(active(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, active(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, active(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, active(z3)) -> U31(z0, z1, z2, z3) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) isNat(mark(z0)) -> isNat(z0) isNat(active(z0)) -> isNat(z0) isNatList(mark(z0)) -> isNatList(z0) isNatList(active(z0)) -> isNatList(z0) isNatIList(mark(z0)) -> isNatIList(z0) isNatIList(active(z0)) -> isNatIList(z0) Tuples: ENCARG(cons_take(z0, z1)) -> c12(TAKE(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_and(z0, z1)) -> c13(AND(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_isNat(z0)) -> c14(ISNAT(encArg(z0)), ENCARG(z0)) ENCARG(cons_isNatList(z0)) -> c15(ISNATLIST(encArg(z0)), ENCARG(z0)) ENCARG(cons_isNatIList(z0)) -> c16(ISNATILIST(encArg(z0)), ENCARG(z0)) ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(cons(z0, z1)) -> c53(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(mark(z0), z1)), U11'(mark(z0), z1), MARK(z0)) MARK(s(z0)) -> c57(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(mark(z0))), LENGTH(mark(z0)), MARK(z0)) MARK(U21(z0)) -> c59(ACTIVE(U21(mark(z0))), U21'(mark(z0)), MARK(z0)) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(mark(z0), z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(take(z0, z1)) -> c62(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 ENCODE_ACTIVE(z0) -> c(ACTIVE(encArg(z0))) ENCODE_MARK(z0) -> c(MARK(encArg(z0))) ENCODE_CONS(z0, z1) -> c(CONS(encArg(z0), encArg(z1))) ENCODE_U11(z0, z1) -> c(U11'(encArg(z0), encArg(z1))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_LENGTH(z0) -> c(LENGTH(encArg(z0))) ENCODE_U21(z0) -> c(U21'(encArg(z0))) ENCODE_U31(z0, z1, z2, z3) -> c(U31'(encArg(z0), encArg(z1), encArg(z2), encArg(z3))) ENCODE_TAKE(z0, z1) -> c(TAKE(encArg(z0), encArg(z1))) ENCODE_AND(z0, z1) -> c(AND(encArg(z0), encArg(z1))) ENCODE_ISNAT(z0) -> c(ISNAT(encArg(z0))) ENCODE_ISNATLIST(z0) -> c(ISNATLIST(encArg(z0))) ENCODE_ISNATILIST(z0) -> c(ISNATILIST(encArg(z0))) ENCARG(cons_active(cons_active(z0))) -> c4(ACTIVE(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_active(cons_mark(z0))) -> c4(ACTIVE(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_active(cons_cons(z0, z1))) -> c4(ACTIVE(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_active(cons_U11(z0, z1))) -> c4(ACTIVE(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_active(cons_s(z0))) -> c4(ACTIVE(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_active(cons_length(z0))) -> c4(ACTIVE(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_active(cons_U21(z0))) -> c4(ACTIVE(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_active(cons_U31(z0, z1, z2, z3))) -> c4(ACTIVE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_active(cons_take(z0, z1))) -> c4(ACTIVE(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_active(cons_and(z0, z1))) -> c4(ACTIVE(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_active(cons_isNat(z0))) -> c4(ACTIVE(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_active(cons_isNatList(z0))) -> c4(ACTIVE(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_active(cons_isNatIList(z0))) -> c4(ACTIVE(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_active(zeros)) -> c4(ACTIVE(zeros)) ENCARG(cons_mark(cons_active(z0))) -> c5(MARK(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_mark(cons_mark(z0))) -> c5(MARK(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_mark(cons_cons(z0, z1))) -> c5(MARK(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_mark(cons_U11(z0, z1))) -> c5(MARK(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_mark(cons_s(z0))) -> c5(MARK(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_mark(cons_length(z0))) -> c5(MARK(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_mark(cons_U21(z0))) -> c5(MARK(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_mark(cons_U31(z0, z1, z2, z3))) -> c5(MARK(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_mark(cons_take(z0, z1))) -> c5(MARK(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(cons_and(z0, z1))) -> c5(MARK(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_mark(cons_isNat(z0))) -> c5(MARK(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_mark(cons_isNatList(z0))) -> c5(MARK(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_mark(cons_isNatIList(z0))) -> c5(MARK(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_mark(zeros)) -> c5(MARK(zeros)) ENCARG(cons_mark(0)) -> c5(MARK(0)) ENCARG(cons_mark(tt)) -> c5(MARK(tt)) ENCARG(cons_mark(nil)) -> c5(MARK(nil)) ENCARG(cons_cons(x0, cons_active(z0))) -> c6(CONS(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_cons(x0, cons_mark(z0))) -> c6(CONS(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_cons(x0, cons_cons(z0, z1))) -> c6(CONS(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_cons(x0, cons_U11(z0, z1))) -> c6(CONS(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_cons(x0, cons_s(z0))) -> c6(CONS(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_cons(x0, cons_length(z0))) -> c6(CONS(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_cons(x0, cons_U21(z0))) -> c6(CONS(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_cons(x0, cons_U31(z0, z1, z2, z3))) -> c6(CONS(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_cons(x0, cons_take(z0, z1))) -> c6(CONS(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_cons(x0, cons_and(z0, z1))) -> c6(CONS(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_cons(x0, cons_isNat(z0))) -> c6(CONS(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_cons(x0, cons_isNatList(z0))) -> c6(CONS(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_cons(x0, cons_isNatIList(z0))) -> c6(CONS(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_cons(cons_active(z0), x1)) -> c6(CONS(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_mark(z0), x1)) -> c6(CONS(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_cons(z0, z1), x1)) -> c6(CONS(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_U11(z0, z1), x1)) -> c6(CONS(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_s(z0), x1)) -> c6(CONS(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_length(z0), x1)) -> c6(CONS(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U21(z0), x1)) -> c6(CONS(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U31(z0, z1, z2, z3), x1)) -> c6(CONS(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_cons(cons_take(z0, z1), x1)) -> c6(CONS(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_and(z0, z1), x1)) -> c6(CONS(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_isNat(z0), x1)) -> c6(CONS(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_isNatList(z0), x1)) -> c6(CONS(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_isNatIList(z0), x1)) -> c6(CONS(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_cons(x0, zeros)) -> c6(CONS(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_cons(x0, 0)) -> c6(CONS(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_cons(x0, tt)) -> c6(CONS(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_cons(x0, nil)) -> c6(CONS(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_cons(zeros, x1)) -> c6(CONS(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(0, x1)) -> c6(CONS(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(tt, x1)) -> c6(CONS(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(nil, x1)) -> c6(CONS(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(x0, cons_active(z0))) -> c7(U11'(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_U11(x0, cons_mark(z0))) -> c7(U11'(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_U11(x0, cons_cons(z0, z1))) -> c7(U11'(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U11(x0, cons_U11(z0, z1))) -> c7(U11'(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U11(x0, cons_s(z0))) -> c7(U11'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_U11(x0, cons_length(z0))) -> c7(U11'(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_U11(x0, cons_U21(z0))) -> c7(U11'(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_U11(x0, cons_U31(z0, z1, z2, z3))) -> c7(U11'(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U11(x0, cons_take(z0, z1))) -> c7(U11'(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_U11(x0, cons_and(z0, z1))) -> c7(U11'(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_U11(x0, cons_isNat(z0))) -> c7(U11'(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_U11(x0, cons_isNatList(z0))) -> c7(U11'(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_U11(x0, cons_isNatIList(z0))) -> c7(U11'(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U11(cons_active(z0), x1)) -> c7(U11'(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_mark(z0), x1)) -> c7(U11'(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_cons(z0, z1), x1)) -> c7(U11'(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_U11(z0, z1), x1)) -> c7(U11'(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_s(z0), x1)) -> c7(U11'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_length(z0), x1)) -> c7(U11'(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_U21(z0), x1)) -> c7(U11'(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_U31(z0, z1, z2, z3), x1)) -> c7(U11'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_U11(cons_take(z0, z1), x1)) -> c7(U11'(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_and(z0, z1), x1)) -> c7(U11'(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_isNat(z0), x1)) -> c7(U11'(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_isNatList(z0), x1)) -> c7(U11'(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_isNatIList(z0), x1)) -> c7(U11'(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_U11(x0, zeros)) -> c7(U11'(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_U11(x0, 0)) -> c7(U11'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_U11(x0, tt)) -> c7(U11'(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_U11(x0, nil)) -> c7(U11'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_U11(zeros, x1)) -> c7(U11'(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(0, x1)) -> c7(U11'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(tt, x1)) -> c7(U11'(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(nil, x1)) -> c7(U11'(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_s(cons_active(z0))) -> c8(S(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_s(cons_mark(z0))) -> c8(S(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_s(cons_cons(z0, z1))) -> c8(S(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_s(cons_U11(z0, z1))) -> c8(S(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_s(cons_s(z0))) -> c8(S(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_length(z0))) -> c8(S(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_s(cons_U21(z0))) -> c8(S(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_s(cons_U31(z0, z1, z2, z3))) -> c8(S(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_s(cons_take(z0, z1))) -> c8(S(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_s(cons_and(z0, z1))) -> c8(S(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_s(cons_isNat(z0))) -> c8(S(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_s(cons_isNatList(z0))) -> c8(S(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_s(cons_isNatIList(z0))) -> c8(S(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_length(cons_active(z0))) -> c9(LENGTH(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_length(cons_mark(z0))) -> c9(LENGTH(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_length(cons_cons(z0, z1))) -> c9(LENGTH(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_length(cons_U11(z0, z1))) -> c9(LENGTH(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_length(cons_s(z0))) -> c9(LENGTH(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_length(cons_length(z0))) -> c9(LENGTH(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_length(cons_U21(z0))) -> c9(LENGTH(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_length(cons_U31(z0, z1, z2, z3))) -> c9(LENGTH(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_length(cons_take(z0, z1))) -> c9(LENGTH(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_length(cons_and(z0, z1))) -> c9(LENGTH(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_length(cons_isNat(z0))) -> c9(LENGTH(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_length(cons_isNatList(z0))) -> c9(LENGTH(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_length(cons_isNatIList(z0))) -> c9(LENGTH(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U21(cons_active(z0))) -> c10(U21'(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_U21(cons_mark(z0))) -> c10(U21'(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_U21(cons_cons(z0, z1))) -> c10(U21'(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U21(cons_U11(z0, z1))) -> c10(U21'(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U21(cons_s(z0))) -> c10(U21'(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_U21(cons_length(z0))) -> c10(U21'(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_U21(cons_U21(z0))) -> c10(U21'(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_U21(cons_U31(z0, z1, z2, z3))) -> c10(U21'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U21(cons_take(z0, z1))) -> c10(U21'(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_U21(cons_and(z0, z1))) -> c10(U21'(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_U21(cons_isNat(z0))) -> c10(U21'(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_U21(cons_isNatList(z0))) -> c10(U21'(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_U21(cons_isNatIList(z0))) -> c10(U21'(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U31(x0, x1, x2, cons_active(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), active(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_active(z0))) ENCARG(cons_U31(x0, x1, x2, cons_mark(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), mark(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_mark(z0))) ENCARG(cons_U31(x0, x1, x2, cons_cons(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_U11(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_s(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), s(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_s(z0))) ENCARG(cons_U31(x0, x1, x2, cons_length(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), length(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_length(z0))) ENCARG(cons_U31(x0, x1, x2, cons_U21(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U21(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U21(z0))) ENCARG(cons_U31(x0, x1, x2, cons_U31(z0, z1, z2, z3))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U31(x0, x1, x2, cons_take(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_take(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_and(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_and(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_isNat(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNat(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNat(z0))) ENCARG(cons_U31(x0, x1, x2, cons_isNatList(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNatList(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNatList(z0))) ENCARG(cons_U31(x0, x1, x2, cons_isNatIList(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U31(x0, x1, cons_active(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), active(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_active(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_mark(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), mark(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_mark(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_cons(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), cons(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_cons(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U11(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), U11(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U11(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_s(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), s(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_s(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_length(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), length(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_length(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U21(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), U21(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U21(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U31(z0, z1, z2, z3), x3)) -> c11(U31'(encArg(x0), encArg(x1), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_take(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), take(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_take(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_and(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), and(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_and(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNat(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNat(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNat(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNatList(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNatList(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNatList(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNatIList(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNatIList(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNatIList(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, cons_active(z0), x2, x3)) -> c11(U31'(encArg(x0), active(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_active(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_mark(z0), x2, x3)) -> c11(U31'(encArg(x0), mark(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_mark(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_cons(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), cons(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_cons(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U11(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), U11(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U11(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_s(z0), x2, x3)) -> c11(U31'(encArg(x0), s(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_s(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_length(z0), x2, x3)) -> c11(U31'(encArg(x0), length(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_length(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U21(z0), x2, x3)) -> c11(U31'(encArg(x0), U21(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U21(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U31(z0, z1, z2, z3), x2, x3)) -> c11(U31'(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_take(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), take(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_take(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_and(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), and(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_and(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNat(z0), x2, x3)) -> c11(U31'(encArg(x0), isNat(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNat(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNatList(z0), x2, x3)) -> c11(U31'(encArg(x0), isNatList(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNatList(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNatIList(z0), x2, x3)) -> c11(U31'(encArg(x0), isNatIList(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNatIList(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_active(z0), x1, x2, x3)) -> c11(U31'(active(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_active(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_mark(z0), x1, x2, x3)) -> c11(U31'(mark(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_mark(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_cons(z0, z1), x1, x2, x3)) -> c11(U31'(cons(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_cons(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U11(z0, z1), x1, x2, x3)) -> c11(U31'(U11(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U11(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_s(z0), x1, x2, x3)) -> c11(U31'(s(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_s(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_length(z0), x1, x2, x3)) -> c11(U31'(length(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_length(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U21(z0), x1, x2, x3)) -> c11(U31'(U21(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U21(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U31(z0, z1, z2, z3), x1, x2, x3)) -> c11(U31'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_take(z0, z1), x1, x2, x3)) -> c11(U31'(take(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_take(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_and(z0, z1), x1, x2, x3)) -> c11(U31'(and(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_and(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNat(z0), x1, x2, x3)) -> c11(U31'(isNat(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNat(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNatList(z0), x1, x2, x3)) -> c11(U31'(isNatList(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNatList(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNatIList(z0), x1, x2, x3)) -> c11(U31'(isNatIList(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNatIList(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, x1, x2, zeros)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), zeros), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, 0)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), 0), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, tt)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), tt), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, nil)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), nil), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, zeros, x3)) -> c11(U31'(encArg(x0), encArg(x1), zeros, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, 0, x3)) -> c11(U31'(encArg(x0), encArg(x1), 0, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, tt, x3)) -> c11(U31'(encArg(x0), encArg(x1), tt, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, nil, x3)) -> c11(U31'(encArg(x0), encArg(x1), nil, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, zeros, x2, x3)) -> c11(U31'(encArg(x0), zeros, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, 0, x2, x3)) -> c11(U31'(encArg(x0), 0, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, tt, x2, x3)) -> c11(U31'(encArg(x0), tt, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, nil, x2, x3)) -> c11(U31'(encArg(x0), nil, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(zeros, x1, x2, x3)) -> c11(U31'(zeros, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(0, x1, x2, x3)) -> c11(U31'(0, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(tt, x1, x2, x3)) -> c11(U31'(tt, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(nil, x1, x2, x3)) -> c11(U31'(nil, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) S tuples: ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(cons(z0, z1)) -> c53(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(mark(z0), z1)), U11'(mark(z0), z1), MARK(z0)) MARK(s(z0)) -> c57(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(mark(z0))), LENGTH(mark(z0)), MARK(z0)) MARK(U21(z0)) -> c59(ACTIVE(U21(mark(z0))), U21'(mark(z0)), MARK(z0)) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(mark(z0), z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(take(z0, z1)) -> c62(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 K tuples:none Defined Rule Symbols: encArg_1, active_1, mark_1, cons_2, U11_2, s_1, length_1, U21_1, U31_4, take_2, and_2, isNat_1, isNatList_1, isNatIList_1 Defined Pair Symbols: ENCARG_1, ACTIVE_1, MARK_1, CONS_2, U11'_2, S_1, LENGTH_1, U21'_1, U31'_4, TAKE_2, AND_2, ISNAT_1, ISNATLIST_1, ISNATILIST_1, ENCODE_ACTIVE_1, ENCODE_MARK_1, ENCODE_CONS_2, ENCODE_U11_2, ENCODE_S_1, ENCODE_LENGTH_1, ENCODE_U21_1, ENCODE_U31_4, ENCODE_TAKE_2, ENCODE_AND_2, ENCODE_ISNAT_1, ENCODE_ISNATLIST_1, ENCODE_ISNATILIST_1 Compound Symbols: c12_3, c13_3, c14_2, c15_2, c16_2, c36_1, c37_3, c38_1, c39_1, c40_2, c41_2, c42_2, c43_1, c45_1, c48_1, c52_1, c53_3, c55_3, c57_3, c58_3, c59_3, c61_3, c62_4, c63_3, c64_2, c65_2, c66_2, c67_1, c68_1, c69_1, c70_1, c71_1, c72_1, c73_1, c74_1, c75_1, c76_1, c77_1, c78_1, c79_1, c80_1, c81_1, c82_1, c83_1, c84_1, c85_1, c86_1, c87_1, c88_1, c89_1, c90_1, c91_1, c92_1, c93_1, c94_1, c95_1, c96_1, c97_1, c98_1, c99_1, c100_1, c101_1, c102_1, c34_1, c35_2, c44_3, c46_3, c47_3, c49_3, c50_2, c51_4, c54, c56, c60, c_1, c4_2, c4_1, c5_2, c5_1, c6_3, c6_2, c7_3, c7_2, c8_2, c9_2, c10_2, c11_5, c11_4 ---------------------------------------- (73) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace ENCARG(cons_take(z0, z1)) -> c12(TAKE(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) by ENCARG(cons_take(x0, zeros)) -> c12(TAKE(encArg(x0), zeros), ENCARG(x0), ENCARG(zeros)) ENCARG(cons_take(x0, 0)) -> c12(TAKE(encArg(x0), 0), ENCARG(x0), ENCARG(0)) ENCARG(cons_take(x0, tt)) -> c12(TAKE(encArg(x0), tt), ENCARG(x0), ENCARG(tt)) ENCARG(cons_take(x0, nil)) -> c12(TAKE(encArg(x0), nil), ENCARG(x0), ENCARG(nil)) ENCARG(cons_take(x0, cons_active(z0))) -> c12(TAKE(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_take(x0, cons_mark(z0))) -> c12(TAKE(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_take(x0, cons_cons(z0, z1))) -> c12(TAKE(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_take(x0, cons_U11(z0, z1))) -> c12(TAKE(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_take(x0, cons_s(z0))) -> c12(TAKE(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_take(x0, cons_length(z0))) -> c12(TAKE(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_take(x0, cons_U21(z0))) -> c12(TAKE(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_take(x0, cons_U31(z0, z1, z2, z3))) -> c12(TAKE(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_take(x0, cons_take(z0, z1))) -> c12(TAKE(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_take(x0, cons_and(z0, z1))) -> c12(TAKE(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_take(x0, cons_isNat(z0))) -> c12(TAKE(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_take(x0, cons_isNatList(z0))) -> c12(TAKE(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_take(x0, cons_isNatIList(z0))) -> c12(TAKE(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_take(zeros, x1)) -> c12(TAKE(zeros, encArg(x1)), ENCARG(zeros), ENCARG(x1)) ENCARG(cons_take(0, x1)) -> c12(TAKE(0, encArg(x1)), ENCARG(0), ENCARG(x1)) ENCARG(cons_take(tt, x1)) -> c12(TAKE(tt, encArg(x1)), ENCARG(tt), ENCARG(x1)) ENCARG(cons_take(nil, x1)) -> c12(TAKE(nil, encArg(x1)), ENCARG(nil), ENCARG(x1)) ENCARG(cons_take(cons_active(z0), x1)) -> c12(TAKE(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_take(cons_mark(z0), x1)) -> c12(TAKE(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_take(cons_cons(z0, z1), x1)) -> c12(TAKE(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_U11(z0, z1), x1)) -> c12(TAKE(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_s(z0), x1)) -> c12(TAKE(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_take(cons_length(z0), x1)) -> c12(TAKE(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_take(cons_U21(z0), x1)) -> c12(TAKE(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_take(cons_U31(z0, z1, z2, z3), x1)) -> c12(TAKE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_take(cons_take(z0, z1), x1)) -> c12(TAKE(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_and(z0, z1), x1)) -> c12(TAKE(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_isNat(z0), x1)) -> c12(TAKE(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_take(cons_isNatList(z0), x1)) -> c12(TAKE(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_take(cons_isNatIList(z0), x1)) -> c12(TAKE(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ---------------------------------------- (74) Obligation: Complexity Dependency Tuples Problem Rules: encArg(zeros) -> zeros encArg(0) -> 0 encArg(tt) -> tt encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_U11(z0, z1)) -> U11(encArg(z0), encArg(z1)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_length(z0)) -> length(encArg(z0)) encArg(cons_U21(z0)) -> U21(encArg(z0)) encArg(cons_U31(z0, z1, z2, z3)) -> U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_isNat(z0)) -> isNat(encArg(z0)) encArg(cons_isNatList(z0)) -> isNatList(encArg(z0)) encArg(cons_isNatIList(z0)) -> isNatIList(encArg(z0)) active(zeros) -> mark(cons(0, zeros)) active(U11(tt, z0)) -> mark(s(length(z0))) active(U21(tt)) -> mark(nil) active(U31(tt, z0, z1, z2)) -> mark(cons(z2, take(z1, z0))) active(and(tt, z0)) -> mark(z0) active(isNat(0)) -> mark(tt) active(isNat(length(z0))) -> mark(isNatList(z0)) active(isNat(s(z0))) -> mark(isNat(z0)) active(isNatIList(z0)) -> mark(isNatList(z0)) active(isNatIList(zeros)) -> mark(tt) active(isNatIList(cons(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(isNatList(nil)) -> mark(tt) active(isNatList(cons(z0, z1))) -> mark(and(isNat(z0), isNatList(z1))) active(isNatList(take(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(length(nil)) -> mark(0) active(length(cons(z0, z1))) -> mark(U11(and(isNatList(z1), isNat(z0)), z1)) active(take(0, z0)) -> mark(U21(isNatIList(z0))) active(take(s(z0), cons(z1, z2))) -> mark(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)) mark(zeros) -> active(zeros) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(0) -> active(0) mark(U11(z0, z1)) -> active(U11(mark(z0), z1)) mark(tt) -> active(tt) mark(s(z0)) -> active(s(mark(z0))) mark(length(z0)) -> active(length(mark(z0))) mark(U21(z0)) -> active(U21(mark(z0))) mark(nil) -> active(nil) mark(U31(z0, z1, z2, z3)) -> active(U31(mark(z0), z1, z2, z3)) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(isNat(z0)) -> active(isNat(z0)) mark(isNatList(z0)) -> active(isNatList(z0)) mark(isNatIList(z0)) -> active(isNatIList(z0)) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) U11(mark(z0), z1) -> U11(z0, z1) U11(z0, mark(z1)) -> U11(z0, z1) U11(active(z0), z1) -> U11(z0, z1) U11(z0, active(z1)) -> U11(z0, z1) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) length(mark(z0)) -> length(z0) length(active(z0)) -> length(z0) U21(mark(z0)) -> U21(z0) U21(active(z0)) -> U21(z0) U31(mark(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, mark(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, mark(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, mark(z3)) -> U31(z0, z1, z2, z3) U31(active(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, active(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, active(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, active(z3)) -> U31(z0, z1, z2, z3) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) isNat(mark(z0)) -> isNat(z0) isNat(active(z0)) -> isNat(z0) isNatList(mark(z0)) -> isNatList(z0) isNatList(active(z0)) -> isNatList(z0) isNatIList(mark(z0)) -> isNatIList(z0) isNatIList(active(z0)) -> isNatIList(z0) Tuples: ENCARG(cons_and(z0, z1)) -> c13(AND(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_isNat(z0)) -> c14(ISNAT(encArg(z0)), ENCARG(z0)) ENCARG(cons_isNatList(z0)) -> c15(ISNATLIST(encArg(z0)), ENCARG(z0)) ENCARG(cons_isNatIList(z0)) -> c16(ISNATILIST(encArg(z0)), ENCARG(z0)) ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(cons(z0, z1)) -> c53(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(mark(z0), z1)), U11'(mark(z0), z1), MARK(z0)) MARK(s(z0)) -> c57(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(mark(z0))), LENGTH(mark(z0)), MARK(z0)) MARK(U21(z0)) -> c59(ACTIVE(U21(mark(z0))), U21'(mark(z0)), MARK(z0)) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(mark(z0), z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(take(z0, z1)) -> c62(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 ENCODE_ACTIVE(z0) -> c(ACTIVE(encArg(z0))) ENCODE_MARK(z0) -> c(MARK(encArg(z0))) ENCODE_CONS(z0, z1) -> c(CONS(encArg(z0), encArg(z1))) ENCODE_U11(z0, z1) -> c(U11'(encArg(z0), encArg(z1))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_LENGTH(z0) -> c(LENGTH(encArg(z0))) ENCODE_U21(z0) -> c(U21'(encArg(z0))) ENCODE_U31(z0, z1, z2, z3) -> c(U31'(encArg(z0), encArg(z1), encArg(z2), encArg(z3))) ENCODE_TAKE(z0, z1) -> c(TAKE(encArg(z0), encArg(z1))) ENCODE_AND(z0, z1) -> c(AND(encArg(z0), encArg(z1))) ENCODE_ISNAT(z0) -> c(ISNAT(encArg(z0))) ENCODE_ISNATLIST(z0) -> c(ISNATLIST(encArg(z0))) ENCODE_ISNATILIST(z0) -> c(ISNATILIST(encArg(z0))) ENCARG(cons_active(cons_active(z0))) -> c4(ACTIVE(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_active(cons_mark(z0))) -> c4(ACTIVE(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_active(cons_cons(z0, z1))) -> c4(ACTIVE(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_active(cons_U11(z0, z1))) -> c4(ACTIVE(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_active(cons_s(z0))) -> c4(ACTIVE(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_active(cons_length(z0))) -> c4(ACTIVE(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_active(cons_U21(z0))) -> c4(ACTIVE(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_active(cons_U31(z0, z1, z2, z3))) -> c4(ACTIVE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_active(cons_take(z0, z1))) -> c4(ACTIVE(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_active(cons_and(z0, z1))) -> c4(ACTIVE(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_active(cons_isNat(z0))) -> c4(ACTIVE(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_active(cons_isNatList(z0))) -> c4(ACTIVE(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_active(cons_isNatIList(z0))) -> c4(ACTIVE(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_active(zeros)) -> c4(ACTIVE(zeros)) ENCARG(cons_mark(cons_active(z0))) -> c5(MARK(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_mark(cons_mark(z0))) -> c5(MARK(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_mark(cons_cons(z0, z1))) -> c5(MARK(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_mark(cons_U11(z0, z1))) -> c5(MARK(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_mark(cons_s(z0))) -> c5(MARK(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_mark(cons_length(z0))) -> c5(MARK(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_mark(cons_U21(z0))) -> c5(MARK(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_mark(cons_U31(z0, z1, z2, z3))) -> c5(MARK(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_mark(cons_take(z0, z1))) -> c5(MARK(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(cons_and(z0, z1))) -> c5(MARK(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_mark(cons_isNat(z0))) -> c5(MARK(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_mark(cons_isNatList(z0))) -> c5(MARK(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_mark(cons_isNatIList(z0))) -> c5(MARK(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_mark(zeros)) -> c5(MARK(zeros)) ENCARG(cons_mark(0)) -> c5(MARK(0)) ENCARG(cons_mark(tt)) -> c5(MARK(tt)) ENCARG(cons_mark(nil)) -> c5(MARK(nil)) ENCARG(cons_cons(x0, cons_active(z0))) -> c6(CONS(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_cons(x0, cons_mark(z0))) -> c6(CONS(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_cons(x0, cons_cons(z0, z1))) -> c6(CONS(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_cons(x0, cons_U11(z0, z1))) -> c6(CONS(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_cons(x0, cons_s(z0))) -> c6(CONS(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_cons(x0, cons_length(z0))) -> c6(CONS(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_cons(x0, cons_U21(z0))) -> c6(CONS(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_cons(x0, cons_U31(z0, z1, z2, z3))) -> c6(CONS(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_cons(x0, cons_take(z0, z1))) -> c6(CONS(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_cons(x0, cons_and(z0, z1))) -> c6(CONS(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_cons(x0, cons_isNat(z0))) -> c6(CONS(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_cons(x0, cons_isNatList(z0))) -> c6(CONS(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_cons(x0, cons_isNatIList(z0))) -> c6(CONS(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_cons(cons_active(z0), x1)) -> c6(CONS(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_mark(z0), x1)) -> c6(CONS(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_cons(z0, z1), x1)) -> c6(CONS(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_U11(z0, z1), x1)) -> c6(CONS(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_s(z0), x1)) -> c6(CONS(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_length(z0), x1)) -> c6(CONS(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U21(z0), x1)) -> c6(CONS(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U31(z0, z1, z2, z3), x1)) -> c6(CONS(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_cons(cons_take(z0, z1), x1)) -> c6(CONS(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_and(z0, z1), x1)) -> c6(CONS(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_isNat(z0), x1)) -> c6(CONS(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_isNatList(z0), x1)) -> c6(CONS(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_isNatIList(z0), x1)) -> c6(CONS(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_cons(x0, zeros)) -> c6(CONS(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_cons(x0, 0)) -> c6(CONS(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_cons(x0, tt)) -> c6(CONS(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_cons(x0, nil)) -> c6(CONS(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_cons(zeros, x1)) -> c6(CONS(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(0, x1)) -> c6(CONS(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(tt, x1)) -> c6(CONS(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(nil, x1)) -> c6(CONS(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(x0, cons_active(z0))) -> c7(U11'(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_U11(x0, cons_mark(z0))) -> c7(U11'(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_U11(x0, cons_cons(z0, z1))) -> c7(U11'(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U11(x0, cons_U11(z0, z1))) -> c7(U11'(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U11(x0, cons_s(z0))) -> c7(U11'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_U11(x0, cons_length(z0))) -> c7(U11'(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_U11(x0, cons_U21(z0))) -> c7(U11'(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_U11(x0, cons_U31(z0, z1, z2, z3))) -> c7(U11'(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U11(x0, cons_take(z0, z1))) -> c7(U11'(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_U11(x0, cons_and(z0, z1))) -> c7(U11'(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_U11(x0, cons_isNat(z0))) -> c7(U11'(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_U11(x0, cons_isNatList(z0))) -> c7(U11'(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_U11(x0, cons_isNatIList(z0))) -> c7(U11'(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U11(cons_active(z0), x1)) -> c7(U11'(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_mark(z0), x1)) -> c7(U11'(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_cons(z0, z1), x1)) -> c7(U11'(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_U11(z0, z1), x1)) -> c7(U11'(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_s(z0), x1)) -> c7(U11'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_length(z0), x1)) -> c7(U11'(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_U21(z0), x1)) -> c7(U11'(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_U31(z0, z1, z2, z3), x1)) -> c7(U11'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_U11(cons_take(z0, z1), x1)) -> c7(U11'(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_and(z0, z1), x1)) -> c7(U11'(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_isNat(z0), x1)) -> c7(U11'(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_isNatList(z0), x1)) -> c7(U11'(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_isNatIList(z0), x1)) -> c7(U11'(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_U11(x0, zeros)) -> c7(U11'(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_U11(x0, 0)) -> c7(U11'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_U11(x0, tt)) -> c7(U11'(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_U11(x0, nil)) -> c7(U11'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_U11(zeros, x1)) -> c7(U11'(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(0, x1)) -> c7(U11'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(tt, x1)) -> c7(U11'(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(nil, x1)) -> c7(U11'(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_s(cons_active(z0))) -> c8(S(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_s(cons_mark(z0))) -> c8(S(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_s(cons_cons(z0, z1))) -> c8(S(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_s(cons_U11(z0, z1))) -> c8(S(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_s(cons_s(z0))) -> c8(S(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_length(z0))) -> c8(S(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_s(cons_U21(z0))) -> c8(S(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_s(cons_U31(z0, z1, z2, z3))) -> c8(S(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_s(cons_take(z0, z1))) -> c8(S(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_s(cons_and(z0, z1))) -> c8(S(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_s(cons_isNat(z0))) -> c8(S(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_s(cons_isNatList(z0))) -> c8(S(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_s(cons_isNatIList(z0))) -> c8(S(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_length(cons_active(z0))) -> c9(LENGTH(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_length(cons_mark(z0))) -> c9(LENGTH(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_length(cons_cons(z0, z1))) -> c9(LENGTH(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_length(cons_U11(z0, z1))) -> c9(LENGTH(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_length(cons_s(z0))) -> c9(LENGTH(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_length(cons_length(z0))) -> c9(LENGTH(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_length(cons_U21(z0))) -> c9(LENGTH(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_length(cons_U31(z0, z1, z2, z3))) -> c9(LENGTH(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_length(cons_take(z0, z1))) -> c9(LENGTH(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_length(cons_and(z0, z1))) -> c9(LENGTH(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_length(cons_isNat(z0))) -> c9(LENGTH(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_length(cons_isNatList(z0))) -> c9(LENGTH(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_length(cons_isNatIList(z0))) -> c9(LENGTH(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U21(cons_active(z0))) -> c10(U21'(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_U21(cons_mark(z0))) -> c10(U21'(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_U21(cons_cons(z0, z1))) -> c10(U21'(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U21(cons_U11(z0, z1))) -> c10(U21'(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U21(cons_s(z0))) -> c10(U21'(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_U21(cons_length(z0))) -> c10(U21'(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_U21(cons_U21(z0))) -> c10(U21'(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_U21(cons_U31(z0, z1, z2, z3))) -> c10(U21'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U21(cons_take(z0, z1))) -> c10(U21'(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_U21(cons_and(z0, z1))) -> c10(U21'(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_U21(cons_isNat(z0))) -> c10(U21'(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_U21(cons_isNatList(z0))) -> c10(U21'(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_U21(cons_isNatIList(z0))) -> c10(U21'(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U31(x0, x1, x2, cons_active(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), active(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_active(z0))) ENCARG(cons_U31(x0, x1, x2, cons_mark(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), mark(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_mark(z0))) ENCARG(cons_U31(x0, x1, x2, cons_cons(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_U11(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_s(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), s(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_s(z0))) ENCARG(cons_U31(x0, x1, x2, cons_length(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), length(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_length(z0))) ENCARG(cons_U31(x0, x1, x2, cons_U21(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U21(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U21(z0))) ENCARG(cons_U31(x0, x1, x2, cons_U31(z0, z1, z2, z3))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U31(x0, x1, x2, cons_take(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_take(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_and(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_and(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_isNat(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNat(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNat(z0))) ENCARG(cons_U31(x0, x1, x2, cons_isNatList(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNatList(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNatList(z0))) ENCARG(cons_U31(x0, x1, x2, cons_isNatIList(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U31(x0, x1, cons_active(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), active(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_active(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_mark(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), mark(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_mark(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_cons(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), cons(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_cons(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U11(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), U11(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U11(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_s(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), s(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_s(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_length(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), length(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_length(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U21(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), U21(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U21(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U31(z0, z1, z2, z3), x3)) -> c11(U31'(encArg(x0), encArg(x1), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_take(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), take(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_take(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_and(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), and(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_and(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNat(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNat(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNat(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNatList(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNatList(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNatList(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNatIList(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNatIList(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNatIList(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, cons_active(z0), x2, x3)) -> c11(U31'(encArg(x0), active(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_active(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_mark(z0), x2, x3)) -> c11(U31'(encArg(x0), mark(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_mark(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_cons(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), cons(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_cons(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U11(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), U11(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U11(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_s(z0), x2, x3)) -> c11(U31'(encArg(x0), s(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_s(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_length(z0), x2, x3)) -> c11(U31'(encArg(x0), length(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_length(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U21(z0), x2, x3)) -> c11(U31'(encArg(x0), U21(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U21(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U31(z0, z1, z2, z3), x2, x3)) -> c11(U31'(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_take(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), take(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_take(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_and(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), and(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_and(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNat(z0), x2, x3)) -> c11(U31'(encArg(x0), isNat(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNat(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNatList(z0), x2, x3)) -> c11(U31'(encArg(x0), isNatList(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNatList(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNatIList(z0), x2, x3)) -> c11(U31'(encArg(x0), isNatIList(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNatIList(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_active(z0), x1, x2, x3)) -> c11(U31'(active(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_active(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_mark(z0), x1, x2, x3)) -> c11(U31'(mark(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_mark(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_cons(z0, z1), x1, x2, x3)) -> c11(U31'(cons(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_cons(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U11(z0, z1), x1, x2, x3)) -> c11(U31'(U11(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U11(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_s(z0), x1, x2, x3)) -> c11(U31'(s(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_s(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_length(z0), x1, x2, x3)) -> c11(U31'(length(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_length(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U21(z0), x1, x2, x3)) -> c11(U31'(U21(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U21(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U31(z0, z1, z2, z3), x1, x2, x3)) -> c11(U31'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_take(z0, z1), x1, x2, x3)) -> c11(U31'(take(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_take(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_and(z0, z1), x1, x2, x3)) -> c11(U31'(and(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_and(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNat(z0), x1, x2, x3)) -> c11(U31'(isNat(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNat(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNatList(z0), x1, x2, x3)) -> c11(U31'(isNatList(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNatList(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNatIList(z0), x1, x2, x3)) -> c11(U31'(isNatIList(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNatIList(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, x1, x2, zeros)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), zeros), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, 0)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), 0), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, tt)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), tt), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, nil)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), nil), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, zeros, x3)) -> c11(U31'(encArg(x0), encArg(x1), zeros, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, 0, x3)) -> c11(U31'(encArg(x0), encArg(x1), 0, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, tt, x3)) -> c11(U31'(encArg(x0), encArg(x1), tt, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, nil, x3)) -> c11(U31'(encArg(x0), encArg(x1), nil, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, zeros, x2, x3)) -> c11(U31'(encArg(x0), zeros, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, 0, x2, x3)) -> c11(U31'(encArg(x0), 0, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, tt, x2, x3)) -> c11(U31'(encArg(x0), tt, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, nil, x2, x3)) -> c11(U31'(encArg(x0), nil, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(zeros, x1, x2, x3)) -> c11(U31'(zeros, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(0, x1, x2, x3)) -> c11(U31'(0, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(tt, x1, x2, x3)) -> c11(U31'(tt, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(nil, x1, x2, x3)) -> c11(U31'(nil, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_take(x0, zeros)) -> c12(TAKE(encArg(x0), zeros), ENCARG(x0), ENCARG(zeros)) ENCARG(cons_take(x0, 0)) -> c12(TAKE(encArg(x0), 0), ENCARG(x0), ENCARG(0)) ENCARG(cons_take(x0, tt)) -> c12(TAKE(encArg(x0), tt), ENCARG(x0), ENCARG(tt)) ENCARG(cons_take(x0, nil)) -> c12(TAKE(encArg(x0), nil), ENCARG(x0), ENCARG(nil)) ENCARG(cons_take(x0, cons_active(z0))) -> c12(TAKE(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_take(x0, cons_mark(z0))) -> c12(TAKE(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_take(x0, cons_cons(z0, z1))) -> c12(TAKE(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_take(x0, cons_U11(z0, z1))) -> c12(TAKE(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_take(x0, cons_s(z0))) -> c12(TAKE(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_take(x0, cons_length(z0))) -> c12(TAKE(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_take(x0, cons_U21(z0))) -> c12(TAKE(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_take(x0, cons_U31(z0, z1, z2, z3))) -> c12(TAKE(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_take(x0, cons_take(z0, z1))) -> c12(TAKE(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_take(x0, cons_and(z0, z1))) -> c12(TAKE(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_take(x0, cons_isNat(z0))) -> c12(TAKE(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_take(x0, cons_isNatList(z0))) -> c12(TAKE(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_take(x0, cons_isNatIList(z0))) -> c12(TAKE(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_take(zeros, x1)) -> c12(TAKE(zeros, encArg(x1)), ENCARG(zeros), ENCARG(x1)) ENCARG(cons_take(0, x1)) -> c12(TAKE(0, encArg(x1)), ENCARG(0), ENCARG(x1)) ENCARG(cons_take(tt, x1)) -> c12(TAKE(tt, encArg(x1)), ENCARG(tt), ENCARG(x1)) ENCARG(cons_take(nil, x1)) -> c12(TAKE(nil, encArg(x1)), ENCARG(nil), ENCARG(x1)) ENCARG(cons_take(cons_active(z0), x1)) -> c12(TAKE(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_take(cons_mark(z0), x1)) -> c12(TAKE(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_take(cons_cons(z0, z1), x1)) -> c12(TAKE(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_U11(z0, z1), x1)) -> c12(TAKE(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_s(z0), x1)) -> c12(TAKE(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_take(cons_length(z0), x1)) -> c12(TAKE(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_take(cons_U21(z0), x1)) -> c12(TAKE(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_take(cons_U31(z0, z1, z2, z3), x1)) -> c12(TAKE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_take(cons_take(z0, z1), x1)) -> c12(TAKE(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_and(z0, z1), x1)) -> c12(TAKE(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_isNat(z0), x1)) -> c12(TAKE(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_take(cons_isNatList(z0), x1)) -> c12(TAKE(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_take(cons_isNatIList(z0), x1)) -> c12(TAKE(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) S tuples: ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(cons(z0, z1)) -> c53(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(mark(z0), z1)), U11'(mark(z0), z1), MARK(z0)) MARK(s(z0)) -> c57(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(mark(z0))), LENGTH(mark(z0)), MARK(z0)) MARK(U21(z0)) -> c59(ACTIVE(U21(mark(z0))), U21'(mark(z0)), MARK(z0)) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(mark(z0), z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(take(z0, z1)) -> c62(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 K tuples:none Defined Rule Symbols: encArg_1, active_1, mark_1, cons_2, U11_2, s_1, length_1, U21_1, U31_4, take_2, and_2, isNat_1, isNatList_1, isNatIList_1 Defined Pair Symbols: ENCARG_1, ACTIVE_1, MARK_1, CONS_2, U11'_2, S_1, LENGTH_1, U21'_1, U31'_4, TAKE_2, AND_2, ISNAT_1, ISNATLIST_1, ISNATILIST_1, ENCODE_ACTIVE_1, ENCODE_MARK_1, ENCODE_CONS_2, ENCODE_U11_2, ENCODE_S_1, ENCODE_LENGTH_1, ENCODE_U21_1, ENCODE_U31_4, ENCODE_TAKE_2, ENCODE_AND_2, ENCODE_ISNAT_1, ENCODE_ISNATLIST_1, ENCODE_ISNATILIST_1 Compound Symbols: c13_3, c14_2, c15_2, c16_2, c36_1, c37_3, c38_1, c39_1, c40_2, c41_2, c42_2, c43_1, c45_1, c48_1, c52_1, c53_3, c55_3, c57_3, c58_3, c59_3, c61_3, c62_4, c63_3, c64_2, c65_2, c66_2, c67_1, c68_1, c69_1, c70_1, c71_1, c72_1, c73_1, c74_1, c75_1, c76_1, c77_1, c78_1, c79_1, c80_1, c81_1, c82_1, c83_1, c84_1, c85_1, c86_1, c87_1, c88_1, c89_1, c90_1, c91_1, c92_1, c93_1, c94_1, c95_1, c96_1, c97_1, c98_1, c99_1, c100_1, c101_1, c102_1, c34_1, c35_2, c44_3, c46_3, c47_3, c49_3, c50_2, c51_4, c54, c56, c60, c_1, c4_2, c4_1, c5_2, c5_1, c6_3, c6_2, c7_3, c7_2, c8_2, c9_2, c10_2, c11_5, c11_4, c12_3 ---------------------------------------- (75) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 8 trailing tuple parts ---------------------------------------- (76) Obligation: Complexity Dependency Tuples Problem Rules: encArg(zeros) -> zeros encArg(0) -> 0 encArg(tt) -> tt encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_U11(z0, z1)) -> U11(encArg(z0), encArg(z1)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_length(z0)) -> length(encArg(z0)) encArg(cons_U21(z0)) -> U21(encArg(z0)) encArg(cons_U31(z0, z1, z2, z3)) -> U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_isNat(z0)) -> isNat(encArg(z0)) encArg(cons_isNatList(z0)) -> isNatList(encArg(z0)) encArg(cons_isNatIList(z0)) -> isNatIList(encArg(z0)) active(zeros) -> mark(cons(0, zeros)) active(U11(tt, z0)) -> mark(s(length(z0))) active(U21(tt)) -> mark(nil) active(U31(tt, z0, z1, z2)) -> mark(cons(z2, take(z1, z0))) active(and(tt, z0)) -> mark(z0) active(isNat(0)) -> mark(tt) active(isNat(length(z0))) -> mark(isNatList(z0)) active(isNat(s(z0))) -> mark(isNat(z0)) active(isNatIList(z0)) -> mark(isNatList(z0)) active(isNatIList(zeros)) -> mark(tt) active(isNatIList(cons(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(isNatList(nil)) -> mark(tt) active(isNatList(cons(z0, z1))) -> mark(and(isNat(z0), isNatList(z1))) active(isNatList(take(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(length(nil)) -> mark(0) active(length(cons(z0, z1))) -> mark(U11(and(isNatList(z1), isNat(z0)), z1)) active(take(0, z0)) -> mark(U21(isNatIList(z0))) active(take(s(z0), cons(z1, z2))) -> mark(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)) mark(zeros) -> active(zeros) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(0) -> active(0) mark(U11(z0, z1)) -> active(U11(mark(z0), z1)) mark(tt) -> active(tt) mark(s(z0)) -> active(s(mark(z0))) mark(length(z0)) -> active(length(mark(z0))) mark(U21(z0)) -> active(U21(mark(z0))) mark(nil) -> active(nil) mark(U31(z0, z1, z2, z3)) -> active(U31(mark(z0), z1, z2, z3)) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(isNat(z0)) -> active(isNat(z0)) mark(isNatList(z0)) -> active(isNatList(z0)) mark(isNatIList(z0)) -> active(isNatIList(z0)) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) U11(mark(z0), z1) -> U11(z0, z1) U11(z0, mark(z1)) -> U11(z0, z1) U11(active(z0), z1) -> U11(z0, z1) U11(z0, active(z1)) -> U11(z0, z1) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) length(mark(z0)) -> length(z0) length(active(z0)) -> length(z0) U21(mark(z0)) -> U21(z0) U21(active(z0)) -> U21(z0) U31(mark(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, mark(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, mark(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, mark(z3)) -> U31(z0, z1, z2, z3) U31(active(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, active(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, active(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, active(z3)) -> U31(z0, z1, z2, z3) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) isNat(mark(z0)) -> isNat(z0) isNat(active(z0)) -> isNat(z0) isNatList(mark(z0)) -> isNatList(z0) isNatList(active(z0)) -> isNatList(z0) isNatIList(mark(z0)) -> isNatIList(z0) isNatIList(active(z0)) -> isNatIList(z0) Tuples: ENCARG(cons_and(z0, z1)) -> c13(AND(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_isNat(z0)) -> c14(ISNAT(encArg(z0)), ENCARG(z0)) ENCARG(cons_isNatList(z0)) -> c15(ISNATLIST(encArg(z0)), ENCARG(z0)) ENCARG(cons_isNatIList(z0)) -> c16(ISNATILIST(encArg(z0)), ENCARG(z0)) ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(cons(z0, z1)) -> c53(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(mark(z0), z1)), U11'(mark(z0), z1), MARK(z0)) MARK(s(z0)) -> c57(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(mark(z0))), LENGTH(mark(z0)), MARK(z0)) MARK(U21(z0)) -> c59(ACTIVE(U21(mark(z0))), U21'(mark(z0)), MARK(z0)) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(mark(z0), z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(take(z0, z1)) -> c62(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 ENCODE_ACTIVE(z0) -> c(ACTIVE(encArg(z0))) ENCODE_MARK(z0) -> c(MARK(encArg(z0))) ENCODE_CONS(z0, z1) -> c(CONS(encArg(z0), encArg(z1))) ENCODE_U11(z0, z1) -> c(U11'(encArg(z0), encArg(z1))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_LENGTH(z0) -> c(LENGTH(encArg(z0))) ENCODE_U21(z0) -> c(U21'(encArg(z0))) ENCODE_U31(z0, z1, z2, z3) -> c(U31'(encArg(z0), encArg(z1), encArg(z2), encArg(z3))) ENCODE_TAKE(z0, z1) -> c(TAKE(encArg(z0), encArg(z1))) ENCODE_AND(z0, z1) -> c(AND(encArg(z0), encArg(z1))) ENCODE_ISNAT(z0) -> c(ISNAT(encArg(z0))) ENCODE_ISNATLIST(z0) -> c(ISNATLIST(encArg(z0))) ENCODE_ISNATILIST(z0) -> c(ISNATILIST(encArg(z0))) ENCARG(cons_active(cons_active(z0))) -> c4(ACTIVE(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_active(cons_mark(z0))) -> c4(ACTIVE(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_active(cons_cons(z0, z1))) -> c4(ACTIVE(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_active(cons_U11(z0, z1))) -> c4(ACTIVE(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_active(cons_s(z0))) -> c4(ACTIVE(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_active(cons_length(z0))) -> c4(ACTIVE(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_active(cons_U21(z0))) -> c4(ACTIVE(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_active(cons_U31(z0, z1, z2, z3))) -> c4(ACTIVE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_active(cons_take(z0, z1))) -> c4(ACTIVE(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_active(cons_and(z0, z1))) -> c4(ACTIVE(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_active(cons_isNat(z0))) -> c4(ACTIVE(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_active(cons_isNatList(z0))) -> c4(ACTIVE(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_active(cons_isNatIList(z0))) -> c4(ACTIVE(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_active(zeros)) -> c4(ACTIVE(zeros)) ENCARG(cons_mark(cons_active(z0))) -> c5(MARK(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_mark(cons_mark(z0))) -> c5(MARK(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_mark(cons_cons(z0, z1))) -> c5(MARK(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_mark(cons_U11(z0, z1))) -> c5(MARK(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_mark(cons_s(z0))) -> c5(MARK(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_mark(cons_length(z0))) -> c5(MARK(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_mark(cons_U21(z0))) -> c5(MARK(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_mark(cons_U31(z0, z1, z2, z3))) -> c5(MARK(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_mark(cons_take(z0, z1))) -> c5(MARK(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(cons_and(z0, z1))) -> c5(MARK(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_mark(cons_isNat(z0))) -> c5(MARK(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_mark(cons_isNatList(z0))) -> c5(MARK(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_mark(cons_isNatIList(z0))) -> c5(MARK(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_mark(zeros)) -> c5(MARK(zeros)) ENCARG(cons_mark(0)) -> c5(MARK(0)) ENCARG(cons_mark(tt)) -> c5(MARK(tt)) ENCARG(cons_mark(nil)) -> c5(MARK(nil)) ENCARG(cons_cons(x0, cons_active(z0))) -> c6(CONS(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_cons(x0, cons_mark(z0))) -> c6(CONS(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_cons(x0, cons_cons(z0, z1))) -> c6(CONS(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_cons(x0, cons_U11(z0, z1))) -> c6(CONS(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_cons(x0, cons_s(z0))) -> c6(CONS(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_cons(x0, cons_length(z0))) -> c6(CONS(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_cons(x0, cons_U21(z0))) -> c6(CONS(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_cons(x0, cons_U31(z0, z1, z2, z3))) -> c6(CONS(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_cons(x0, cons_take(z0, z1))) -> c6(CONS(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_cons(x0, cons_and(z0, z1))) -> c6(CONS(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_cons(x0, cons_isNat(z0))) -> c6(CONS(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_cons(x0, cons_isNatList(z0))) -> c6(CONS(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_cons(x0, cons_isNatIList(z0))) -> c6(CONS(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_cons(cons_active(z0), x1)) -> c6(CONS(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_mark(z0), x1)) -> c6(CONS(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_cons(z0, z1), x1)) -> c6(CONS(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_U11(z0, z1), x1)) -> c6(CONS(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_s(z0), x1)) -> c6(CONS(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_length(z0), x1)) -> c6(CONS(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U21(z0), x1)) -> c6(CONS(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U31(z0, z1, z2, z3), x1)) -> c6(CONS(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_cons(cons_take(z0, z1), x1)) -> c6(CONS(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_and(z0, z1), x1)) -> c6(CONS(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_isNat(z0), x1)) -> c6(CONS(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_isNatList(z0), x1)) -> c6(CONS(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_isNatIList(z0), x1)) -> c6(CONS(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_cons(x0, zeros)) -> c6(CONS(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_cons(x0, 0)) -> c6(CONS(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_cons(x0, tt)) -> c6(CONS(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_cons(x0, nil)) -> c6(CONS(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_cons(zeros, x1)) -> c6(CONS(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(0, x1)) -> c6(CONS(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(tt, x1)) -> c6(CONS(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(nil, x1)) -> c6(CONS(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(x0, cons_active(z0))) -> c7(U11'(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_U11(x0, cons_mark(z0))) -> c7(U11'(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_U11(x0, cons_cons(z0, z1))) -> c7(U11'(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U11(x0, cons_U11(z0, z1))) -> c7(U11'(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U11(x0, cons_s(z0))) -> c7(U11'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_U11(x0, cons_length(z0))) -> c7(U11'(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_U11(x0, cons_U21(z0))) -> c7(U11'(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_U11(x0, cons_U31(z0, z1, z2, z3))) -> c7(U11'(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U11(x0, cons_take(z0, z1))) -> c7(U11'(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_U11(x0, cons_and(z0, z1))) -> c7(U11'(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_U11(x0, cons_isNat(z0))) -> c7(U11'(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_U11(x0, cons_isNatList(z0))) -> c7(U11'(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_U11(x0, cons_isNatIList(z0))) -> c7(U11'(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U11(cons_active(z0), x1)) -> c7(U11'(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_mark(z0), x1)) -> c7(U11'(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_cons(z0, z1), x1)) -> c7(U11'(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_U11(z0, z1), x1)) -> c7(U11'(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_s(z0), x1)) -> c7(U11'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_length(z0), x1)) -> c7(U11'(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_U21(z0), x1)) -> c7(U11'(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_U31(z0, z1, z2, z3), x1)) -> c7(U11'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_U11(cons_take(z0, z1), x1)) -> c7(U11'(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_and(z0, z1), x1)) -> c7(U11'(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_isNat(z0), x1)) -> c7(U11'(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_isNatList(z0), x1)) -> c7(U11'(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_isNatIList(z0), x1)) -> c7(U11'(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_U11(x0, zeros)) -> c7(U11'(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_U11(x0, 0)) -> c7(U11'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_U11(x0, tt)) -> c7(U11'(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_U11(x0, nil)) -> c7(U11'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_U11(zeros, x1)) -> c7(U11'(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(0, x1)) -> c7(U11'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(tt, x1)) -> c7(U11'(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(nil, x1)) -> c7(U11'(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_s(cons_active(z0))) -> c8(S(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_s(cons_mark(z0))) -> c8(S(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_s(cons_cons(z0, z1))) -> c8(S(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_s(cons_U11(z0, z1))) -> c8(S(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_s(cons_s(z0))) -> c8(S(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_length(z0))) -> c8(S(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_s(cons_U21(z0))) -> c8(S(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_s(cons_U31(z0, z1, z2, z3))) -> c8(S(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_s(cons_take(z0, z1))) -> c8(S(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_s(cons_and(z0, z1))) -> c8(S(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_s(cons_isNat(z0))) -> c8(S(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_s(cons_isNatList(z0))) -> c8(S(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_s(cons_isNatIList(z0))) -> c8(S(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_length(cons_active(z0))) -> c9(LENGTH(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_length(cons_mark(z0))) -> c9(LENGTH(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_length(cons_cons(z0, z1))) -> c9(LENGTH(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_length(cons_U11(z0, z1))) -> c9(LENGTH(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_length(cons_s(z0))) -> c9(LENGTH(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_length(cons_length(z0))) -> c9(LENGTH(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_length(cons_U21(z0))) -> c9(LENGTH(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_length(cons_U31(z0, z1, z2, z3))) -> c9(LENGTH(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_length(cons_take(z0, z1))) -> c9(LENGTH(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_length(cons_and(z0, z1))) -> c9(LENGTH(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_length(cons_isNat(z0))) -> c9(LENGTH(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_length(cons_isNatList(z0))) -> c9(LENGTH(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_length(cons_isNatIList(z0))) -> c9(LENGTH(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U21(cons_active(z0))) -> c10(U21'(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_U21(cons_mark(z0))) -> c10(U21'(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_U21(cons_cons(z0, z1))) -> c10(U21'(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U21(cons_U11(z0, z1))) -> c10(U21'(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U21(cons_s(z0))) -> c10(U21'(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_U21(cons_length(z0))) -> c10(U21'(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_U21(cons_U21(z0))) -> c10(U21'(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_U21(cons_U31(z0, z1, z2, z3))) -> c10(U21'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U21(cons_take(z0, z1))) -> c10(U21'(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_U21(cons_and(z0, z1))) -> c10(U21'(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_U21(cons_isNat(z0))) -> c10(U21'(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_U21(cons_isNatList(z0))) -> c10(U21'(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_U21(cons_isNatIList(z0))) -> c10(U21'(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U31(x0, x1, x2, cons_active(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), active(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_active(z0))) ENCARG(cons_U31(x0, x1, x2, cons_mark(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), mark(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_mark(z0))) ENCARG(cons_U31(x0, x1, x2, cons_cons(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_U11(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_s(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), s(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_s(z0))) ENCARG(cons_U31(x0, x1, x2, cons_length(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), length(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_length(z0))) ENCARG(cons_U31(x0, x1, x2, cons_U21(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U21(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U21(z0))) ENCARG(cons_U31(x0, x1, x2, cons_U31(z0, z1, z2, z3))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U31(x0, x1, x2, cons_take(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_take(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_and(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_and(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_isNat(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNat(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNat(z0))) ENCARG(cons_U31(x0, x1, x2, cons_isNatList(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNatList(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNatList(z0))) ENCARG(cons_U31(x0, x1, x2, cons_isNatIList(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U31(x0, x1, cons_active(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), active(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_active(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_mark(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), mark(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_mark(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_cons(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), cons(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_cons(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U11(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), U11(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U11(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_s(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), s(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_s(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_length(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), length(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_length(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U21(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), U21(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U21(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U31(z0, z1, z2, z3), x3)) -> c11(U31'(encArg(x0), encArg(x1), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_take(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), take(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_take(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_and(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), and(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_and(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNat(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNat(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNat(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNatList(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNatList(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNatList(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNatIList(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNatIList(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNatIList(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, cons_active(z0), x2, x3)) -> c11(U31'(encArg(x0), active(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_active(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_mark(z0), x2, x3)) -> c11(U31'(encArg(x0), mark(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_mark(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_cons(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), cons(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_cons(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U11(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), U11(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U11(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_s(z0), x2, x3)) -> c11(U31'(encArg(x0), s(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_s(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_length(z0), x2, x3)) -> c11(U31'(encArg(x0), length(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_length(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U21(z0), x2, x3)) -> c11(U31'(encArg(x0), U21(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U21(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U31(z0, z1, z2, z3), x2, x3)) -> c11(U31'(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_take(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), take(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_take(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_and(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), and(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_and(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNat(z0), x2, x3)) -> c11(U31'(encArg(x0), isNat(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNat(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNatList(z0), x2, x3)) -> c11(U31'(encArg(x0), isNatList(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNatList(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNatIList(z0), x2, x3)) -> c11(U31'(encArg(x0), isNatIList(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNatIList(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_active(z0), x1, x2, x3)) -> c11(U31'(active(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_active(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_mark(z0), x1, x2, x3)) -> c11(U31'(mark(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_mark(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_cons(z0, z1), x1, x2, x3)) -> c11(U31'(cons(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_cons(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U11(z0, z1), x1, x2, x3)) -> c11(U31'(U11(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U11(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_s(z0), x1, x2, x3)) -> c11(U31'(s(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_s(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_length(z0), x1, x2, x3)) -> c11(U31'(length(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_length(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U21(z0), x1, x2, x3)) -> c11(U31'(U21(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U21(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U31(z0, z1, z2, z3), x1, x2, x3)) -> c11(U31'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_take(z0, z1), x1, x2, x3)) -> c11(U31'(take(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_take(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_and(z0, z1), x1, x2, x3)) -> c11(U31'(and(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_and(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNat(z0), x1, x2, x3)) -> c11(U31'(isNat(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNat(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNatList(z0), x1, x2, x3)) -> c11(U31'(isNatList(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNatList(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNatIList(z0), x1, x2, x3)) -> c11(U31'(isNatIList(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNatIList(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, x1, x2, zeros)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), zeros), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, 0)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), 0), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, tt)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), tt), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, nil)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), nil), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, zeros, x3)) -> c11(U31'(encArg(x0), encArg(x1), zeros, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, 0, x3)) -> c11(U31'(encArg(x0), encArg(x1), 0, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, tt, x3)) -> c11(U31'(encArg(x0), encArg(x1), tt, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, nil, x3)) -> c11(U31'(encArg(x0), encArg(x1), nil, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, zeros, x2, x3)) -> c11(U31'(encArg(x0), zeros, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, 0, x2, x3)) -> c11(U31'(encArg(x0), 0, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, tt, x2, x3)) -> c11(U31'(encArg(x0), tt, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, nil, x2, x3)) -> c11(U31'(encArg(x0), nil, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(zeros, x1, x2, x3)) -> c11(U31'(zeros, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(0, x1, x2, x3)) -> c11(U31'(0, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(tt, x1, x2, x3)) -> c11(U31'(tt, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(nil, x1, x2, x3)) -> c11(U31'(nil, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_take(x0, cons_active(z0))) -> c12(TAKE(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_take(x0, cons_mark(z0))) -> c12(TAKE(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_take(x0, cons_cons(z0, z1))) -> c12(TAKE(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_take(x0, cons_U11(z0, z1))) -> c12(TAKE(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_take(x0, cons_s(z0))) -> c12(TAKE(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_take(x0, cons_length(z0))) -> c12(TAKE(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_take(x0, cons_U21(z0))) -> c12(TAKE(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_take(x0, cons_U31(z0, z1, z2, z3))) -> c12(TAKE(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_take(x0, cons_take(z0, z1))) -> c12(TAKE(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_take(x0, cons_and(z0, z1))) -> c12(TAKE(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_take(x0, cons_isNat(z0))) -> c12(TAKE(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_take(x0, cons_isNatList(z0))) -> c12(TAKE(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_take(x0, cons_isNatIList(z0))) -> c12(TAKE(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_take(cons_active(z0), x1)) -> c12(TAKE(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_take(cons_mark(z0), x1)) -> c12(TAKE(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_take(cons_cons(z0, z1), x1)) -> c12(TAKE(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_U11(z0, z1), x1)) -> c12(TAKE(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_s(z0), x1)) -> c12(TAKE(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_take(cons_length(z0), x1)) -> c12(TAKE(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_take(cons_U21(z0), x1)) -> c12(TAKE(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_take(cons_U31(z0, z1, z2, z3), x1)) -> c12(TAKE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_take(cons_take(z0, z1), x1)) -> c12(TAKE(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_and(z0, z1), x1)) -> c12(TAKE(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_isNat(z0), x1)) -> c12(TAKE(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_take(cons_isNatList(z0), x1)) -> c12(TAKE(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_take(cons_isNatIList(z0), x1)) -> c12(TAKE(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_take(x0, zeros)) -> c12(TAKE(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_take(x0, 0)) -> c12(TAKE(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_take(x0, tt)) -> c12(TAKE(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_take(x0, nil)) -> c12(TAKE(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_take(zeros, x1)) -> c12(TAKE(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(0, x1)) -> c12(TAKE(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(tt, x1)) -> c12(TAKE(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(nil, x1)) -> c12(TAKE(nil, encArg(x1)), ENCARG(x1)) S tuples: ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(cons(z0, z1)) -> c53(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(mark(z0), z1)), U11'(mark(z0), z1), MARK(z0)) MARK(s(z0)) -> c57(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(mark(z0))), LENGTH(mark(z0)), MARK(z0)) MARK(U21(z0)) -> c59(ACTIVE(U21(mark(z0))), U21'(mark(z0)), MARK(z0)) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(mark(z0), z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(take(z0, z1)) -> c62(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 K tuples:none Defined Rule Symbols: encArg_1, active_1, mark_1, cons_2, U11_2, s_1, length_1, U21_1, U31_4, take_2, and_2, isNat_1, isNatList_1, isNatIList_1 Defined Pair Symbols: ENCARG_1, ACTIVE_1, MARK_1, CONS_2, U11'_2, S_1, LENGTH_1, U21'_1, U31'_4, TAKE_2, AND_2, ISNAT_1, ISNATLIST_1, ISNATILIST_1, ENCODE_ACTIVE_1, ENCODE_MARK_1, ENCODE_CONS_2, ENCODE_U11_2, ENCODE_S_1, ENCODE_LENGTH_1, ENCODE_U21_1, ENCODE_U31_4, ENCODE_TAKE_2, ENCODE_AND_2, ENCODE_ISNAT_1, ENCODE_ISNATLIST_1, ENCODE_ISNATILIST_1 Compound Symbols: c13_3, c14_2, c15_2, c16_2, c36_1, c37_3, c38_1, c39_1, c40_2, c41_2, c42_2, c43_1, c45_1, c48_1, c52_1, c53_3, c55_3, c57_3, c58_3, c59_3, c61_3, c62_4, c63_3, c64_2, c65_2, c66_2, c67_1, c68_1, c69_1, c70_1, c71_1, c72_1, c73_1, c74_1, c75_1, c76_1, c77_1, c78_1, c79_1, c80_1, c81_1, c82_1, c83_1, c84_1, c85_1, c86_1, c87_1, c88_1, c89_1, c90_1, c91_1, c92_1, c93_1, c94_1, c95_1, c96_1, c97_1, c98_1, c99_1, c100_1, c101_1, c102_1, c34_1, c35_2, c44_3, c46_3, c47_3, c49_3, c50_2, c51_4, c54, c56, c60, c_1, c4_2, c4_1, c5_2, c5_1, c6_3, c6_2, c7_3, c7_2, c8_2, c9_2, c10_2, c11_5, c11_4, c12_3, c12_2 ---------------------------------------- (77) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace ENCARG(cons_and(z0, z1)) -> c13(AND(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) by ENCARG(cons_and(x0, zeros)) -> c13(AND(encArg(x0), zeros), ENCARG(x0), ENCARG(zeros)) ENCARG(cons_and(x0, 0)) -> c13(AND(encArg(x0), 0), ENCARG(x0), ENCARG(0)) ENCARG(cons_and(x0, tt)) -> c13(AND(encArg(x0), tt), ENCARG(x0), ENCARG(tt)) ENCARG(cons_and(x0, nil)) -> c13(AND(encArg(x0), nil), ENCARG(x0), ENCARG(nil)) ENCARG(cons_and(x0, cons_active(z0))) -> c13(AND(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_and(x0, cons_mark(z0))) -> c13(AND(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_and(x0, cons_cons(z0, z1))) -> c13(AND(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_and(x0, cons_U11(z0, z1))) -> c13(AND(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_and(x0, cons_s(z0))) -> c13(AND(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_and(x0, cons_length(z0))) -> c13(AND(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_and(x0, cons_U21(z0))) -> c13(AND(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_and(x0, cons_U31(z0, z1, z2, z3))) -> c13(AND(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_and(x0, cons_take(z0, z1))) -> c13(AND(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_and(x0, cons_and(z0, z1))) -> c13(AND(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_and(x0, cons_isNat(z0))) -> c13(AND(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_and(x0, cons_isNatList(z0))) -> c13(AND(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_and(x0, cons_isNatIList(z0))) -> c13(AND(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_and(zeros, x1)) -> c13(AND(zeros, encArg(x1)), ENCARG(zeros), ENCARG(x1)) ENCARG(cons_and(0, x1)) -> c13(AND(0, encArg(x1)), ENCARG(0), ENCARG(x1)) ENCARG(cons_and(tt, x1)) -> c13(AND(tt, encArg(x1)), ENCARG(tt), ENCARG(x1)) ENCARG(cons_and(nil, x1)) -> c13(AND(nil, encArg(x1)), ENCARG(nil), ENCARG(x1)) ENCARG(cons_and(cons_active(z0), x1)) -> c13(AND(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_and(cons_mark(z0), x1)) -> c13(AND(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_and(cons_cons(z0, z1), x1)) -> c13(AND(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_U11(z0, z1), x1)) -> c13(AND(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_s(z0), x1)) -> c13(AND(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_and(cons_length(z0), x1)) -> c13(AND(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_and(cons_U21(z0), x1)) -> c13(AND(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_and(cons_U31(z0, z1, z2, z3), x1)) -> c13(AND(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_and(cons_take(z0, z1), x1)) -> c13(AND(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_and(z0, z1), x1)) -> c13(AND(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_isNat(z0), x1)) -> c13(AND(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_and(cons_isNatList(z0), x1)) -> c13(AND(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_and(cons_isNatIList(z0), x1)) -> c13(AND(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ---------------------------------------- (78) Obligation: Complexity Dependency Tuples Problem Rules: encArg(zeros) -> zeros encArg(0) -> 0 encArg(tt) -> tt encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_U11(z0, z1)) -> U11(encArg(z0), encArg(z1)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_length(z0)) -> length(encArg(z0)) encArg(cons_U21(z0)) -> U21(encArg(z0)) encArg(cons_U31(z0, z1, z2, z3)) -> U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_isNat(z0)) -> isNat(encArg(z0)) encArg(cons_isNatList(z0)) -> isNatList(encArg(z0)) encArg(cons_isNatIList(z0)) -> isNatIList(encArg(z0)) active(zeros) -> mark(cons(0, zeros)) active(U11(tt, z0)) -> mark(s(length(z0))) active(U21(tt)) -> mark(nil) active(U31(tt, z0, z1, z2)) -> mark(cons(z2, take(z1, z0))) active(and(tt, z0)) -> mark(z0) active(isNat(0)) -> mark(tt) active(isNat(length(z0))) -> mark(isNatList(z0)) active(isNat(s(z0))) -> mark(isNat(z0)) active(isNatIList(z0)) -> mark(isNatList(z0)) active(isNatIList(zeros)) -> mark(tt) active(isNatIList(cons(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(isNatList(nil)) -> mark(tt) active(isNatList(cons(z0, z1))) -> mark(and(isNat(z0), isNatList(z1))) active(isNatList(take(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(length(nil)) -> mark(0) active(length(cons(z0, z1))) -> mark(U11(and(isNatList(z1), isNat(z0)), z1)) active(take(0, z0)) -> mark(U21(isNatIList(z0))) active(take(s(z0), cons(z1, z2))) -> mark(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)) mark(zeros) -> active(zeros) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(0) -> active(0) mark(U11(z0, z1)) -> active(U11(mark(z0), z1)) mark(tt) -> active(tt) mark(s(z0)) -> active(s(mark(z0))) mark(length(z0)) -> active(length(mark(z0))) mark(U21(z0)) -> active(U21(mark(z0))) mark(nil) -> active(nil) mark(U31(z0, z1, z2, z3)) -> active(U31(mark(z0), z1, z2, z3)) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(isNat(z0)) -> active(isNat(z0)) mark(isNatList(z0)) -> active(isNatList(z0)) mark(isNatIList(z0)) -> active(isNatIList(z0)) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) U11(mark(z0), z1) -> U11(z0, z1) U11(z0, mark(z1)) -> U11(z0, z1) U11(active(z0), z1) -> U11(z0, z1) U11(z0, active(z1)) -> U11(z0, z1) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) length(mark(z0)) -> length(z0) length(active(z0)) -> length(z0) U21(mark(z0)) -> U21(z0) U21(active(z0)) -> U21(z0) U31(mark(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, mark(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, mark(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, mark(z3)) -> U31(z0, z1, z2, z3) U31(active(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, active(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, active(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, active(z3)) -> U31(z0, z1, z2, z3) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) isNat(mark(z0)) -> isNat(z0) isNat(active(z0)) -> isNat(z0) isNatList(mark(z0)) -> isNatList(z0) isNatList(active(z0)) -> isNatList(z0) isNatIList(mark(z0)) -> isNatIList(z0) isNatIList(active(z0)) -> isNatIList(z0) Tuples: ENCARG(cons_isNat(z0)) -> c14(ISNAT(encArg(z0)), ENCARG(z0)) ENCARG(cons_isNatList(z0)) -> c15(ISNATLIST(encArg(z0)), ENCARG(z0)) ENCARG(cons_isNatIList(z0)) -> c16(ISNATILIST(encArg(z0)), ENCARG(z0)) ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(cons(z0, z1)) -> c53(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(mark(z0), z1)), U11'(mark(z0), z1), MARK(z0)) MARK(s(z0)) -> c57(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(mark(z0))), LENGTH(mark(z0)), MARK(z0)) MARK(U21(z0)) -> c59(ACTIVE(U21(mark(z0))), U21'(mark(z0)), MARK(z0)) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(mark(z0), z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(take(z0, z1)) -> c62(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 ENCODE_ACTIVE(z0) -> c(ACTIVE(encArg(z0))) ENCODE_MARK(z0) -> c(MARK(encArg(z0))) ENCODE_CONS(z0, z1) -> c(CONS(encArg(z0), encArg(z1))) ENCODE_U11(z0, z1) -> c(U11'(encArg(z0), encArg(z1))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_LENGTH(z0) -> c(LENGTH(encArg(z0))) ENCODE_U21(z0) -> c(U21'(encArg(z0))) ENCODE_U31(z0, z1, z2, z3) -> c(U31'(encArg(z0), encArg(z1), encArg(z2), encArg(z3))) ENCODE_TAKE(z0, z1) -> c(TAKE(encArg(z0), encArg(z1))) ENCODE_AND(z0, z1) -> c(AND(encArg(z0), encArg(z1))) ENCODE_ISNAT(z0) -> c(ISNAT(encArg(z0))) ENCODE_ISNATLIST(z0) -> c(ISNATLIST(encArg(z0))) ENCODE_ISNATILIST(z0) -> c(ISNATILIST(encArg(z0))) ENCARG(cons_active(cons_active(z0))) -> c4(ACTIVE(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_active(cons_mark(z0))) -> c4(ACTIVE(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_active(cons_cons(z0, z1))) -> c4(ACTIVE(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_active(cons_U11(z0, z1))) -> c4(ACTIVE(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_active(cons_s(z0))) -> c4(ACTIVE(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_active(cons_length(z0))) -> c4(ACTIVE(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_active(cons_U21(z0))) -> c4(ACTIVE(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_active(cons_U31(z0, z1, z2, z3))) -> c4(ACTIVE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_active(cons_take(z0, z1))) -> c4(ACTIVE(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_active(cons_and(z0, z1))) -> c4(ACTIVE(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_active(cons_isNat(z0))) -> c4(ACTIVE(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_active(cons_isNatList(z0))) -> c4(ACTIVE(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_active(cons_isNatIList(z0))) -> c4(ACTIVE(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_active(zeros)) -> c4(ACTIVE(zeros)) ENCARG(cons_mark(cons_active(z0))) -> c5(MARK(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_mark(cons_mark(z0))) -> c5(MARK(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_mark(cons_cons(z0, z1))) -> c5(MARK(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_mark(cons_U11(z0, z1))) -> c5(MARK(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_mark(cons_s(z0))) -> c5(MARK(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_mark(cons_length(z0))) -> c5(MARK(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_mark(cons_U21(z0))) -> c5(MARK(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_mark(cons_U31(z0, z1, z2, z3))) -> c5(MARK(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_mark(cons_take(z0, z1))) -> c5(MARK(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(cons_and(z0, z1))) -> c5(MARK(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_mark(cons_isNat(z0))) -> c5(MARK(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_mark(cons_isNatList(z0))) -> c5(MARK(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_mark(cons_isNatIList(z0))) -> c5(MARK(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_mark(zeros)) -> c5(MARK(zeros)) ENCARG(cons_mark(0)) -> c5(MARK(0)) ENCARG(cons_mark(tt)) -> c5(MARK(tt)) ENCARG(cons_mark(nil)) -> c5(MARK(nil)) ENCARG(cons_cons(x0, cons_active(z0))) -> c6(CONS(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_cons(x0, cons_mark(z0))) -> c6(CONS(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_cons(x0, cons_cons(z0, z1))) -> c6(CONS(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_cons(x0, cons_U11(z0, z1))) -> c6(CONS(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_cons(x0, cons_s(z0))) -> c6(CONS(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_cons(x0, cons_length(z0))) -> c6(CONS(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_cons(x0, cons_U21(z0))) -> c6(CONS(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_cons(x0, cons_U31(z0, z1, z2, z3))) -> c6(CONS(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_cons(x0, cons_take(z0, z1))) -> c6(CONS(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_cons(x0, cons_and(z0, z1))) -> c6(CONS(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_cons(x0, cons_isNat(z0))) -> c6(CONS(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_cons(x0, cons_isNatList(z0))) -> c6(CONS(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_cons(x0, cons_isNatIList(z0))) -> c6(CONS(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_cons(cons_active(z0), x1)) -> c6(CONS(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_mark(z0), x1)) -> c6(CONS(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_cons(z0, z1), x1)) -> c6(CONS(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_U11(z0, z1), x1)) -> c6(CONS(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_s(z0), x1)) -> c6(CONS(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_length(z0), x1)) -> c6(CONS(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U21(z0), x1)) -> c6(CONS(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U31(z0, z1, z2, z3), x1)) -> c6(CONS(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_cons(cons_take(z0, z1), x1)) -> c6(CONS(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_and(z0, z1), x1)) -> c6(CONS(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_isNat(z0), x1)) -> c6(CONS(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_isNatList(z0), x1)) -> c6(CONS(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_isNatIList(z0), x1)) -> c6(CONS(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_cons(x0, zeros)) -> c6(CONS(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_cons(x0, 0)) -> c6(CONS(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_cons(x0, tt)) -> c6(CONS(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_cons(x0, nil)) -> c6(CONS(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_cons(zeros, x1)) -> c6(CONS(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(0, x1)) -> c6(CONS(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(tt, x1)) -> c6(CONS(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(nil, x1)) -> c6(CONS(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(x0, cons_active(z0))) -> c7(U11'(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_U11(x0, cons_mark(z0))) -> c7(U11'(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_U11(x0, cons_cons(z0, z1))) -> c7(U11'(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U11(x0, cons_U11(z0, z1))) -> c7(U11'(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U11(x0, cons_s(z0))) -> c7(U11'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_U11(x0, cons_length(z0))) -> c7(U11'(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_U11(x0, cons_U21(z0))) -> c7(U11'(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_U11(x0, cons_U31(z0, z1, z2, z3))) -> c7(U11'(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U11(x0, cons_take(z0, z1))) -> c7(U11'(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_U11(x0, cons_and(z0, z1))) -> c7(U11'(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_U11(x0, cons_isNat(z0))) -> c7(U11'(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_U11(x0, cons_isNatList(z0))) -> c7(U11'(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_U11(x0, cons_isNatIList(z0))) -> c7(U11'(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U11(cons_active(z0), x1)) -> c7(U11'(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_mark(z0), x1)) -> c7(U11'(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_cons(z0, z1), x1)) -> c7(U11'(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_U11(z0, z1), x1)) -> c7(U11'(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_s(z0), x1)) -> c7(U11'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_length(z0), x1)) -> c7(U11'(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_U21(z0), x1)) -> c7(U11'(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_U31(z0, z1, z2, z3), x1)) -> c7(U11'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_U11(cons_take(z0, z1), x1)) -> c7(U11'(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_and(z0, z1), x1)) -> c7(U11'(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_isNat(z0), x1)) -> c7(U11'(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_isNatList(z0), x1)) -> c7(U11'(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_isNatIList(z0), x1)) -> c7(U11'(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_U11(x0, zeros)) -> c7(U11'(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_U11(x0, 0)) -> c7(U11'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_U11(x0, tt)) -> c7(U11'(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_U11(x0, nil)) -> c7(U11'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_U11(zeros, x1)) -> c7(U11'(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(0, x1)) -> c7(U11'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(tt, x1)) -> c7(U11'(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(nil, x1)) -> c7(U11'(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_s(cons_active(z0))) -> c8(S(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_s(cons_mark(z0))) -> c8(S(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_s(cons_cons(z0, z1))) -> c8(S(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_s(cons_U11(z0, z1))) -> c8(S(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_s(cons_s(z0))) -> c8(S(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_length(z0))) -> c8(S(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_s(cons_U21(z0))) -> c8(S(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_s(cons_U31(z0, z1, z2, z3))) -> c8(S(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_s(cons_take(z0, z1))) -> c8(S(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_s(cons_and(z0, z1))) -> c8(S(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_s(cons_isNat(z0))) -> c8(S(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_s(cons_isNatList(z0))) -> c8(S(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_s(cons_isNatIList(z0))) -> c8(S(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_length(cons_active(z0))) -> c9(LENGTH(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_length(cons_mark(z0))) -> c9(LENGTH(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_length(cons_cons(z0, z1))) -> c9(LENGTH(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_length(cons_U11(z0, z1))) -> c9(LENGTH(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_length(cons_s(z0))) -> c9(LENGTH(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_length(cons_length(z0))) -> c9(LENGTH(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_length(cons_U21(z0))) -> c9(LENGTH(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_length(cons_U31(z0, z1, z2, z3))) -> c9(LENGTH(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_length(cons_take(z0, z1))) -> c9(LENGTH(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_length(cons_and(z0, z1))) -> c9(LENGTH(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_length(cons_isNat(z0))) -> c9(LENGTH(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_length(cons_isNatList(z0))) -> c9(LENGTH(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_length(cons_isNatIList(z0))) -> c9(LENGTH(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U21(cons_active(z0))) -> c10(U21'(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_U21(cons_mark(z0))) -> c10(U21'(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_U21(cons_cons(z0, z1))) -> c10(U21'(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U21(cons_U11(z0, z1))) -> c10(U21'(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U21(cons_s(z0))) -> c10(U21'(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_U21(cons_length(z0))) -> c10(U21'(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_U21(cons_U21(z0))) -> c10(U21'(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_U21(cons_U31(z0, z1, z2, z3))) -> c10(U21'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U21(cons_take(z0, z1))) -> c10(U21'(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_U21(cons_and(z0, z1))) -> c10(U21'(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_U21(cons_isNat(z0))) -> c10(U21'(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_U21(cons_isNatList(z0))) -> c10(U21'(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_U21(cons_isNatIList(z0))) -> c10(U21'(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U31(x0, x1, x2, cons_active(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), active(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_active(z0))) ENCARG(cons_U31(x0, x1, x2, cons_mark(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), mark(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_mark(z0))) ENCARG(cons_U31(x0, x1, x2, cons_cons(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_U11(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_s(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), s(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_s(z0))) ENCARG(cons_U31(x0, x1, x2, cons_length(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), length(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_length(z0))) ENCARG(cons_U31(x0, x1, x2, cons_U21(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U21(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U21(z0))) ENCARG(cons_U31(x0, x1, x2, cons_U31(z0, z1, z2, z3))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U31(x0, x1, x2, cons_take(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_take(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_and(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_and(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_isNat(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNat(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNat(z0))) ENCARG(cons_U31(x0, x1, x2, cons_isNatList(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNatList(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNatList(z0))) ENCARG(cons_U31(x0, x1, x2, cons_isNatIList(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U31(x0, x1, cons_active(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), active(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_active(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_mark(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), mark(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_mark(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_cons(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), cons(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_cons(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U11(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), U11(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U11(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_s(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), s(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_s(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_length(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), length(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_length(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U21(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), U21(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U21(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U31(z0, z1, z2, z3), x3)) -> c11(U31'(encArg(x0), encArg(x1), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_take(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), take(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_take(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_and(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), and(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_and(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNat(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNat(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNat(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNatList(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNatList(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNatList(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNatIList(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNatIList(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNatIList(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, cons_active(z0), x2, x3)) -> c11(U31'(encArg(x0), active(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_active(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_mark(z0), x2, x3)) -> c11(U31'(encArg(x0), mark(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_mark(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_cons(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), cons(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_cons(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U11(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), U11(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U11(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_s(z0), x2, x3)) -> c11(U31'(encArg(x0), s(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_s(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_length(z0), x2, x3)) -> c11(U31'(encArg(x0), length(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_length(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U21(z0), x2, x3)) -> c11(U31'(encArg(x0), U21(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U21(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U31(z0, z1, z2, z3), x2, x3)) -> c11(U31'(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_take(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), take(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_take(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_and(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), and(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_and(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNat(z0), x2, x3)) -> c11(U31'(encArg(x0), isNat(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNat(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNatList(z0), x2, x3)) -> c11(U31'(encArg(x0), isNatList(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNatList(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNatIList(z0), x2, x3)) -> c11(U31'(encArg(x0), isNatIList(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNatIList(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_active(z0), x1, x2, x3)) -> c11(U31'(active(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_active(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_mark(z0), x1, x2, x3)) -> c11(U31'(mark(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_mark(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_cons(z0, z1), x1, x2, x3)) -> c11(U31'(cons(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_cons(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U11(z0, z1), x1, x2, x3)) -> c11(U31'(U11(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U11(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_s(z0), x1, x2, x3)) -> c11(U31'(s(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_s(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_length(z0), x1, x2, x3)) -> c11(U31'(length(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_length(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U21(z0), x1, x2, x3)) -> c11(U31'(U21(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U21(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U31(z0, z1, z2, z3), x1, x2, x3)) -> c11(U31'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_take(z0, z1), x1, x2, x3)) -> c11(U31'(take(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_take(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_and(z0, z1), x1, x2, x3)) -> c11(U31'(and(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_and(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNat(z0), x1, x2, x3)) -> c11(U31'(isNat(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNat(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNatList(z0), x1, x2, x3)) -> c11(U31'(isNatList(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNatList(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNatIList(z0), x1, x2, x3)) -> c11(U31'(isNatIList(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNatIList(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, x1, x2, zeros)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), zeros), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, 0)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), 0), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, tt)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), tt), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, nil)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), nil), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, zeros, x3)) -> c11(U31'(encArg(x0), encArg(x1), zeros, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, 0, x3)) -> c11(U31'(encArg(x0), encArg(x1), 0, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, tt, x3)) -> c11(U31'(encArg(x0), encArg(x1), tt, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, nil, x3)) -> c11(U31'(encArg(x0), encArg(x1), nil, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, zeros, x2, x3)) -> c11(U31'(encArg(x0), zeros, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, 0, x2, x3)) -> c11(U31'(encArg(x0), 0, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, tt, x2, x3)) -> c11(U31'(encArg(x0), tt, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, nil, x2, x3)) -> c11(U31'(encArg(x0), nil, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(zeros, x1, x2, x3)) -> c11(U31'(zeros, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(0, x1, x2, x3)) -> c11(U31'(0, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(tt, x1, x2, x3)) -> c11(U31'(tt, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(nil, x1, x2, x3)) -> c11(U31'(nil, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_take(x0, cons_active(z0))) -> c12(TAKE(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_take(x0, cons_mark(z0))) -> c12(TAKE(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_take(x0, cons_cons(z0, z1))) -> c12(TAKE(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_take(x0, cons_U11(z0, z1))) -> c12(TAKE(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_take(x0, cons_s(z0))) -> c12(TAKE(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_take(x0, cons_length(z0))) -> c12(TAKE(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_take(x0, cons_U21(z0))) -> c12(TAKE(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_take(x0, cons_U31(z0, z1, z2, z3))) -> c12(TAKE(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_take(x0, cons_take(z0, z1))) -> c12(TAKE(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_take(x0, cons_and(z0, z1))) -> c12(TAKE(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_take(x0, cons_isNat(z0))) -> c12(TAKE(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_take(x0, cons_isNatList(z0))) -> c12(TAKE(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_take(x0, cons_isNatIList(z0))) -> c12(TAKE(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_take(cons_active(z0), x1)) -> c12(TAKE(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_take(cons_mark(z0), x1)) -> c12(TAKE(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_take(cons_cons(z0, z1), x1)) -> c12(TAKE(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_U11(z0, z1), x1)) -> c12(TAKE(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_s(z0), x1)) -> c12(TAKE(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_take(cons_length(z0), x1)) -> c12(TAKE(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_take(cons_U21(z0), x1)) -> c12(TAKE(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_take(cons_U31(z0, z1, z2, z3), x1)) -> c12(TAKE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_take(cons_take(z0, z1), x1)) -> c12(TAKE(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_and(z0, z1), x1)) -> c12(TAKE(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_isNat(z0), x1)) -> c12(TAKE(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_take(cons_isNatList(z0), x1)) -> c12(TAKE(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_take(cons_isNatIList(z0), x1)) -> c12(TAKE(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_take(x0, zeros)) -> c12(TAKE(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_take(x0, 0)) -> c12(TAKE(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_take(x0, tt)) -> c12(TAKE(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_take(x0, nil)) -> c12(TAKE(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_take(zeros, x1)) -> c12(TAKE(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(0, x1)) -> c12(TAKE(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(tt, x1)) -> c12(TAKE(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(nil, x1)) -> c12(TAKE(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(x0, zeros)) -> c13(AND(encArg(x0), zeros), ENCARG(x0), ENCARG(zeros)) ENCARG(cons_and(x0, 0)) -> c13(AND(encArg(x0), 0), ENCARG(x0), ENCARG(0)) ENCARG(cons_and(x0, tt)) -> c13(AND(encArg(x0), tt), ENCARG(x0), ENCARG(tt)) ENCARG(cons_and(x0, nil)) -> c13(AND(encArg(x0), nil), ENCARG(x0), ENCARG(nil)) ENCARG(cons_and(x0, cons_active(z0))) -> c13(AND(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_and(x0, cons_mark(z0))) -> c13(AND(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_and(x0, cons_cons(z0, z1))) -> c13(AND(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_and(x0, cons_U11(z0, z1))) -> c13(AND(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_and(x0, cons_s(z0))) -> c13(AND(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_and(x0, cons_length(z0))) -> c13(AND(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_and(x0, cons_U21(z0))) -> c13(AND(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_and(x0, cons_U31(z0, z1, z2, z3))) -> c13(AND(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_and(x0, cons_take(z0, z1))) -> c13(AND(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_and(x0, cons_and(z0, z1))) -> c13(AND(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_and(x0, cons_isNat(z0))) -> c13(AND(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_and(x0, cons_isNatList(z0))) -> c13(AND(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_and(x0, cons_isNatIList(z0))) -> c13(AND(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_and(zeros, x1)) -> c13(AND(zeros, encArg(x1)), ENCARG(zeros), ENCARG(x1)) ENCARG(cons_and(0, x1)) -> c13(AND(0, encArg(x1)), ENCARG(0), ENCARG(x1)) ENCARG(cons_and(tt, x1)) -> c13(AND(tt, encArg(x1)), ENCARG(tt), ENCARG(x1)) ENCARG(cons_and(nil, x1)) -> c13(AND(nil, encArg(x1)), ENCARG(nil), ENCARG(x1)) ENCARG(cons_and(cons_active(z0), x1)) -> c13(AND(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_and(cons_mark(z0), x1)) -> c13(AND(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_and(cons_cons(z0, z1), x1)) -> c13(AND(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_U11(z0, z1), x1)) -> c13(AND(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_s(z0), x1)) -> c13(AND(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_and(cons_length(z0), x1)) -> c13(AND(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_and(cons_U21(z0), x1)) -> c13(AND(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_and(cons_U31(z0, z1, z2, z3), x1)) -> c13(AND(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_and(cons_take(z0, z1), x1)) -> c13(AND(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_and(z0, z1), x1)) -> c13(AND(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_isNat(z0), x1)) -> c13(AND(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_and(cons_isNatList(z0), x1)) -> c13(AND(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_and(cons_isNatIList(z0), x1)) -> c13(AND(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) S tuples: ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(cons(z0, z1)) -> c53(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(mark(z0), z1)), U11'(mark(z0), z1), MARK(z0)) MARK(s(z0)) -> c57(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(mark(z0))), LENGTH(mark(z0)), MARK(z0)) MARK(U21(z0)) -> c59(ACTIVE(U21(mark(z0))), U21'(mark(z0)), MARK(z0)) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(mark(z0), z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(take(z0, z1)) -> c62(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 K tuples:none Defined Rule Symbols: encArg_1, active_1, mark_1, cons_2, U11_2, s_1, length_1, U21_1, U31_4, take_2, and_2, isNat_1, isNatList_1, isNatIList_1 Defined Pair Symbols: ENCARG_1, ACTIVE_1, MARK_1, CONS_2, U11'_2, S_1, LENGTH_1, U21'_1, U31'_4, TAKE_2, AND_2, ISNAT_1, ISNATLIST_1, ISNATILIST_1, ENCODE_ACTIVE_1, ENCODE_MARK_1, ENCODE_CONS_2, ENCODE_U11_2, ENCODE_S_1, ENCODE_LENGTH_1, ENCODE_U21_1, ENCODE_U31_4, ENCODE_TAKE_2, ENCODE_AND_2, ENCODE_ISNAT_1, ENCODE_ISNATLIST_1, ENCODE_ISNATILIST_1 Compound Symbols: c14_2, c15_2, c16_2, c36_1, c37_3, c38_1, c39_1, c40_2, c41_2, c42_2, c43_1, c45_1, c48_1, c52_1, c53_3, c55_3, c57_3, c58_3, c59_3, c61_3, c62_4, c63_3, c64_2, c65_2, c66_2, c67_1, c68_1, c69_1, c70_1, c71_1, c72_1, c73_1, c74_1, c75_1, c76_1, c77_1, c78_1, c79_1, c80_1, c81_1, c82_1, c83_1, c84_1, c85_1, c86_1, c87_1, c88_1, c89_1, c90_1, c91_1, c92_1, c93_1, c94_1, c95_1, c96_1, c97_1, c98_1, c99_1, c100_1, c101_1, c102_1, c34_1, c35_2, c44_3, c46_3, c47_3, c49_3, c50_2, c51_4, c54, c56, c60, c_1, c4_2, c4_1, c5_2, c5_1, c6_3, c6_2, c7_3, c7_2, c8_2, c9_2, c10_2, c11_5, c11_4, c12_3, c12_2, c13_3 ---------------------------------------- (79) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 8 trailing tuple parts ---------------------------------------- (80) Obligation: Complexity Dependency Tuples Problem Rules: encArg(zeros) -> zeros encArg(0) -> 0 encArg(tt) -> tt encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_U11(z0, z1)) -> U11(encArg(z0), encArg(z1)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_length(z0)) -> length(encArg(z0)) encArg(cons_U21(z0)) -> U21(encArg(z0)) encArg(cons_U31(z0, z1, z2, z3)) -> U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_isNat(z0)) -> isNat(encArg(z0)) encArg(cons_isNatList(z0)) -> isNatList(encArg(z0)) encArg(cons_isNatIList(z0)) -> isNatIList(encArg(z0)) active(zeros) -> mark(cons(0, zeros)) active(U11(tt, z0)) -> mark(s(length(z0))) active(U21(tt)) -> mark(nil) active(U31(tt, z0, z1, z2)) -> mark(cons(z2, take(z1, z0))) active(and(tt, z0)) -> mark(z0) active(isNat(0)) -> mark(tt) active(isNat(length(z0))) -> mark(isNatList(z0)) active(isNat(s(z0))) -> mark(isNat(z0)) active(isNatIList(z0)) -> mark(isNatList(z0)) active(isNatIList(zeros)) -> mark(tt) active(isNatIList(cons(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(isNatList(nil)) -> mark(tt) active(isNatList(cons(z0, z1))) -> mark(and(isNat(z0), isNatList(z1))) active(isNatList(take(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(length(nil)) -> mark(0) active(length(cons(z0, z1))) -> mark(U11(and(isNatList(z1), isNat(z0)), z1)) active(take(0, z0)) -> mark(U21(isNatIList(z0))) active(take(s(z0), cons(z1, z2))) -> mark(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)) mark(zeros) -> active(zeros) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(0) -> active(0) mark(U11(z0, z1)) -> active(U11(mark(z0), z1)) mark(tt) -> active(tt) mark(s(z0)) -> active(s(mark(z0))) mark(length(z0)) -> active(length(mark(z0))) mark(U21(z0)) -> active(U21(mark(z0))) mark(nil) -> active(nil) mark(U31(z0, z1, z2, z3)) -> active(U31(mark(z0), z1, z2, z3)) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(isNat(z0)) -> active(isNat(z0)) mark(isNatList(z0)) -> active(isNatList(z0)) mark(isNatIList(z0)) -> active(isNatIList(z0)) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) U11(mark(z0), z1) -> U11(z0, z1) U11(z0, mark(z1)) -> U11(z0, z1) U11(active(z0), z1) -> U11(z0, z1) U11(z0, active(z1)) -> U11(z0, z1) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) length(mark(z0)) -> length(z0) length(active(z0)) -> length(z0) U21(mark(z0)) -> U21(z0) U21(active(z0)) -> U21(z0) U31(mark(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, mark(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, mark(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, mark(z3)) -> U31(z0, z1, z2, z3) U31(active(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, active(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, active(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, active(z3)) -> U31(z0, z1, z2, z3) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) isNat(mark(z0)) -> isNat(z0) isNat(active(z0)) -> isNat(z0) isNatList(mark(z0)) -> isNatList(z0) isNatList(active(z0)) -> isNatList(z0) isNatIList(mark(z0)) -> isNatIList(z0) isNatIList(active(z0)) -> isNatIList(z0) Tuples: ENCARG(cons_isNat(z0)) -> c14(ISNAT(encArg(z0)), ENCARG(z0)) ENCARG(cons_isNatList(z0)) -> c15(ISNATLIST(encArg(z0)), ENCARG(z0)) ENCARG(cons_isNatIList(z0)) -> c16(ISNATILIST(encArg(z0)), ENCARG(z0)) ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(cons(z0, z1)) -> c53(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(mark(z0), z1)), U11'(mark(z0), z1), MARK(z0)) MARK(s(z0)) -> c57(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(mark(z0))), LENGTH(mark(z0)), MARK(z0)) MARK(U21(z0)) -> c59(ACTIVE(U21(mark(z0))), U21'(mark(z0)), MARK(z0)) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(mark(z0), z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(take(z0, z1)) -> c62(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 ENCODE_ACTIVE(z0) -> c(ACTIVE(encArg(z0))) ENCODE_MARK(z0) -> c(MARK(encArg(z0))) ENCODE_CONS(z0, z1) -> c(CONS(encArg(z0), encArg(z1))) ENCODE_U11(z0, z1) -> c(U11'(encArg(z0), encArg(z1))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_LENGTH(z0) -> c(LENGTH(encArg(z0))) ENCODE_U21(z0) -> c(U21'(encArg(z0))) ENCODE_U31(z0, z1, z2, z3) -> c(U31'(encArg(z0), encArg(z1), encArg(z2), encArg(z3))) ENCODE_TAKE(z0, z1) -> c(TAKE(encArg(z0), encArg(z1))) ENCODE_AND(z0, z1) -> c(AND(encArg(z0), encArg(z1))) ENCODE_ISNAT(z0) -> c(ISNAT(encArg(z0))) ENCODE_ISNATLIST(z0) -> c(ISNATLIST(encArg(z0))) ENCODE_ISNATILIST(z0) -> c(ISNATILIST(encArg(z0))) ENCARG(cons_active(cons_active(z0))) -> c4(ACTIVE(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_active(cons_mark(z0))) -> c4(ACTIVE(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_active(cons_cons(z0, z1))) -> c4(ACTIVE(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_active(cons_U11(z0, z1))) -> c4(ACTIVE(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_active(cons_s(z0))) -> c4(ACTIVE(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_active(cons_length(z0))) -> c4(ACTIVE(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_active(cons_U21(z0))) -> c4(ACTIVE(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_active(cons_U31(z0, z1, z2, z3))) -> c4(ACTIVE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_active(cons_take(z0, z1))) -> c4(ACTIVE(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_active(cons_and(z0, z1))) -> c4(ACTIVE(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_active(cons_isNat(z0))) -> c4(ACTIVE(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_active(cons_isNatList(z0))) -> c4(ACTIVE(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_active(cons_isNatIList(z0))) -> c4(ACTIVE(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_active(zeros)) -> c4(ACTIVE(zeros)) ENCARG(cons_mark(cons_active(z0))) -> c5(MARK(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_mark(cons_mark(z0))) -> c5(MARK(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_mark(cons_cons(z0, z1))) -> c5(MARK(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_mark(cons_U11(z0, z1))) -> c5(MARK(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_mark(cons_s(z0))) -> c5(MARK(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_mark(cons_length(z0))) -> c5(MARK(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_mark(cons_U21(z0))) -> c5(MARK(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_mark(cons_U31(z0, z1, z2, z3))) -> c5(MARK(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_mark(cons_take(z0, z1))) -> c5(MARK(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(cons_and(z0, z1))) -> c5(MARK(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_mark(cons_isNat(z0))) -> c5(MARK(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_mark(cons_isNatList(z0))) -> c5(MARK(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_mark(cons_isNatIList(z0))) -> c5(MARK(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_mark(zeros)) -> c5(MARK(zeros)) ENCARG(cons_mark(0)) -> c5(MARK(0)) ENCARG(cons_mark(tt)) -> c5(MARK(tt)) ENCARG(cons_mark(nil)) -> c5(MARK(nil)) ENCARG(cons_cons(x0, cons_active(z0))) -> c6(CONS(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_cons(x0, cons_mark(z0))) -> c6(CONS(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_cons(x0, cons_cons(z0, z1))) -> c6(CONS(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_cons(x0, cons_U11(z0, z1))) -> c6(CONS(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_cons(x0, cons_s(z0))) -> c6(CONS(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_cons(x0, cons_length(z0))) -> c6(CONS(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_cons(x0, cons_U21(z0))) -> c6(CONS(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_cons(x0, cons_U31(z0, z1, z2, z3))) -> c6(CONS(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_cons(x0, cons_take(z0, z1))) -> c6(CONS(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_cons(x0, cons_and(z0, z1))) -> c6(CONS(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_cons(x0, cons_isNat(z0))) -> c6(CONS(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_cons(x0, cons_isNatList(z0))) -> c6(CONS(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_cons(x0, cons_isNatIList(z0))) -> c6(CONS(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_cons(cons_active(z0), x1)) -> c6(CONS(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_mark(z0), x1)) -> c6(CONS(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_cons(z0, z1), x1)) -> c6(CONS(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_U11(z0, z1), x1)) -> c6(CONS(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_s(z0), x1)) -> c6(CONS(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_length(z0), x1)) -> c6(CONS(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U21(z0), x1)) -> c6(CONS(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U31(z0, z1, z2, z3), x1)) -> c6(CONS(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_cons(cons_take(z0, z1), x1)) -> c6(CONS(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_and(z0, z1), x1)) -> c6(CONS(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_isNat(z0), x1)) -> c6(CONS(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_isNatList(z0), x1)) -> c6(CONS(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_isNatIList(z0), x1)) -> c6(CONS(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_cons(x0, zeros)) -> c6(CONS(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_cons(x0, 0)) -> c6(CONS(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_cons(x0, tt)) -> c6(CONS(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_cons(x0, nil)) -> c6(CONS(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_cons(zeros, x1)) -> c6(CONS(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(0, x1)) -> c6(CONS(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(tt, x1)) -> c6(CONS(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(nil, x1)) -> c6(CONS(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(x0, cons_active(z0))) -> c7(U11'(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_U11(x0, cons_mark(z0))) -> c7(U11'(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_U11(x0, cons_cons(z0, z1))) -> c7(U11'(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U11(x0, cons_U11(z0, z1))) -> c7(U11'(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U11(x0, cons_s(z0))) -> c7(U11'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_U11(x0, cons_length(z0))) -> c7(U11'(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_U11(x0, cons_U21(z0))) -> c7(U11'(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_U11(x0, cons_U31(z0, z1, z2, z3))) -> c7(U11'(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U11(x0, cons_take(z0, z1))) -> c7(U11'(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_U11(x0, cons_and(z0, z1))) -> c7(U11'(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_U11(x0, cons_isNat(z0))) -> c7(U11'(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_U11(x0, cons_isNatList(z0))) -> c7(U11'(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_U11(x0, cons_isNatIList(z0))) -> c7(U11'(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U11(cons_active(z0), x1)) -> c7(U11'(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_mark(z0), x1)) -> c7(U11'(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_cons(z0, z1), x1)) -> c7(U11'(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_U11(z0, z1), x1)) -> c7(U11'(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_s(z0), x1)) -> c7(U11'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_length(z0), x1)) -> c7(U11'(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_U21(z0), x1)) -> c7(U11'(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_U31(z0, z1, z2, z3), x1)) -> c7(U11'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_U11(cons_take(z0, z1), x1)) -> c7(U11'(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_and(z0, z1), x1)) -> c7(U11'(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_isNat(z0), x1)) -> c7(U11'(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_isNatList(z0), x1)) -> c7(U11'(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_isNatIList(z0), x1)) -> c7(U11'(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_U11(x0, zeros)) -> c7(U11'(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_U11(x0, 0)) -> c7(U11'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_U11(x0, tt)) -> c7(U11'(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_U11(x0, nil)) -> c7(U11'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_U11(zeros, x1)) -> c7(U11'(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(0, x1)) -> c7(U11'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(tt, x1)) -> c7(U11'(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(nil, x1)) -> c7(U11'(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_s(cons_active(z0))) -> c8(S(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_s(cons_mark(z0))) -> c8(S(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_s(cons_cons(z0, z1))) -> c8(S(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_s(cons_U11(z0, z1))) -> c8(S(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_s(cons_s(z0))) -> c8(S(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_length(z0))) -> c8(S(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_s(cons_U21(z0))) -> c8(S(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_s(cons_U31(z0, z1, z2, z3))) -> c8(S(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_s(cons_take(z0, z1))) -> c8(S(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_s(cons_and(z0, z1))) -> c8(S(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_s(cons_isNat(z0))) -> c8(S(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_s(cons_isNatList(z0))) -> c8(S(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_s(cons_isNatIList(z0))) -> c8(S(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_length(cons_active(z0))) -> c9(LENGTH(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_length(cons_mark(z0))) -> c9(LENGTH(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_length(cons_cons(z0, z1))) -> c9(LENGTH(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_length(cons_U11(z0, z1))) -> c9(LENGTH(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_length(cons_s(z0))) -> c9(LENGTH(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_length(cons_length(z0))) -> c9(LENGTH(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_length(cons_U21(z0))) -> c9(LENGTH(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_length(cons_U31(z0, z1, z2, z3))) -> c9(LENGTH(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_length(cons_take(z0, z1))) -> c9(LENGTH(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_length(cons_and(z0, z1))) -> c9(LENGTH(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_length(cons_isNat(z0))) -> c9(LENGTH(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_length(cons_isNatList(z0))) -> c9(LENGTH(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_length(cons_isNatIList(z0))) -> c9(LENGTH(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U21(cons_active(z0))) -> c10(U21'(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_U21(cons_mark(z0))) -> c10(U21'(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_U21(cons_cons(z0, z1))) -> c10(U21'(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U21(cons_U11(z0, z1))) -> c10(U21'(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U21(cons_s(z0))) -> c10(U21'(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_U21(cons_length(z0))) -> c10(U21'(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_U21(cons_U21(z0))) -> c10(U21'(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_U21(cons_U31(z0, z1, z2, z3))) -> c10(U21'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U21(cons_take(z0, z1))) -> c10(U21'(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_U21(cons_and(z0, z1))) -> c10(U21'(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_U21(cons_isNat(z0))) -> c10(U21'(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_U21(cons_isNatList(z0))) -> c10(U21'(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_U21(cons_isNatIList(z0))) -> c10(U21'(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U31(x0, x1, x2, cons_active(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), active(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_active(z0))) ENCARG(cons_U31(x0, x1, x2, cons_mark(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), mark(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_mark(z0))) ENCARG(cons_U31(x0, x1, x2, cons_cons(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_U11(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_s(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), s(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_s(z0))) ENCARG(cons_U31(x0, x1, x2, cons_length(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), length(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_length(z0))) ENCARG(cons_U31(x0, x1, x2, cons_U21(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U21(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U21(z0))) ENCARG(cons_U31(x0, x1, x2, cons_U31(z0, z1, z2, z3))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U31(x0, x1, x2, cons_take(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_take(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_and(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_and(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_isNat(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNat(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNat(z0))) ENCARG(cons_U31(x0, x1, x2, cons_isNatList(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNatList(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNatList(z0))) ENCARG(cons_U31(x0, x1, x2, cons_isNatIList(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U31(x0, x1, cons_active(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), active(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_active(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_mark(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), mark(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_mark(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_cons(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), cons(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_cons(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U11(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), U11(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U11(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_s(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), s(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_s(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_length(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), length(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_length(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U21(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), U21(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U21(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U31(z0, z1, z2, z3), x3)) -> c11(U31'(encArg(x0), encArg(x1), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_take(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), take(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_take(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_and(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), and(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_and(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNat(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNat(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNat(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNatList(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNatList(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNatList(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNatIList(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNatIList(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNatIList(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, cons_active(z0), x2, x3)) -> c11(U31'(encArg(x0), active(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_active(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_mark(z0), x2, x3)) -> c11(U31'(encArg(x0), mark(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_mark(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_cons(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), cons(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_cons(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U11(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), U11(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U11(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_s(z0), x2, x3)) -> c11(U31'(encArg(x0), s(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_s(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_length(z0), x2, x3)) -> c11(U31'(encArg(x0), length(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_length(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U21(z0), x2, x3)) -> c11(U31'(encArg(x0), U21(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U21(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U31(z0, z1, z2, z3), x2, x3)) -> c11(U31'(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_take(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), take(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_take(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_and(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), and(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_and(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNat(z0), x2, x3)) -> c11(U31'(encArg(x0), isNat(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNat(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNatList(z0), x2, x3)) -> c11(U31'(encArg(x0), isNatList(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNatList(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNatIList(z0), x2, x3)) -> c11(U31'(encArg(x0), isNatIList(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNatIList(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_active(z0), x1, x2, x3)) -> c11(U31'(active(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_active(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_mark(z0), x1, x2, x3)) -> c11(U31'(mark(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_mark(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_cons(z0, z1), x1, x2, x3)) -> c11(U31'(cons(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_cons(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U11(z0, z1), x1, x2, x3)) -> c11(U31'(U11(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U11(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_s(z0), x1, x2, x3)) -> c11(U31'(s(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_s(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_length(z0), x1, x2, x3)) -> c11(U31'(length(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_length(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U21(z0), x1, x2, x3)) -> c11(U31'(U21(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U21(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U31(z0, z1, z2, z3), x1, x2, x3)) -> c11(U31'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_take(z0, z1), x1, x2, x3)) -> c11(U31'(take(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_take(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_and(z0, z1), x1, x2, x3)) -> c11(U31'(and(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_and(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNat(z0), x1, x2, x3)) -> c11(U31'(isNat(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNat(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNatList(z0), x1, x2, x3)) -> c11(U31'(isNatList(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNatList(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNatIList(z0), x1, x2, x3)) -> c11(U31'(isNatIList(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNatIList(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, x1, x2, zeros)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), zeros), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, 0)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), 0), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, tt)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), tt), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, nil)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), nil), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, zeros, x3)) -> c11(U31'(encArg(x0), encArg(x1), zeros, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, 0, x3)) -> c11(U31'(encArg(x0), encArg(x1), 0, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, tt, x3)) -> c11(U31'(encArg(x0), encArg(x1), tt, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, nil, x3)) -> c11(U31'(encArg(x0), encArg(x1), nil, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, zeros, x2, x3)) -> c11(U31'(encArg(x0), zeros, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, 0, x2, x3)) -> c11(U31'(encArg(x0), 0, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, tt, x2, x3)) -> c11(U31'(encArg(x0), tt, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, nil, x2, x3)) -> c11(U31'(encArg(x0), nil, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(zeros, x1, x2, x3)) -> c11(U31'(zeros, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(0, x1, x2, x3)) -> c11(U31'(0, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(tt, x1, x2, x3)) -> c11(U31'(tt, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(nil, x1, x2, x3)) -> c11(U31'(nil, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_take(x0, cons_active(z0))) -> c12(TAKE(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_take(x0, cons_mark(z0))) -> c12(TAKE(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_take(x0, cons_cons(z0, z1))) -> c12(TAKE(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_take(x0, cons_U11(z0, z1))) -> c12(TAKE(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_take(x0, cons_s(z0))) -> c12(TAKE(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_take(x0, cons_length(z0))) -> c12(TAKE(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_take(x0, cons_U21(z0))) -> c12(TAKE(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_take(x0, cons_U31(z0, z1, z2, z3))) -> c12(TAKE(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_take(x0, cons_take(z0, z1))) -> c12(TAKE(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_take(x0, cons_and(z0, z1))) -> c12(TAKE(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_take(x0, cons_isNat(z0))) -> c12(TAKE(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_take(x0, cons_isNatList(z0))) -> c12(TAKE(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_take(x0, cons_isNatIList(z0))) -> c12(TAKE(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_take(cons_active(z0), x1)) -> c12(TAKE(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_take(cons_mark(z0), x1)) -> c12(TAKE(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_take(cons_cons(z0, z1), x1)) -> c12(TAKE(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_U11(z0, z1), x1)) -> c12(TAKE(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_s(z0), x1)) -> c12(TAKE(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_take(cons_length(z0), x1)) -> c12(TAKE(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_take(cons_U21(z0), x1)) -> c12(TAKE(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_take(cons_U31(z0, z1, z2, z3), x1)) -> c12(TAKE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_take(cons_take(z0, z1), x1)) -> c12(TAKE(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_and(z0, z1), x1)) -> c12(TAKE(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_isNat(z0), x1)) -> c12(TAKE(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_take(cons_isNatList(z0), x1)) -> c12(TAKE(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_take(cons_isNatIList(z0), x1)) -> c12(TAKE(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_take(x0, zeros)) -> c12(TAKE(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_take(x0, 0)) -> c12(TAKE(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_take(x0, tt)) -> c12(TAKE(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_take(x0, nil)) -> c12(TAKE(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_take(zeros, x1)) -> c12(TAKE(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(0, x1)) -> c12(TAKE(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(tt, x1)) -> c12(TAKE(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(nil, x1)) -> c12(TAKE(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(x0, cons_active(z0))) -> c13(AND(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_and(x0, cons_mark(z0))) -> c13(AND(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_and(x0, cons_cons(z0, z1))) -> c13(AND(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_and(x0, cons_U11(z0, z1))) -> c13(AND(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_and(x0, cons_s(z0))) -> c13(AND(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_and(x0, cons_length(z0))) -> c13(AND(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_and(x0, cons_U21(z0))) -> c13(AND(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_and(x0, cons_U31(z0, z1, z2, z3))) -> c13(AND(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_and(x0, cons_take(z0, z1))) -> c13(AND(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_and(x0, cons_and(z0, z1))) -> c13(AND(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_and(x0, cons_isNat(z0))) -> c13(AND(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_and(x0, cons_isNatList(z0))) -> c13(AND(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_and(x0, cons_isNatIList(z0))) -> c13(AND(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_and(cons_active(z0), x1)) -> c13(AND(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_and(cons_mark(z0), x1)) -> c13(AND(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_and(cons_cons(z0, z1), x1)) -> c13(AND(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_U11(z0, z1), x1)) -> c13(AND(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_s(z0), x1)) -> c13(AND(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_and(cons_length(z0), x1)) -> c13(AND(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_and(cons_U21(z0), x1)) -> c13(AND(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_and(cons_U31(z0, z1, z2, z3), x1)) -> c13(AND(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_and(cons_take(z0, z1), x1)) -> c13(AND(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_and(z0, z1), x1)) -> c13(AND(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_isNat(z0), x1)) -> c13(AND(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_and(cons_isNatList(z0), x1)) -> c13(AND(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_and(cons_isNatIList(z0), x1)) -> c13(AND(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_and(x0, zeros)) -> c13(AND(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_and(x0, 0)) -> c13(AND(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_and(x0, tt)) -> c13(AND(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_and(x0, nil)) -> c13(AND(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_and(zeros, x1)) -> c13(AND(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(0, x1)) -> c13(AND(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(tt, x1)) -> c13(AND(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(nil, x1)) -> c13(AND(nil, encArg(x1)), ENCARG(x1)) S tuples: ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(cons(z0, z1)) -> c53(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(mark(z0), z1)), U11'(mark(z0), z1), MARK(z0)) MARK(s(z0)) -> c57(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(mark(z0))), LENGTH(mark(z0)), MARK(z0)) MARK(U21(z0)) -> c59(ACTIVE(U21(mark(z0))), U21'(mark(z0)), MARK(z0)) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(mark(z0), z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(take(z0, z1)) -> c62(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 K tuples:none Defined Rule Symbols: encArg_1, active_1, mark_1, cons_2, U11_2, s_1, length_1, U21_1, U31_4, take_2, and_2, isNat_1, isNatList_1, isNatIList_1 Defined Pair Symbols: ENCARG_1, ACTIVE_1, MARK_1, CONS_2, U11'_2, S_1, LENGTH_1, U21'_1, U31'_4, TAKE_2, AND_2, ISNAT_1, ISNATLIST_1, ISNATILIST_1, ENCODE_ACTIVE_1, ENCODE_MARK_1, ENCODE_CONS_2, ENCODE_U11_2, ENCODE_S_1, ENCODE_LENGTH_1, ENCODE_U21_1, ENCODE_U31_4, ENCODE_TAKE_2, ENCODE_AND_2, ENCODE_ISNAT_1, ENCODE_ISNATLIST_1, ENCODE_ISNATILIST_1 Compound Symbols: c14_2, c15_2, c16_2, c36_1, c37_3, c38_1, c39_1, c40_2, c41_2, c42_2, c43_1, c45_1, c48_1, c52_1, c53_3, c55_3, c57_3, c58_3, c59_3, c61_3, c62_4, c63_3, c64_2, c65_2, c66_2, c67_1, c68_1, c69_1, c70_1, c71_1, c72_1, c73_1, c74_1, c75_1, c76_1, c77_1, c78_1, c79_1, c80_1, c81_1, c82_1, c83_1, c84_1, c85_1, c86_1, c87_1, c88_1, c89_1, c90_1, c91_1, c92_1, c93_1, c94_1, c95_1, c96_1, c97_1, c98_1, c99_1, c100_1, c101_1, c102_1, c34_1, c35_2, c44_3, c46_3, c47_3, c49_3, c50_2, c51_4, c54, c56, c60, c_1, c4_2, c4_1, c5_2, c5_1, c6_3, c6_2, c7_3, c7_2, c8_2, c9_2, c10_2, c11_5, c11_4, c12_3, c12_2, c13_3, c13_2 ---------------------------------------- (81) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace ENCARG(cons_isNat(z0)) -> c14(ISNAT(encArg(z0)), ENCARG(z0)) by ENCARG(cons_isNat(zeros)) -> c14(ISNAT(zeros), ENCARG(zeros)) ENCARG(cons_isNat(0)) -> c14(ISNAT(0), ENCARG(0)) ENCARG(cons_isNat(tt)) -> c14(ISNAT(tt), ENCARG(tt)) ENCARG(cons_isNat(nil)) -> c14(ISNAT(nil), ENCARG(nil)) ENCARG(cons_isNat(cons_active(z0))) -> c14(ISNAT(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_isNat(cons_mark(z0))) -> c14(ISNAT(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_isNat(cons_cons(z0, z1))) -> c14(ISNAT(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_isNat(cons_U11(z0, z1))) -> c14(ISNAT(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_isNat(cons_s(z0))) -> c14(ISNAT(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_isNat(cons_length(z0))) -> c14(ISNAT(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_isNat(cons_U21(z0))) -> c14(ISNAT(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_isNat(cons_U31(z0, z1, z2, z3))) -> c14(ISNAT(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_isNat(cons_take(z0, z1))) -> c14(ISNAT(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_isNat(cons_and(z0, z1))) -> c14(ISNAT(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_isNat(cons_isNat(z0))) -> c14(ISNAT(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_isNat(cons_isNatList(z0))) -> c14(ISNAT(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_isNat(cons_isNatIList(z0))) -> c14(ISNAT(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ---------------------------------------- (82) Obligation: Complexity Dependency Tuples Problem Rules: encArg(zeros) -> zeros encArg(0) -> 0 encArg(tt) -> tt encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_U11(z0, z1)) -> U11(encArg(z0), encArg(z1)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_length(z0)) -> length(encArg(z0)) encArg(cons_U21(z0)) -> U21(encArg(z0)) encArg(cons_U31(z0, z1, z2, z3)) -> U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_isNat(z0)) -> isNat(encArg(z0)) encArg(cons_isNatList(z0)) -> isNatList(encArg(z0)) encArg(cons_isNatIList(z0)) -> isNatIList(encArg(z0)) active(zeros) -> mark(cons(0, zeros)) active(U11(tt, z0)) -> mark(s(length(z0))) active(U21(tt)) -> mark(nil) active(U31(tt, z0, z1, z2)) -> mark(cons(z2, take(z1, z0))) active(and(tt, z0)) -> mark(z0) active(isNat(0)) -> mark(tt) active(isNat(length(z0))) -> mark(isNatList(z0)) active(isNat(s(z0))) -> mark(isNat(z0)) active(isNatIList(z0)) -> mark(isNatList(z0)) active(isNatIList(zeros)) -> mark(tt) active(isNatIList(cons(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(isNatList(nil)) -> mark(tt) active(isNatList(cons(z0, z1))) -> mark(and(isNat(z0), isNatList(z1))) active(isNatList(take(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(length(nil)) -> mark(0) active(length(cons(z0, z1))) -> mark(U11(and(isNatList(z1), isNat(z0)), z1)) active(take(0, z0)) -> mark(U21(isNatIList(z0))) active(take(s(z0), cons(z1, z2))) -> mark(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)) mark(zeros) -> active(zeros) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(0) -> active(0) mark(U11(z0, z1)) -> active(U11(mark(z0), z1)) mark(tt) -> active(tt) mark(s(z0)) -> active(s(mark(z0))) mark(length(z0)) -> active(length(mark(z0))) mark(U21(z0)) -> active(U21(mark(z0))) mark(nil) -> active(nil) mark(U31(z0, z1, z2, z3)) -> active(U31(mark(z0), z1, z2, z3)) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(isNat(z0)) -> active(isNat(z0)) mark(isNatList(z0)) -> active(isNatList(z0)) mark(isNatIList(z0)) -> active(isNatIList(z0)) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) U11(mark(z0), z1) -> U11(z0, z1) U11(z0, mark(z1)) -> U11(z0, z1) U11(active(z0), z1) -> U11(z0, z1) U11(z0, active(z1)) -> U11(z0, z1) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) length(mark(z0)) -> length(z0) length(active(z0)) -> length(z0) U21(mark(z0)) -> U21(z0) U21(active(z0)) -> U21(z0) U31(mark(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, mark(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, mark(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, mark(z3)) -> U31(z0, z1, z2, z3) U31(active(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, active(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, active(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, active(z3)) -> U31(z0, z1, z2, z3) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) isNat(mark(z0)) -> isNat(z0) isNat(active(z0)) -> isNat(z0) isNatList(mark(z0)) -> isNatList(z0) isNatList(active(z0)) -> isNatList(z0) isNatIList(mark(z0)) -> isNatIList(z0) isNatIList(active(z0)) -> isNatIList(z0) Tuples: ENCARG(cons_isNatList(z0)) -> c15(ISNATLIST(encArg(z0)), ENCARG(z0)) ENCARG(cons_isNatIList(z0)) -> c16(ISNATILIST(encArg(z0)), ENCARG(z0)) ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(cons(z0, z1)) -> c53(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(mark(z0), z1)), U11'(mark(z0), z1), MARK(z0)) MARK(s(z0)) -> c57(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(mark(z0))), LENGTH(mark(z0)), MARK(z0)) MARK(U21(z0)) -> c59(ACTIVE(U21(mark(z0))), U21'(mark(z0)), MARK(z0)) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(mark(z0), z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(take(z0, z1)) -> c62(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 ENCODE_ACTIVE(z0) -> c(ACTIVE(encArg(z0))) ENCODE_MARK(z0) -> c(MARK(encArg(z0))) ENCODE_CONS(z0, z1) -> c(CONS(encArg(z0), encArg(z1))) ENCODE_U11(z0, z1) -> c(U11'(encArg(z0), encArg(z1))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_LENGTH(z0) -> c(LENGTH(encArg(z0))) ENCODE_U21(z0) -> c(U21'(encArg(z0))) ENCODE_U31(z0, z1, z2, z3) -> c(U31'(encArg(z0), encArg(z1), encArg(z2), encArg(z3))) ENCODE_TAKE(z0, z1) -> c(TAKE(encArg(z0), encArg(z1))) ENCODE_AND(z0, z1) -> c(AND(encArg(z0), encArg(z1))) ENCODE_ISNAT(z0) -> c(ISNAT(encArg(z0))) ENCODE_ISNATLIST(z0) -> c(ISNATLIST(encArg(z0))) ENCODE_ISNATILIST(z0) -> c(ISNATILIST(encArg(z0))) ENCARG(cons_active(cons_active(z0))) -> c4(ACTIVE(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_active(cons_mark(z0))) -> c4(ACTIVE(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_active(cons_cons(z0, z1))) -> c4(ACTIVE(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_active(cons_U11(z0, z1))) -> c4(ACTIVE(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_active(cons_s(z0))) -> c4(ACTIVE(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_active(cons_length(z0))) -> c4(ACTIVE(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_active(cons_U21(z0))) -> c4(ACTIVE(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_active(cons_U31(z0, z1, z2, z3))) -> c4(ACTIVE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_active(cons_take(z0, z1))) -> c4(ACTIVE(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_active(cons_and(z0, z1))) -> c4(ACTIVE(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_active(cons_isNat(z0))) -> c4(ACTIVE(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_active(cons_isNatList(z0))) -> c4(ACTIVE(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_active(cons_isNatIList(z0))) -> c4(ACTIVE(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_active(zeros)) -> c4(ACTIVE(zeros)) ENCARG(cons_mark(cons_active(z0))) -> c5(MARK(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_mark(cons_mark(z0))) -> c5(MARK(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_mark(cons_cons(z0, z1))) -> c5(MARK(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_mark(cons_U11(z0, z1))) -> c5(MARK(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_mark(cons_s(z0))) -> c5(MARK(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_mark(cons_length(z0))) -> c5(MARK(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_mark(cons_U21(z0))) -> c5(MARK(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_mark(cons_U31(z0, z1, z2, z3))) -> c5(MARK(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_mark(cons_take(z0, z1))) -> c5(MARK(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(cons_and(z0, z1))) -> c5(MARK(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_mark(cons_isNat(z0))) -> c5(MARK(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_mark(cons_isNatList(z0))) -> c5(MARK(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_mark(cons_isNatIList(z0))) -> c5(MARK(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_mark(zeros)) -> c5(MARK(zeros)) ENCARG(cons_mark(0)) -> c5(MARK(0)) ENCARG(cons_mark(tt)) -> c5(MARK(tt)) ENCARG(cons_mark(nil)) -> c5(MARK(nil)) ENCARG(cons_cons(x0, cons_active(z0))) -> c6(CONS(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_cons(x0, cons_mark(z0))) -> c6(CONS(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_cons(x0, cons_cons(z0, z1))) -> c6(CONS(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_cons(x0, cons_U11(z0, z1))) -> c6(CONS(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_cons(x0, cons_s(z0))) -> c6(CONS(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_cons(x0, cons_length(z0))) -> c6(CONS(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_cons(x0, cons_U21(z0))) -> c6(CONS(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_cons(x0, cons_U31(z0, z1, z2, z3))) -> c6(CONS(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_cons(x0, cons_take(z0, z1))) -> c6(CONS(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_cons(x0, cons_and(z0, z1))) -> c6(CONS(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_cons(x0, cons_isNat(z0))) -> c6(CONS(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_cons(x0, cons_isNatList(z0))) -> c6(CONS(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_cons(x0, cons_isNatIList(z0))) -> c6(CONS(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_cons(cons_active(z0), x1)) -> c6(CONS(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_mark(z0), x1)) -> c6(CONS(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_cons(z0, z1), x1)) -> c6(CONS(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_U11(z0, z1), x1)) -> c6(CONS(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_s(z0), x1)) -> c6(CONS(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_length(z0), x1)) -> c6(CONS(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U21(z0), x1)) -> c6(CONS(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U31(z0, z1, z2, z3), x1)) -> c6(CONS(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_cons(cons_take(z0, z1), x1)) -> c6(CONS(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_and(z0, z1), x1)) -> c6(CONS(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_isNat(z0), x1)) -> c6(CONS(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_isNatList(z0), x1)) -> c6(CONS(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_isNatIList(z0), x1)) -> c6(CONS(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_cons(x0, zeros)) -> c6(CONS(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_cons(x0, 0)) -> c6(CONS(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_cons(x0, tt)) -> c6(CONS(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_cons(x0, nil)) -> c6(CONS(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_cons(zeros, x1)) -> c6(CONS(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(0, x1)) -> c6(CONS(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(tt, x1)) -> c6(CONS(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(nil, x1)) -> c6(CONS(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(x0, cons_active(z0))) -> c7(U11'(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_U11(x0, cons_mark(z0))) -> c7(U11'(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_U11(x0, cons_cons(z0, z1))) -> c7(U11'(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U11(x0, cons_U11(z0, z1))) -> c7(U11'(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U11(x0, cons_s(z0))) -> c7(U11'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_U11(x0, cons_length(z0))) -> c7(U11'(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_U11(x0, cons_U21(z0))) -> c7(U11'(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_U11(x0, cons_U31(z0, z1, z2, z3))) -> c7(U11'(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U11(x0, cons_take(z0, z1))) -> c7(U11'(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_U11(x0, cons_and(z0, z1))) -> c7(U11'(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_U11(x0, cons_isNat(z0))) -> c7(U11'(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_U11(x0, cons_isNatList(z0))) -> c7(U11'(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_U11(x0, cons_isNatIList(z0))) -> c7(U11'(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U11(cons_active(z0), x1)) -> c7(U11'(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_mark(z0), x1)) -> c7(U11'(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_cons(z0, z1), x1)) -> c7(U11'(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_U11(z0, z1), x1)) -> c7(U11'(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_s(z0), x1)) -> c7(U11'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_length(z0), x1)) -> c7(U11'(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_U21(z0), x1)) -> c7(U11'(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_U31(z0, z1, z2, z3), x1)) -> c7(U11'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_U11(cons_take(z0, z1), x1)) -> c7(U11'(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_and(z0, z1), x1)) -> c7(U11'(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_isNat(z0), x1)) -> c7(U11'(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_isNatList(z0), x1)) -> c7(U11'(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_isNatIList(z0), x1)) -> c7(U11'(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_U11(x0, zeros)) -> c7(U11'(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_U11(x0, 0)) -> c7(U11'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_U11(x0, tt)) -> c7(U11'(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_U11(x0, nil)) -> c7(U11'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_U11(zeros, x1)) -> c7(U11'(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(0, x1)) -> c7(U11'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(tt, x1)) -> c7(U11'(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(nil, x1)) -> c7(U11'(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_s(cons_active(z0))) -> c8(S(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_s(cons_mark(z0))) -> c8(S(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_s(cons_cons(z0, z1))) -> c8(S(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_s(cons_U11(z0, z1))) -> c8(S(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_s(cons_s(z0))) -> c8(S(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_length(z0))) -> c8(S(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_s(cons_U21(z0))) -> c8(S(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_s(cons_U31(z0, z1, z2, z3))) -> c8(S(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_s(cons_take(z0, z1))) -> c8(S(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_s(cons_and(z0, z1))) -> c8(S(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_s(cons_isNat(z0))) -> c8(S(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_s(cons_isNatList(z0))) -> c8(S(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_s(cons_isNatIList(z0))) -> c8(S(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_length(cons_active(z0))) -> c9(LENGTH(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_length(cons_mark(z0))) -> c9(LENGTH(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_length(cons_cons(z0, z1))) -> c9(LENGTH(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_length(cons_U11(z0, z1))) -> c9(LENGTH(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_length(cons_s(z0))) -> c9(LENGTH(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_length(cons_length(z0))) -> c9(LENGTH(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_length(cons_U21(z0))) -> c9(LENGTH(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_length(cons_U31(z0, z1, z2, z3))) -> c9(LENGTH(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_length(cons_take(z0, z1))) -> c9(LENGTH(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_length(cons_and(z0, z1))) -> c9(LENGTH(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_length(cons_isNat(z0))) -> c9(LENGTH(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_length(cons_isNatList(z0))) -> c9(LENGTH(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_length(cons_isNatIList(z0))) -> c9(LENGTH(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U21(cons_active(z0))) -> c10(U21'(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_U21(cons_mark(z0))) -> c10(U21'(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_U21(cons_cons(z0, z1))) -> c10(U21'(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U21(cons_U11(z0, z1))) -> c10(U21'(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U21(cons_s(z0))) -> c10(U21'(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_U21(cons_length(z0))) -> c10(U21'(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_U21(cons_U21(z0))) -> c10(U21'(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_U21(cons_U31(z0, z1, z2, z3))) -> c10(U21'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U21(cons_take(z0, z1))) -> c10(U21'(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_U21(cons_and(z0, z1))) -> c10(U21'(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_U21(cons_isNat(z0))) -> c10(U21'(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_U21(cons_isNatList(z0))) -> c10(U21'(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_U21(cons_isNatIList(z0))) -> c10(U21'(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U31(x0, x1, x2, cons_active(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), active(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_active(z0))) ENCARG(cons_U31(x0, x1, x2, cons_mark(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), mark(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_mark(z0))) ENCARG(cons_U31(x0, x1, x2, cons_cons(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_U11(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_s(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), s(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_s(z0))) ENCARG(cons_U31(x0, x1, x2, cons_length(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), length(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_length(z0))) ENCARG(cons_U31(x0, x1, x2, cons_U21(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U21(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U21(z0))) ENCARG(cons_U31(x0, x1, x2, cons_U31(z0, z1, z2, z3))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U31(x0, x1, x2, cons_take(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_take(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_and(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_and(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_isNat(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNat(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNat(z0))) ENCARG(cons_U31(x0, x1, x2, cons_isNatList(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNatList(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNatList(z0))) ENCARG(cons_U31(x0, x1, x2, cons_isNatIList(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U31(x0, x1, cons_active(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), active(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_active(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_mark(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), mark(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_mark(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_cons(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), cons(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_cons(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U11(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), U11(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U11(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_s(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), s(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_s(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_length(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), length(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_length(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U21(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), U21(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U21(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U31(z0, z1, z2, z3), x3)) -> c11(U31'(encArg(x0), encArg(x1), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_take(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), take(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_take(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_and(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), and(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_and(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNat(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNat(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNat(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNatList(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNatList(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNatList(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNatIList(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNatIList(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNatIList(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, cons_active(z0), x2, x3)) -> c11(U31'(encArg(x0), active(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_active(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_mark(z0), x2, x3)) -> c11(U31'(encArg(x0), mark(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_mark(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_cons(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), cons(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_cons(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U11(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), U11(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U11(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_s(z0), x2, x3)) -> c11(U31'(encArg(x0), s(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_s(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_length(z0), x2, x3)) -> c11(U31'(encArg(x0), length(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_length(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U21(z0), x2, x3)) -> c11(U31'(encArg(x0), U21(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U21(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U31(z0, z1, z2, z3), x2, x3)) -> c11(U31'(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_take(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), take(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_take(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_and(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), and(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_and(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNat(z0), x2, x3)) -> c11(U31'(encArg(x0), isNat(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNat(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNatList(z0), x2, x3)) -> c11(U31'(encArg(x0), isNatList(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNatList(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNatIList(z0), x2, x3)) -> c11(U31'(encArg(x0), isNatIList(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNatIList(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_active(z0), x1, x2, x3)) -> c11(U31'(active(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_active(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_mark(z0), x1, x2, x3)) -> c11(U31'(mark(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_mark(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_cons(z0, z1), x1, x2, x3)) -> c11(U31'(cons(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_cons(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U11(z0, z1), x1, x2, x3)) -> c11(U31'(U11(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U11(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_s(z0), x1, x2, x3)) -> c11(U31'(s(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_s(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_length(z0), x1, x2, x3)) -> c11(U31'(length(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_length(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U21(z0), x1, x2, x3)) -> c11(U31'(U21(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U21(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U31(z0, z1, z2, z3), x1, x2, x3)) -> c11(U31'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_take(z0, z1), x1, x2, x3)) -> c11(U31'(take(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_take(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_and(z0, z1), x1, x2, x3)) -> c11(U31'(and(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_and(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNat(z0), x1, x2, x3)) -> c11(U31'(isNat(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNat(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNatList(z0), x1, x2, x3)) -> c11(U31'(isNatList(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNatList(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNatIList(z0), x1, x2, x3)) -> c11(U31'(isNatIList(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNatIList(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, x1, x2, zeros)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), zeros), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, 0)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), 0), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, tt)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), tt), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, nil)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), nil), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, zeros, x3)) -> c11(U31'(encArg(x0), encArg(x1), zeros, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, 0, x3)) -> c11(U31'(encArg(x0), encArg(x1), 0, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, tt, x3)) -> c11(U31'(encArg(x0), encArg(x1), tt, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, nil, x3)) -> c11(U31'(encArg(x0), encArg(x1), nil, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, zeros, x2, x3)) -> c11(U31'(encArg(x0), zeros, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, 0, x2, x3)) -> c11(U31'(encArg(x0), 0, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, tt, x2, x3)) -> c11(U31'(encArg(x0), tt, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, nil, x2, x3)) -> c11(U31'(encArg(x0), nil, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(zeros, x1, x2, x3)) -> c11(U31'(zeros, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(0, x1, x2, x3)) -> c11(U31'(0, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(tt, x1, x2, x3)) -> c11(U31'(tt, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(nil, x1, x2, x3)) -> c11(U31'(nil, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_take(x0, cons_active(z0))) -> c12(TAKE(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_take(x0, cons_mark(z0))) -> c12(TAKE(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_take(x0, cons_cons(z0, z1))) -> c12(TAKE(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_take(x0, cons_U11(z0, z1))) -> c12(TAKE(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_take(x0, cons_s(z0))) -> c12(TAKE(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_take(x0, cons_length(z0))) -> c12(TAKE(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_take(x0, cons_U21(z0))) -> c12(TAKE(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_take(x0, cons_U31(z0, z1, z2, z3))) -> c12(TAKE(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_take(x0, cons_take(z0, z1))) -> c12(TAKE(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_take(x0, cons_and(z0, z1))) -> c12(TAKE(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_take(x0, cons_isNat(z0))) -> c12(TAKE(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_take(x0, cons_isNatList(z0))) -> c12(TAKE(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_take(x0, cons_isNatIList(z0))) -> c12(TAKE(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_take(cons_active(z0), x1)) -> c12(TAKE(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_take(cons_mark(z0), x1)) -> c12(TAKE(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_take(cons_cons(z0, z1), x1)) -> c12(TAKE(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_U11(z0, z1), x1)) -> c12(TAKE(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_s(z0), x1)) -> c12(TAKE(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_take(cons_length(z0), x1)) -> c12(TAKE(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_take(cons_U21(z0), x1)) -> c12(TAKE(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_take(cons_U31(z0, z1, z2, z3), x1)) -> c12(TAKE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_take(cons_take(z0, z1), x1)) -> c12(TAKE(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_and(z0, z1), x1)) -> c12(TAKE(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_isNat(z0), x1)) -> c12(TAKE(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_take(cons_isNatList(z0), x1)) -> c12(TAKE(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_take(cons_isNatIList(z0), x1)) -> c12(TAKE(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_take(x0, zeros)) -> c12(TAKE(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_take(x0, 0)) -> c12(TAKE(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_take(x0, tt)) -> c12(TAKE(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_take(x0, nil)) -> c12(TAKE(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_take(zeros, x1)) -> c12(TAKE(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(0, x1)) -> c12(TAKE(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(tt, x1)) -> c12(TAKE(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(nil, x1)) -> c12(TAKE(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(x0, cons_active(z0))) -> c13(AND(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_and(x0, cons_mark(z0))) -> c13(AND(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_and(x0, cons_cons(z0, z1))) -> c13(AND(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_and(x0, cons_U11(z0, z1))) -> c13(AND(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_and(x0, cons_s(z0))) -> c13(AND(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_and(x0, cons_length(z0))) -> c13(AND(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_and(x0, cons_U21(z0))) -> c13(AND(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_and(x0, cons_U31(z0, z1, z2, z3))) -> c13(AND(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_and(x0, cons_take(z0, z1))) -> c13(AND(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_and(x0, cons_and(z0, z1))) -> c13(AND(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_and(x0, cons_isNat(z0))) -> c13(AND(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_and(x0, cons_isNatList(z0))) -> c13(AND(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_and(x0, cons_isNatIList(z0))) -> c13(AND(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_and(cons_active(z0), x1)) -> c13(AND(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_and(cons_mark(z0), x1)) -> c13(AND(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_and(cons_cons(z0, z1), x1)) -> c13(AND(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_U11(z0, z1), x1)) -> c13(AND(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_s(z0), x1)) -> c13(AND(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_and(cons_length(z0), x1)) -> c13(AND(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_and(cons_U21(z0), x1)) -> c13(AND(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_and(cons_U31(z0, z1, z2, z3), x1)) -> c13(AND(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_and(cons_take(z0, z1), x1)) -> c13(AND(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_and(z0, z1), x1)) -> c13(AND(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_isNat(z0), x1)) -> c13(AND(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_and(cons_isNatList(z0), x1)) -> c13(AND(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_and(cons_isNatIList(z0), x1)) -> c13(AND(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_and(x0, zeros)) -> c13(AND(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_and(x0, 0)) -> c13(AND(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_and(x0, tt)) -> c13(AND(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_and(x0, nil)) -> c13(AND(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_and(zeros, x1)) -> c13(AND(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(0, x1)) -> c13(AND(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(tt, x1)) -> c13(AND(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(nil, x1)) -> c13(AND(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_isNat(zeros)) -> c14(ISNAT(zeros), ENCARG(zeros)) ENCARG(cons_isNat(0)) -> c14(ISNAT(0), ENCARG(0)) ENCARG(cons_isNat(tt)) -> c14(ISNAT(tt), ENCARG(tt)) ENCARG(cons_isNat(nil)) -> c14(ISNAT(nil), ENCARG(nil)) ENCARG(cons_isNat(cons_active(z0))) -> c14(ISNAT(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_isNat(cons_mark(z0))) -> c14(ISNAT(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_isNat(cons_cons(z0, z1))) -> c14(ISNAT(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_isNat(cons_U11(z0, z1))) -> c14(ISNAT(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_isNat(cons_s(z0))) -> c14(ISNAT(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_isNat(cons_length(z0))) -> c14(ISNAT(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_isNat(cons_U21(z0))) -> c14(ISNAT(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_isNat(cons_U31(z0, z1, z2, z3))) -> c14(ISNAT(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_isNat(cons_take(z0, z1))) -> c14(ISNAT(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_isNat(cons_and(z0, z1))) -> c14(ISNAT(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_isNat(cons_isNat(z0))) -> c14(ISNAT(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_isNat(cons_isNatList(z0))) -> c14(ISNAT(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_isNat(cons_isNatIList(z0))) -> c14(ISNAT(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) S tuples: ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(cons(z0, z1)) -> c53(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(mark(z0), z1)), U11'(mark(z0), z1), MARK(z0)) MARK(s(z0)) -> c57(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(mark(z0))), LENGTH(mark(z0)), MARK(z0)) MARK(U21(z0)) -> c59(ACTIVE(U21(mark(z0))), U21'(mark(z0)), MARK(z0)) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(mark(z0), z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(take(z0, z1)) -> c62(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 K tuples:none Defined Rule Symbols: encArg_1, active_1, mark_1, cons_2, U11_2, s_1, length_1, U21_1, U31_4, take_2, and_2, isNat_1, isNatList_1, isNatIList_1 Defined Pair Symbols: ENCARG_1, ACTIVE_1, MARK_1, CONS_2, U11'_2, S_1, LENGTH_1, U21'_1, U31'_4, TAKE_2, AND_2, ISNAT_1, ISNATLIST_1, ISNATILIST_1, ENCODE_ACTIVE_1, ENCODE_MARK_1, ENCODE_CONS_2, ENCODE_U11_2, ENCODE_S_1, ENCODE_LENGTH_1, ENCODE_U21_1, ENCODE_U31_4, ENCODE_TAKE_2, ENCODE_AND_2, ENCODE_ISNAT_1, ENCODE_ISNATLIST_1, ENCODE_ISNATILIST_1 Compound Symbols: c15_2, c16_2, c36_1, c37_3, c38_1, c39_1, c40_2, c41_2, c42_2, c43_1, c45_1, c48_1, c52_1, c53_3, c55_3, c57_3, c58_3, c59_3, c61_3, c62_4, c63_3, c64_2, c65_2, c66_2, c67_1, c68_1, c69_1, c70_1, c71_1, c72_1, c73_1, c74_1, c75_1, c76_1, c77_1, c78_1, c79_1, c80_1, c81_1, c82_1, c83_1, c84_1, c85_1, c86_1, c87_1, c88_1, c89_1, c90_1, c91_1, c92_1, c93_1, c94_1, c95_1, c96_1, c97_1, c98_1, c99_1, c100_1, c101_1, c102_1, c34_1, c35_2, c44_3, c46_3, c47_3, c49_3, c50_2, c51_4, c54, c56, c60, c_1, c4_2, c4_1, c5_2, c5_1, c6_3, c6_2, c7_3, c7_2, c8_2, c9_2, c10_2, c11_5, c11_4, c12_3, c12_2, c13_3, c13_2, c14_2 ---------------------------------------- (83) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 4 trailing nodes: ENCARG(cons_isNat(0)) -> c14(ISNAT(0), ENCARG(0)) ENCARG(cons_isNat(zeros)) -> c14(ISNAT(zeros), ENCARG(zeros)) ENCARG(cons_isNat(nil)) -> c14(ISNAT(nil), ENCARG(nil)) ENCARG(cons_isNat(tt)) -> c14(ISNAT(tt), ENCARG(tt)) ---------------------------------------- (84) Obligation: Complexity Dependency Tuples Problem Rules: encArg(zeros) -> zeros encArg(0) -> 0 encArg(tt) -> tt encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_U11(z0, z1)) -> U11(encArg(z0), encArg(z1)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_length(z0)) -> length(encArg(z0)) encArg(cons_U21(z0)) -> U21(encArg(z0)) encArg(cons_U31(z0, z1, z2, z3)) -> U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_isNat(z0)) -> isNat(encArg(z0)) encArg(cons_isNatList(z0)) -> isNatList(encArg(z0)) encArg(cons_isNatIList(z0)) -> isNatIList(encArg(z0)) active(zeros) -> mark(cons(0, zeros)) active(U11(tt, z0)) -> mark(s(length(z0))) active(U21(tt)) -> mark(nil) active(U31(tt, z0, z1, z2)) -> mark(cons(z2, take(z1, z0))) active(and(tt, z0)) -> mark(z0) active(isNat(0)) -> mark(tt) active(isNat(length(z0))) -> mark(isNatList(z0)) active(isNat(s(z0))) -> mark(isNat(z0)) active(isNatIList(z0)) -> mark(isNatList(z0)) active(isNatIList(zeros)) -> mark(tt) active(isNatIList(cons(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(isNatList(nil)) -> mark(tt) active(isNatList(cons(z0, z1))) -> mark(and(isNat(z0), isNatList(z1))) active(isNatList(take(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(length(nil)) -> mark(0) active(length(cons(z0, z1))) -> mark(U11(and(isNatList(z1), isNat(z0)), z1)) active(take(0, z0)) -> mark(U21(isNatIList(z0))) active(take(s(z0), cons(z1, z2))) -> mark(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)) mark(zeros) -> active(zeros) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(0) -> active(0) mark(U11(z0, z1)) -> active(U11(mark(z0), z1)) mark(tt) -> active(tt) mark(s(z0)) -> active(s(mark(z0))) mark(length(z0)) -> active(length(mark(z0))) mark(U21(z0)) -> active(U21(mark(z0))) mark(nil) -> active(nil) mark(U31(z0, z1, z2, z3)) -> active(U31(mark(z0), z1, z2, z3)) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(isNat(z0)) -> active(isNat(z0)) mark(isNatList(z0)) -> active(isNatList(z0)) mark(isNatIList(z0)) -> active(isNatIList(z0)) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) U11(mark(z0), z1) -> U11(z0, z1) U11(z0, mark(z1)) -> U11(z0, z1) U11(active(z0), z1) -> U11(z0, z1) U11(z0, active(z1)) -> U11(z0, z1) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) length(mark(z0)) -> length(z0) length(active(z0)) -> length(z0) U21(mark(z0)) -> U21(z0) U21(active(z0)) -> U21(z0) U31(mark(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, mark(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, mark(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, mark(z3)) -> U31(z0, z1, z2, z3) U31(active(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, active(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, active(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, active(z3)) -> U31(z0, z1, z2, z3) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) isNat(mark(z0)) -> isNat(z0) isNat(active(z0)) -> isNat(z0) isNatList(mark(z0)) -> isNatList(z0) isNatList(active(z0)) -> isNatList(z0) isNatIList(mark(z0)) -> isNatIList(z0) isNatIList(active(z0)) -> isNatIList(z0) Tuples: ENCARG(cons_isNatList(z0)) -> c15(ISNATLIST(encArg(z0)), ENCARG(z0)) ENCARG(cons_isNatIList(z0)) -> c16(ISNATILIST(encArg(z0)), ENCARG(z0)) ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(cons(z0, z1)) -> c53(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(mark(z0), z1)), U11'(mark(z0), z1), MARK(z0)) MARK(s(z0)) -> c57(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(mark(z0))), LENGTH(mark(z0)), MARK(z0)) MARK(U21(z0)) -> c59(ACTIVE(U21(mark(z0))), U21'(mark(z0)), MARK(z0)) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(mark(z0), z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(take(z0, z1)) -> c62(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 ENCODE_ACTIVE(z0) -> c(ACTIVE(encArg(z0))) ENCODE_MARK(z0) -> c(MARK(encArg(z0))) ENCODE_CONS(z0, z1) -> c(CONS(encArg(z0), encArg(z1))) ENCODE_U11(z0, z1) -> c(U11'(encArg(z0), encArg(z1))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_LENGTH(z0) -> c(LENGTH(encArg(z0))) ENCODE_U21(z0) -> c(U21'(encArg(z0))) ENCODE_U31(z0, z1, z2, z3) -> c(U31'(encArg(z0), encArg(z1), encArg(z2), encArg(z3))) ENCODE_TAKE(z0, z1) -> c(TAKE(encArg(z0), encArg(z1))) ENCODE_AND(z0, z1) -> c(AND(encArg(z0), encArg(z1))) ENCODE_ISNAT(z0) -> c(ISNAT(encArg(z0))) ENCODE_ISNATLIST(z0) -> c(ISNATLIST(encArg(z0))) ENCODE_ISNATILIST(z0) -> c(ISNATILIST(encArg(z0))) ENCARG(cons_active(cons_active(z0))) -> c4(ACTIVE(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_active(cons_mark(z0))) -> c4(ACTIVE(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_active(cons_cons(z0, z1))) -> c4(ACTIVE(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_active(cons_U11(z0, z1))) -> c4(ACTIVE(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_active(cons_s(z0))) -> c4(ACTIVE(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_active(cons_length(z0))) -> c4(ACTIVE(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_active(cons_U21(z0))) -> c4(ACTIVE(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_active(cons_U31(z0, z1, z2, z3))) -> c4(ACTIVE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_active(cons_take(z0, z1))) -> c4(ACTIVE(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_active(cons_and(z0, z1))) -> c4(ACTIVE(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_active(cons_isNat(z0))) -> c4(ACTIVE(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_active(cons_isNatList(z0))) -> c4(ACTIVE(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_active(cons_isNatIList(z0))) -> c4(ACTIVE(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_active(zeros)) -> c4(ACTIVE(zeros)) ENCARG(cons_mark(cons_active(z0))) -> c5(MARK(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_mark(cons_mark(z0))) -> c5(MARK(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_mark(cons_cons(z0, z1))) -> c5(MARK(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_mark(cons_U11(z0, z1))) -> c5(MARK(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_mark(cons_s(z0))) -> c5(MARK(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_mark(cons_length(z0))) -> c5(MARK(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_mark(cons_U21(z0))) -> c5(MARK(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_mark(cons_U31(z0, z1, z2, z3))) -> c5(MARK(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_mark(cons_take(z0, z1))) -> c5(MARK(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(cons_and(z0, z1))) -> c5(MARK(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_mark(cons_isNat(z0))) -> c5(MARK(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_mark(cons_isNatList(z0))) -> c5(MARK(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_mark(cons_isNatIList(z0))) -> c5(MARK(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_mark(zeros)) -> c5(MARK(zeros)) ENCARG(cons_mark(0)) -> c5(MARK(0)) ENCARG(cons_mark(tt)) -> c5(MARK(tt)) ENCARG(cons_mark(nil)) -> c5(MARK(nil)) ENCARG(cons_cons(x0, cons_active(z0))) -> c6(CONS(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_cons(x0, cons_mark(z0))) -> c6(CONS(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_cons(x0, cons_cons(z0, z1))) -> c6(CONS(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_cons(x0, cons_U11(z0, z1))) -> c6(CONS(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_cons(x0, cons_s(z0))) -> c6(CONS(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_cons(x0, cons_length(z0))) -> c6(CONS(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_cons(x0, cons_U21(z0))) -> c6(CONS(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_cons(x0, cons_U31(z0, z1, z2, z3))) -> c6(CONS(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_cons(x0, cons_take(z0, z1))) -> c6(CONS(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_cons(x0, cons_and(z0, z1))) -> c6(CONS(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_cons(x0, cons_isNat(z0))) -> c6(CONS(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_cons(x0, cons_isNatList(z0))) -> c6(CONS(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_cons(x0, cons_isNatIList(z0))) -> c6(CONS(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_cons(cons_active(z0), x1)) -> c6(CONS(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_mark(z0), x1)) -> c6(CONS(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_cons(z0, z1), x1)) -> c6(CONS(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_U11(z0, z1), x1)) -> c6(CONS(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_s(z0), x1)) -> c6(CONS(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_length(z0), x1)) -> c6(CONS(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U21(z0), x1)) -> c6(CONS(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U31(z0, z1, z2, z3), x1)) -> c6(CONS(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_cons(cons_take(z0, z1), x1)) -> c6(CONS(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_and(z0, z1), x1)) -> c6(CONS(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_isNat(z0), x1)) -> c6(CONS(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_isNatList(z0), x1)) -> c6(CONS(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_isNatIList(z0), x1)) -> c6(CONS(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_cons(x0, zeros)) -> c6(CONS(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_cons(x0, 0)) -> c6(CONS(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_cons(x0, tt)) -> c6(CONS(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_cons(x0, nil)) -> c6(CONS(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_cons(zeros, x1)) -> c6(CONS(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(0, x1)) -> c6(CONS(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(tt, x1)) -> c6(CONS(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(nil, x1)) -> c6(CONS(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(x0, cons_active(z0))) -> c7(U11'(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_U11(x0, cons_mark(z0))) -> c7(U11'(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_U11(x0, cons_cons(z0, z1))) -> c7(U11'(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U11(x0, cons_U11(z0, z1))) -> c7(U11'(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U11(x0, cons_s(z0))) -> c7(U11'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_U11(x0, cons_length(z0))) -> c7(U11'(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_U11(x0, cons_U21(z0))) -> c7(U11'(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_U11(x0, cons_U31(z0, z1, z2, z3))) -> c7(U11'(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U11(x0, cons_take(z0, z1))) -> c7(U11'(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_U11(x0, cons_and(z0, z1))) -> c7(U11'(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_U11(x0, cons_isNat(z0))) -> c7(U11'(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_U11(x0, cons_isNatList(z0))) -> c7(U11'(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_U11(x0, cons_isNatIList(z0))) -> c7(U11'(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U11(cons_active(z0), x1)) -> c7(U11'(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_mark(z0), x1)) -> c7(U11'(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_cons(z0, z1), x1)) -> c7(U11'(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_U11(z0, z1), x1)) -> c7(U11'(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_s(z0), x1)) -> c7(U11'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_length(z0), x1)) -> c7(U11'(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_U21(z0), x1)) -> c7(U11'(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_U31(z0, z1, z2, z3), x1)) -> c7(U11'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_U11(cons_take(z0, z1), x1)) -> c7(U11'(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_and(z0, z1), x1)) -> c7(U11'(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_isNat(z0), x1)) -> c7(U11'(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_isNatList(z0), x1)) -> c7(U11'(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_isNatIList(z0), x1)) -> c7(U11'(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_U11(x0, zeros)) -> c7(U11'(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_U11(x0, 0)) -> c7(U11'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_U11(x0, tt)) -> c7(U11'(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_U11(x0, nil)) -> c7(U11'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_U11(zeros, x1)) -> c7(U11'(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(0, x1)) -> c7(U11'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(tt, x1)) -> c7(U11'(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(nil, x1)) -> c7(U11'(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_s(cons_active(z0))) -> c8(S(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_s(cons_mark(z0))) -> c8(S(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_s(cons_cons(z0, z1))) -> c8(S(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_s(cons_U11(z0, z1))) -> c8(S(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_s(cons_s(z0))) -> c8(S(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_length(z0))) -> c8(S(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_s(cons_U21(z0))) -> c8(S(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_s(cons_U31(z0, z1, z2, z3))) -> c8(S(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_s(cons_take(z0, z1))) -> c8(S(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_s(cons_and(z0, z1))) -> c8(S(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_s(cons_isNat(z0))) -> c8(S(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_s(cons_isNatList(z0))) -> c8(S(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_s(cons_isNatIList(z0))) -> c8(S(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_length(cons_active(z0))) -> c9(LENGTH(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_length(cons_mark(z0))) -> c9(LENGTH(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_length(cons_cons(z0, z1))) -> c9(LENGTH(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_length(cons_U11(z0, z1))) -> c9(LENGTH(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_length(cons_s(z0))) -> c9(LENGTH(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_length(cons_length(z0))) -> c9(LENGTH(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_length(cons_U21(z0))) -> c9(LENGTH(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_length(cons_U31(z0, z1, z2, z3))) -> c9(LENGTH(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_length(cons_take(z0, z1))) -> c9(LENGTH(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_length(cons_and(z0, z1))) -> c9(LENGTH(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_length(cons_isNat(z0))) -> c9(LENGTH(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_length(cons_isNatList(z0))) -> c9(LENGTH(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_length(cons_isNatIList(z0))) -> c9(LENGTH(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U21(cons_active(z0))) -> c10(U21'(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_U21(cons_mark(z0))) -> c10(U21'(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_U21(cons_cons(z0, z1))) -> c10(U21'(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U21(cons_U11(z0, z1))) -> c10(U21'(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U21(cons_s(z0))) -> c10(U21'(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_U21(cons_length(z0))) -> c10(U21'(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_U21(cons_U21(z0))) -> c10(U21'(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_U21(cons_U31(z0, z1, z2, z3))) -> c10(U21'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U21(cons_take(z0, z1))) -> c10(U21'(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_U21(cons_and(z0, z1))) -> c10(U21'(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_U21(cons_isNat(z0))) -> c10(U21'(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_U21(cons_isNatList(z0))) -> c10(U21'(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_U21(cons_isNatIList(z0))) -> c10(U21'(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U31(x0, x1, x2, cons_active(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), active(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_active(z0))) ENCARG(cons_U31(x0, x1, x2, cons_mark(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), mark(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_mark(z0))) ENCARG(cons_U31(x0, x1, x2, cons_cons(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_U11(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_s(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), s(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_s(z0))) ENCARG(cons_U31(x0, x1, x2, cons_length(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), length(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_length(z0))) ENCARG(cons_U31(x0, x1, x2, cons_U21(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U21(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U21(z0))) ENCARG(cons_U31(x0, x1, x2, cons_U31(z0, z1, z2, z3))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U31(x0, x1, x2, cons_take(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_take(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_and(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_and(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_isNat(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNat(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNat(z0))) ENCARG(cons_U31(x0, x1, x2, cons_isNatList(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNatList(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNatList(z0))) ENCARG(cons_U31(x0, x1, x2, cons_isNatIList(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U31(x0, x1, cons_active(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), active(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_active(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_mark(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), mark(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_mark(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_cons(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), cons(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_cons(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U11(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), U11(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U11(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_s(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), s(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_s(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_length(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), length(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_length(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U21(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), U21(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U21(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U31(z0, z1, z2, z3), x3)) -> c11(U31'(encArg(x0), encArg(x1), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_take(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), take(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_take(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_and(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), and(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_and(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNat(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNat(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNat(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNatList(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNatList(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNatList(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNatIList(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNatIList(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNatIList(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, cons_active(z0), x2, x3)) -> c11(U31'(encArg(x0), active(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_active(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_mark(z0), x2, x3)) -> c11(U31'(encArg(x0), mark(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_mark(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_cons(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), cons(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_cons(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U11(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), U11(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U11(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_s(z0), x2, x3)) -> c11(U31'(encArg(x0), s(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_s(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_length(z0), x2, x3)) -> c11(U31'(encArg(x0), length(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_length(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U21(z0), x2, x3)) -> c11(U31'(encArg(x0), U21(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U21(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U31(z0, z1, z2, z3), x2, x3)) -> c11(U31'(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_take(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), take(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_take(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_and(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), and(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_and(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNat(z0), x2, x3)) -> c11(U31'(encArg(x0), isNat(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNat(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNatList(z0), x2, x3)) -> c11(U31'(encArg(x0), isNatList(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNatList(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNatIList(z0), x2, x3)) -> c11(U31'(encArg(x0), isNatIList(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNatIList(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_active(z0), x1, x2, x3)) -> c11(U31'(active(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_active(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_mark(z0), x1, x2, x3)) -> c11(U31'(mark(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_mark(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_cons(z0, z1), x1, x2, x3)) -> c11(U31'(cons(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_cons(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U11(z0, z1), x1, x2, x3)) -> c11(U31'(U11(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U11(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_s(z0), x1, x2, x3)) -> c11(U31'(s(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_s(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_length(z0), x1, x2, x3)) -> c11(U31'(length(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_length(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U21(z0), x1, x2, x3)) -> c11(U31'(U21(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U21(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U31(z0, z1, z2, z3), x1, x2, x3)) -> c11(U31'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_take(z0, z1), x1, x2, x3)) -> c11(U31'(take(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_take(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_and(z0, z1), x1, x2, x3)) -> c11(U31'(and(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_and(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNat(z0), x1, x2, x3)) -> c11(U31'(isNat(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNat(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNatList(z0), x1, x2, x3)) -> c11(U31'(isNatList(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNatList(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNatIList(z0), x1, x2, x3)) -> c11(U31'(isNatIList(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNatIList(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, x1, x2, zeros)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), zeros), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, 0)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), 0), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, tt)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), tt), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, nil)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), nil), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, zeros, x3)) -> c11(U31'(encArg(x0), encArg(x1), zeros, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, 0, x3)) -> c11(U31'(encArg(x0), encArg(x1), 0, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, tt, x3)) -> c11(U31'(encArg(x0), encArg(x1), tt, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, nil, x3)) -> c11(U31'(encArg(x0), encArg(x1), nil, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, zeros, x2, x3)) -> c11(U31'(encArg(x0), zeros, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, 0, x2, x3)) -> c11(U31'(encArg(x0), 0, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, tt, x2, x3)) -> c11(U31'(encArg(x0), tt, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, nil, x2, x3)) -> c11(U31'(encArg(x0), nil, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(zeros, x1, x2, x3)) -> c11(U31'(zeros, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(0, x1, x2, x3)) -> c11(U31'(0, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(tt, x1, x2, x3)) -> c11(U31'(tt, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(nil, x1, x2, x3)) -> c11(U31'(nil, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_take(x0, cons_active(z0))) -> c12(TAKE(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_take(x0, cons_mark(z0))) -> c12(TAKE(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_take(x0, cons_cons(z0, z1))) -> c12(TAKE(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_take(x0, cons_U11(z0, z1))) -> c12(TAKE(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_take(x0, cons_s(z0))) -> c12(TAKE(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_take(x0, cons_length(z0))) -> c12(TAKE(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_take(x0, cons_U21(z0))) -> c12(TAKE(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_take(x0, cons_U31(z0, z1, z2, z3))) -> c12(TAKE(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_take(x0, cons_take(z0, z1))) -> c12(TAKE(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_take(x0, cons_and(z0, z1))) -> c12(TAKE(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_take(x0, cons_isNat(z0))) -> c12(TAKE(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_take(x0, cons_isNatList(z0))) -> c12(TAKE(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_take(x0, cons_isNatIList(z0))) -> c12(TAKE(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_take(cons_active(z0), x1)) -> c12(TAKE(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_take(cons_mark(z0), x1)) -> c12(TAKE(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_take(cons_cons(z0, z1), x1)) -> c12(TAKE(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_U11(z0, z1), x1)) -> c12(TAKE(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_s(z0), x1)) -> c12(TAKE(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_take(cons_length(z0), x1)) -> c12(TAKE(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_take(cons_U21(z0), x1)) -> c12(TAKE(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_take(cons_U31(z0, z1, z2, z3), x1)) -> c12(TAKE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_take(cons_take(z0, z1), x1)) -> c12(TAKE(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_and(z0, z1), x1)) -> c12(TAKE(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_isNat(z0), x1)) -> c12(TAKE(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_take(cons_isNatList(z0), x1)) -> c12(TAKE(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_take(cons_isNatIList(z0), x1)) -> c12(TAKE(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_take(x0, zeros)) -> c12(TAKE(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_take(x0, 0)) -> c12(TAKE(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_take(x0, tt)) -> c12(TAKE(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_take(x0, nil)) -> c12(TAKE(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_take(zeros, x1)) -> c12(TAKE(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(0, x1)) -> c12(TAKE(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(tt, x1)) -> c12(TAKE(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(nil, x1)) -> c12(TAKE(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(x0, cons_active(z0))) -> c13(AND(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_and(x0, cons_mark(z0))) -> c13(AND(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_and(x0, cons_cons(z0, z1))) -> c13(AND(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_and(x0, cons_U11(z0, z1))) -> c13(AND(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_and(x0, cons_s(z0))) -> c13(AND(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_and(x0, cons_length(z0))) -> c13(AND(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_and(x0, cons_U21(z0))) -> c13(AND(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_and(x0, cons_U31(z0, z1, z2, z3))) -> c13(AND(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_and(x0, cons_take(z0, z1))) -> c13(AND(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_and(x0, cons_and(z0, z1))) -> c13(AND(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_and(x0, cons_isNat(z0))) -> c13(AND(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_and(x0, cons_isNatList(z0))) -> c13(AND(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_and(x0, cons_isNatIList(z0))) -> c13(AND(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_and(cons_active(z0), x1)) -> c13(AND(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_and(cons_mark(z0), x1)) -> c13(AND(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_and(cons_cons(z0, z1), x1)) -> c13(AND(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_U11(z0, z1), x1)) -> c13(AND(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_s(z0), x1)) -> c13(AND(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_and(cons_length(z0), x1)) -> c13(AND(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_and(cons_U21(z0), x1)) -> c13(AND(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_and(cons_U31(z0, z1, z2, z3), x1)) -> c13(AND(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_and(cons_take(z0, z1), x1)) -> c13(AND(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_and(z0, z1), x1)) -> c13(AND(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_isNat(z0), x1)) -> c13(AND(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_and(cons_isNatList(z0), x1)) -> c13(AND(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_and(cons_isNatIList(z0), x1)) -> c13(AND(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_and(x0, zeros)) -> c13(AND(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_and(x0, 0)) -> c13(AND(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_and(x0, tt)) -> c13(AND(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_and(x0, nil)) -> c13(AND(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_and(zeros, x1)) -> c13(AND(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(0, x1)) -> c13(AND(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(tt, x1)) -> c13(AND(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(nil, x1)) -> c13(AND(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_isNat(cons_active(z0))) -> c14(ISNAT(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_isNat(cons_mark(z0))) -> c14(ISNAT(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_isNat(cons_cons(z0, z1))) -> c14(ISNAT(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_isNat(cons_U11(z0, z1))) -> c14(ISNAT(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_isNat(cons_s(z0))) -> c14(ISNAT(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_isNat(cons_length(z0))) -> c14(ISNAT(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_isNat(cons_U21(z0))) -> c14(ISNAT(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_isNat(cons_U31(z0, z1, z2, z3))) -> c14(ISNAT(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_isNat(cons_take(z0, z1))) -> c14(ISNAT(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_isNat(cons_and(z0, z1))) -> c14(ISNAT(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_isNat(cons_isNat(z0))) -> c14(ISNAT(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_isNat(cons_isNatList(z0))) -> c14(ISNAT(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_isNat(cons_isNatIList(z0))) -> c14(ISNAT(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) S tuples: ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(cons(z0, z1)) -> c53(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(mark(z0), z1)), U11'(mark(z0), z1), MARK(z0)) MARK(s(z0)) -> c57(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(mark(z0))), LENGTH(mark(z0)), MARK(z0)) MARK(U21(z0)) -> c59(ACTIVE(U21(mark(z0))), U21'(mark(z0)), MARK(z0)) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(mark(z0), z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(take(z0, z1)) -> c62(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 K tuples:none Defined Rule Symbols: encArg_1, active_1, mark_1, cons_2, U11_2, s_1, length_1, U21_1, U31_4, take_2, and_2, isNat_1, isNatList_1, isNatIList_1 Defined Pair Symbols: ENCARG_1, ACTIVE_1, MARK_1, CONS_2, U11'_2, S_1, LENGTH_1, U21'_1, U31'_4, TAKE_2, AND_2, ISNAT_1, ISNATLIST_1, ISNATILIST_1, ENCODE_ACTIVE_1, ENCODE_MARK_1, ENCODE_CONS_2, ENCODE_U11_2, ENCODE_S_1, ENCODE_LENGTH_1, ENCODE_U21_1, ENCODE_U31_4, ENCODE_TAKE_2, ENCODE_AND_2, ENCODE_ISNAT_1, ENCODE_ISNATLIST_1, ENCODE_ISNATILIST_1 Compound Symbols: c15_2, c16_2, c36_1, c37_3, c38_1, c39_1, c40_2, c41_2, c42_2, c43_1, c45_1, c48_1, c52_1, c53_3, c55_3, c57_3, c58_3, c59_3, c61_3, c62_4, c63_3, c64_2, c65_2, c66_2, c67_1, c68_1, c69_1, c70_1, c71_1, c72_1, c73_1, c74_1, c75_1, c76_1, c77_1, c78_1, c79_1, c80_1, c81_1, c82_1, c83_1, c84_1, c85_1, c86_1, c87_1, c88_1, c89_1, c90_1, c91_1, c92_1, c93_1, c94_1, c95_1, c96_1, c97_1, c98_1, c99_1, c100_1, c101_1, c102_1, c34_1, c35_2, c44_3, c46_3, c47_3, c49_3, c50_2, c51_4, c54, c56, c60, c_1, c4_2, c4_1, c5_2, c5_1, c6_3, c6_2, c7_3, c7_2, c8_2, c9_2, c10_2, c11_5, c11_4, c12_3, c12_2, c13_3, c13_2, c14_2 ---------------------------------------- (85) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace ENCARG(cons_isNatList(z0)) -> c15(ISNATLIST(encArg(z0)), ENCARG(z0)) by ENCARG(cons_isNatList(zeros)) -> c15(ISNATLIST(zeros), ENCARG(zeros)) ENCARG(cons_isNatList(0)) -> c15(ISNATLIST(0), ENCARG(0)) ENCARG(cons_isNatList(tt)) -> c15(ISNATLIST(tt), ENCARG(tt)) ENCARG(cons_isNatList(nil)) -> c15(ISNATLIST(nil), ENCARG(nil)) ENCARG(cons_isNatList(cons_active(z0))) -> c15(ISNATLIST(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_isNatList(cons_mark(z0))) -> c15(ISNATLIST(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_isNatList(cons_cons(z0, z1))) -> c15(ISNATLIST(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_isNatList(cons_U11(z0, z1))) -> c15(ISNATLIST(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_isNatList(cons_s(z0))) -> c15(ISNATLIST(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_isNatList(cons_length(z0))) -> c15(ISNATLIST(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_isNatList(cons_U21(z0))) -> c15(ISNATLIST(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_isNatList(cons_U31(z0, z1, z2, z3))) -> c15(ISNATLIST(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_isNatList(cons_take(z0, z1))) -> c15(ISNATLIST(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_isNatList(cons_and(z0, z1))) -> c15(ISNATLIST(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_isNatList(cons_isNat(z0))) -> c15(ISNATLIST(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_isNatList(cons_isNatList(z0))) -> c15(ISNATLIST(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_isNatList(cons_isNatIList(z0))) -> c15(ISNATLIST(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ---------------------------------------- (86) Obligation: Complexity Dependency Tuples Problem Rules: encArg(zeros) -> zeros encArg(0) -> 0 encArg(tt) -> tt encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_U11(z0, z1)) -> U11(encArg(z0), encArg(z1)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_length(z0)) -> length(encArg(z0)) encArg(cons_U21(z0)) -> U21(encArg(z0)) encArg(cons_U31(z0, z1, z2, z3)) -> U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_isNat(z0)) -> isNat(encArg(z0)) encArg(cons_isNatList(z0)) -> isNatList(encArg(z0)) encArg(cons_isNatIList(z0)) -> isNatIList(encArg(z0)) active(zeros) -> mark(cons(0, zeros)) active(U11(tt, z0)) -> mark(s(length(z0))) active(U21(tt)) -> mark(nil) active(U31(tt, z0, z1, z2)) -> mark(cons(z2, take(z1, z0))) active(and(tt, z0)) -> mark(z0) active(isNat(0)) -> mark(tt) active(isNat(length(z0))) -> mark(isNatList(z0)) active(isNat(s(z0))) -> mark(isNat(z0)) active(isNatIList(z0)) -> mark(isNatList(z0)) active(isNatIList(zeros)) -> mark(tt) active(isNatIList(cons(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(isNatList(nil)) -> mark(tt) active(isNatList(cons(z0, z1))) -> mark(and(isNat(z0), isNatList(z1))) active(isNatList(take(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(length(nil)) -> mark(0) active(length(cons(z0, z1))) -> mark(U11(and(isNatList(z1), isNat(z0)), z1)) active(take(0, z0)) -> mark(U21(isNatIList(z0))) active(take(s(z0), cons(z1, z2))) -> mark(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)) mark(zeros) -> active(zeros) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(0) -> active(0) mark(U11(z0, z1)) -> active(U11(mark(z0), z1)) mark(tt) -> active(tt) mark(s(z0)) -> active(s(mark(z0))) mark(length(z0)) -> active(length(mark(z0))) mark(U21(z0)) -> active(U21(mark(z0))) mark(nil) -> active(nil) mark(U31(z0, z1, z2, z3)) -> active(U31(mark(z0), z1, z2, z3)) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(isNat(z0)) -> active(isNat(z0)) mark(isNatList(z0)) -> active(isNatList(z0)) mark(isNatIList(z0)) -> active(isNatIList(z0)) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) U11(mark(z0), z1) -> U11(z0, z1) U11(z0, mark(z1)) -> U11(z0, z1) U11(active(z0), z1) -> U11(z0, z1) U11(z0, active(z1)) -> U11(z0, z1) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) length(mark(z0)) -> length(z0) length(active(z0)) -> length(z0) U21(mark(z0)) -> U21(z0) U21(active(z0)) -> U21(z0) U31(mark(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, mark(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, mark(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, mark(z3)) -> U31(z0, z1, z2, z3) U31(active(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, active(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, active(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, active(z3)) -> U31(z0, z1, z2, z3) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) isNat(mark(z0)) -> isNat(z0) isNat(active(z0)) -> isNat(z0) isNatList(mark(z0)) -> isNatList(z0) isNatList(active(z0)) -> isNatList(z0) isNatIList(mark(z0)) -> isNatIList(z0) isNatIList(active(z0)) -> isNatIList(z0) Tuples: ENCARG(cons_isNatIList(z0)) -> c16(ISNATILIST(encArg(z0)), ENCARG(z0)) ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(cons(z0, z1)) -> c53(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(mark(z0), z1)), U11'(mark(z0), z1), MARK(z0)) MARK(s(z0)) -> c57(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(mark(z0))), LENGTH(mark(z0)), MARK(z0)) MARK(U21(z0)) -> c59(ACTIVE(U21(mark(z0))), U21'(mark(z0)), MARK(z0)) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(mark(z0), z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(take(z0, z1)) -> c62(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 ENCODE_ACTIVE(z0) -> c(ACTIVE(encArg(z0))) ENCODE_MARK(z0) -> c(MARK(encArg(z0))) ENCODE_CONS(z0, z1) -> c(CONS(encArg(z0), encArg(z1))) ENCODE_U11(z0, z1) -> c(U11'(encArg(z0), encArg(z1))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_LENGTH(z0) -> c(LENGTH(encArg(z0))) ENCODE_U21(z0) -> c(U21'(encArg(z0))) ENCODE_U31(z0, z1, z2, z3) -> c(U31'(encArg(z0), encArg(z1), encArg(z2), encArg(z3))) ENCODE_TAKE(z0, z1) -> c(TAKE(encArg(z0), encArg(z1))) ENCODE_AND(z0, z1) -> c(AND(encArg(z0), encArg(z1))) ENCODE_ISNAT(z0) -> c(ISNAT(encArg(z0))) ENCODE_ISNATLIST(z0) -> c(ISNATLIST(encArg(z0))) ENCODE_ISNATILIST(z0) -> c(ISNATILIST(encArg(z0))) ENCARG(cons_active(cons_active(z0))) -> c4(ACTIVE(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_active(cons_mark(z0))) -> c4(ACTIVE(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_active(cons_cons(z0, z1))) -> c4(ACTIVE(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_active(cons_U11(z0, z1))) -> c4(ACTIVE(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_active(cons_s(z0))) -> c4(ACTIVE(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_active(cons_length(z0))) -> c4(ACTIVE(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_active(cons_U21(z0))) -> c4(ACTIVE(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_active(cons_U31(z0, z1, z2, z3))) -> c4(ACTIVE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_active(cons_take(z0, z1))) -> c4(ACTIVE(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_active(cons_and(z0, z1))) -> c4(ACTIVE(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_active(cons_isNat(z0))) -> c4(ACTIVE(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_active(cons_isNatList(z0))) -> c4(ACTIVE(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_active(cons_isNatIList(z0))) -> c4(ACTIVE(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_active(zeros)) -> c4(ACTIVE(zeros)) ENCARG(cons_mark(cons_active(z0))) -> c5(MARK(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_mark(cons_mark(z0))) -> c5(MARK(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_mark(cons_cons(z0, z1))) -> c5(MARK(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_mark(cons_U11(z0, z1))) -> c5(MARK(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_mark(cons_s(z0))) -> c5(MARK(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_mark(cons_length(z0))) -> c5(MARK(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_mark(cons_U21(z0))) -> c5(MARK(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_mark(cons_U31(z0, z1, z2, z3))) -> c5(MARK(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_mark(cons_take(z0, z1))) -> c5(MARK(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(cons_and(z0, z1))) -> c5(MARK(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_mark(cons_isNat(z0))) -> c5(MARK(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_mark(cons_isNatList(z0))) -> c5(MARK(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_mark(cons_isNatIList(z0))) -> c5(MARK(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_mark(zeros)) -> c5(MARK(zeros)) ENCARG(cons_mark(0)) -> c5(MARK(0)) ENCARG(cons_mark(tt)) -> c5(MARK(tt)) ENCARG(cons_mark(nil)) -> c5(MARK(nil)) ENCARG(cons_cons(x0, cons_active(z0))) -> c6(CONS(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_cons(x0, cons_mark(z0))) -> c6(CONS(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_cons(x0, cons_cons(z0, z1))) -> c6(CONS(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_cons(x0, cons_U11(z0, z1))) -> c6(CONS(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_cons(x0, cons_s(z0))) -> c6(CONS(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_cons(x0, cons_length(z0))) -> c6(CONS(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_cons(x0, cons_U21(z0))) -> c6(CONS(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_cons(x0, cons_U31(z0, z1, z2, z3))) -> c6(CONS(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_cons(x0, cons_take(z0, z1))) -> c6(CONS(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_cons(x0, cons_and(z0, z1))) -> c6(CONS(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_cons(x0, cons_isNat(z0))) -> c6(CONS(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_cons(x0, cons_isNatList(z0))) -> c6(CONS(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_cons(x0, cons_isNatIList(z0))) -> c6(CONS(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_cons(cons_active(z0), x1)) -> c6(CONS(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_mark(z0), x1)) -> c6(CONS(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_cons(z0, z1), x1)) -> c6(CONS(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_U11(z0, z1), x1)) -> c6(CONS(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_s(z0), x1)) -> c6(CONS(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_length(z0), x1)) -> c6(CONS(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U21(z0), x1)) -> c6(CONS(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U31(z0, z1, z2, z3), x1)) -> c6(CONS(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_cons(cons_take(z0, z1), x1)) -> c6(CONS(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_and(z0, z1), x1)) -> c6(CONS(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_isNat(z0), x1)) -> c6(CONS(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_isNatList(z0), x1)) -> c6(CONS(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_isNatIList(z0), x1)) -> c6(CONS(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_cons(x0, zeros)) -> c6(CONS(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_cons(x0, 0)) -> c6(CONS(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_cons(x0, tt)) -> c6(CONS(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_cons(x0, nil)) -> c6(CONS(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_cons(zeros, x1)) -> c6(CONS(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(0, x1)) -> c6(CONS(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(tt, x1)) -> c6(CONS(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(nil, x1)) -> c6(CONS(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(x0, cons_active(z0))) -> c7(U11'(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_U11(x0, cons_mark(z0))) -> c7(U11'(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_U11(x0, cons_cons(z0, z1))) -> c7(U11'(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U11(x0, cons_U11(z0, z1))) -> c7(U11'(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U11(x0, cons_s(z0))) -> c7(U11'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_U11(x0, cons_length(z0))) -> c7(U11'(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_U11(x0, cons_U21(z0))) -> c7(U11'(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_U11(x0, cons_U31(z0, z1, z2, z3))) -> c7(U11'(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U11(x0, cons_take(z0, z1))) -> c7(U11'(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_U11(x0, cons_and(z0, z1))) -> c7(U11'(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_U11(x0, cons_isNat(z0))) -> c7(U11'(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_U11(x0, cons_isNatList(z0))) -> c7(U11'(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_U11(x0, cons_isNatIList(z0))) -> c7(U11'(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U11(cons_active(z0), x1)) -> c7(U11'(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_mark(z0), x1)) -> c7(U11'(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_cons(z0, z1), x1)) -> c7(U11'(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_U11(z0, z1), x1)) -> c7(U11'(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_s(z0), x1)) -> c7(U11'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_length(z0), x1)) -> c7(U11'(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_U21(z0), x1)) -> c7(U11'(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_U31(z0, z1, z2, z3), x1)) -> c7(U11'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_U11(cons_take(z0, z1), x1)) -> c7(U11'(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_and(z0, z1), x1)) -> c7(U11'(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_isNat(z0), x1)) -> c7(U11'(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_isNatList(z0), x1)) -> c7(U11'(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_isNatIList(z0), x1)) -> c7(U11'(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_U11(x0, zeros)) -> c7(U11'(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_U11(x0, 0)) -> c7(U11'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_U11(x0, tt)) -> c7(U11'(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_U11(x0, nil)) -> c7(U11'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_U11(zeros, x1)) -> c7(U11'(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(0, x1)) -> c7(U11'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(tt, x1)) -> c7(U11'(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(nil, x1)) -> c7(U11'(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_s(cons_active(z0))) -> c8(S(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_s(cons_mark(z0))) -> c8(S(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_s(cons_cons(z0, z1))) -> c8(S(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_s(cons_U11(z0, z1))) -> c8(S(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_s(cons_s(z0))) -> c8(S(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_length(z0))) -> c8(S(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_s(cons_U21(z0))) -> c8(S(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_s(cons_U31(z0, z1, z2, z3))) -> c8(S(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_s(cons_take(z0, z1))) -> c8(S(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_s(cons_and(z0, z1))) -> c8(S(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_s(cons_isNat(z0))) -> c8(S(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_s(cons_isNatList(z0))) -> c8(S(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_s(cons_isNatIList(z0))) -> c8(S(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_length(cons_active(z0))) -> c9(LENGTH(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_length(cons_mark(z0))) -> c9(LENGTH(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_length(cons_cons(z0, z1))) -> c9(LENGTH(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_length(cons_U11(z0, z1))) -> c9(LENGTH(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_length(cons_s(z0))) -> c9(LENGTH(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_length(cons_length(z0))) -> c9(LENGTH(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_length(cons_U21(z0))) -> c9(LENGTH(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_length(cons_U31(z0, z1, z2, z3))) -> c9(LENGTH(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_length(cons_take(z0, z1))) -> c9(LENGTH(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_length(cons_and(z0, z1))) -> c9(LENGTH(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_length(cons_isNat(z0))) -> c9(LENGTH(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_length(cons_isNatList(z0))) -> c9(LENGTH(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_length(cons_isNatIList(z0))) -> c9(LENGTH(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U21(cons_active(z0))) -> c10(U21'(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_U21(cons_mark(z0))) -> c10(U21'(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_U21(cons_cons(z0, z1))) -> c10(U21'(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U21(cons_U11(z0, z1))) -> c10(U21'(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U21(cons_s(z0))) -> c10(U21'(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_U21(cons_length(z0))) -> c10(U21'(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_U21(cons_U21(z0))) -> c10(U21'(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_U21(cons_U31(z0, z1, z2, z3))) -> c10(U21'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U21(cons_take(z0, z1))) -> c10(U21'(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_U21(cons_and(z0, z1))) -> c10(U21'(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_U21(cons_isNat(z0))) -> c10(U21'(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_U21(cons_isNatList(z0))) -> c10(U21'(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_U21(cons_isNatIList(z0))) -> c10(U21'(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U31(x0, x1, x2, cons_active(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), active(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_active(z0))) ENCARG(cons_U31(x0, x1, x2, cons_mark(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), mark(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_mark(z0))) ENCARG(cons_U31(x0, x1, x2, cons_cons(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_U11(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_s(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), s(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_s(z0))) ENCARG(cons_U31(x0, x1, x2, cons_length(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), length(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_length(z0))) ENCARG(cons_U31(x0, x1, x2, cons_U21(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U21(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U21(z0))) ENCARG(cons_U31(x0, x1, x2, cons_U31(z0, z1, z2, z3))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U31(x0, x1, x2, cons_take(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_take(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_and(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_and(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_isNat(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNat(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNat(z0))) ENCARG(cons_U31(x0, x1, x2, cons_isNatList(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNatList(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNatList(z0))) ENCARG(cons_U31(x0, x1, x2, cons_isNatIList(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U31(x0, x1, cons_active(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), active(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_active(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_mark(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), mark(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_mark(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_cons(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), cons(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_cons(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U11(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), U11(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U11(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_s(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), s(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_s(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_length(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), length(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_length(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U21(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), U21(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U21(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U31(z0, z1, z2, z3), x3)) -> c11(U31'(encArg(x0), encArg(x1), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_take(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), take(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_take(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_and(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), and(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_and(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNat(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNat(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNat(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNatList(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNatList(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNatList(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNatIList(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNatIList(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNatIList(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, cons_active(z0), x2, x3)) -> c11(U31'(encArg(x0), active(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_active(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_mark(z0), x2, x3)) -> c11(U31'(encArg(x0), mark(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_mark(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_cons(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), cons(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_cons(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U11(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), U11(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U11(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_s(z0), x2, x3)) -> c11(U31'(encArg(x0), s(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_s(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_length(z0), x2, x3)) -> c11(U31'(encArg(x0), length(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_length(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U21(z0), x2, x3)) -> c11(U31'(encArg(x0), U21(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U21(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U31(z0, z1, z2, z3), x2, x3)) -> c11(U31'(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_take(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), take(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_take(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_and(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), and(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_and(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNat(z0), x2, x3)) -> c11(U31'(encArg(x0), isNat(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNat(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNatList(z0), x2, x3)) -> c11(U31'(encArg(x0), isNatList(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNatList(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNatIList(z0), x2, x3)) -> c11(U31'(encArg(x0), isNatIList(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNatIList(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_active(z0), x1, x2, x3)) -> c11(U31'(active(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_active(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_mark(z0), x1, x2, x3)) -> c11(U31'(mark(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_mark(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_cons(z0, z1), x1, x2, x3)) -> c11(U31'(cons(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_cons(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U11(z0, z1), x1, x2, x3)) -> c11(U31'(U11(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U11(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_s(z0), x1, x2, x3)) -> c11(U31'(s(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_s(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_length(z0), x1, x2, x3)) -> c11(U31'(length(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_length(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U21(z0), x1, x2, x3)) -> c11(U31'(U21(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U21(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U31(z0, z1, z2, z3), x1, x2, x3)) -> c11(U31'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_take(z0, z1), x1, x2, x3)) -> c11(U31'(take(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_take(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_and(z0, z1), x1, x2, x3)) -> c11(U31'(and(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_and(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNat(z0), x1, x2, x3)) -> c11(U31'(isNat(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNat(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNatList(z0), x1, x2, x3)) -> c11(U31'(isNatList(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNatList(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNatIList(z0), x1, x2, x3)) -> c11(U31'(isNatIList(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNatIList(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, x1, x2, zeros)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), zeros), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, 0)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), 0), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, tt)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), tt), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, nil)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), nil), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, zeros, x3)) -> c11(U31'(encArg(x0), encArg(x1), zeros, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, 0, x3)) -> c11(U31'(encArg(x0), encArg(x1), 0, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, tt, x3)) -> c11(U31'(encArg(x0), encArg(x1), tt, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, nil, x3)) -> c11(U31'(encArg(x0), encArg(x1), nil, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, zeros, x2, x3)) -> c11(U31'(encArg(x0), zeros, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, 0, x2, x3)) -> c11(U31'(encArg(x0), 0, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, tt, x2, x3)) -> c11(U31'(encArg(x0), tt, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, nil, x2, x3)) -> c11(U31'(encArg(x0), nil, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(zeros, x1, x2, x3)) -> c11(U31'(zeros, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(0, x1, x2, x3)) -> c11(U31'(0, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(tt, x1, x2, x3)) -> c11(U31'(tt, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(nil, x1, x2, x3)) -> c11(U31'(nil, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_take(x0, cons_active(z0))) -> c12(TAKE(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_take(x0, cons_mark(z0))) -> c12(TAKE(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_take(x0, cons_cons(z0, z1))) -> c12(TAKE(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_take(x0, cons_U11(z0, z1))) -> c12(TAKE(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_take(x0, cons_s(z0))) -> c12(TAKE(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_take(x0, cons_length(z0))) -> c12(TAKE(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_take(x0, cons_U21(z0))) -> c12(TAKE(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_take(x0, cons_U31(z0, z1, z2, z3))) -> c12(TAKE(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_take(x0, cons_take(z0, z1))) -> c12(TAKE(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_take(x0, cons_and(z0, z1))) -> c12(TAKE(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_take(x0, cons_isNat(z0))) -> c12(TAKE(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_take(x0, cons_isNatList(z0))) -> c12(TAKE(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_take(x0, cons_isNatIList(z0))) -> c12(TAKE(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_take(cons_active(z0), x1)) -> c12(TAKE(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_take(cons_mark(z0), x1)) -> c12(TAKE(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_take(cons_cons(z0, z1), x1)) -> c12(TAKE(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_U11(z0, z1), x1)) -> c12(TAKE(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_s(z0), x1)) -> c12(TAKE(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_take(cons_length(z0), x1)) -> c12(TAKE(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_take(cons_U21(z0), x1)) -> c12(TAKE(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_take(cons_U31(z0, z1, z2, z3), x1)) -> c12(TAKE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_take(cons_take(z0, z1), x1)) -> c12(TAKE(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_and(z0, z1), x1)) -> c12(TAKE(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_isNat(z0), x1)) -> c12(TAKE(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_take(cons_isNatList(z0), x1)) -> c12(TAKE(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_take(cons_isNatIList(z0), x1)) -> c12(TAKE(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_take(x0, zeros)) -> c12(TAKE(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_take(x0, 0)) -> c12(TAKE(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_take(x0, tt)) -> c12(TAKE(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_take(x0, nil)) -> c12(TAKE(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_take(zeros, x1)) -> c12(TAKE(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(0, x1)) -> c12(TAKE(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(tt, x1)) -> c12(TAKE(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(nil, x1)) -> c12(TAKE(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(x0, cons_active(z0))) -> c13(AND(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_and(x0, cons_mark(z0))) -> c13(AND(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_and(x0, cons_cons(z0, z1))) -> c13(AND(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_and(x0, cons_U11(z0, z1))) -> c13(AND(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_and(x0, cons_s(z0))) -> c13(AND(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_and(x0, cons_length(z0))) -> c13(AND(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_and(x0, cons_U21(z0))) -> c13(AND(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_and(x0, cons_U31(z0, z1, z2, z3))) -> c13(AND(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_and(x0, cons_take(z0, z1))) -> c13(AND(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_and(x0, cons_and(z0, z1))) -> c13(AND(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_and(x0, cons_isNat(z0))) -> c13(AND(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_and(x0, cons_isNatList(z0))) -> c13(AND(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_and(x0, cons_isNatIList(z0))) -> c13(AND(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_and(cons_active(z0), x1)) -> c13(AND(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_and(cons_mark(z0), x1)) -> c13(AND(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_and(cons_cons(z0, z1), x1)) -> c13(AND(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_U11(z0, z1), x1)) -> c13(AND(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_s(z0), x1)) -> c13(AND(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_and(cons_length(z0), x1)) -> c13(AND(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_and(cons_U21(z0), x1)) -> c13(AND(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_and(cons_U31(z0, z1, z2, z3), x1)) -> c13(AND(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_and(cons_take(z0, z1), x1)) -> c13(AND(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_and(z0, z1), x1)) -> c13(AND(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_isNat(z0), x1)) -> c13(AND(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_and(cons_isNatList(z0), x1)) -> c13(AND(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_and(cons_isNatIList(z0), x1)) -> c13(AND(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_and(x0, zeros)) -> c13(AND(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_and(x0, 0)) -> c13(AND(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_and(x0, tt)) -> c13(AND(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_and(x0, nil)) -> c13(AND(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_and(zeros, x1)) -> c13(AND(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(0, x1)) -> c13(AND(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(tt, x1)) -> c13(AND(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(nil, x1)) -> c13(AND(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_isNat(cons_active(z0))) -> c14(ISNAT(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_isNat(cons_mark(z0))) -> c14(ISNAT(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_isNat(cons_cons(z0, z1))) -> c14(ISNAT(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_isNat(cons_U11(z0, z1))) -> c14(ISNAT(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_isNat(cons_s(z0))) -> c14(ISNAT(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_isNat(cons_length(z0))) -> c14(ISNAT(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_isNat(cons_U21(z0))) -> c14(ISNAT(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_isNat(cons_U31(z0, z1, z2, z3))) -> c14(ISNAT(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_isNat(cons_take(z0, z1))) -> c14(ISNAT(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_isNat(cons_and(z0, z1))) -> c14(ISNAT(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_isNat(cons_isNat(z0))) -> c14(ISNAT(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_isNat(cons_isNatList(z0))) -> c14(ISNAT(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_isNat(cons_isNatIList(z0))) -> c14(ISNAT(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_isNatList(zeros)) -> c15(ISNATLIST(zeros), ENCARG(zeros)) ENCARG(cons_isNatList(0)) -> c15(ISNATLIST(0), ENCARG(0)) ENCARG(cons_isNatList(tt)) -> c15(ISNATLIST(tt), ENCARG(tt)) ENCARG(cons_isNatList(nil)) -> c15(ISNATLIST(nil), ENCARG(nil)) ENCARG(cons_isNatList(cons_active(z0))) -> c15(ISNATLIST(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_isNatList(cons_mark(z0))) -> c15(ISNATLIST(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_isNatList(cons_cons(z0, z1))) -> c15(ISNATLIST(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_isNatList(cons_U11(z0, z1))) -> c15(ISNATLIST(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_isNatList(cons_s(z0))) -> c15(ISNATLIST(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_isNatList(cons_length(z0))) -> c15(ISNATLIST(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_isNatList(cons_U21(z0))) -> c15(ISNATLIST(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_isNatList(cons_U31(z0, z1, z2, z3))) -> c15(ISNATLIST(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_isNatList(cons_take(z0, z1))) -> c15(ISNATLIST(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_isNatList(cons_and(z0, z1))) -> c15(ISNATLIST(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_isNatList(cons_isNat(z0))) -> c15(ISNATLIST(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_isNatList(cons_isNatList(z0))) -> c15(ISNATLIST(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_isNatList(cons_isNatIList(z0))) -> c15(ISNATLIST(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) S tuples: ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(cons(z0, z1)) -> c53(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(mark(z0), z1)), U11'(mark(z0), z1), MARK(z0)) MARK(s(z0)) -> c57(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(mark(z0))), LENGTH(mark(z0)), MARK(z0)) MARK(U21(z0)) -> c59(ACTIVE(U21(mark(z0))), U21'(mark(z0)), MARK(z0)) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(mark(z0), z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(take(z0, z1)) -> c62(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 K tuples:none Defined Rule Symbols: encArg_1, active_1, mark_1, cons_2, U11_2, s_1, length_1, U21_1, U31_4, take_2, and_2, isNat_1, isNatList_1, isNatIList_1 Defined Pair Symbols: ENCARG_1, ACTIVE_1, MARK_1, CONS_2, U11'_2, S_1, LENGTH_1, U21'_1, U31'_4, TAKE_2, AND_2, ISNAT_1, ISNATLIST_1, ISNATILIST_1, ENCODE_ACTIVE_1, ENCODE_MARK_1, ENCODE_CONS_2, ENCODE_U11_2, ENCODE_S_1, ENCODE_LENGTH_1, ENCODE_U21_1, ENCODE_U31_4, ENCODE_TAKE_2, ENCODE_AND_2, ENCODE_ISNAT_1, ENCODE_ISNATLIST_1, ENCODE_ISNATILIST_1 Compound Symbols: c16_2, c36_1, c37_3, c38_1, c39_1, c40_2, c41_2, c42_2, c43_1, c45_1, c48_1, c52_1, c53_3, c55_3, c57_3, c58_3, c59_3, c61_3, c62_4, c63_3, c64_2, c65_2, c66_2, c67_1, c68_1, c69_1, c70_1, c71_1, c72_1, c73_1, c74_1, c75_1, c76_1, c77_1, c78_1, c79_1, c80_1, c81_1, c82_1, c83_1, c84_1, c85_1, c86_1, c87_1, c88_1, c89_1, c90_1, c91_1, c92_1, c93_1, c94_1, c95_1, c96_1, c97_1, c98_1, c99_1, c100_1, c101_1, c102_1, c34_1, c35_2, c44_3, c46_3, c47_3, c49_3, c50_2, c51_4, c54, c56, c60, c_1, c4_2, c4_1, c5_2, c5_1, c6_3, c6_2, c7_3, c7_2, c8_2, c9_2, c10_2, c11_5, c11_4, c12_3, c12_2, c13_3, c13_2, c14_2, c15_2 ---------------------------------------- (87) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 4 trailing nodes: ENCARG(cons_isNatList(zeros)) -> c15(ISNATLIST(zeros), ENCARG(zeros)) ENCARG(cons_isNatList(0)) -> c15(ISNATLIST(0), ENCARG(0)) ENCARG(cons_isNatList(tt)) -> c15(ISNATLIST(tt), ENCARG(tt)) ENCARG(cons_isNatList(nil)) -> c15(ISNATLIST(nil), ENCARG(nil)) ---------------------------------------- (88) Obligation: Complexity Dependency Tuples Problem Rules: encArg(zeros) -> zeros encArg(0) -> 0 encArg(tt) -> tt encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_U11(z0, z1)) -> U11(encArg(z0), encArg(z1)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_length(z0)) -> length(encArg(z0)) encArg(cons_U21(z0)) -> U21(encArg(z0)) encArg(cons_U31(z0, z1, z2, z3)) -> U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_isNat(z0)) -> isNat(encArg(z0)) encArg(cons_isNatList(z0)) -> isNatList(encArg(z0)) encArg(cons_isNatIList(z0)) -> isNatIList(encArg(z0)) active(zeros) -> mark(cons(0, zeros)) active(U11(tt, z0)) -> mark(s(length(z0))) active(U21(tt)) -> mark(nil) active(U31(tt, z0, z1, z2)) -> mark(cons(z2, take(z1, z0))) active(and(tt, z0)) -> mark(z0) active(isNat(0)) -> mark(tt) active(isNat(length(z0))) -> mark(isNatList(z0)) active(isNat(s(z0))) -> mark(isNat(z0)) active(isNatIList(z0)) -> mark(isNatList(z0)) active(isNatIList(zeros)) -> mark(tt) active(isNatIList(cons(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(isNatList(nil)) -> mark(tt) active(isNatList(cons(z0, z1))) -> mark(and(isNat(z0), isNatList(z1))) active(isNatList(take(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(length(nil)) -> mark(0) active(length(cons(z0, z1))) -> mark(U11(and(isNatList(z1), isNat(z0)), z1)) active(take(0, z0)) -> mark(U21(isNatIList(z0))) active(take(s(z0), cons(z1, z2))) -> mark(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)) mark(zeros) -> active(zeros) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(0) -> active(0) mark(U11(z0, z1)) -> active(U11(mark(z0), z1)) mark(tt) -> active(tt) mark(s(z0)) -> active(s(mark(z0))) mark(length(z0)) -> active(length(mark(z0))) mark(U21(z0)) -> active(U21(mark(z0))) mark(nil) -> active(nil) mark(U31(z0, z1, z2, z3)) -> active(U31(mark(z0), z1, z2, z3)) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(isNat(z0)) -> active(isNat(z0)) mark(isNatList(z0)) -> active(isNatList(z0)) mark(isNatIList(z0)) -> active(isNatIList(z0)) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) U11(mark(z0), z1) -> U11(z0, z1) U11(z0, mark(z1)) -> U11(z0, z1) U11(active(z0), z1) -> U11(z0, z1) U11(z0, active(z1)) -> U11(z0, z1) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) length(mark(z0)) -> length(z0) length(active(z0)) -> length(z0) U21(mark(z0)) -> U21(z0) U21(active(z0)) -> U21(z0) U31(mark(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, mark(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, mark(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, mark(z3)) -> U31(z0, z1, z2, z3) U31(active(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, active(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, active(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, active(z3)) -> U31(z0, z1, z2, z3) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) isNat(mark(z0)) -> isNat(z0) isNat(active(z0)) -> isNat(z0) isNatList(mark(z0)) -> isNatList(z0) isNatList(active(z0)) -> isNatList(z0) isNatIList(mark(z0)) -> isNatIList(z0) isNatIList(active(z0)) -> isNatIList(z0) Tuples: ENCARG(cons_isNatIList(z0)) -> c16(ISNATILIST(encArg(z0)), ENCARG(z0)) ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(cons(z0, z1)) -> c53(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(mark(z0), z1)), U11'(mark(z0), z1), MARK(z0)) MARK(s(z0)) -> c57(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(mark(z0))), LENGTH(mark(z0)), MARK(z0)) MARK(U21(z0)) -> c59(ACTIVE(U21(mark(z0))), U21'(mark(z0)), MARK(z0)) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(mark(z0), z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(take(z0, z1)) -> c62(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 ENCODE_ACTIVE(z0) -> c(ACTIVE(encArg(z0))) ENCODE_MARK(z0) -> c(MARK(encArg(z0))) ENCODE_CONS(z0, z1) -> c(CONS(encArg(z0), encArg(z1))) ENCODE_U11(z0, z1) -> c(U11'(encArg(z0), encArg(z1))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_LENGTH(z0) -> c(LENGTH(encArg(z0))) ENCODE_U21(z0) -> c(U21'(encArg(z0))) ENCODE_U31(z0, z1, z2, z3) -> c(U31'(encArg(z0), encArg(z1), encArg(z2), encArg(z3))) ENCODE_TAKE(z0, z1) -> c(TAKE(encArg(z0), encArg(z1))) ENCODE_AND(z0, z1) -> c(AND(encArg(z0), encArg(z1))) ENCODE_ISNAT(z0) -> c(ISNAT(encArg(z0))) ENCODE_ISNATLIST(z0) -> c(ISNATLIST(encArg(z0))) ENCODE_ISNATILIST(z0) -> c(ISNATILIST(encArg(z0))) ENCARG(cons_active(cons_active(z0))) -> c4(ACTIVE(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_active(cons_mark(z0))) -> c4(ACTIVE(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_active(cons_cons(z0, z1))) -> c4(ACTIVE(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_active(cons_U11(z0, z1))) -> c4(ACTIVE(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_active(cons_s(z0))) -> c4(ACTIVE(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_active(cons_length(z0))) -> c4(ACTIVE(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_active(cons_U21(z0))) -> c4(ACTIVE(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_active(cons_U31(z0, z1, z2, z3))) -> c4(ACTIVE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_active(cons_take(z0, z1))) -> c4(ACTIVE(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_active(cons_and(z0, z1))) -> c4(ACTIVE(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_active(cons_isNat(z0))) -> c4(ACTIVE(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_active(cons_isNatList(z0))) -> c4(ACTIVE(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_active(cons_isNatIList(z0))) -> c4(ACTIVE(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_active(zeros)) -> c4(ACTIVE(zeros)) ENCARG(cons_mark(cons_active(z0))) -> c5(MARK(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_mark(cons_mark(z0))) -> c5(MARK(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_mark(cons_cons(z0, z1))) -> c5(MARK(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_mark(cons_U11(z0, z1))) -> c5(MARK(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_mark(cons_s(z0))) -> c5(MARK(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_mark(cons_length(z0))) -> c5(MARK(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_mark(cons_U21(z0))) -> c5(MARK(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_mark(cons_U31(z0, z1, z2, z3))) -> c5(MARK(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_mark(cons_take(z0, z1))) -> c5(MARK(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(cons_and(z0, z1))) -> c5(MARK(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_mark(cons_isNat(z0))) -> c5(MARK(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_mark(cons_isNatList(z0))) -> c5(MARK(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_mark(cons_isNatIList(z0))) -> c5(MARK(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_mark(zeros)) -> c5(MARK(zeros)) ENCARG(cons_mark(0)) -> c5(MARK(0)) ENCARG(cons_mark(tt)) -> c5(MARK(tt)) ENCARG(cons_mark(nil)) -> c5(MARK(nil)) ENCARG(cons_cons(x0, cons_active(z0))) -> c6(CONS(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_cons(x0, cons_mark(z0))) -> c6(CONS(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_cons(x0, cons_cons(z0, z1))) -> c6(CONS(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_cons(x0, cons_U11(z0, z1))) -> c6(CONS(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_cons(x0, cons_s(z0))) -> c6(CONS(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_cons(x0, cons_length(z0))) -> c6(CONS(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_cons(x0, cons_U21(z0))) -> c6(CONS(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_cons(x0, cons_U31(z0, z1, z2, z3))) -> c6(CONS(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_cons(x0, cons_take(z0, z1))) -> c6(CONS(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_cons(x0, cons_and(z0, z1))) -> c6(CONS(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_cons(x0, cons_isNat(z0))) -> c6(CONS(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_cons(x0, cons_isNatList(z0))) -> c6(CONS(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_cons(x0, cons_isNatIList(z0))) -> c6(CONS(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_cons(cons_active(z0), x1)) -> c6(CONS(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_mark(z0), x1)) -> c6(CONS(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_cons(z0, z1), x1)) -> c6(CONS(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_U11(z0, z1), x1)) -> c6(CONS(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_s(z0), x1)) -> c6(CONS(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_length(z0), x1)) -> c6(CONS(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U21(z0), x1)) -> c6(CONS(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U31(z0, z1, z2, z3), x1)) -> c6(CONS(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_cons(cons_take(z0, z1), x1)) -> c6(CONS(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_and(z0, z1), x1)) -> c6(CONS(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_isNat(z0), x1)) -> c6(CONS(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_isNatList(z0), x1)) -> c6(CONS(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_isNatIList(z0), x1)) -> c6(CONS(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_cons(x0, zeros)) -> c6(CONS(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_cons(x0, 0)) -> c6(CONS(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_cons(x0, tt)) -> c6(CONS(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_cons(x0, nil)) -> c6(CONS(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_cons(zeros, x1)) -> c6(CONS(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(0, x1)) -> c6(CONS(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(tt, x1)) -> c6(CONS(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(nil, x1)) -> c6(CONS(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(x0, cons_active(z0))) -> c7(U11'(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_U11(x0, cons_mark(z0))) -> c7(U11'(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_U11(x0, cons_cons(z0, z1))) -> c7(U11'(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U11(x0, cons_U11(z0, z1))) -> c7(U11'(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U11(x0, cons_s(z0))) -> c7(U11'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_U11(x0, cons_length(z0))) -> c7(U11'(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_U11(x0, cons_U21(z0))) -> c7(U11'(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_U11(x0, cons_U31(z0, z1, z2, z3))) -> c7(U11'(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U11(x0, cons_take(z0, z1))) -> c7(U11'(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_U11(x0, cons_and(z0, z1))) -> c7(U11'(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_U11(x0, cons_isNat(z0))) -> c7(U11'(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_U11(x0, cons_isNatList(z0))) -> c7(U11'(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_U11(x0, cons_isNatIList(z0))) -> c7(U11'(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U11(cons_active(z0), x1)) -> c7(U11'(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_mark(z0), x1)) -> c7(U11'(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_cons(z0, z1), x1)) -> c7(U11'(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_U11(z0, z1), x1)) -> c7(U11'(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_s(z0), x1)) -> c7(U11'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_length(z0), x1)) -> c7(U11'(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_U21(z0), x1)) -> c7(U11'(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_U31(z0, z1, z2, z3), x1)) -> c7(U11'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_U11(cons_take(z0, z1), x1)) -> c7(U11'(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_and(z0, z1), x1)) -> c7(U11'(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_isNat(z0), x1)) -> c7(U11'(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_isNatList(z0), x1)) -> c7(U11'(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_isNatIList(z0), x1)) -> c7(U11'(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_U11(x0, zeros)) -> c7(U11'(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_U11(x0, 0)) -> c7(U11'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_U11(x0, tt)) -> c7(U11'(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_U11(x0, nil)) -> c7(U11'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_U11(zeros, x1)) -> c7(U11'(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(0, x1)) -> c7(U11'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(tt, x1)) -> c7(U11'(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(nil, x1)) -> c7(U11'(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_s(cons_active(z0))) -> c8(S(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_s(cons_mark(z0))) -> c8(S(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_s(cons_cons(z0, z1))) -> c8(S(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_s(cons_U11(z0, z1))) -> c8(S(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_s(cons_s(z0))) -> c8(S(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_length(z0))) -> c8(S(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_s(cons_U21(z0))) -> c8(S(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_s(cons_U31(z0, z1, z2, z3))) -> c8(S(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_s(cons_take(z0, z1))) -> c8(S(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_s(cons_and(z0, z1))) -> c8(S(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_s(cons_isNat(z0))) -> c8(S(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_s(cons_isNatList(z0))) -> c8(S(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_s(cons_isNatIList(z0))) -> c8(S(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_length(cons_active(z0))) -> c9(LENGTH(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_length(cons_mark(z0))) -> c9(LENGTH(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_length(cons_cons(z0, z1))) -> c9(LENGTH(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_length(cons_U11(z0, z1))) -> c9(LENGTH(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_length(cons_s(z0))) -> c9(LENGTH(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_length(cons_length(z0))) -> c9(LENGTH(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_length(cons_U21(z0))) -> c9(LENGTH(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_length(cons_U31(z0, z1, z2, z3))) -> c9(LENGTH(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_length(cons_take(z0, z1))) -> c9(LENGTH(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_length(cons_and(z0, z1))) -> c9(LENGTH(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_length(cons_isNat(z0))) -> c9(LENGTH(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_length(cons_isNatList(z0))) -> c9(LENGTH(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_length(cons_isNatIList(z0))) -> c9(LENGTH(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U21(cons_active(z0))) -> c10(U21'(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_U21(cons_mark(z0))) -> c10(U21'(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_U21(cons_cons(z0, z1))) -> c10(U21'(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U21(cons_U11(z0, z1))) -> c10(U21'(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U21(cons_s(z0))) -> c10(U21'(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_U21(cons_length(z0))) -> c10(U21'(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_U21(cons_U21(z0))) -> c10(U21'(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_U21(cons_U31(z0, z1, z2, z3))) -> c10(U21'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U21(cons_take(z0, z1))) -> c10(U21'(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_U21(cons_and(z0, z1))) -> c10(U21'(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_U21(cons_isNat(z0))) -> c10(U21'(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_U21(cons_isNatList(z0))) -> c10(U21'(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_U21(cons_isNatIList(z0))) -> c10(U21'(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U31(x0, x1, x2, cons_active(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), active(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_active(z0))) ENCARG(cons_U31(x0, x1, x2, cons_mark(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), mark(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_mark(z0))) ENCARG(cons_U31(x0, x1, x2, cons_cons(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_U11(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_s(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), s(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_s(z0))) ENCARG(cons_U31(x0, x1, x2, cons_length(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), length(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_length(z0))) ENCARG(cons_U31(x0, x1, x2, cons_U21(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U21(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U21(z0))) ENCARG(cons_U31(x0, x1, x2, cons_U31(z0, z1, z2, z3))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U31(x0, x1, x2, cons_take(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_take(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_and(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_and(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_isNat(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNat(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNat(z0))) ENCARG(cons_U31(x0, x1, x2, cons_isNatList(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNatList(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNatList(z0))) ENCARG(cons_U31(x0, x1, x2, cons_isNatIList(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U31(x0, x1, cons_active(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), active(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_active(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_mark(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), mark(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_mark(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_cons(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), cons(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_cons(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U11(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), U11(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U11(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_s(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), s(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_s(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_length(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), length(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_length(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U21(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), U21(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U21(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U31(z0, z1, z2, z3), x3)) -> c11(U31'(encArg(x0), encArg(x1), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_take(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), take(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_take(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_and(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), and(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_and(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNat(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNat(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNat(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNatList(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNatList(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNatList(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNatIList(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNatIList(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNatIList(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, cons_active(z0), x2, x3)) -> c11(U31'(encArg(x0), active(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_active(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_mark(z0), x2, x3)) -> c11(U31'(encArg(x0), mark(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_mark(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_cons(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), cons(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_cons(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U11(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), U11(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U11(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_s(z0), x2, x3)) -> c11(U31'(encArg(x0), s(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_s(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_length(z0), x2, x3)) -> c11(U31'(encArg(x0), length(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_length(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U21(z0), x2, x3)) -> c11(U31'(encArg(x0), U21(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U21(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U31(z0, z1, z2, z3), x2, x3)) -> c11(U31'(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_take(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), take(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_take(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_and(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), and(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_and(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNat(z0), x2, x3)) -> c11(U31'(encArg(x0), isNat(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNat(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNatList(z0), x2, x3)) -> c11(U31'(encArg(x0), isNatList(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNatList(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNatIList(z0), x2, x3)) -> c11(U31'(encArg(x0), isNatIList(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNatIList(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_active(z0), x1, x2, x3)) -> c11(U31'(active(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_active(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_mark(z0), x1, x2, x3)) -> c11(U31'(mark(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_mark(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_cons(z0, z1), x1, x2, x3)) -> c11(U31'(cons(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_cons(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U11(z0, z1), x1, x2, x3)) -> c11(U31'(U11(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U11(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_s(z0), x1, x2, x3)) -> c11(U31'(s(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_s(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_length(z0), x1, x2, x3)) -> c11(U31'(length(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_length(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U21(z0), x1, x2, x3)) -> c11(U31'(U21(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U21(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U31(z0, z1, z2, z3), x1, x2, x3)) -> c11(U31'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_take(z0, z1), x1, x2, x3)) -> c11(U31'(take(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_take(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_and(z0, z1), x1, x2, x3)) -> c11(U31'(and(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_and(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNat(z0), x1, x2, x3)) -> c11(U31'(isNat(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNat(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNatList(z0), x1, x2, x3)) -> c11(U31'(isNatList(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNatList(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNatIList(z0), x1, x2, x3)) -> c11(U31'(isNatIList(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNatIList(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, x1, x2, zeros)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), zeros), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, 0)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), 0), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, tt)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), tt), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, nil)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), nil), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, zeros, x3)) -> c11(U31'(encArg(x0), encArg(x1), zeros, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, 0, x3)) -> c11(U31'(encArg(x0), encArg(x1), 0, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, tt, x3)) -> c11(U31'(encArg(x0), encArg(x1), tt, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, nil, x3)) -> c11(U31'(encArg(x0), encArg(x1), nil, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, zeros, x2, x3)) -> c11(U31'(encArg(x0), zeros, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, 0, x2, x3)) -> c11(U31'(encArg(x0), 0, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, tt, x2, x3)) -> c11(U31'(encArg(x0), tt, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, nil, x2, x3)) -> c11(U31'(encArg(x0), nil, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(zeros, x1, x2, x3)) -> c11(U31'(zeros, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(0, x1, x2, x3)) -> c11(U31'(0, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(tt, x1, x2, x3)) -> c11(U31'(tt, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(nil, x1, x2, x3)) -> c11(U31'(nil, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_take(x0, cons_active(z0))) -> c12(TAKE(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_take(x0, cons_mark(z0))) -> c12(TAKE(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_take(x0, cons_cons(z0, z1))) -> c12(TAKE(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_take(x0, cons_U11(z0, z1))) -> c12(TAKE(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_take(x0, cons_s(z0))) -> c12(TAKE(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_take(x0, cons_length(z0))) -> c12(TAKE(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_take(x0, cons_U21(z0))) -> c12(TAKE(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_take(x0, cons_U31(z0, z1, z2, z3))) -> c12(TAKE(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_take(x0, cons_take(z0, z1))) -> c12(TAKE(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_take(x0, cons_and(z0, z1))) -> c12(TAKE(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_take(x0, cons_isNat(z0))) -> c12(TAKE(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_take(x0, cons_isNatList(z0))) -> c12(TAKE(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_take(x0, cons_isNatIList(z0))) -> c12(TAKE(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_take(cons_active(z0), x1)) -> c12(TAKE(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_take(cons_mark(z0), x1)) -> c12(TAKE(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_take(cons_cons(z0, z1), x1)) -> c12(TAKE(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_U11(z0, z1), x1)) -> c12(TAKE(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_s(z0), x1)) -> c12(TAKE(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_take(cons_length(z0), x1)) -> c12(TAKE(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_take(cons_U21(z0), x1)) -> c12(TAKE(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_take(cons_U31(z0, z1, z2, z3), x1)) -> c12(TAKE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_take(cons_take(z0, z1), x1)) -> c12(TAKE(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_and(z0, z1), x1)) -> c12(TAKE(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_isNat(z0), x1)) -> c12(TAKE(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_take(cons_isNatList(z0), x1)) -> c12(TAKE(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_take(cons_isNatIList(z0), x1)) -> c12(TAKE(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_take(x0, zeros)) -> c12(TAKE(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_take(x0, 0)) -> c12(TAKE(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_take(x0, tt)) -> c12(TAKE(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_take(x0, nil)) -> c12(TAKE(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_take(zeros, x1)) -> c12(TAKE(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(0, x1)) -> c12(TAKE(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(tt, x1)) -> c12(TAKE(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(nil, x1)) -> c12(TAKE(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(x0, cons_active(z0))) -> c13(AND(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_and(x0, cons_mark(z0))) -> c13(AND(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_and(x0, cons_cons(z0, z1))) -> c13(AND(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_and(x0, cons_U11(z0, z1))) -> c13(AND(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_and(x0, cons_s(z0))) -> c13(AND(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_and(x0, cons_length(z0))) -> c13(AND(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_and(x0, cons_U21(z0))) -> c13(AND(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_and(x0, cons_U31(z0, z1, z2, z3))) -> c13(AND(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_and(x0, cons_take(z0, z1))) -> c13(AND(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_and(x0, cons_and(z0, z1))) -> c13(AND(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_and(x0, cons_isNat(z0))) -> c13(AND(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_and(x0, cons_isNatList(z0))) -> c13(AND(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_and(x0, cons_isNatIList(z0))) -> c13(AND(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_and(cons_active(z0), x1)) -> c13(AND(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_and(cons_mark(z0), x1)) -> c13(AND(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_and(cons_cons(z0, z1), x1)) -> c13(AND(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_U11(z0, z1), x1)) -> c13(AND(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_s(z0), x1)) -> c13(AND(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_and(cons_length(z0), x1)) -> c13(AND(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_and(cons_U21(z0), x1)) -> c13(AND(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_and(cons_U31(z0, z1, z2, z3), x1)) -> c13(AND(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_and(cons_take(z0, z1), x1)) -> c13(AND(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_and(z0, z1), x1)) -> c13(AND(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_isNat(z0), x1)) -> c13(AND(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_and(cons_isNatList(z0), x1)) -> c13(AND(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_and(cons_isNatIList(z0), x1)) -> c13(AND(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_and(x0, zeros)) -> c13(AND(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_and(x0, 0)) -> c13(AND(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_and(x0, tt)) -> c13(AND(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_and(x0, nil)) -> c13(AND(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_and(zeros, x1)) -> c13(AND(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(0, x1)) -> c13(AND(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(tt, x1)) -> c13(AND(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(nil, x1)) -> c13(AND(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_isNat(cons_active(z0))) -> c14(ISNAT(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_isNat(cons_mark(z0))) -> c14(ISNAT(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_isNat(cons_cons(z0, z1))) -> c14(ISNAT(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_isNat(cons_U11(z0, z1))) -> c14(ISNAT(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_isNat(cons_s(z0))) -> c14(ISNAT(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_isNat(cons_length(z0))) -> c14(ISNAT(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_isNat(cons_U21(z0))) -> c14(ISNAT(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_isNat(cons_U31(z0, z1, z2, z3))) -> c14(ISNAT(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_isNat(cons_take(z0, z1))) -> c14(ISNAT(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_isNat(cons_and(z0, z1))) -> c14(ISNAT(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_isNat(cons_isNat(z0))) -> c14(ISNAT(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_isNat(cons_isNatList(z0))) -> c14(ISNAT(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_isNat(cons_isNatIList(z0))) -> c14(ISNAT(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_isNatList(cons_active(z0))) -> c15(ISNATLIST(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_isNatList(cons_mark(z0))) -> c15(ISNATLIST(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_isNatList(cons_cons(z0, z1))) -> c15(ISNATLIST(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_isNatList(cons_U11(z0, z1))) -> c15(ISNATLIST(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_isNatList(cons_s(z0))) -> c15(ISNATLIST(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_isNatList(cons_length(z0))) -> c15(ISNATLIST(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_isNatList(cons_U21(z0))) -> c15(ISNATLIST(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_isNatList(cons_U31(z0, z1, z2, z3))) -> c15(ISNATLIST(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_isNatList(cons_take(z0, z1))) -> c15(ISNATLIST(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_isNatList(cons_and(z0, z1))) -> c15(ISNATLIST(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_isNatList(cons_isNat(z0))) -> c15(ISNATLIST(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_isNatList(cons_isNatList(z0))) -> c15(ISNATLIST(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_isNatList(cons_isNatIList(z0))) -> c15(ISNATLIST(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) S tuples: ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(cons(z0, z1)) -> c53(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(mark(z0), z1)), U11'(mark(z0), z1), MARK(z0)) MARK(s(z0)) -> c57(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(mark(z0))), LENGTH(mark(z0)), MARK(z0)) MARK(U21(z0)) -> c59(ACTIVE(U21(mark(z0))), U21'(mark(z0)), MARK(z0)) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(mark(z0), z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(take(z0, z1)) -> c62(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 K tuples:none Defined Rule Symbols: encArg_1, active_1, mark_1, cons_2, U11_2, s_1, length_1, U21_1, U31_4, take_2, and_2, isNat_1, isNatList_1, isNatIList_1 Defined Pair Symbols: ENCARG_1, ACTIVE_1, MARK_1, CONS_2, U11'_2, S_1, LENGTH_1, U21'_1, U31'_4, TAKE_2, AND_2, ISNAT_1, ISNATLIST_1, ISNATILIST_1, ENCODE_ACTIVE_1, ENCODE_MARK_1, ENCODE_CONS_2, ENCODE_U11_2, ENCODE_S_1, ENCODE_LENGTH_1, ENCODE_U21_1, ENCODE_U31_4, ENCODE_TAKE_2, ENCODE_AND_2, ENCODE_ISNAT_1, ENCODE_ISNATLIST_1, ENCODE_ISNATILIST_1 Compound Symbols: c16_2, c36_1, c37_3, c38_1, c39_1, c40_2, c41_2, c42_2, c43_1, c45_1, c48_1, c52_1, c53_3, c55_3, c57_3, c58_3, c59_3, c61_3, c62_4, c63_3, c64_2, c65_2, c66_2, c67_1, c68_1, c69_1, c70_1, c71_1, c72_1, c73_1, c74_1, c75_1, c76_1, c77_1, c78_1, c79_1, c80_1, c81_1, c82_1, c83_1, c84_1, c85_1, c86_1, c87_1, c88_1, c89_1, c90_1, c91_1, c92_1, c93_1, c94_1, c95_1, c96_1, c97_1, c98_1, c99_1, c100_1, c101_1, c102_1, c34_1, c35_2, c44_3, c46_3, c47_3, c49_3, c50_2, c51_4, c54, c56, c60, c_1, c4_2, c4_1, c5_2, c5_1, c6_3, c6_2, c7_3, c7_2, c8_2, c9_2, c10_2, c11_5, c11_4, c12_3, c12_2, c13_3, c13_2, c14_2, c15_2 ---------------------------------------- (89) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace ENCARG(cons_isNatIList(z0)) -> c16(ISNATILIST(encArg(z0)), ENCARG(z0)) by ENCARG(cons_isNatIList(zeros)) -> c16(ISNATILIST(zeros), ENCARG(zeros)) ENCARG(cons_isNatIList(0)) -> c16(ISNATILIST(0), ENCARG(0)) ENCARG(cons_isNatIList(tt)) -> c16(ISNATILIST(tt), ENCARG(tt)) ENCARG(cons_isNatIList(nil)) -> c16(ISNATILIST(nil), ENCARG(nil)) ENCARG(cons_isNatIList(cons_active(z0))) -> c16(ISNATILIST(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_isNatIList(cons_mark(z0))) -> c16(ISNATILIST(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_isNatIList(cons_cons(z0, z1))) -> c16(ISNATILIST(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_isNatIList(cons_U11(z0, z1))) -> c16(ISNATILIST(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_isNatIList(cons_s(z0))) -> c16(ISNATILIST(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_isNatIList(cons_length(z0))) -> c16(ISNATILIST(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_isNatIList(cons_U21(z0))) -> c16(ISNATILIST(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_isNatIList(cons_U31(z0, z1, z2, z3))) -> c16(ISNATILIST(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_isNatIList(cons_take(z0, z1))) -> c16(ISNATILIST(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_isNatIList(cons_and(z0, z1))) -> c16(ISNATILIST(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_isNatIList(cons_isNat(z0))) -> c16(ISNATILIST(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_isNatIList(cons_isNatList(z0))) -> c16(ISNATILIST(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_isNatIList(cons_isNatIList(z0))) -> c16(ISNATILIST(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ---------------------------------------- (90) Obligation: Complexity Dependency Tuples Problem Rules: encArg(zeros) -> zeros encArg(0) -> 0 encArg(tt) -> tt encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_U11(z0, z1)) -> U11(encArg(z0), encArg(z1)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_length(z0)) -> length(encArg(z0)) encArg(cons_U21(z0)) -> U21(encArg(z0)) encArg(cons_U31(z0, z1, z2, z3)) -> U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_isNat(z0)) -> isNat(encArg(z0)) encArg(cons_isNatList(z0)) -> isNatList(encArg(z0)) encArg(cons_isNatIList(z0)) -> isNatIList(encArg(z0)) active(zeros) -> mark(cons(0, zeros)) active(U11(tt, z0)) -> mark(s(length(z0))) active(U21(tt)) -> mark(nil) active(U31(tt, z0, z1, z2)) -> mark(cons(z2, take(z1, z0))) active(and(tt, z0)) -> mark(z0) active(isNat(0)) -> mark(tt) active(isNat(length(z0))) -> mark(isNatList(z0)) active(isNat(s(z0))) -> mark(isNat(z0)) active(isNatIList(z0)) -> mark(isNatList(z0)) active(isNatIList(zeros)) -> mark(tt) active(isNatIList(cons(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(isNatList(nil)) -> mark(tt) active(isNatList(cons(z0, z1))) -> mark(and(isNat(z0), isNatList(z1))) active(isNatList(take(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(length(nil)) -> mark(0) active(length(cons(z0, z1))) -> mark(U11(and(isNatList(z1), isNat(z0)), z1)) active(take(0, z0)) -> mark(U21(isNatIList(z0))) active(take(s(z0), cons(z1, z2))) -> mark(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)) mark(zeros) -> active(zeros) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(0) -> active(0) mark(U11(z0, z1)) -> active(U11(mark(z0), z1)) mark(tt) -> active(tt) mark(s(z0)) -> active(s(mark(z0))) mark(length(z0)) -> active(length(mark(z0))) mark(U21(z0)) -> active(U21(mark(z0))) mark(nil) -> active(nil) mark(U31(z0, z1, z2, z3)) -> active(U31(mark(z0), z1, z2, z3)) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(isNat(z0)) -> active(isNat(z0)) mark(isNatList(z0)) -> active(isNatList(z0)) mark(isNatIList(z0)) -> active(isNatIList(z0)) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) U11(mark(z0), z1) -> U11(z0, z1) U11(z0, mark(z1)) -> U11(z0, z1) U11(active(z0), z1) -> U11(z0, z1) U11(z0, active(z1)) -> U11(z0, z1) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) length(mark(z0)) -> length(z0) length(active(z0)) -> length(z0) U21(mark(z0)) -> U21(z0) U21(active(z0)) -> U21(z0) U31(mark(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, mark(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, mark(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, mark(z3)) -> U31(z0, z1, z2, z3) U31(active(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, active(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, active(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, active(z3)) -> U31(z0, z1, z2, z3) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) isNat(mark(z0)) -> isNat(z0) isNat(active(z0)) -> isNat(z0) isNatList(mark(z0)) -> isNatList(z0) isNatList(active(z0)) -> isNatList(z0) isNatIList(mark(z0)) -> isNatIList(z0) isNatIList(active(z0)) -> isNatIList(z0) Tuples: ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(cons(z0, z1)) -> c53(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(mark(z0), z1)), U11'(mark(z0), z1), MARK(z0)) MARK(s(z0)) -> c57(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(mark(z0))), LENGTH(mark(z0)), MARK(z0)) MARK(U21(z0)) -> c59(ACTIVE(U21(mark(z0))), U21'(mark(z0)), MARK(z0)) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(mark(z0), z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(take(z0, z1)) -> c62(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 ENCODE_ACTIVE(z0) -> c(ACTIVE(encArg(z0))) ENCODE_MARK(z0) -> c(MARK(encArg(z0))) ENCODE_CONS(z0, z1) -> c(CONS(encArg(z0), encArg(z1))) ENCODE_U11(z0, z1) -> c(U11'(encArg(z0), encArg(z1))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_LENGTH(z0) -> c(LENGTH(encArg(z0))) ENCODE_U21(z0) -> c(U21'(encArg(z0))) ENCODE_U31(z0, z1, z2, z3) -> c(U31'(encArg(z0), encArg(z1), encArg(z2), encArg(z3))) ENCODE_TAKE(z0, z1) -> c(TAKE(encArg(z0), encArg(z1))) ENCODE_AND(z0, z1) -> c(AND(encArg(z0), encArg(z1))) ENCODE_ISNAT(z0) -> c(ISNAT(encArg(z0))) ENCODE_ISNATLIST(z0) -> c(ISNATLIST(encArg(z0))) ENCODE_ISNATILIST(z0) -> c(ISNATILIST(encArg(z0))) ENCARG(cons_active(cons_active(z0))) -> c4(ACTIVE(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_active(cons_mark(z0))) -> c4(ACTIVE(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_active(cons_cons(z0, z1))) -> c4(ACTIVE(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_active(cons_U11(z0, z1))) -> c4(ACTIVE(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_active(cons_s(z0))) -> c4(ACTIVE(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_active(cons_length(z0))) -> c4(ACTIVE(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_active(cons_U21(z0))) -> c4(ACTIVE(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_active(cons_U31(z0, z1, z2, z3))) -> c4(ACTIVE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_active(cons_take(z0, z1))) -> c4(ACTIVE(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_active(cons_and(z0, z1))) -> c4(ACTIVE(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_active(cons_isNat(z0))) -> c4(ACTIVE(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_active(cons_isNatList(z0))) -> c4(ACTIVE(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_active(cons_isNatIList(z0))) -> c4(ACTIVE(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_active(zeros)) -> c4(ACTIVE(zeros)) ENCARG(cons_mark(cons_active(z0))) -> c5(MARK(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_mark(cons_mark(z0))) -> c5(MARK(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_mark(cons_cons(z0, z1))) -> c5(MARK(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_mark(cons_U11(z0, z1))) -> c5(MARK(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_mark(cons_s(z0))) -> c5(MARK(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_mark(cons_length(z0))) -> c5(MARK(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_mark(cons_U21(z0))) -> c5(MARK(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_mark(cons_U31(z0, z1, z2, z3))) -> c5(MARK(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_mark(cons_take(z0, z1))) -> c5(MARK(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(cons_and(z0, z1))) -> c5(MARK(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_mark(cons_isNat(z0))) -> c5(MARK(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_mark(cons_isNatList(z0))) -> c5(MARK(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_mark(cons_isNatIList(z0))) -> c5(MARK(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_mark(zeros)) -> c5(MARK(zeros)) ENCARG(cons_mark(0)) -> c5(MARK(0)) ENCARG(cons_mark(tt)) -> c5(MARK(tt)) ENCARG(cons_mark(nil)) -> c5(MARK(nil)) ENCARG(cons_cons(x0, cons_active(z0))) -> c6(CONS(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_cons(x0, cons_mark(z0))) -> c6(CONS(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_cons(x0, cons_cons(z0, z1))) -> c6(CONS(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_cons(x0, cons_U11(z0, z1))) -> c6(CONS(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_cons(x0, cons_s(z0))) -> c6(CONS(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_cons(x0, cons_length(z0))) -> c6(CONS(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_cons(x0, cons_U21(z0))) -> c6(CONS(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_cons(x0, cons_U31(z0, z1, z2, z3))) -> c6(CONS(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_cons(x0, cons_take(z0, z1))) -> c6(CONS(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_cons(x0, cons_and(z0, z1))) -> c6(CONS(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_cons(x0, cons_isNat(z0))) -> c6(CONS(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_cons(x0, cons_isNatList(z0))) -> c6(CONS(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_cons(x0, cons_isNatIList(z0))) -> c6(CONS(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_cons(cons_active(z0), x1)) -> c6(CONS(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_mark(z0), x1)) -> c6(CONS(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_cons(z0, z1), x1)) -> c6(CONS(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_U11(z0, z1), x1)) -> c6(CONS(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_s(z0), x1)) -> c6(CONS(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_length(z0), x1)) -> c6(CONS(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U21(z0), x1)) -> c6(CONS(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U31(z0, z1, z2, z3), x1)) -> c6(CONS(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_cons(cons_take(z0, z1), x1)) -> c6(CONS(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_and(z0, z1), x1)) -> c6(CONS(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_isNat(z0), x1)) -> c6(CONS(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_isNatList(z0), x1)) -> c6(CONS(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_isNatIList(z0), x1)) -> c6(CONS(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_cons(x0, zeros)) -> c6(CONS(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_cons(x0, 0)) -> c6(CONS(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_cons(x0, tt)) -> c6(CONS(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_cons(x0, nil)) -> c6(CONS(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_cons(zeros, x1)) -> c6(CONS(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(0, x1)) -> c6(CONS(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(tt, x1)) -> c6(CONS(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(nil, x1)) -> c6(CONS(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(x0, cons_active(z0))) -> c7(U11'(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_U11(x0, cons_mark(z0))) -> c7(U11'(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_U11(x0, cons_cons(z0, z1))) -> c7(U11'(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U11(x0, cons_U11(z0, z1))) -> c7(U11'(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U11(x0, cons_s(z0))) -> c7(U11'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_U11(x0, cons_length(z0))) -> c7(U11'(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_U11(x0, cons_U21(z0))) -> c7(U11'(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_U11(x0, cons_U31(z0, z1, z2, z3))) -> c7(U11'(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U11(x0, cons_take(z0, z1))) -> c7(U11'(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_U11(x0, cons_and(z0, z1))) -> c7(U11'(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_U11(x0, cons_isNat(z0))) -> c7(U11'(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_U11(x0, cons_isNatList(z0))) -> c7(U11'(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_U11(x0, cons_isNatIList(z0))) -> c7(U11'(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U11(cons_active(z0), x1)) -> c7(U11'(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_mark(z0), x1)) -> c7(U11'(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_cons(z0, z1), x1)) -> c7(U11'(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_U11(z0, z1), x1)) -> c7(U11'(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_s(z0), x1)) -> c7(U11'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_length(z0), x1)) -> c7(U11'(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_U21(z0), x1)) -> c7(U11'(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_U31(z0, z1, z2, z3), x1)) -> c7(U11'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_U11(cons_take(z0, z1), x1)) -> c7(U11'(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_and(z0, z1), x1)) -> c7(U11'(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_isNat(z0), x1)) -> c7(U11'(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_isNatList(z0), x1)) -> c7(U11'(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_isNatIList(z0), x1)) -> c7(U11'(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_U11(x0, zeros)) -> c7(U11'(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_U11(x0, 0)) -> c7(U11'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_U11(x0, tt)) -> c7(U11'(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_U11(x0, nil)) -> c7(U11'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_U11(zeros, x1)) -> c7(U11'(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(0, x1)) -> c7(U11'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(tt, x1)) -> c7(U11'(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(nil, x1)) -> c7(U11'(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_s(cons_active(z0))) -> c8(S(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_s(cons_mark(z0))) -> c8(S(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_s(cons_cons(z0, z1))) -> c8(S(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_s(cons_U11(z0, z1))) -> c8(S(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_s(cons_s(z0))) -> c8(S(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_length(z0))) -> c8(S(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_s(cons_U21(z0))) -> c8(S(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_s(cons_U31(z0, z1, z2, z3))) -> c8(S(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_s(cons_take(z0, z1))) -> c8(S(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_s(cons_and(z0, z1))) -> c8(S(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_s(cons_isNat(z0))) -> c8(S(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_s(cons_isNatList(z0))) -> c8(S(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_s(cons_isNatIList(z0))) -> c8(S(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_length(cons_active(z0))) -> c9(LENGTH(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_length(cons_mark(z0))) -> c9(LENGTH(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_length(cons_cons(z0, z1))) -> c9(LENGTH(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_length(cons_U11(z0, z1))) -> c9(LENGTH(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_length(cons_s(z0))) -> c9(LENGTH(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_length(cons_length(z0))) -> c9(LENGTH(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_length(cons_U21(z0))) -> c9(LENGTH(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_length(cons_U31(z0, z1, z2, z3))) -> c9(LENGTH(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_length(cons_take(z0, z1))) -> c9(LENGTH(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_length(cons_and(z0, z1))) -> c9(LENGTH(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_length(cons_isNat(z0))) -> c9(LENGTH(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_length(cons_isNatList(z0))) -> c9(LENGTH(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_length(cons_isNatIList(z0))) -> c9(LENGTH(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U21(cons_active(z0))) -> c10(U21'(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_U21(cons_mark(z0))) -> c10(U21'(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_U21(cons_cons(z0, z1))) -> c10(U21'(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U21(cons_U11(z0, z1))) -> c10(U21'(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U21(cons_s(z0))) -> c10(U21'(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_U21(cons_length(z0))) -> c10(U21'(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_U21(cons_U21(z0))) -> c10(U21'(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_U21(cons_U31(z0, z1, z2, z3))) -> c10(U21'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U21(cons_take(z0, z1))) -> c10(U21'(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_U21(cons_and(z0, z1))) -> c10(U21'(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_U21(cons_isNat(z0))) -> c10(U21'(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_U21(cons_isNatList(z0))) -> c10(U21'(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_U21(cons_isNatIList(z0))) -> c10(U21'(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U31(x0, x1, x2, cons_active(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), active(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_active(z0))) ENCARG(cons_U31(x0, x1, x2, cons_mark(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), mark(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_mark(z0))) ENCARG(cons_U31(x0, x1, x2, cons_cons(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_U11(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_s(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), s(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_s(z0))) ENCARG(cons_U31(x0, x1, x2, cons_length(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), length(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_length(z0))) ENCARG(cons_U31(x0, x1, x2, cons_U21(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U21(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U21(z0))) ENCARG(cons_U31(x0, x1, x2, cons_U31(z0, z1, z2, z3))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U31(x0, x1, x2, cons_take(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_take(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_and(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_and(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_isNat(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNat(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNat(z0))) ENCARG(cons_U31(x0, x1, x2, cons_isNatList(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNatList(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNatList(z0))) ENCARG(cons_U31(x0, x1, x2, cons_isNatIList(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U31(x0, x1, cons_active(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), active(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_active(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_mark(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), mark(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_mark(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_cons(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), cons(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_cons(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U11(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), U11(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U11(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_s(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), s(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_s(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_length(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), length(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_length(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U21(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), U21(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U21(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U31(z0, z1, z2, z3), x3)) -> c11(U31'(encArg(x0), encArg(x1), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_take(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), take(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_take(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_and(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), and(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_and(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNat(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNat(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNat(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNatList(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNatList(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNatList(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNatIList(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNatIList(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNatIList(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, cons_active(z0), x2, x3)) -> c11(U31'(encArg(x0), active(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_active(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_mark(z0), x2, x3)) -> c11(U31'(encArg(x0), mark(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_mark(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_cons(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), cons(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_cons(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U11(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), U11(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U11(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_s(z0), x2, x3)) -> c11(U31'(encArg(x0), s(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_s(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_length(z0), x2, x3)) -> c11(U31'(encArg(x0), length(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_length(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U21(z0), x2, x3)) -> c11(U31'(encArg(x0), U21(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U21(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U31(z0, z1, z2, z3), x2, x3)) -> c11(U31'(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_take(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), take(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_take(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_and(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), and(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_and(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNat(z0), x2, x3)) -> c11(U31'(encArg(x0), isNat(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNat(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNatList(z0), x2, x3)) -> c11(U31'(encArg(x0), isNatList(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNatList(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNatIList(z0), x2, x3)) -> c11(U31'(encArg(x0), isNatIList(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNatIList(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_active(z0), x1, x2, x3)) -> c11(U31'(active(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_active(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_mark(z0), x1, x2, x3)) -> c11(U31'(mark(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_mark(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_cons(z0, z1), x1, x2, x3)) -> c11(U31'(cons(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_cons(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U11(z0, z1), x1, x2, x3)) -> c11(U31'(U11(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U11(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_s(z0), x1, x2, x3)) -> c11(U31'(s(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_s(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_length(z0), x1, x2, x3)) -> c11(U31'(length(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_length(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U21(z0), x1, x2, x3)) -> c11(U31'(U21(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U21(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U31(z0, z1, z2, z3), x1, x2, x3)) -> c11(U31'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_take(z0, z1), x1, x2, x3)) -> c11(U31'(take(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_take(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_and(z0, z1), x1, x2, x3)) -> c11(U31'(and(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_and(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNat(z0), x1, x2, x3)) -> c11(U31'(isNat(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNat(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNatList(z0), x1, x2, x3)) -> c11(U31'(isNatList(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNatList(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNatIList(z0), x1, x2, x3)) -> c11(U31'(isNatIList(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNatIList(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, x1, x2, zeros)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), zeros), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, 0)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), 0), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, tt)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), tt), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, nil)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), nil), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, zeros, x3)) -> c11(U31'(encArg(x0), encArg(x1), zeros, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, 0, x3)) -> c11(U31'(encArg(x0), encArg(x1), 0, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, tt, x3)) -> c11(U31'(encArg(x0), encArg(x1), tt, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, nil, x3)) -> c11(U31'(encArg(x0), encArg(x1), nil, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, zeros, x2, x3)) -> c11(U31'(encArg(x0), zeros, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, 0, x2, x3)) -> c11(U31'(encArg(x0), 0, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, tt, x2, x3)) -> c11(U31'(encArg(x0), tt, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, nil, x2, x3)) -> c11(U31'(encArg(x0), nil, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(zeros, x1, x2, x3)) -> c11(U31'(zeros, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(0, x1, x2, x3)) -> c11(U31'(0, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(tt, x1, x2, x3)) -> c11(U31'(tt, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(nil, x1, x2, x3)) -> c11(U31'(nil, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_take(x0, cons_active(z0))) -> c12(TAKE(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_take(x0, cons_mark(z0))) -> c12(TAKE(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_take(x0, cons_cons(z0, z1))) -> c12(TAKE(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_take(x0, cons_U11(z0, z1))) -> c12(TAKE(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_take(x0, cons_s(z0))) -> c12(TAKE(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_take(x0, cons_length(z0))) -> c12(TAKE(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_take(x0, cons_U21(z0))) -> c12(TAKE(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_take(x0, cons_U31(z0, z1, z2, z3))) -> c12(TAKE(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_take(x0, cons_take(z0, z1))) -> c12(TAKE(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_take(x0, cons_and(z0, z1))) -> c12(TAKE(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_take(x0, cons_isNat(z0))) -> c12(TAKE(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_take(x0, cons_isNatList(z0))) -> c12(TAKE(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_take(x0, cons_isNatIList(z0))) -> c12(TAKE(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_take(cons_active(z0), x1)) -> c12(TAKE(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_take(cons_mark(z0), x1)) -> c12(TAKE(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_take(cons_cons(z0, z1), x1)) -> c12(TAKE(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_U11(z0, z1), x1)) -> c12(TAKE(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_s(z0), x1)) -> c12(TAKE(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_take(cons_length(z0), x1)) -> c12(TAKE(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_take(cons_U21(z0), x1)) -> c12(TAKE(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_take(cons_U31(z0, z1, z2, z3), x1)) -> c12(TAKE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_take(cons_take(z0, z1), x1)) -> c12(TAKE(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_and(z0, z1), x1)) -> c12(TAKE(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_isNat(z0), x1)) -> c12(TAKE(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_take(cons_isNatList(z0), x1)) -> c12(TAKE(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_take(cons_isNatIList(z0), x1)) -> c12(TAKE(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_take(x0, zeros)) -> c12(TAKE(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_take(x0, 0)) -> c12(TAKE(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_take(x0, tt)) -> c12(TAKE(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_take(x0, nil)) -> c12(TAKE(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_take(zeros, x1)) -> c12(TAKE(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(0, x1)) -> c12(TAKE(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(tt, x1)) -> c12(TAKE(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(nil, x1)) -> c12(TAKE(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(x0, cons_active(z0))) -> c13(AND(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_and(x0, cons_mark(z0))) -> c13(AND(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_and(x0, cons_cons(z0, z1))) -> c13(AND(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_and(x0, cons_U11(z0, z1))) -> c13(AND(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_and(x0, cons_s(z0))) -> c13(AND(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_and(x0, cons_length(z0))) -> c13(AND(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_and(x0, cons_U21(z0))) -> c13(AND(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_and(x0, cons_U31(z0, z1, z2, z3))) -> c13(AND(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_and(x0, cons_take(z0, z1))) -> c13(AND(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_and(x0, cons_and(z0, z1))) -> c13(AND(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_and(x0, cons_isNat(z0))) -> c13(AND(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_and(x0, cons_isNatList(z0))) -> c13(AND(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_and(x0, cons_isNatIList(z0))) -> c13(AND(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_and(cons_active(z0), x1)) -> c13(AND(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_and(cons_mark(z0), x1)) -> c13(AND(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_and(cons_cons(z0, z1), x1)) -> c13(AND(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_U11(z0, z1), x1)) -> c13(AND(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_s(z0), x1)) -> c13(AND(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_and(cons_length(z0), x1)) -> c13(AND(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_and(cons_U21(z0), x1)) -> c13(AND(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_and(cons_U31(z0, z1, z2, z3), x1)) -> c13(AND(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_and(cons_take(z0, z1), x1)) -> c13(AND(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_and(z0, z1), x1)) -> c13(AND(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_isNat(z0), x1)) -> c13(AND(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_and(cons_isNatList(z0), x1)) -> c13(AND(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_and(cons_isNatIList(z0), x1)) -> c13(AND(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_and(x0, zeros)) -> c13(AND(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_and(x0, 0)) -> c13(AND(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_and(x0, tt)) -> c13(AND(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_and(x0, nil)) -> c13(AND(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_and(zeros, x1)) -> c13(AND(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(0, x1)) -> c13(AND(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(tt, x1)) -> c13(AND(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(nil, x1)) -> c13(AND(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_isNat(cons_active(z0))) -> c14(ISNAT(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_isNat(cons_mark(z0))) -> c14(ISNAT(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_isNat(cons_cons(z0, z1))) -> c14(ISNAT(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_isNat(cons_U11(z0, z1))) -> c14(ISNAT(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_isNat(cons_s(z0))) -> c14(ISNAT(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_isNat(cons_length(z0))) -> c14(ISNAT(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_isNat(cons_U21(z0))) -> c14(ISNAT(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_isNat(cons_U31(z0, z1, z2, z3))) -> c14(ISNAT(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_isNat(cons_take(z0, z1))) -> c14(ISNAT(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_isNat(cons_and(z0, z1))) -> c14(ISNAT(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_isNat(cons_isNat(z0))) -> c14(ISNAT(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_isNat(cons_isNatList(z0))) -> c14(ISNAT(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_isNat(cons_isNatIList(z0))) -> c14(ISNAT(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_isNatList(cons_active(z0))) -> c15(ISNATLIST(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_isNatList(cons_mark(z0))) -> c15(ISNATLIST(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_isNatList(cons_cons(z0, z1))) -> c15(ISNATLIST(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_isNatList(cons_U11(z0, z1))) -> c15(ISNATLIST(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_isNatList(cons_s(z0))) -> c15(ISNATLIST(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_isNatList(cons_length(z0))) -> c15(ISNATLIST(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_isNatList(cons_U21(z0))) -> c15(ISNATLIST(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_isNatList(cons_U31(z0, z1, z2, z3))) -> c15(ISNATLIST(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_isNatList(cons_take(z0, z1))) -> c15(ISNATLIST(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_isNatList(cons_and(z0, z1))) -> c15(ISNATLIST(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_isNatList(cons_isNat(z0))) -> c15(ISNATLIST(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_isNatList(cons_isNatList(z0))) -> c15(ISNATLIST(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_isNatList(cons_isNatIList(z0))) -> c15(ISNATLIST(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_isNatIList(zeros)) -> c16(ISNATILIST(zeros), ENCARG(zeros)) ENCARG(cons_isNatIList(0)) -> c16(ISNATILIST(0), ENCARG(0)) ENCARG(cons_isNatIList(tt)) -> c16(ISNATILIST(tt), ENCARG(tt)) ENCARG(cons_isNatIList(nil)) -> c16(ISNATILIST(nil), ENCARG(nil)) ENCARG(cons_isNatIList(cons_active(z0))) -> c16(ISNATILIST(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_isNatIList(cons_mark(z0))) -> c16(ISNATILIST(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_isNatIList(cons_cons(z0, z1))) -> c16(ISNATILIST(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_isNatIList(cons_U11(z0, z1))) -> c16(ISNATILIST(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_isNatIList(cons_s(z0))) -> c16(ISNATILIST(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_isNatIList(cons_length(z0))) -> c16(ISNATILIST(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_isNatIList(cons_U21(z0))) -> c16(ISNATILIST(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_isNatIList(cons_U31(z0, z1, z2, z3))) -> c16(ISNATILIST(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_isNatIList(cons_take(z0, z1))) -> c16(ISNATILIST(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_isNatIList(cons_and(z0, z1))) -> c16(ISNATILIST(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_isNatIList(cons_isNat(z0))) -> c16(ISNATILIST(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_isNatIList(cons_isNatList(z0))) -> c16(ISNATILIST(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_isNatIList(cons_isNatIList(z0))) -> c16(ISNATILIST(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) S tuples: ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(cons(z0, z1)) -> c53(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(mark(z0), z1)), U11'(mark(z0), z1), MARK(z0)) MARK(s(z0)) -> c57(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(mark(z0))), LENGTH(mark(z0)), MARK(z0)) MARK(U21(z0)) -> c59(ACTIVE(U21(mark(z0))), U21'(mark(z0)), MARK(z0)) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(mark(z0), z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(take(z0, z1)) -> c62(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 K tuples:none Defined Rule Symbols: encArg_1, active_1, mark_1, cons_2, U11_2, s_1, length_1, U21_1, U31_4, take_2, and_2, isNat_1, isNatList_1, isNatIList_1 Defined Pair Symbols: ACTIVE_1, MARK_1, CONS_2, U11'_2, S_1, LENGTH_1, U21'_1, U31'_4, TAKE_2, AND_2, ISNAT_1, ISNATLIST_1, ISNATILIST_1, ENCODE_ACTIVE_1, ENCODE_MARK_1, ENCODE_CONS_2, ENCODE_U11_2, ENCODE_S_1, ENCODE_LENGTH_1, ENCODE_U21_1, ENCODE_U31_4, ENCODE_TAKE_2, ENCODE_AND_2, ENCODE_ISNAT_1, ENCODE_ISNATLIST_1, ENCODE_ISNATILIST_1, ENCARG_1 Compound Symbols: c36_1, c37_3, c38_1, c39_1, c40_2, c41_2, c42_2, c43_1, c45_1, c48_1, c52_1, c53_3, c55_3, c57_3, c58_3, c59_3, c61_3, c62_4, c63_3, c64_2, c65_2, c66_2, c67_1, c68_1, c69_1, c70_1, c71_1, c72_1, c73_1, c74_1, c75_1, c76_1, c77_1, c78_1, c79_1, c80_1, c81_1, c82_1, c83_1, c84_1, c85_1, c86_1, c87_1, c88_1, c89_1, c90_1, c91_1, c92_1, c93_1, c94_1, c95_1, c96_1, c97_1, c98_1, c99_1, c100_1, c101_1, c102_1, c34_1, c35_2, c44_3, c46_3, c47_3, c49_3, c50_2, c51_4, c54, c56, c60, c_1, c4_2, c4_1, c5_2, c5_1, c6_3, c6_2, c7_3, c7_2, c8_2, c9_2, c10_2, c11_5, c11_4, c12_3, c12_2, c13_3, c13_2, c14_2, c15_2, c16_2 ---------------------------------------- (91) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 4 trailing nodes: ENCARG(cons_isNatIList(nil)) -> c16(ISNATILIST(nil), ENCARG(nil)) ENCARG(cons_isNatIList(tt)) -> c16(ISNATILIST(tt), ENCARG(tt)) ENCARG(cons_isNatIList(0)) -> c16(ISNATILIST(0), ENCARG(0)) ENCARG(cons_isNatIList(zeros)) -> c16(ISNATILIST(zeros), ENCARG(zeros)) ---------------------------------------- (92) Obligation: Complexity Dependency Tuples Problem Rules: encArg(zeros) -> zeros encArg(0) -> 0 encArg(tt) -> tt encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_U11(z0, z1)) -> U11(encArg(z0), encArg(z1)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_length(z0)) -> length(encArg(z0)) encArg(cons_U21(z0)) -> U21(encArg(z0)) encArg(cons_U31(z0, z1, z2, z3)) -> U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_isNat(z0)) -> isNat(encArg(z0)) encArg(cons_isNatList(z0)) -> isNatList(encArg(z0)) encArg(cons_isNatIList(z0)) -> isNatIList(encArg(z0)) active(zeros) -> mark(cons(0, zeros)) active(U11(tt, z0)) -> mark(s(length(z0))) active(U21(tt)) -> mark(nil) active(U31(tt, z0, z1, z2)) -> mark(cons(z2, take(z1, z0))) active(and(tt, z0)) -> mark(z0) active(isNat(0)) -> mark(tt) active(isNat(length(z0))) -> mark(isNatList(z0)) active(isNat(s(z0))) -> mark(isNat(z0)) active(isNatIList(z0)) -> mark(isNatList(z0)) active(isNatIList(zeros)) -> mark(tt) active(isNatIList(cons(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(isNatList(nil)) -> mark(tt) active(isNatList(cons(z0, z1))) -> mark(and(isNat(z0), isNatList(z1))) active(isNatList(take(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(length(nil)) -> mark(0) active(length(cons(z0, z1))) -> mark(U11(and(isNatList(z1), isNat(z0)), z1)) active(take(0, z0)) -> mark(U21(isNatIList(z0))) active(take(s(z0), cons(z1, z2))) -> mark(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)) mark(zeros) -> active(zeros) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(0) -> active(0) mark(U11(z0, z1)) -> active(U11(mark(z0), z1)) mark(tt) -> active(tt) mark(s(z0)) -> active(s(mark(z0))) mark(length(z0)) -> active(length(mark(z0))) mark(U21(z0)) -> active(U21(mark(z0))) mark(nil) -> active(nil) mark(U31(z0, z1, z2, z3)) -> active(U31(mark(z0), z1, z2, z3)) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(isNat(z0)) -> active(isNat(z0)) mark(isNatList(z0)) -> active(isNatList(z0)) mark(isNatIList(z0)) -> active(isNatIList(z0)) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) U11(mark(z0), z1) -> U11(z0, z1) U11(z0, mark(z1)) -> U11(z0, z1) U11(active(z0), z1) -> U11(z0, z1) U11(z0, active(z1)) -> U11(z0, z1) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) length(mark(z0)) -> length(z0) length(active(z0)) -> length(z0) U21(mark(z0)) -> U21(z0) U21(active(z0)) -> U21(z0) U31(mark(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, mark(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, mark(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, mark(z3)) -> U31(z0, z1, z2, z3) U31(active(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, active(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, active(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, active(z3)) -> U31(z0, z1, z2, z3) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) isNat(mark(z0)) -> isNat(z0) isNat(active(z0)) -> isNat(z0) isNatList(mark(z0)) -> isNatList(z0) isNatList(active(z0)) -> isNatList(z0) isNatIList(mark(z0)) -> isNatIList(z0) isNatIList(active(z0)) -> isNatIList(z0) Tuples: ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(cons(z0, z1)) -> c53(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(mark(z0), z1)), U11'(mark(z0), z1), MARK(z0)) MARK(s(z0)) -> c57(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(mark(z0))), LENGTH(mark(z0)), MARK(z0)) MARK(U21(z0)) -> c59(ACTIVE(U21(mark(z0))), U21'(mark(z0)), MARK(z0)) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(mark(z0), z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(take(z0, z1)) -> c62(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 ENCODE_ACTIVE(z0) -> c(ACTIVE(encArg(z0))) ENCODE_MARK(z0) -> c(MARK(encArg(z0))) ENCODE_CONS(z0, z1) -> c(CONS(encArg(z0), encArg(z1))) ENCODE_U11(z0, z1) -> c(U11'(encArg(z0), encArg(z1))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_LENGTH(z0) -> c(LENGTH(encArg(z0))) ENCODE_U21(z0) -> c(U21'(encArg(z0))) ENCODE_U31(z0, z1, z2, z3) -> c(U31'(encArg(z0), encArg(z1), encArg(z2), encArg(z3))) ENCODE_TAKE(z0, z1) -> c(TAKE(encArg(z0), encArg(z1))) ENCODE_AND(z0, z1) -> c(AND(encArg(z0), encArg(z1))) ENCODE_ISNAT(z0) -> c(ISNAT(encArg(z0))) ENCODE_ISNATLIST(z0) -> c(ISNATLIST(encArg(z0))) ENCODE_ISNATILIST(z0) -> c(ISNATILIST(encArg(z0))) ENCARG(cons_active(cons_active(z0))) -> c4(ACTIVE(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_active(cons_mark(z0))) -> c4(ACTIVE(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_active(cons_cons(z0, z1))) -> c4(ACTIVE(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_active(cons_U11(z0, z1))) -> c4(ACTIVE(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_active(cons_s(z0))) -> c4(ACTIVE(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_active(cons_length(z0))) -> c4(ACTIVE(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_active(cons_U21(z0))) -> c4(ACTIVE(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_active(cons_U31(z0, z1, z2, z3))) -> c4(ACTIVE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_active(cons_take(z0, z1))) -> c4(ACTIVE(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_active(cons_and(z0, z1))) -> c4(ACTIVE(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_active(cons_isNat(z0))) -> c4(ACTIVE(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_active(cons_isNatList(z0))) -> c4(ACTIVE(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_active(cons_isNatIList(z0))) -> c4(ACTIVE(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_active(zeros)) -> c4(ACTIVE(zeros)) ENCARG(cons_mark(cons_active(z0))) -> c5(MARK(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_mark(cons_mark(z0))) -> c5(MARK(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_mark(cons_cons(z0, z1))) -> c5(MARK(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_mark(cons_U11(z0, z1))) -> c5(MARK(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_mark(cons_s(z0))) -> c5(MARK(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_mark(cons_length(z0))) -> c5(MARK(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_mark(cons_U21(z0))) -> c5(MARK(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_mark(cons_U31(z0, z1, z2, z3))) -> c5(MARK(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_mark(cons_take(z0, z1))) -> c5(MARK(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(cons_and(z0, z1))) -> c5(MARK(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_mark(cons_isNat(z0))) -> c5(MARK(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_mark(cons_isNatList(z0))) -> c5(MARK(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_mark(cons_isNatIList(z0))) -> c5(MARK(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_mark(zeros)) -> c5(MARK(zeros)) ENCARG(cons_mark(0)) -> c5(MARK(0)) ENCARG(cons_mark(tt)) -> c5(MARK(tt)) ENCARG(cons_mark(nil)) -> c5(MARK(nil)) ENCARG(cons_cons(x0, cons_active(z0))) -> c6(CONS(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_cons(x0, cons_mark(z0))) -> c6(CONS(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_cons(x0, cons_cons(z0, z1))) -> c6(CONS(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_cons(x0, cons_U11(z0, z1))) -> c6(CONS(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_cons(x0, cons_s(z0))) -> c6(CONS(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_cons(x0, cons_length(z0))) -> c6(CONS(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_cons(x0, cons_U21(z0))) -> c6(CONS(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_cons(x0, cons_U31(z0, z1, z2, z3))) -> c6(CONS(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_cons(x0, cons_take(z0, z1))) -> c6(CONS(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_cons(x0, cons_and(z0, z1))) -> c6(CONS(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_cons(x0, cons_isNat(z0))) -> c6(CONS(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_cons(x0, cons_isNatList(z0))) -> c6(CONS(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_cons(x0, cons_isNatIList(z0))) -> c6(CONS(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_cons(cons_active(z0), x1)) -> c6(CONS(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_mark(z0), x1)) -> c6(CONS(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_cons(z0, z1), x1)) -> c6(CONS(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_U11(z0, z1), x1)) -> c6(CONS(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_s(z0), x1)) -> c6(CONS(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_length(z0), x1)) -> c6(CONS(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U21(z0), x1)) -> c6(CONS(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U31(z0, z1, z2, z3), x1)) -> c6(CONS(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_cons(cons_take(z0, z1), x1)) -> c6(CONS(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_and(z0, z1), x1)) -> c6(CONS(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_isNat(z0), x1)) -> c6(CONS(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_isNatList(z0), x1)) -> c6(CONS(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_isNatIList(z0), x1)) -> c6(CONS(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_cons(x0, zeros)) -> c6(CONS(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_cons(x0, 0)) -> c6(CONS(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_cons(x0, tt)) -> c6(CONS(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_cons(x0, nil)) -> c6(CONS(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_cons(zeros, x1)) -> c6(CONS(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(0, x1)) -> c6(CONS(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(tt, x1)) -> c6(CONS(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(nil, x1)) -> c6(CONS(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(x0, cons_active(z0))) -> c7(U11'(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_U11(x0, cons_mark(z0))) -> c7(U11'(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_U11(x0, cons_cons(z0, z1))) -> c7(U11'(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U11(x0, cons_U11(z0, z1))) -> c7(U11'(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U11(x0, cons_s(z0))) -> c7(U11'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_U11(x0, cons_length(z0))) -> c7(U11'(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_U11(x0, cons_U21(z0))) -> c7(U11'(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_U11(x0, cons_U31(z0, z1, z2, z3))) -> c7(U11'(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U11(x0, cons_take(z0, z1))) -> c7(U11'(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_U11(x0, cons_and(z0, z1))) -> c7(U11'(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_U11(x0, cons_isNat(z0))) -> c7(U11'(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_U11(x0, cons_isNatList(z0))) -> c7(U11'(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_U11(x0, cons_isNatIList(z0))) -> c7(U11'(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U11(cons_active(z0), x1)) -> c7(U11'(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_mark(z0), x1)) -> c7(U11'(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_cons(z0, z1), x1)) -> c7(U11'(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_U11(z0, z1), x1)) -> c7(U11'(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_s(z0), x1)) -> c7(U11'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_length(z0), x1)) -> c7(U11'(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_U21(z0), x1)) -> c7(U11'(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_U31(z0, z1, z2, z3), x1)) -> c7(U11'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_U11(cons_take(z0, z1), x1)) -> c7(U11'(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_and(z0, z1), x1)) -> c7(U11'(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_isNat(z0), x1)) -> c7(U11'(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_isNatList(z0), x1)) -> c7(U11'(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_isNatIList(z0), x1)) -> c7(U11'(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_U11(x0, zeros)) -> c7(U11'(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_U11(x0, 0)) -> c7(U11'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_U11(x0, tt)) -> c7(U11'(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_U11(x0, nil)) -> c7(U11'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_U11(zeros, x1)) -> c7(U11'(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(0, x1)) -> c7(U11'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(tt, x1)) -> c7(U11'(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(nil, x1)) -> c7(U11'(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_s(cons_active(z0))) -> c8(S(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_s(cons_mark(z0))) -> c8(S(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_s(cons_cons(z0, z1))) -> c8(S(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_s(cons_U11(z0, z1))) -> c8(S(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_s(cons_s(z0))) -> c8(S(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_length(z0))) -> c8(S(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_s(cons_U21(z0))) -> c8(S(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_s(cons_U31(z0, z1, z2, z3))) -> c8(S(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_s(cons_take(z0, z1))) -> c8(S(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_s(cons_and(z0, z1))) -> c8(S(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_s(cons_isNat(z0))) -> c8(S(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_s(cons_isNatList(z0))) -> c8(S(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_s(cons_isNatIList(z0))) -> c8(S(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_length(cons_active(z0))) -> c9(LENGTH(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_length(cons_mark(z0))) -> c9(LENGTH(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_length(cons_cons(z0, z1))) -> c9(LENGTH(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_length(cons_U11(z0, z1))) -> c9(LENGTH(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_length(cons_s(z0))) -> c9(LENGTH(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_length(cons_length(z0))) -> c9(LENGTH(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_length(cons_U21(z0))) -> c9(LENGTH(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_length(cons_U31(z0, z1, z2, z3))) -> c9(LENGTH(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_length(cons_take(z0, z1))) -> c9(LENGTH(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_length(cons_and(z0, z1))) -> c9(LENGTH(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_length(cons_isNat(z0))) -> c9(LENGTH(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_length(cons_isNatList(z0))) -> c9(LENGTH(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_length(cons_isNatIList(z0))) -> c9(LENGTH(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U21(cons_active(z0))) -> c10(U21'(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_U21(cons_mark(z0))) -> c10(U21'(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_U21(cons_cons(z0, z1))) -> c10(U21'(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U21(cons_U11(z0, z1))) -> c10(U21'(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U21(cons_s(z0))) -> c10(U21'(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_U21(cons_length(z0))) -> c10(U21'(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_U21(cons_U21(z0))) -> c10(U21'(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_U21(cons_U31(z0, z1, z2, z3))) -> c10(U21'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U21(cons_take(z0, z1))) -> c10(U21'(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_U21(cons_and(z0, z1))) -> c10(U21'(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_U21(cons_isNat(z0))) -> c10(U21'(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_U21(cons_isNatList(z0))) -> c10(U21'(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_U21(cons_isNatIList(z0))) -> c10(U21'(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U31(x0, x1, x2, cons_active(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), active(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_active(z0))) ENCARG(cons_U31(x0, x1, x2, cons_mark(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), mark(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_mark(z0))) ENCARG(cons_U31(x0, x1, x2, cons_cons(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_U11(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_s(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), s(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_s(z0))) ENCARG(cons_U31(x0, x1, x2, cons_length(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), length(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_length(z0))) ENCARG(cons_U31(x0, x1, x2, cons_U21(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U21(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U21(z0))) ENCARG(cons_U31(x0, x1, x2, cons_U31(z0, z1, z2, z3))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U31(x0, x1, x2, cons_take(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_take(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_and(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_and(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_isNat(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNat(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNat(z0))) ENCARG(cons_U31(x0, x1, x2, cons_isNatList(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNatList(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNatList(z0))) ENCARG(cons_U31(x0, x1, x2, cons_isNatIList(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U31(x0, x1, cons_active(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), active(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_active(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_mark(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), mark(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_mark(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_cons(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), cons(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_cons(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U11(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), U11(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U11(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_s(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), s(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_s(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_length(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), length(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_length(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U21(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), U21(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U21(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U31(z0, z1, z2, z3), x3)) -> c11(U31'(encArg(x0), encArg(x1), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_take(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), take(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_take(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_and(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), and(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_and(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNat(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNat(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNat(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNatList(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNatList(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNatList(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNatIList(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNatIList(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNatIList(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, cons_active(z0), x2, x3)) -> c11(U31'(encArg(x0), active(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_active(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_mark(z0), x2, x3)) -> c11(U31'(encArg(x0), mark(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_mark(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_cons(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), cons(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_cons(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U11(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), U11(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U11(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_s(z0), x2, x3)) -> c11(U31'(encArg(x0), s(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_s(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_length(z0), x2, x3)) -> c11(U31'(encArg(x0), length(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_length(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U21(z0), x2, x3)) -> c11(U31'(encArg(x0), U21(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U21(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U31(z0, z1, z2, z3), x2, x3)) -> c11(U31'(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_take(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), take(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_take(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_and(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), and(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_and(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNat(z0), x2, x3)) -> c11(U31'(encArg(x0), isNat(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNat(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNatList(z0), x2, x3)) -> c11(U31'(encArg(x0), isNatList(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNatList(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNatIList(z0), x2, x3)) -> c11(U31'(encArg(x0), isNatIList(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNatIList(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_active(z0), x1, x2, x3)) -> c11(U31'(active(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_active(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_mark(z0), x1, x2, x3)) -> c11(U31'(mark(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_mark(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_cons(z0, z1), x1, x2, x3)) -> c11(U31'(cons(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_cons(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U11(z0, z1), x1, x2, x3)) -> c11(U31'(U11(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U11(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_s(z0), x1, x2, x3)) -> c11(U31'(s(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_s(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_length(z0), x1, x2, x3)) -> c11(U31'(length(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_length(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U21(z0), x1, x2, x3)) -> c11(U31'(U21(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U21(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U31(z0, z1, z2, z3), x1, x2, x3)) -> c11(U31'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_take(z0, z1), x1, x2, x3)) -> c11(U31'(take(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_take(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_and(z0, z1), x1, x2, x3)) -> c11(U31'(and(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_and(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNat(z0), x1, x2, x3)) -> c11(U31'(isNat(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNat(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNatList(z0), x1, x2, x3)) -> c11(U31'(isNatList(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNatList(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNatIList(z0), x1, x2, x3)) -> c11(U31'(isNatIList(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNatIList(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, x1, x2, zeros)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), zeros), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, 0)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), 0), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, tt)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), tt), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, nil)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), nil), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, zeros, x3)) -> c11(U31'(encArg(x0), encArg(x1), zeros, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, 0, x3)) -> c11(U31'(encArg(x0), encArg(x1), 0, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, tt, x3)) -> c11(U31'(encArg(x0), encArg(x1), tt, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, nil, x3)) -> c11(U31'(encArg(x0), encArg(x1), nil, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, zeros, x2, x3)) -> c11(U31'(encArg(x0), zeros, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, 0, x2, x3)) -> c11(U31'(encArg(x0), 0, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, tt, x2, x3)) -> c11(U31'(encArg(x0), tt, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, nil, x2, x3)) -> c11(U31'(encArg(x0), nil, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(zeros, x1, x2, x3)) -> c11(U31'(zeros, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(0, x1, x2, x3)) -> c11(U31'(0, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(tt, x1, x2, x3)) -> c11(U31'(tt, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(nil, x1, x2, x3)) -> c11(U31'(nil, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_take(x0, cons_active(z0))) -> c12(TAKE(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_take(x0, cons_mark(z0))) -> c12(TAKE(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_take(x0, cons_cons(z0, z1))) -> c12(TAKE(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_take(x0, cons_U11(z0, z1))) -> c12(TAKE(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_take(x0, cons_s(z0))) -> c12(TAKE(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_take(x0, cons_length(z0))) -> c12(TAKE(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_take(x0, cons_U21(z0))) -> c12(TAKE(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_take(x0, cons_U31(z0, z1, z2, z3))) -> c12(TAKE(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_take(x0, cons_take(z0, z1))) -> c12(TAKE(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_take(x0, cons_and(z0, z1))) -> c12(TAKE(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_take(x0, cons_isNat(z0))) -> c12(TAKE(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_take(x0, cons_isNatList(z0))) -> c12(TAKE(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_take(x0, cons_isNatIList(z0))) -> c12(TAKE(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_take(cons_active(z0), x1)) -> c12(TAKE(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_take(cons_mark(z0), x1)) -> c12(TAKE(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_take(cons_cons(z0, z1), x1)) -> c12(TAKE(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_U11(z0, z1), x1)) -> c12(TAKE(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_s(z0), x1)) -> c12(TAKE(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_take(cons_length(z0), x1)) -> c12(TAKE(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_take(cons_U21(z0), x1)) -> c12(TAKE(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_take(cons_U31(z0, z1, z2, z3), x1)) -> c12(TAKE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_take(cons_take(z0, z1), x1)) -> c12(TAKE(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_and(z0, z1), x1)) -> c12(TAKE(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_isNat(z0), x1)) -> c12(TAKE(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_take(cons_isNatList(z0), x1)) -> c12(TAKE(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_take(cons_isNatIList(z0), x1)) -> c12(TAKE(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_take(x0, zeros)) -> c12(TAKE(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_take(x0, 0)) -> c12(TAKE(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_take(x0, tt)) -> c12(TAKE(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_take(x0, nil)) -> c12(TAKE(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_take(zeros, x1)) -> c12(TAKE(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(0, x1)) -> c12(TAKE(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(tt, x1)) -> c12(TAKE(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(nil, x1)) -> c12(TAKE(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(x0, cons_active(z0))) -> c13(AND(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_and(x0, cons_mark(z0))) -> c13(AND(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_and(x0, cons_cons(z0, z1))) -> c13(AND(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_and(x0, cons_U11(z0, z1))) -> c13(AND(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_and(x0, cons_s(z0))) -> c13(AND(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_and(x0, cons_length(z0))) -> c13(AND(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_and(x0, cons_U21(z0))) -> c13(AND(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_and(x0, cons_U31(z0, z1, z2, z3))) -> c13(AND(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_and(x0, cons_take(z0, z1))) -> c13(AND(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_and(x0, cons_and(z0, z1))) -> c13(AND(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_and(x0, cons_isNat(z0))) -> c13(AND(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_and(x0, cons_isNatList(z0))) -> c13(AND(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_and(x0, cons_isNatIList(z0))) -> c13(AND(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_and(cons_active(z0), x1)) -> c13(AND(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_and(cons_mark(z0), x1)) -> c13(AND(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_and(cons_cons(z0, z1), x1)) -> c13(AND(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_U11(z0, z1), x1)) -> c13(AND(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_s(z0), x1)) -> c13(AND(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_and(cons_length(z0), x1)) -> c13(AND(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_and(cons_U21(z0), x1)) -> c13(AND(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_and(cons_U31(z0, z1, z2, z3), x1)) -> c13(AND(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_and(cons_take(z0, z1), x1)) -> c13(AND(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_and(z0, z1), x1)) -> c13(AND(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_isNat(z0), x1)) -> c13(AND(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_and(cons_isNatList(z0), x1)) -> c13(AND(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_and(cons_isNatIList(z0), x1)) -> c13(AND(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_and(x0, zeros)) -> c13(AND(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_and(x0, 0)) -> c13(AND(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_and(x0, tt)) -> c13(AND(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_and(x0, nil)) -> c13(AND(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_and(zeros, x1)) -> c13(AND(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(0, x1)) -> c13(AND(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(tt, x1)) -> c13(AND(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(nil, x1)) -> c13(AND(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_isNat(cons_active(z0))) -> c14(ISNAT(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_isNat(cons_mark(z0))) -> c14(ISNAT(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_isNat(cons_cons(z0, z1))) -> c14(ISNAT(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_isNat(cons_U11(z0, z1))) -> c14(ISNAT(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_isNat(cons_s(z0))) -> c14(ISNAT(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_isNat(cons_length(z0))) -> c14(ISNAT(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_isNat(cons_U21(z0))) -> c14(ISNAT(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_isNat(cons_U31(z0, z1, z2, z3))) -> c14(ISNAT(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_isNat(cons_take(z0, z1))) -> c14(ISNAT(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_isNat(cons_and(z0, z1))) -> c14(ISNAT(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_isNat(cons_isNat(z0))) -> c14(ISNAT(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_isNat(cons_isNatList(z0))) -> c14(ISNAT(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_isNat(cons_isNatIList(z0))) -> c14(ISNAT(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_isNatList(cons_active(z0))) -> c15(ISNATLIST(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_isNatList(cons_mark(z0))) -> c15(ISNATLIST(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_isNatList(cons_cons(z0, z1))) -> c15(ISNATLIST(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_isNatList(cons_U11(z0, z1))) -> c15(ISNATLIST(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_isNatList(cons_s(z0))) -> c15(ISNATLIST(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_isNatList(cons_length(z0))) -> c15(ISNATLIST(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_isNatList(cons_U21(z0))) -> c15(ISNATLIST(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_isNatList(cons_U31(z0, z1, z2, z3))) -> c15(ISNATLIST(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_isNatList(cons_take(z0, z1))) -> c15(ISNATLIST(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_isNatList(cons_and(z0, z1))) -> c15(ISNATLIST(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_isNatList(cons_isNat(z0))) -> c15(ISNATLIST(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_isNatList(cons_isNatList(z0))) -> c15(ISNATLIST(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_isNatList(cons_isNatIList(z0))) -> c15(ISNATLIST(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_isNatIList(cons_active(z0))) -> c16(ISNATILIST(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_isNatIList(cons_mark(z0))) -> c16(ISNATILIST(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_isNatIList(cons_cons(z0, z1))) -> c16(ISNATILIST(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_isNatIList(cons_U11(z0, z1))) -> c16(ISNATILIST(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_isNatIList(cons_s(z0))) -> c16(ISNATILIST(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_isNatIList(cons_length(z0))) -> c16(ISNATILIST(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_isNatIList(cons_U21(z0))) -> c16(ISNATILIST(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_isNatIList(cons_U31(z0, z1, z2, z3))) -> c16(ISNATILIST(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_isNatIList(cons_take(z0, z1))) -> c16(ISNATILIST(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_isNatIList(cons_and(z0, z1))) -> c16(ISNATILIST(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_isNatIList(cons_isNat(z0))) -> c16(ISNATILIST(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_isNatIList(cons_isNatList(z0))) -> c16(ISNATILIST(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_isNatIList(cons_isNatIList(z0))) -> c16(ISNATILIST(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) S tuples: ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(cons(z0, z1)) -> c53(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(mark(z0), z1)), U11'(mark(z0), z1), MARK(z0)) MARK(s(z0)) -> c57(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(mark(z0))), LENGTH(mark(z0)), MARK(z0)) MARK(U21(z0)) -> c59(ACTIVE(U21(mark(z0))), U21'(mark(z0)), MARK(z0)) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(mark(z0), z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(take(z0, z1)) -> c62(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 K tuples:none Defined Rule Symbols: encArg_1, active_1, mark_1, cons_2, U11_2, s_1, length_1, U21_1, U31_4, take_2, and_2, isNat_1, isNatList_1, isNatIList_1 Defined Pair Symbols: ACTIVE_1, MARK_1, CONS_2, U11'_2, S_1, LENGTH_1, U21'_1, U31'_4, TAKE_2, AND_2, ISNAT_1, ISNATLIST_1, ISNATILIST_1, ENCODE_ACTIVE_1, ENCODE_MARK_1, ENCODE_CONS_2, ENCODE_U11_2, ENCODE_S_1, ENCODE_LENGTH_1, ENCODE_U21_1, ENCODE_U31_4, ENCODE_TAKE_2, ENCODE_AND_2, ENCODE_ISNAT_1, ENCODE_ISNATLIST_1, ENCODE_ISNATILIST_1, ENCARG_1 Compound Symbols: c36_1, c37_3, c38_1, c39_1, c40_2, c41_2, c42_2, c43_1, c45_1, c48_1, c52_1, c53_3, c55_3, c57_3, c58_3, c59_3, c61_3, c62_4, c63_3, c64_2, c65_2, c66_2, c67_1, c68_1, c69_1, c70_1, c71_1, c72_1, c73_1, c74_1, c75_1, c76_1, c77_1, c78_1, c79_1, c80_1, c81_1, c82_1, c83_1, c84_1, c85_1, c86_1, c87_1, c88_1, c89_1, c90_1, c91_1, c92_1, c93_1, c94_1, c95_1, c96_1, c97_1, c98_1, c99_1, c100_1, c101_1, c102_1, c34_1, c35_2, c44_3, c46_3, c47_3, c49_3, c50_2, c51_4, c54, c56, c60, c_1, c4_2, c4_1, c5_2, c5_1, c6_3, c6_2, c7_3, c7_2, c8_2, c9_2, c10_2, c11_5, c11_4, c12_3, c12_2, c13_3, c13_2, c14_2, c15_2, c16_2 ---------------------------------------- (93) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace MARK(cons(z0, z1)) -> c53(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) by MARK(cons(z0, z1)) -> c53(ACTIVE(cons(z0, z1)), CONS(mark(z0), z1), MARK(z0)) MARK(cons(zeros, x1)) -> c53(ACTIVE(cons(active(zeros), x1)), CONS(mark(zeros), x1), MARK(zeros)) MARK(cons(cons(z0, z1), x1)) -> c53(ACTIVE(cons(active(cons(mark(z0), z1)), x1)), CONS(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(cons(0, x1)) -> c53(ACTIVE(cons(active(0), x1)), CONS(mark(0), x1), MARK(0)) MARK(cons(U11(z0, z1), x1)) -> c53(ACTIVE(cons(active(U11(mark(z0), z1)), x1)), CONS(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(cons(tt, x1)) -> c53(ACTIVE(cons(active(tt), x1)), CONS(mark(tt), x1), MARK(tt)) MARK(cons(s(z0), x1)) -> c53(ACTIVE(cons(active(s(mark(z0))), x1)), CONS(mark(s(z0)), x1), MARK(s(z0))) MARK(cons(length(z0), x1)) -> c53(ACTIVE(cons(active(length(mark(z0))), x1)), CONS(mark(length(z0)), x1), MARK(length(z0))) MARK(cons(U21(z0), x1)) -> c53(ACTIVE(cons(active(U21(mark(z0))), x1)), CONS(mark(U21(z0)), x1), MARK(U21(z0))) MARK(cons(nil, x1)) -> c53(ACTIVE(cons(active(nil), x1)), CONS(mark(nil), x1), MARK(nil)) MARK(cons(U31(z0, z1, z2, z3), x1)) -> c53(ACTIVE(cons(active(U31(mark(z0), z1, z2, z3)), x1)), CONS(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(cons(take(z0, z1), x1)) -> c53(ACTIVE(cons(active(take(mark(z0), mark(z1))), x1)), CONS(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(cons(and(z0, z1), x1)) -> c53(ACTIVE(cons(active(and(mark(z0), z1)), x1)), CONS(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(cons(isNat(z0), x1)) -> c53(ACTIVE(cons(active(isNat(z0)), x1)), CONS(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(cons(isNatList(z0), x1)) -> c53(ACTIVE(cons(active(isNatList(z0)), x1)), CONS(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(cons(isNatIList(z0), x1)) -> c53(ACTIVE(cons(active(isNatIList(z0)), x1)), CONS(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(cons(x0, x1)) -> c53(CONS(mark(x0), x1)) ---------------------------------------- (94) Obligation: Complexity Dependency Tuples Problem Rules: encArg(zeros) -> zeros encArg(0) -> 0 encArg(tt) -> tt encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_U11(z0, z1)) -> U11(encArg(z0), encArg(z1)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_length(z0)) -> length(encArg(z0)) encArg(cons_U21(z0)) -> U21(encArg(z0)) encArg(cons_U31(z0, z1, z2, z3)) -> U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_isNat(z0)) -> isNat(encArg(z0)) encArg(cons_isNatList(z0)) -> isNatList(encArg(z0)) encArg(cons_isNatIList(z0)) -> isNatIList(encArg(z0)) active(zeros) -> mark(cons(0, zeros)) active(U11(tt, z0)) -> mark(s(length(z0))) active(U21(tt)) -> mark(nil) active(U31(tt, z0, z1, z2)) -> mark(cons(z2, take(z1, z0))) active(and(tt, z0)) -> mark(z0) active(isNat(0)) -> mark(tt) active(isNat(length(z0))) -> mark(isNatList(z0)) active(isNat(s(z0))) -> mark(isNat(z0)) active(isNatIList(z0)) -> mark(isNatList(z0)) active(isNatIList(zeros)) -> mark(tt) active(isNatIList(cons(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(isNatList(nil)) -> mark(tt) active(isNatList(cons(z0, z1))) -> mark(and(isNat(z0), isNatList(z1))) active(isNatList(take(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(length(nil)) -> mark(0) active(length(cons(z0, z1))) -> mark(U11(and(isNatList(z1), isNat(z0)), z1)) active(take(0, z0)) -> mark(U21(isNatIList(z0))) active(take(s(z0), cons(z1, z2))) -> mark(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)) mark(zeros) -> active(zeros) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(0) -> active(0) mark(U11(z0, z1)) -> active(U11(mark(z0), z1)) mark(tt) -> active(tt) mark(s(z0)) -> active(s(mark(z0))) mark(length(z0)) -> active(length(mark(z0))) mark(U21(z0)) -> active(U21(mark(z0))) mark(nil) -> active(nil) mark(U31(z0, z1, z2, z3)) -> active(U31(mark(z0), z1, z2, z3)) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(isNat(z0)) -> active(isNat(z0)) mark(isNatList(z0)) -> active(isNatList(z0)) mark(isNatIList(z0)) -> active(isNatIList(z0)) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) U11(mark(z0), z1) -> U11(z0, z1) U11(z0, mark(z1)) -> U11(z0, z1) U11(active(z0), z1) -> U11(z0, z1) U11(z0, active(z1)) -> U11(z0, z1) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) length(mark(z0)) -> length(z0) length(active(z0)) -> length(z0) U21(mark(z0)) -> U21(z0) U21(active(z0)) -> U21(z0) U31(mark(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, mark(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, mark(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, mark(z3)) -> U31(z0, z1, z2, z3) U31(active(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, active(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, active(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, active(z3)) -> U31(z0, z1, z2, z3) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) isNat(mark(z0)) -> isNat(z0) isNat(active(z0)) -> isNat(z0) isNatList(mark(z0)) -> isNatList(z0) isNatList(active(z0)) -> isNatList(z0) isNatIList(mark(z0)) -> isNatIList(z0) isNatIList(active(z0)) -> isNatIList(z0) Tuples: ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(mark(z0), z1)), U11'(mark(z0), z1), MARK(z0)) MARK(s(z0)) -> c57(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(mark(z0))), LENGTH(mark(z0)), MARK(z0)) MARK(U21(z0)) -> c59(ACTIVE(U21(mark(z0))), U21'(mark(z0)), MARK(z0)) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(mark(z0), z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(take(z0, z1)) -> c62(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 ENCODE_ACTIVE(z0) -> c(ACTIVE(encArg(z0))) ENCODE_MARK(z0) -> c(MARK(encArg(z0))) ENCODE_CONS(z0, z1) -> c(CONS(encArg(z0), encArg(z1))) ENCODE_U11(z0, z1) -> c(U11'(encArg(z0), encArg(z1))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_LENGTH(z0) -> c(LENGTH(encArg(z0))) ENCODE_U21(z0) -> c(U21'(encArg(z0))) ENCODE_U31(z0, z1, z2, z3) -> c(U31'(encArg(z0), encArg(z1), encArg(z2), encArg(z3))) ENCODE_TAKE(z0, z1) -> c(TAKE(encArg(z0), encArg(z1))) ENCODE_AND(z0, z1) -> c(AND(encArg(z0), encArg(z1))) ENCODE_ISNAT(z0) -> c(ISNAT(encArg(z0))) ENCODE_ISNATLIST(z0) -> c(ISNATLIST(encArg(z0))) ENCODE_ISNATILIST(z0) -> c(ISNATILIST(encArg(z0))) ENCARG(cons_active(cons_active(z0))) -> c4(ACTIVE(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_active(cons_mark(z0))) -> c4(ACTIVE(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_active(cons_cons(z0, z1))) -> c4(ACTIVE(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_active(cons_U11(z0, z1))) -> c4(ACTIVE(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_active(cons_s(z0))) -> c4(ACTIVE(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_active(cons_length(z0))) -> c4(ACTIVE(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_active(cons_U21(z0))) -> c4(ACTIVE(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_active(cons_U31(z0, z1, z2, z3))) -> c4(ACTIVE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_active(cons_take(z0, z1))) -> c4(ACTIVE(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_active(cons_and(z0, z1))) -> c4(ACTIVE(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_active(cons_isNat(z0))) -> c4(ACTIVE(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_active(cons_isNatList(z0))) -> c4(ACTIVE(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_active(cons_isNatIList(z0))) -> c4(ACTIVE(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_active(zeros)) -> c4(ACTIVE(zeros)) ENCARG(cons_mark(cons_active(z0))) -> c5(MARK(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_mark(cons_mark(z0))) -> c5(MARK(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_mark(cons_cons(z0, z1))) -> c5(MARK(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_mark(cons_U11(z0, z1))) -> c5(MARK(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_mark(cons_s(z0))) -> c5(MARK(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_mark(cons_length(z0))) -> c5(MARK(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_mark(cons_U21(z0))) -> c5(MARK(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_mark(cons_U31(z0, z1, z2, z3))) -> c5(MARK(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_mark(cons_take(z0, z1))) -> c5(MARK(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(cons_and(z0, z1))) -> c5(MARK(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_mark(cons_isNat(z0))) -> c5(MARK(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_mark(cons_isNatList(z0))) -> c5(MARK(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_mark(cons_isNatIList(z0))) -> c5(MARK(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_mark(zeros)) -> c5(MARK(zeros)) ENCARG(cons_mark(0)) -> c5(MARK(0)) ENCARG(cons_mark(tt)) -> c5(MARK(tt)) ENCARG(cons_mark(nil)) -> c5(MARK(nil)) ENCARG(cons_cons(x0, cons_active(z0))) -> c6(CONS(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_cons(x0, cons_mark(z0))) -> c6(CONS(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_cons(x0, cons_cons(z0, z1))) -> c6(CONS(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_cons(x0, cons_U11(z0, z1))) -> c6(CONS(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_cons(x0, cons_s(z0))) -> c6(CONS(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_cons(x0, cons_length(z0))) -> c6(CONS(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_cons(x0, cons_U21(z0))) -> c6(CONS(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_cons(x0, cons_U31(z0, z1, z2, z3))) -> c6(CONS(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_cons(x0, cons_take(z0, z1))) -> c6(CONS(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_cons(x0, cons_and(z0, z1))) -> c6(CONS(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_cons(x0, cons_isNat(z0))) -> c6(CONS(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_cons(x0, cons_isNatList(z0))) -> c6(CONS(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_cons(x0, cons_isNatIList(z0))) -> c6(CONS(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_cons(cons_active(z0), x1)) -> c6(CONS(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_mark(z0), x1)) -> c6(CONS(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_cons(z0, z1), x1)) -> c6(CONS(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_U11(z0, z1), x1)) -> c6(CONS(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_s(z0), x1)) -> c6(CONS(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_length(z0), x1)) -> c6(CONS(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U21(z0), x1)) -> c6(CONS(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U31(z0, z1, z2, z3), x1)) -> c6(CONS(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_cons(cons_take(z0, z1), x1)) -> c6(CONS(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_and(z0, z1), x1)) -> c6(CONS(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_isNat(z0), x1)) -> c6(CONS(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_isNatList(z0), x1)) -> c6(CONS(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_isNatIList(z0), x1)) -> c6(CONS(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_cons(x0, zeros)) -> c6(CONS(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_cons(x0, 0)) -> c6(CONS(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_cons(x0, tt)) -> c6(CONS(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_cons(x0, nil)) -> c6(CONS(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_cons(zeros, x1)) -> c6(CONS(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(0, x1)) -> c6(CONS(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(tt, x1)) -> c6(CONS(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(nil, x1)) -> c6(CONS(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(x0, cons_active(z0))) -> c7(U11'(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_U11(x0, cons_mark(z0))) -> c7(U11'(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_U11(x0, cons_cons(z0, z1))) -> c7(U11'(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U11(x0, cons_U11(z0, z1))) -> c7(U11'(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U11(x0, cons_s(z0))) -> c7(U11'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_U11(x0, cons_length(z0))) -> c7(U11'(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_U11(x0, cons_U21(z0))) -> c7(U11'(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_U11(x0, cons_U31(z0, z1, z2, z3))) -> c7(U11'(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U11(x0, cons_take(z0, z1))) -> c7(U11'(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_U11(x0, cons_and(z0, z1))) -> c7(U11'(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_U11(x0, cons_isNat(z0))) -> c7(U11'(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_U11(x0, cons_isNatList(z0))) -> c7(U11'(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_U11(x0, cons_isNatIList(z0))) -> c7(U11'(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U11(cons_active(z0), x1)) -> c7(U11'(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_mark(z0), x1)) -> c7(U11'(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_cons(z0, z1), x1)) -> c7(U11'(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_U11(z0, z1), x1)) -> c7(U11'(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_s(z0), x1)) -> c7(U11'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_length(z0), x1)) -> c7(U11'(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_U21(z0), x1)) -> c7(U11'(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_U31(z0, z1, z2, z3), x1)) -> c7(U11'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_U11(cons_take(z0, z1), x1)) -> c7(U11'(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_and(z0, z1), x1)) -> c7(U11'(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_isNat(z0), x1)) -> c7(U11'(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_isNatList(z0), x1)) -> c7(U11'(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_isNatIList(z0), x1)) -> c7(U11'(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_U11(x0, zeros)) -> c7(U11'(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_U11(x0, 0)) -> c7(U11'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_U11(x0, tt)) -> c7(U11'(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_U11(x0, nil)) -> c7(U11'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_U11(zeros, x1)) -> c7(U11'(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(0, x1)) -> c7(U11'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(tt, x1)) -> c7(U11'(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(nil, x1)) -> c7(U11'(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_s(cons_active(z0))) -> c8(S(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_s(cons_mark(z0))) -> c8(S(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_s(cons_cons(z0, z1))) -> c8(S(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_s(cons_U11(z0, z1))) -> c8(S(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_s(cons_s(z0))) -> c8(S(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_length(z0))) -> c8(S(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_s(cons_U21(z0))) -> c8(S(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_s(cons_U31(z0, z1, z2, z3))) -> c8(S(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_s(cons_take(z0, z1))) -> c8(S(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_s(cons_and(z0, z1))) -> c8(S(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_s(cons_isNat(z0))) -> c8(S(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_s(cons_isNatList(z0))) -> c8(S(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_s(cons_isNatIList(z0))) -> c8(S(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_length(cons_active(z0))) -> c9(LENGTH(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_length(cons_mark(z0))) -> c9(LENGTH(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_length(cons_cons(z0, z1))) -> c9(LENGTH(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_length(cons_U11(z0, z1))) -> c9(LENGTH(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_length(cons_s(z0))) -> c9(LENGTH(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_length(cons_length(z0))) -> c9(LENGTH(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_length(cons_U21(z0))) -> c9(LENGTH(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_length(cons_U31(z0, z1, z2, z3))) -> c9(LENGTH(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_length(cons_take(z0, z1))) -> c9(LENGTH(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_length(cons_and(z0, z1))) -> c9(LENGTH(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_length(cons_isNat(z0))) -> c9(LENGTH(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_length(cons_isNatList(z0))) -> c9(LENGTH(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_length(cons_isNatIList(z0))) -> c9(LENGTH(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U21(cons_active(z0))) -> c10(U21'(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_U21(cons_mark(z0))) -> c10(U21'(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_U21(cons_cons(z0, z1))) -> c10(U21'(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U21(cons_U11(z0, z1))) -> c10(U21'(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U21(cons_s(z0))) -> c10(U21'(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_U21(cons_length(z0))) -> c10(U21'(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_U21(cons_U21(z0))) -> c10(U21'(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_U21(cons_U31(z0, z1, z2, z3))) -> c10(U21'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U21(cons_take(z0, z1))) -> c10(U21'(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_U21(cons_and(z0, z1))) -> c10(U21'(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_U21(cons_isNat(z0))) -> c10(U21'(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_U21(cons_isNatList(z0))) -> c10(U21'(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_U21(cons_isNatIList(z0))) -> c10(U21'(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U31(x0, x1, x2, cons_active(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), active(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_active(z0))) ENCARG(cons_U31(x0, x1, x2, cons_mark(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), mark(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_mark(z0))) ENCARG(cons_U31(x0, x1, x2, cons_cons(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_U11(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_s(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), s(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_s(z0))) ENCARG(cons_U31(x0, x1, x2, cons_length(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), length(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_length(z0))) ENCARG(cons_U31(x0, x1, x2, cons_U21(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U21(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U21(z0))) ENCARG(cons_U31(x0, x1, x2, cons_U31(z0, z1, z2, z3))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U31(x0, x1, x2, cons_take(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_take(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_and(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_and(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_isNat(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNat(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNat(z0))) ENCARG(cons_U31(x0, x1, x2, cons_isNatList(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNatList(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNatList(z0))) ENCARG(cons_U31(x0, x1, x2, cons_isNatIList(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U31(x0, x1, cons_active(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), active(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_active(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_mark(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), mark(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_mark(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_cons(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), cons(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_cons(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U11(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), U11(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U11(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_s(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), s(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_s(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_length(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), length(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_length(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U21(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), U21(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U21(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U31(z0, z1, z2, z3), x3)) -> c11(U31'(encArg(x0), encArg(x1), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_take(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), take(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_take(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_and(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), and(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_and(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNat(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNat(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNat(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNatList(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNatList(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNatList(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNatIList(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNatIList(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNatIList(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, cons_active(z0), x2, x3)) -> c11(U31'(encArg(x0), active(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_active(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_mark(z0), x2, x3)) -> c11(U31'(encArg(x0), mark(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_mark(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_cons(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), cons(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_cons(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U11(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), U11(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U11(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_s(z0), x2, x3)) -> c11(U31'(encArg(x0), s(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_s(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_length(z0), x2, x3)) -> c11(U31'(encArg(x0), length(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_length(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U21(z0), x2, x3)) -> c11(U31'(encArg(x0), U21(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U21(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U31(z0, z1, z2, z3), x2, x3)) -> c11(U31'(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_take(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), take(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_take(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_and(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), and(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_and(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNat(z0), x2, x3)) -> c11(U31'(encArg(x0), isNat(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNat(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNatList(z0), x2, x3)) -> c11(U31'(encArg(x0), isNatList(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNatList(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNatIList(z0), x2, x3)) -> c11(U31'(encArg(x0), isNatIList(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNatIList(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_active(z0), x1, x2, x3)) -> c11(U31'(active(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_active(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_mark(z0), x1, x2, x3)) -> c11(U31'(mark(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_mark(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_cons(z0, z1), x1, x2, x3)) -> c11(U31'(cons(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_cons(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U11(z0, z1), x1, x2, x3)) -> c11(U31'(U11(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U11(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_s(z0), x1, x2, x3)) -> c11(U31'(s(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_s(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_length(z0), x1, x2, x3)) -> c11(U31'(length(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_length(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U21(z0), x1, x2, x3)) -> c11(U31'(U21(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U21(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U31(z0, z1, z2, z3), x1, x2, x3)) -> c11(U31'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_take(z0, z1), x1, x2, x3)) -> c11(U31'(take(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_take(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_and(z0, z1), x1, x2, x3)) -> c11(U31'(and(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_and(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNat(z0), x1, x2, x3)) -> c11(U31'(isNat(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNat(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNatList(z0), x1, x2, x3)) -> c11(U31'(isNatList(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNatList(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNatIList(z0), x1, x2, x3)) -> c11(U31'(isNatIList(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNatIList(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, x1, x2, zeros)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), zeros), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, 0)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), 0), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, tt)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), tt), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, nil)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), nil), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, zeros, x3)) -> c11(U31'(encArg(x0), encArg(x1), zeros, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, 0, x3)) -> c11(U31'(encArg(x0), encArg(x1), 0, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, tt, x3)) -> c11(U31'(encArg(x0), encArg(x1), tt, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, nil, x3)) -> c11(U31'(encArg(x0), encArg(x1), nil, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, zeros, x2, x3)) -> c11(U31'(encArg(x0), zeros, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, 0, x2, x3)) -> c11(U31'(encArg(x0), 0, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, tt, x2, x3)) -> c11(U31'(encArg(x0), tt, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, nil, x2, x3)) -> c11(U31'(encArg(x0), nil, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(zeros, x1, x2, x3)) -> c11(U31'(zeros, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(0, x1, x2, x3)) -> c11(U31'(0, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(tt, x1, x2, x3)) -> c11(U31'(tt, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(nil, x1, x2, x3)) -> c11(U31'(nil, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_take(x0, cons_active(z0))) -> c12(TAKE(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_take(x0, cons_mark(z0))) -> c12(TAKE(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_take(x0, cons_cons(z0, z1))) -> c12(TAKE(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_take(x0, cons_U11(z0, z1))) -> c12(TAKE(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_take(x0, cons_s(z0))) -> c12(TAKE(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_take(x0, cons_length(z0))) -> c12(TAKE(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_take(x0, cons_U21(z0))) -> c12(TAKE(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_take(x0, cons_U31(z0, z1, z2, z3))) -> c12(TAKE(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_take(x0, cons_take(z0, z1))) -> c12(TAKE(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_take(x0, cons_and(z0, z1))) -> c12(TAKE(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_take(x0, cons_isNat(z0))) -> c12(TAKE(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_take(x0, cons_isNatList(z0))) -> c12(TAKE(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_take(x0, cons_isNatIList(z0))) -> c12(TAKE(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_take(cons_active(z0), x1)) -> c12(TAKE(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_take(cons_mark(z0), x1)) -> c12(TAKE(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_take(cons_cons(z0, z1), x1)) -> c12(TAKE(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_U11(z0, z1), x1)) -> c12(TAKE(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_s(z0), x1)) -> c12(TAKE(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_take(cons_length(z0), x1)) -> c12(TAKE(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_take(cons_U21(z0), x1)) -> c12(TAKE(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_take(cons_U31(z0, z1, z2, z3), x1)) -> c12(TAKE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_take(cons_take(z0, z1), x1)) -> c12(TAKE(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_and(z0, z1), x1)) -> c12(TAKE(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_isNat(z0), x1)) -> c12(TAKE(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_take(cons_isNatList(z0), x1)) -> c12(TAKE(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_take(cons_isNatIList(z0), x1)) -> c12(TAKE(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_take(x0, zeros)) -> c12(TAKE(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_take(x0, 0)) -> c12(TAKE(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_take(x0, tt)) -> c12(TAKE(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_take(x0, nil)) -> c12(TAKE(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_take(zeros, x1)) -> c12(TAKE(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(0, x1)) -> c12(TAKE(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(tt, x1)) -> c12(TAKE(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(nil, x1)) -> c12(TAKE(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(x0, cons_active(z0))) -> c13(AND(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_and(x0, cons_mark(z0))) -> c13(AND(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_and(x0, cons_cons(z0, z1))) -> c13(AND(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_and(x0, cons_U11(z0, z1))) -> c13(AND(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_and(x0, cons_s(z0))) -> c13(AND(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_and(x0, cons_length(z0))) -> c13(AND(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_and(x0, cons_U21(z0))) -> c13(AND(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_and(x0, cons_U31(z0, z1, z2, z3))) -> c13(AND(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_and(x0, cons_take(z0, z1))) -> c13(AND(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_and(x0, cons_and(z0, z1))) -> c13(AND(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_and(x0, cons_isNat(z0))) -> c13(AND(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_and(x0, cons_isNatList(z0))) -> c13(AND(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_and(x0, cons_isNatIList(z0))) -> c13(AND(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_and(cons_active(z0), x1)) -> c13(AND(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_and(cons_mark(z0), x1)) -> c13(AND(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_and(cons_cons(z0, z1), x1)) -> c13(AND(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_U11(z0, z1), x1)) -> c13(AND(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_s(z0), x1)) -> c13(AND(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_and(cons_length(z0), x1)) -> c13(AND(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_and(cons_U21(z0), x1)) -> c13(AND(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_and(cons_U31(z0, z1, z2, z3), x1)) -> c13(AND(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_and(cons_take(z0, z1), x1)) -> c13(AND(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_and(z0, z1), x1)) -> c13(AND(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_isNat(z0), x1)) -> c13(AND(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_and(cons_isNatList(z0), x1)) -> c13(AND(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_and(cons_isNatIList(z0), x1)) -> c13(AND(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_and(x0, zeros)) -> c13(AND(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_and(x0, 0)) -> c13(AND(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_and(x0, tt)) -> c13(AND(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_and(x0, nil)) -> c13(AND(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_and(zeros, x1)) -> c13(AND(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(0, x1)) -> c13(AND(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(tt, x1)) -> c13(AND(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(nil, x1)) -> c13(AND(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_isNat(cons_active(z0))) -> c14(ISNAT(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_isNat(cons_mark(z0))) -> c14(ISNAT(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_isNat(cons_cons(z0, z1))) -> c14(ISNAT(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_isNat(cons_U11(z0, z1))) -> c14(ISNAT(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_isNat(cons_s(z0))) -> c14(ISNAT(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_isNat(cons_length(z0))) -> c14(ISNAT(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_isNat(cons_U21(z0))) -> c14(ISNAT(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_isNat(cons_U31(z0, z1, z2, z3))) -> c14(ISNAT(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_isNat(cons_take(z0, z1))) -> c14(ISNAT(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_isNat(cons_and(z0, z1))) -> c14(ISNAT(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_isNat(cons_isNat(z0))) -> c14(ISNAT(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_isNat(cons_isNatList(z0))) -> c14(ISNAT(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_isNat(cons_isNatIList(z0))) -> c14(ISNAT(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_isNatList(cons_active(z0))) -> c15(ISNATLIST(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_isNatList(cons_mark(z0))) -> c15(ISNATLIST(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_isNatList(cons_cons(z0, z1))) -> c15(ISNATLIST(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_isNatList(cons_U11(z0, z1))) -> c15(ISNATLIST(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_isNatList(cons_s(z0))) -> c15(ISNATLIST(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_isNatList(cons_length(z0))) -> c15(ISNATLIST(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_isNatList(cons_U21(z0))) -> c15(ISNATLIST(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_isNatList(cons_U31(z0, z1, z2, z3))) -> c15(ISNATLIST(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_isNatList(cons_take(z0, z1))) -> c15(ISNATLIST(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_isNatList(cons_and(z0, z1))) -> c15(ISNATLIST(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_isNatList(cons_isNat(z0))) -> c15(ISNATLIST(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_isNatList(cons_isNatList(z0))) -> c15(ISNATLIST(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_isNatList(cons_isNatIList(z0))) -> c15(ISNATLIST(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_isNatIList(cons_active(z0))) -> c16(ISNATILIST(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_isNatIList(cons_mark(z0))) -> c16(ISNATILIST(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_isNatIList(cons_cons(z0, z1))) -> c16(ISNATILIST(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_isNatIList(cons_U11(z0, z1))) -> c16(ISNATILIST(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_isNatIList(cons_s(z0))) -> c16(ISNATILIST(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_isNatIList(cons_length(z0))) -> c16(ISNATILIST(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_isNatIList(cons_U21(z0))) -> c16(ISNATILIST(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_isNatIList(cons_U31(z0, z1, z2, z3))) -> c16(ISNATILIST(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_isNatIList(cons_take(z0, z1))) -> c16(ISNATILIST(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_isNatIList(cons_and(z0, z1))) -> c16(ISNATILIST(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_isNatIList(cons_isNat(z0))) -> c16(ISNATILIST(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_isNatIList(cons_isNatList(z0))) -> c16(ISNATILIST(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_isNatIList(cons_isNatIList(z0))) -> c16(ISNATILIST(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) MARK(cons(z0, z1)) -> c53(ACTIVE(cons(z0, z1)), CONS(mark(z0), z1), MARK(z0)) MARK(cons(zeros, x1)) -> c53(ACTIVE(cons(active(zeros), x1)), CONS(mark(zeros), x1), MARK(zeros)) MARK(cons(cons(z0, z1), x1)) -> c53(ACTIVE(cons(active(cons(mark(z0), z1)), x1)), CONS(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(cons(0, x1)) -> c53(ACTIVE(cons(active(0), x1)), CONS(mark(0), x1), MARK(0)) MARK(cons(U11(z0, z1), x1)) -> c53(ACTIVE(cons(active(U11(mark(z0), z1)), x1)), CONS(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(cons(tt, x1)) -> c53(ACTIVE(cons(active(tt), x1)), CONS(mark(tt), x1), MARK(tt)) MARK(cons(s(z0), x1)) -> c53(ACTIVE(cons(active(s(mark(z0))), x1)), CONS(mark(s(z0)), x1), MARK(s(z0))) MARK(cons(length(z0), x1)) -> c53(ACTIVE(cons(active(length(mark(z0))), x1)), CONS(mark(length(z0)), x1), MARK(length(z0))) MARK(cons(U21(z0), x1)) -> c53(ACTIVE(cons(active(U21(mark(z0))), x1)), CONS(mark(U21(z0)), x1), MARK(U21(z0))) MARK(cons(nil, x1)) -> c53(ACTIVE(cons(active(nil), x1)), CONS(mark(nil), x1), MARK(nil)) MARK(cons(U31(z0, z1, z2, z3), x1)) -> c53(ACTIVE(cons(active(U31(mark(z0), z1, z2, z3)), x1)), CONS(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(cons(take(z0, z1), x1)) -> c53(ACTIVE(cons(active(take(mark(z0), mark(z1))), x1)), CONS(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(cons(and(z0, z1), x1)) -> c53(ACTIVE(cons(active(and(mark(z0), z1)), x1)), CONS(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(cons(isNat(z0), x1)) -> c53(ACTIVE(cons(active(isNat(z0)), x1)), CONS(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(cons(isNatList(z0), x1)) -> c53(ACTIVE(cons(active(isNatList(z0)), x1)), CONS(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(cons(isNatIList(z0), x1)) -> c53(ACTIVE(cons(active(isNatIList(z0)), x1)), CONS(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(cons(x0, x1)) -> c53(CONS(mark(x0), x1)) S tuples: ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(mark(z0), z1)), U11'(mark(z0), z1), MARK(z0)) MARK(s(z0)) -> c57(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(mark(z0))), LENGTH(mark(z0)), MARK(z0)) MARK(U21(z0)) -> c59(ACTIVE(U21(mark(z0))), U21'(mark(z0)), MARK(z0)) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(mark(z0), z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(take(z0, z1)) -> c62(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 MARK(cons(z0, z1)) -> c53(ACTIVE(cons(z0, z1)), CONS(mark(z0), z1), MARK(z0)) MARK(cons(zeros, x1)) -> c53(ACTIVE(cons(active(zeros), x1)), CONS(mark(zeros), x1), MARK(zeros)) MARK(cons(cons(z0, z1), x1)) -> c53(ACTIVE(cons(active(cons(mark(z0), z1)), x1)), CONS(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(cons(0, x1)) -> c53(ACTIVE(cons(active(0), x1)), CONS(mark(0), x1), MARK(0)) MARK(cons(U11(z0, z1), x1)) -> c53(ACTIVE(cons(active(U11(mark(z0), z1)), x1)), CONS(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(cons(tt, x1)) -> c53(ACTIVE(cons(active(tt), x1)), CONS(mark(tt), x1), MARK(tt)) MARK(cons(s(z0), x1)) -> c53(ACTIVE(cons(active(s(mark(z0))), x1)), CONS(mark(s(z0)), x1), MARK(s(z0))) MARK(cons(length(z0), x1)) -> c53(ACTIVE(cons(active(length(mark(z0))), x1)), CONS(mark(length(z0)), x1), MARK(length(z0))) MARK(cons(U21(z0), x1)) -> c53(ACTIVE(cons(active(U21(mark(z0))), x1)), CONS(mark(U21(z0)), x1), MARK(U21(z0))) MARK(cons(nil, x1)) -> c53(ACTIVE(cons(active(nil), x1)), CONS(mark(nil), x1), MARK(nil)) MARK(cons(U31(z0, z1, z2, z3), x1)) -> c53(ACTIVE(cons(active(U31(mark(z0), z1, z2, z3)), x1)), CONS(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(cons(take(z0, z1), x1)) -> c53(ACTIVE(cons(active(take(mark(z0), mark(z1))), x1)), CONS(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(cons(and(z0, z1), x1)) -> c53(ACTIVE(cons(active(and(mark(z0), z1)), x1)), CONS(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(cons(isNat(z0), x1)) -> c53(ACTIVE(cons(active(isNat(z0)), x1)), CONS(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(cons(isNatList(z0), x1)) -> c53(ACTIVE(cons(active(isNatList(z0)), x1)), CONS(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(cons(isNatIList(z0), x1)) -> c53(ACTIVE(cons(active(isNatIList(z0)), x1)), CONS(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(cons(x0, x1)) -> c53(CONS(mark(x0), x1)) K tuples:none Defined Rule Symbols: encArg_1, active_1, mark_1, cons_2, U11_2, s_1, length_1, U21_1, U31_4, take_2, and_2, isNat_1, isNatList_1, isNatIList_1 Defined Pair Symbols: ACTIVE_1, MARK_1, CONS_2, U11'_2, S_1, LENGTH_1, U21'_1, U31'_4, TAKE_2, AND_2, ISNAT_1, ISNATLIST_1, ISNATILIST_1, ENCODE_ACTIVE_1, ENCODE_MARK_1, ENCODE_CONS_2, ENCODE_U11_2, ENCODE_S_1, ENCODE_LENGTH_1, ENCODE_U21_1, ENCODE_U31_4, ENCODE_TAKE_2, ENCODE_AND_2, ENCODE_ISNAT_1, ENCODE_ISNATLIST_1, ENCODE_ISNATILIST_1, ENCARG_1 Compound Symbols: c36_1, c37_3, c38_1, c39_1, c40_2, c41_2, c42_2, c43_1, c45_1, c48_1, c52_1, c55_3, c57_3, c58_3, c59_3, c61_3, c62_4, c63_3, c64_2, c65_2, c66_2, c67_1, c68_1, c69_1, c70_1, c71_1, c72_1, c73_1, c74_1, c75_1, c76_1, c77_1, c78_1, c79_1, c80_1, c81_1, c82_1, c83_1, c84_1, c85_1, c86_1, c87_1, c88_1, c89_1, c90_1, c91_1, c92_1, c93_1, c94_1, c95_1, c96_1, c97_1, c98_1, c99_1, c100_1, c101_1, c102_1, c34_1, c35_2, c44_3, c46_3, c47_3, c49_3, c50_2, c51_4, c54, c56, c60, c_1, c4_2, c4_1, c5_2, c5_1, c6_3, c6_2, c7_3, c7_2, c8_2, c9_2, c10_2, c11_5, c11_4, c12_3, c12_2, c13_3, c13_2, c14_2, c15_2, c16_2, c53_3, c53_1 ---------------------------------------- (95) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 1 trailing tuple parts ---------------------------------------- (96) Obligation: Complexity Dependency Tuples Problem Rules: encArg(zeros) -> zeros encArg(0) -> 0 encArg(tt) -> tt encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_U11(z0, z1)) -> U11(encArg(z0), encArg(z1)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_length(z0)) -> length(encArg(z0)) encArg(cons_U21(z0)) -> U21(encArg(z0)) encArg(cons_U31(z0, z1, z2, z3)) -> U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_isNat(z0)) -> isNat(encArg(z0)) encArg(cons_isNatList(z0)) -> isNatList(encArg(z0)) encArg(cons_isNatIList(z0)) -> isNatIList(encArg(z0)) active(zeros) -> mark(cons(0, zeros)) active(U11(tt, z0)) -> mark(s(length(z0))) active(U21(tt)) -> mark(nil) active(U31(tt, z0, z1, z2)) -> mark(cons(z2, take(z1, z0))) active(and(tt, z0)) -> mark(z0) active(isNat(0)) -> mark(tt) active(isNat(length(z0))) -> mark(isNatList(z0)) active(isNat(s(z0))) -> mark(isNat(z0)) active(isNatIList(z0)) -> mark(isNatList(z0)) active(isNatIList(zeros)) -> mark(tt) active(isNatIList(cons(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(isNatList(nil)) -> mark(tt) active(isNatList(cons(z0, z1))) -> mark(and(isNat(z0), isNatList(z1))) active(isNatList(take(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(length(nil)) -> mark(0) active(length(cons(z0, z1))) -> mark(U11(and(isNatList(z1), isNat(z0)), z1)) active(take(0, z0)) -> mark(U21(isNatIList(z0))) active(take(s(z0), cons(z1, z2))) -> mark(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)) mark(zeros) -> active(zeros) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(0) -> active(0) mark(U11(z0, z1)) -> active(U11(mark(z0), z1)) mark(tt) -> active(tt) mark(s(z0)) -> active(s(mark(z0))) mark(length(z0)) -> active(length(mark(z0))) mark(U21(z0)) -> active(U21(mark(z0))) mark(nil) -> active(nil) mark(U31(z0, z1, z2, z3)) -> active(U31(mark(z0), z1, z2, z3)) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(isNat(z0)) -> active(isNat(z0)) mark(isNatList(z0)) -> active(isNatList(z0)) mark(isNatIList(z0)) -> active(isNatIList(z0)) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) U11(mark(z0), z1) -> U11(z0, z1) U11(z0, mark(z1)) -> U11(z0, z1) U11(active(z0), z1) -> U11(z0, z1) U11(z0, active(z1)) -> U11(z0, z1) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) length(mark(z0)) -> length(z0) length(active(z0)) -> length(z0) U21(mark(z0)) -> U21(z0) U21(active(z0)) -> U21(z0) U31(mark(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, mark(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, mark(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, mark(z3)) -> U31(z0, z1, z2, z3) U31(active(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, active(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, active(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, active(z3)) -> U31(z0, z1, z2, z3) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) isNat(mark(z0)) -> isNat(z0) isNat(active(z0)) -> isNat(z0) isNatList(mark(z0)) -> isNatList(z0) isNatList(active(z0)) -> isNatList(z0) isNatIList(mark(z0)) -> isNatIList(z0) isNatIList(active(z0)) -> isNatIList(z0) Tuples: ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(mark(z0), z1)), U11'(mark(z0), z1), MARK(z0)) MARK(s(z0)) -> c57(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(mark(z0))), LENGTH(mark(z0)), MARK(z0)) MARK(U21(z0)) -> c59(ACTIVE(U21(mark(z0))), U21'(mark(z0)), MARK(z0)) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(mark(z0), z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(take(z0, z1)) -> c62(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 ENCODE_ACTIVE(z0) -> c(ACTIVE(encArg(z0))) ENCODE_MARK(z0) -> c(MARK(encArg(z0))) ENCODE_CONS(z0, z1) -> c(CONS(encArg(z0), encArg(z1))) ENCODE_U11(z0, z1) -> c(U11'(encArg(z0), encArg(z1))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_LENGTH(z0) -> c(LENGTH(encArg(z0))) ENCODE_U21(z0) -> c(U21'(encArg(z0))) ENCODE_U31(z0, z1, z2, z3) -> c(U31'(encArg(z0), encArg(z1), encArg(z2), encArg(z3))) ENCODE_TAKE(z0, z1) -> c(TAKE(encArg(z0), encArg(z1))) ENCODE_AND(z0, z1) -> c(AND(encArg(z0), encArg(z1))) ENCODE_ISNAT(z0) -> c(ISNAT(encArg(z0))) ENCODE_ISNATLIST(z0) -> c(ISNATLIST(encArg(z0))) ENCODE_ISNATILIST(z0) -> c(ISNATILIST(encArg(z0))) ENCARG(cons_active(cons_active(z0))) -> c4(ACTIVE(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_active(cons_mark(z0))) -> c4(ACTIVE(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_active(cons_cons(z0, z1))) -> c4(ACTIVE(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_active(cons_U11(z0, z1))) -> c4(ACTIVE(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_active(cons_s(z0))) -> c4(ACTIVE(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_active(cons_length(z0))) -> c4(ACTIVE(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_active(cons_U21(z0))) -> c4(ACTIVE(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_active(cons_U31(z0, z1, z2, z3))) -> c4(ACTIVE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_active(cons_take(z0, z1))) -> c4(ACTIVE(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_active(cons_and(z0, z1))) -> c4(ACTIVE(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_active(cons_isNat(z0))) -> c4(ACTIVE(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_active(cons_isNatList(z0))) -> c4(ACTIVE(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_active(cons_isNatIList(z0))) -> c4(ACTIVE(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_active(zeros)) -> c4(ACTIVE(zeros)) ENCARG(cons_mark(cons_active(z0))) -> c5(MARK(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_mark(cons_mark(z0))) -> c5(MARK(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_mark(cons_cons(z0, z1))) -> c5(MARK(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_mark(cons_U11(z0, z1))) -> c5(MARK(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_mark(cons_s(z0))) -> c5(MARK(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_mark(cons_length(z0))) -> c5(MARK(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_mark(cons_U21(z0))) -> c5(MARK(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_mark(cons_U31(z0, z1, z2, z3))) -> c5(MARK(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_mark(cons_take(z0, z1))) -> c5(MARK(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(cons_and(z0, z1))) -> c5(MARK(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_mark(cons_isNat(z0))) -> c5(MARK(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_mark(cons_isNatList(z0))) -> c5(MARK(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_mark(cons_isNatIList(z0))) -> c5(MARK(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_mark(zeros)) -> c5(MARK(zeros)) ENCARG(cons_mark(0)) -> c5(MARK(0)) ENCARG(cons_mark(tt)) -> c5(MARK(tt)) ENCARG(cons_mark(nil)) -> c5(MARK(nil)) ENCARG(cons_cons(x0, cons_active(z0))) -> c6(CONS(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_cons(x0, cons_mark(z0))) -> c6(CONS(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_cons(x0, cons_cons(z0, z1))) -> c6(CONS(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_cons(x0, cons_U11(z0, z1))) -> c6(CONS(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_cons(x0, cons_s(z0))) -> c6(CONS(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_cons(x0, cons_length(z0))) -> c6(CONS(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_cons(x0, cons_U21(z0))) -> c6(CONS(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_cons(x0, cons_U31(z0, z1, z2, z3))) -> c6(CONS(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_cons(x0, cons_take(z0, z1))) -> c6(CONS(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_cons(x0, cons_and(z0, z1))) -> c6(CONS(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_cons(x0, cons_isNat(z0))) -> c6(CONS(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_cons(x0, cons_isNatList(z0))) -> c6(CONS(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_cons(x0, cons_isNatIList(z0))) -> c6(CONS(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_cons(cons_active(z0), x1)) -> c6(CONS(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_mark(z0), x1)) -> c6(CONS(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_cons(z0, z1), x1)) -> c6(CONS(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_U11(z0, z1), x1)) -> c6(CONS(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_s(z0), x1)) -> c6(CONS(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_length(z0), x1)) -> c6(CONS(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U21(z0), x1)) -> c6(CONS(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U31(z0, z1, z2, z3), x1)) -> c6(CONS(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_cons(cons_take(z0, z1), x1)) -> c6(CONS(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_and(z0, z1), x1)) -> c6(CONS(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_isNat(z0), x1)) -> c6(CONS(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_isNatList(z0), x1)) -> c6(CONS(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_isNatIList(z0), x1)) -> c6(CONS(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_cons(x0, zeros)) -> c6(CONS(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_cons(x0, 0)) -> c6(CONS(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_cons(x0, tt)) -> c6(CONS(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_cons(x0, nil)) -> c6(CONS(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_cons(zeros, x1)) -> c6(CONS(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(0, x1)) -> c6(CONS(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(tt, x1)) -> c6(CONS(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(nil, x1)) -> c6(CONS(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(x0, cons_active(z0))) -> c7(U11'(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_U11(x0, cons_mark(z0))) -> c7(U11'(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_U11(x0, cons_cons(z0, z1))) -> c7(U11'(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U11(x0, cons_U11(z0, z1))) -> c7(U11'(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U11(x0, cons_s(z0))) -> c7(U11'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_U11(x0, cons_length(z0))) -> c7(U11'(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_U11(x0, cons_U21(z0))) -> c7(U11'(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_U11(x0, cons_U31(z0, z1, z2, z3))) -> c7(U11'(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U11(x0, cons_take(z0, z1))) -> c7(U11'(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_U11(x0, cons_and(z0, z1))) -> c7(U11'(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_U11(x0, cons_isNat(z0))) -> c7(U11'(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_U11(x0, cons_isNatList(z0))) -> c7(U11'(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_U11(x0, cons_isNatIList(z0))) -> c7(U11'(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U11(cons_active(z0), x1)) -> c7(U11'(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_mark(z0), x1)) -> c7(U11'(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_cons(z0, z1), x1)) -> c7(U11'(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_U11(z0, z1), x1)) -> c7(U11'(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_s(z0), x1)) -> c7(U11'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_length(z0), x1)) -> c7(U11'(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_U21(z0), x1)) -> c7(U11'(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_U31(z0, z1, z2, z3), x1)) -> c7(U11'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_U11(cons_take(z0, z1), x1)) -> c7(U11'(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_and(z0, z1), x1)) -> c7(U11'(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_isNat(z0), x1)) -> c7(U11'(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_isNatList(z0), x1)) -> c7(U11'(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_isNatIList(z0), x1)) -> c7(U11'(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_U11(x0, zeros)) -> c7(U11'(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_U11(x0, 0)) -> c7(U11'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_U11(x0, tt)) -> c7(U11'(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_U11(x0, nil)) -> c7(U11'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_U11(zeros, x1)) -> c7(U11'(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(0, x1)) -> c7(U11'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(tt, x1)) -> c7(U11'(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(nil, x1)) -> c7(U11'(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_s(cons_active(z0))) -> c8(S(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_s(cons_mark(z0))) -> c8(S(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_s(cons_cons(z0, z1))) -> c8(S(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_s(cons_U11(z0, z1))) -> c8(S(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_s(cons_s(z0))) -> c8(S(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_length(z0))) -> c8(S(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_s(cons_U21(z0))) -> c8(S(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_s(cons_U31(z0, z1, z2, z3))) -> c8(S(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_s(cons_take(z0, z1))) -> c8(S(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_s(cons_and(z0, z1))) -> c8(S(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_s(cons_isNat(z0))) -> c8(S(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_s(cons_isNatList(z0))) -> c8(S(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_s(cons_isNatIList(z0))) -> c8(S(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_length(cons_active(z0))) -> c9(LENGTH(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_length(cons_mark(z0))) -> c9(LENGTH(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_length(cons_cons(z0, z1))) -> c9(LENGTH(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_length(cons_U11(z0, z1))) -> c9(LENGTH(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_length(cons_s(z0))) -> c9(LENGTH(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_length(cons_length(z0))) -> c9(LENGTH(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_length(cons_U21(z0))) -> c9(LENGTH(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_length(cons_U31(z0, z1, z2, z3))) -> c9(LENGTH(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_length(cons_take(z0, z1))) -> c9(LENGTH(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_length(cons_and(z0, z1))) -> c9(LENGTH(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_length(cons_isNat(z0))) -> c9(LENGTH(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_length(cons_isNatList(z0))) -> c9(LENGTH(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_length(cons_isNatIList(z0))) -> c9(LENGTH(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U21(cons_active(z0))) -> c10(U21'(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_U21(cons_mark(z0))) -> c10(U21'(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_U21(cons_cons(z0, z1))) -> c10(U21'(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U21(cons_U11(z0, z1))) -> c10(U21'(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U21(cons_s(z0))) -> c10(U21'(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_U21(cons_length(z0))) -> c10(U21'(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_U21(cons_U21(z0))) -> c10(U21'(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_U21(cons_U31(z0, z1, z2, z3))) -> c10(U21'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U21(cons_take(z0, z1))) -> c10(U21'(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_U21(cons_and(z0, z1))) -> c10(U21'(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_U21(cons_isNat(z0))) -> c10(U21'(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_U21(cons_isNatList(z0))) -> c10(U21'(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_U21(cons_isNatIList(z0))) -> c10(U21'(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U31(x0, x1, x2, cons_active(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), active(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_active(z0))) ENCARG(cons_U31(x0, x1, x2, cons_mark(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), mark(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_mark(z0))) ENCARG(cons_U31(x0, x1, x2, cons_cons(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_U11(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_s(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), s(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_s(z0))) ENCARG(cons_U31(x0, x1, x2, cons_length(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), length(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_length(z0))) ENCARG(cons_U31(x0, x1, x2, cons_U21(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U21(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U21(z0))) ENCARG(cons_U31(x0, x1, x2, cons_U31(z0, z1, z2, z3))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U31(x0, x1, x2, cons_take(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_take(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_and(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_and(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_isNat(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNat(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNat(z0))) ENCARG(cons_U31(x0, x1, x2, cons_isNatList(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNatList(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNatList(z0))) ENCARG(cons_U31(x0, x1, x2, cons_isNatIList(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U31(x0, x1, cons_active(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), active(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_active(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_mark(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), mark(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_mark(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_cons(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), cons(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_cons(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U11(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), U11(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U11(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_s(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), s(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_s(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_length(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), length(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_length(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U21(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), U21(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U21(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U31(z0, z1, z2, z3), x3)) -> c11(U31'(encArg(x0), encArg(x1), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_take(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), take(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_take(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_and(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), and(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_and(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNat(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNat(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNat(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNatList(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNatList(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNatList(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNatIList(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNatIList(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNatIList(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, cons_active(z0), x2, x3)) -> c11(U31'(encArg(x0), active(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_active(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_mark(z0), x2, x3)) -> c11(U31'(encArg(x0), mark(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_mark(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_cons(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), cons(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_cons(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U11(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), U11(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U11(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_s(z0), x2, x3)) -> c11(U31'(encArg(x0), s(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_s(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_length(z0), x2, x3)) -> c11(U31'(encArg(x0), length(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_length(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U21(z0), x2, x3)) -> c11(U31'(encArg(x0), U21(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U21(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U31(z0, z1, z2, z3), x2, x3)) -> c11(U31'(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_take(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), take(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_take(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_and(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), and(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_and(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNat(z0), x2, x3)) -> c11(U31'(encArg(x0), isNat(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNat(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNatList(z0), x2, x3)) -> c11(U31'(encArg(x0), isNatList(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNatList(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNatIList(z0), x2, x3)) -> c11(U31'(encArg(x0), isNatIList(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNatIList(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_active(z0), x1, x2, x3)) -> c11(U31'(active(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_active(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_mark(z0), x1, x2, x3)) -> c11(U31'(mark(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_mark(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_cons(z0, z1), x1, x2, x3)) -> c11(U31'(cons(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_cons(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U11(z0, z1), x1, x2, x3)) -> c11(U31'(U11(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U11(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_s(z0), x1, x2, x3)) -> c11(U31'(s(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_s(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_length(z0), x1, x2, x3)) -> c11(U31'(length(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_length(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U21(z0), x1, x2, x3)) -> c11(U31'(U21(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U21(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U31(z0, z1, z2, z3), x1, x2, x3)) -> c11(U31'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_take(z0, z1), x1, x2, x3)) -> c11(U31'(take(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_take(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_and(z0, z1), x1, x2, x3)) -> c11(U31'(and(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_and(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNat(z0), x1, x2, x3)) -> c11(U31'(isNat(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNat(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNatList(z0), x1, x2, x3)) -> c11(U31'(isNatList(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNatList(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNatIList(z0), x1, x2, x3)) -> c11(U31'(isNatIList(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNatIList(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, x1, x2, zeros)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), zeros), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, 0)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), 0), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, tt)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), tt), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, nil)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), nil), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, zeros, x3)) -> c11(U31'(encArg(x0), encArg(x1), zeros, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, 0, x3)) -> c11(U31'(encArg(x0), encArg(x1), 0, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, tt, x3)) -> c11(U31'(encArg(x0), encArg(x1), tt, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, nil, x3)) -> c11(U31'(encArg(x0), encArg(x1), nil, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, zeros, x2, x3)) -> c11(U31'(encArg(x0), zeros, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, 0, x2, x3)) -> c11(U31'(encArg(x0), 0, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, tt, x2, x3)) -> c11(U31'(encArg(x0), tt, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, nil, x2, x3)) -> c11(U31'(encArg(x0), nil, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(zeros, x1, x2, x3)) -> c11(U31'(zeros, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(0, x1, x2, x3)) -> c11(U31'(0, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(tt, x1, x2, x3)) -> c11(U31'(tt, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(nil, x1, x2, x3)) -> c11(U31'(nil, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_take(x0, cons_active(z0))) -> c12(TAKE(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_take(x0, cons_mark(z0))) -> c12(TAKE(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_take(x0, cons_cons(z0, z1))) -> c12(TAKE(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_take(x0, cons_U11(z0, z1))) -> c12(TAKE(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_take(x0, cons_s(z0))) -> c12(TAKE(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_take(x0, cons_length(z0))) -> c12(TAKE(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_take(x0, cons_U21(z0))) -> c12(TAKE(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_take(x0, cons_U31(z0, z1, z2, z3))) -> c12(TAKE(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_take(x0, cons_take(z0, z1))) -> c12(TAKE(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_take(x0, cons_and(z0, z1))) -> c12(TAKE(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_take(x0, cons_isNat(z0))) -> c12(TAKE(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_take(x0, cons_isNatList(z0))) -> c12(TAKE(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_take(x0, cons_isNatIList(z0))) -> c12(TAKE(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_take(cons_active(z0), x1)) -> c12(TAKE(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_take(cons_mark(z0), x1)) -> c12(TAKE(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_take(cons_cons(z0, z1), x1)) -> c12(TAKE(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_U11(z0, z1), x1)) -> c12(TAKE(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_s(z0), x1)) -> c12(TAKE(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_take(cons_length(z0), x1)) -> c12(TAKE(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_take(cons_U21(z0), x1)) -> c12(TAKE(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_take(cons_U31(z0, z1, z2, z3), x1)) -> c12(TAKE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_take(cons_take(z0, z1), x1)) -> c12(TAKE(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_and(z0, z1), x1)) -> c12(TAKE(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_isNat(z0), x1)) -> c12(TAKE(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_take(cons_isNatList(z0), x1)) -> c12(TAKE(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_take(cons_isNatIList(z0), x1)) -> c12(TAKE(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_take(x0, zeros)) -> c12(TAKE(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_take(x0, 0)) -> c12(TAKE(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_take(x0, tt)) -> c12(TAKE(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_take(x0, nil)) -> c12(TAKE(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_take(zeros, x1)) -> c12(TAKE(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(0, x1)) -> c12(TAKE(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(tt, x1)) -> c12(TAKE(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(nil, x1)) -> c12(TAKE(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(x0, cons_active(z0))) -> c13(AND(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_and(x0, cons_mark(z0))) -> c13(AND(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_and(x0, cons_cons(z0, z1))) -> c13(AND(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_and(x0, cons_U11(z0, z1))) -> c13(AND(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_and(x0, cons_s(z0))) -> c13(AND(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_and(x0, cons_length(z0))) -> c13(AND(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_and(x0, cons_U21(z0))) -> c13(AND(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_and(x0, cons_U31(z0, z1, z2, z3))) -> c13(AND(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_and(x0, cons_take(z0, z1))) -> c13(AND(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_and(x0, cons_and(z0, z1))) -> c13(AND(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_and(x0, cons_isNat(z0))) -> c13(AND(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_and(x0, cons_isNatList(z0))) -> c13(AND(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_and(x0, cons_isNatIList(z0))) -> c13(AND(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_and(cons_active(z0), x1)) -> c13(AND(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_and(cons_mark(z0), x1)) -> c13(AND(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_and(cons_cons(z0, z1), x1)) -> c13(AND(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_U11(z0, z1), x1)) -> c13(AND(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_s(z0), x1)) -> c13(AND(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_and(cons_length(z0), x1)) -> c13(AND(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_and(cons_U21(z0), x1)) -> c13(AND(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_and(cons_U31(z0, z1, z2, z3), x1)) -> c13(AND(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_and(cons_take(z0, z1), x1)) -> c13(AND(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_and(z0, z1), x1)) -> c13(AND(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_isNat(z0), x1)) -> c13(AND(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_and(cons_isNatList(z0), x1)) -> c13(AND(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_and(cons_isNatIList(z0), x1)) -> c13(AND(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_and(x0, zeros)) -> c13(AND(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_and(x0, 0)) -> c13(AND(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_and(x0, tt)) -> c13(AND(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_and(x0, nil)) -> c13(AND(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_and(zeros, x1)) -> c13(AND(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(0, x1)) -> c13(AND(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(tt, x1)) -> c13(AND(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(nil, x1)) -> c13(AND(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_isNat(cons_active(z0))) -> c14(ISNAT(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_isNat(cons_mark(z0))) -> c14(ISNAT(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_isNat(cons_cons(z0, z1))) -> c14(ISNAT(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_isNat(cons_U11(z0, z1))) -> c14(ISNAT(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_isNat(cons_s(z0))) -> c14(ISNAT(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_isNat(cons_length(z0))) -> c14(ISNAT(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_isNat(cons_U21(z0))) -> c14(ISNAT(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_isNat(cons_U31(z0, z1, z2, z3))) -> c14(ISNAT(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_isNat(cons_take(z0, z1))) -> c14(ISNAT(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_isNat(cons_and(z0, z1))) -> c14(ISNAT(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_isNat(cons_isNat(z0))) -> c14(ISNAT(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_isNat(cons_isNatList(z0))) -> c14(ISNAT(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_isNat(cons_isNatIList(z0))) -> c14(ISNAT(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_isNatList(cons_active(z0))) -> c15(ISNATLIST(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_isNatList(cons_mark(z0))) -> c15(ISNATLIST(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_isNatList(cons_cons(z0, z1))) -> c15(ISNATLIST(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_isNatList(cons_U11(z0, z1))) -> c15(ISNATLIST(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_isNatList(cons_s(z0))) -> c15(ISNATLIST(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_isNatList(cons_length(z0))) -> c15(ISNATLIST(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_isNatList(cons_U21(z0))) -> c15(ISNATLIST(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_isNatList(cons_U31(z0, z1, z2, z3))) -> c15(ISNATLIST(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_isNatList(cons_take(z0, z1))) -> c15(ISNATLIST(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_isNatList(cons_and(z0, z1))) -> c15(ISNATLIST(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_isNatList(cons_isNat(z0))) -> c15(ISNATLIST(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_isNatList(cons_isNatList(z0))) -> c15(ISNATLIST(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_isNatList(cons_isNatIList(z0))) -> c15(ISNATLIST(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_isNatIList(cons_active(z0))) -> c16(ISNATILIST(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_isNatIList(cons_mark(z0))) -> c16(ISNATILIST(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_isNatIList(cons_cons(z0, z1))) -> c16(ISNATILIST(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_isNatIList(cons_U11(z0, z1))) -> c16(ISNATILIST(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_isNatIList(cons_s(z0))) -> c16(ISNATILIST(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_isNatIList(cons_length(z0))) -> c16(ISNATILIST(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_isNatIList(cons_U21(z0))) -> c16(ISNATILIST(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_isNatIList(cons_U31(z0, z1, z2, z3))) -> c16(ISNATILIST(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_isNatIList(cons_take(z0, z1))) -> c16(ISNATILIST(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_isNatIList(cons_and(z0, z1))) -> c16(ISNATILIST(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_isNatIList(cons_isNat(z0))) -> c16(ISNATILIST(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_isNatIList(cons_isNatList(z0))) -> c16(ISNATILIST(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_isNatIList(cons_isNatIList(z0))) -> c16(ISNATILIST(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) MARK(cons(zeros, x1)) -> c53(ACTIVE(cons(active(zeros), x1)), CONS(mark(zeros), x1), MARK(zeros)) MARK(cons(cons(z0, z1), x1)) -> c53(ACTIVE(cons(active(cons(mark(z0), z1)), x1)), CONS(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(cons(0, x1)) -> c53(ACTIVE(cons(active(0), x1)), CONS(mark(0), x1), MARK(0)) MARK(cons(U11(z0, z1), x1)) -> c53(ACTIVE(cons(active(U11(mark(z0), z1)), x1)), CONS(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(cons(tt, x1)) -> c53(ACTIVE(cons(active(tt), x1)), CONS(mark(tt), x1), MARK(tt)) MARK(cons(s(z0), x1)) -> c53(ACTIVE(cons(active(s(mark(z0))), x1)), CONS(mark(s(z0)), x1), MARK(s(z0))) MARK(cons(length(z0), x1)) -> c53(ACTIVE(cons(active(length(mark(z0))), x1)), CONS(mark(length(z0)), x1), MARK(length(z0))) MARK(cons(U21(z0), x1)) -> c53(ACTIVE(cons(active(U21(mark(z0))), x1)), CONS(mark(U21(z0)), x1), MARK(U21(z0))) MARK(cons(nil, x1)) -> c53(ACTIVE(cons(active(nil), x1)), CONS(mark(nil), x1), MARK(nil)) MARK(cons(U31(z0, z1, z2, z3), x1)) -> c53(ACTIVE(cons(active(U31(mark(z0), z1, z2, z3)), x1)), CONS(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(cons(take(z0, z1), x1)) -> c53(ACTIVE(cons(active(take(mark(z0), mark(z1))), x1)), CONS(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(cons(and(z0, z1), x1)) -> c53(ACTIVE(cons(active(and(mark(z0), z1)), x1)), CONS(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(cons(isNat(z0), x1)) -> c53(ACTIVE(cons(active(isNat(z0)), x1)), CONS(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(cons(isNatList(z0), x1)) -> c53(ACTIVE(cons(active(isNatList(z0)), x1)), CONS(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(cons(isNatIList(z0), x1)) -> c53(ACTIVE(cons(active(isNatIList(z0)), x1)), CONS(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(cons(x0, x1)) -> c53(CONS(mark(x0), x1)) MARK(cons(z0, z1)) -> c53(CONS(mark(z0), z1), MARK(z0)) S tuples: ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(mark(z0), z1)), U11'(mark(z0), z1), MARK(z0)) MARK(s(z0)) -> c57(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(mark(z0))), LENGTH(mark(z0)), MARK(z0)) MARK(U21(z0)) -> c59(ACTIVE(U21(mark(z0))), U21'(mark(z0)), MARK(z0)) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(mark(z0), z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(take(z0, z1)) -> c62(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 MARK(cons(zeros, x1)) -> c53(ACTIVE(cons(active(zeros), x1)), CONS(mark(zeros), x1), MARK(zeros)) MARK(cons(cons(z0, z1), x1)) -> c53(ACTIVE(cons(active(cons(mark(z0), z1)), x1)), CONS(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(cons(0, x1)) -> c53(ACTIVE(cons(active(0), x1)), CONS(mark(0), x1), MARK(0)) MARK(cons(U11(z0, z1), x1)) -> c53(ACTIVE(cons(active(U11(mark(z0), z1)), x1)), CONS(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(cons(tt, x1)) -> c53(ACTIVE(cons(active(tt), x1)), CONS(mark(tt), x1), MARK(tt)) MARK(cons(s(z0), x1)) -> c53(ACTIVE(cons(active(s(mark(z0))), x1)), CONS(mark(s(z0)), x1), MARK(s(z0))) MARK(cons(length(z0), x1)) -> c53(ACTIVE(cons(active(length(mark(z0))), x1)), CONS(mark(length(z0)), x1), MARK(length(z0))) MARK(cons(U21(z0), x1)) -> c53(ACTIVE(cons(active(U21(mark(z0))), x1)), CONS(mark(U21(z0)), x1), MARK(U21(z0))) MARK(cons(nil, x1)) -> c53(ACTIVE(cons(active(nil), x1)), CONS(mark(nil), x1), MARK(nil)) MARK(cons(U31(z0, z1, z2, z3), x1)) -> c53(ACTIVE(cons(active(U31(mark(z0), z1, z2, z3)), x1)), CONS(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(cons(take(z0, z1), x1)) -> c53(ACTIVE(cons(active(take(mark(z0), mark(z1))), x1)), CONS(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(cons(and(z0, z1), x1)) -> c53(ACTIVE(cons(active(and(mark(z0), z1)), x1)), CONS(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(cons(isNat(z0), x1)) -> c53(ACTIVE(cons(active(isNat(z0)), x1)), CONS(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(cons(isNatList(z0), x1)) -> c53(ACTIVE(cons(active(isNatList(z0)), x1)), CONS(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(cons(isNatIList(z0), x1)) -> c53(ACTIVE(cons(active(isNatIList(z0)), x1)), CONS(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(cons(x0, x1)) -> c53(CONS(mark(x0), x1)) MARK(cons(z0, z1)) -> c53(CONS(mark(z0), z1), MARK(z0)) K tuples:none Defined Rule Symbols: encArg_1, active_1, mark_1, cons_2, U11_2, s_1, length_1, U21_1, U31_4, take_2, and_2, isNat_1, isNatList_1, isNatIList_1 Defined Pair Symbols: ACTIVE_1, MARK_1, CONS_2, U11'_2, S_1, LENGTH_1, U21'_1, U31'_4, TAKE_2, AND_2, ISNAT_1, ISNATLIST_1, ISNATILIST_1, ENCODE_ACTIVE_1, ENCODE_MARK_1, ENCODE_CONS_2, ENCODE_U11_2, ENCODE_S_1, ENCODE_LENGTH_1, ENCODE_U21_1, ENCODE_U31_4, ENCODE_TAKE_2, ENCODE_AND_2, ENCODE_ISNAT_1, ENCODE_ISNATLIST_1, ENCODE_ISNATILIST_1, ENCARG_1 Compound Symbols: c36_1, c37_3, c38_1, c39_1, c40_2, c41_2, c42_2, c43_1, c45_1, c48_1, c52_1, c55_3, c57_3, c58_3, c59_3, c61_3, c62_4, c63_3, c64_2, c65_2, c66_2, c67_1, c68_1, c69_1, c70_1, c71_1, c72_1, c73_1, c74_1, c75_1, c76_1, c77_1, c78_1, c79_1, c80_1, c81_1, c82_1, c83_1, c84_1, c85_1, c86_1, c87_1, c88_1, c89_1, c90_1, c91_1, c92_1, c93_1, c94_1, c95_1, c96_1, c97_1, c98_1, c99_1, c100_1, c101_1, c102_1, c34_1, c35_2, c44_3, c46_3, c47_3, c49_3, c50_2, c51_4, c54, c56, c60, c_1, c4_2, c4_1, c5_2, c5_1, c6_3, c6_2, c7_3, c7_2, c8_2, c9_2, c10_2, c11_5, c11_4, c12_3, c12_2, c13_3, c13_2, c14_2, c15_2, c16_2, c53_3, c53_1, c53_2 ---------------------------------------- (97) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace MARK(U11(z0, z1)) -> c55(ACTIVE(U11(mark(z0), z1)), U11'(mark(z0), z1), MARK(z0)) by MARK(U11(z0, z1)) -> c55(ACTIVE(U11(z0, z1)), U11'(mark(z0), z1), MARK(z0)) MARK(U11(zeros, x1)) -> c55(ACTIVE(U11(active(zeros), x1)), U11'(mark(zeros), x1), MARK(zeros)) MARK(U11(cons(z0, z1), x1)) -> c55(ACTIVE(U11(active(cons(mark(z0), z1)), x1)), U11'(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(U11(0, x1)) -> c55(ACTIVE(U11(active(0), x1)), U11'(mark(0), x1), MARK(0)) MARK(U11(U11(z0, z1), x1)) -> c55(ACTIVE(U11(active(U11(mark(z0), z1)), x1)), U11'(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(U11(tt, x1)) -> c55(ACTIVE(U11(active(tt), x1)), U11'(mark(tt), x1), MARK(tt)) MARK(U11(s(z0), x1)) -> c55(ACTIVE(U11(active(s(mark(z0))), x1)), U11'(mark(s(z0)), x1), MARK(s(z0))) MARK(U11(length(z0), x1)) -> c55(ACTIVE(U11(active(length(mark(z0))), x1)), U11'(mark(length(z0)), x1), MARK(length(z0))) MARK(U11(U21(z0), x1)) -> c55(ACTIVE(U11(active(U21(mark(z0))), x1)), U11'(mark(U21(z0)), x1), MARK(U21(z0))) MARK(U11(nil, x1)) -> c55(ACTIVE(U11(active(nil), x1)), U11'(mark(nil), x1), MARK(nil)) MARK(U11(U31(z0, z1, z2, z3), x1)) -> c55(ACTIVE(U11(active(U31(mark(z0), z1, z2, z3)), x1)), U11'(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(U11(take(z0, z1), x1)) -> c55(ACTIVE(U11(active(take(mark(z0), mark(z1))), x1)), U11'(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(U11(and(z0, z1), x1)) -> c55(ACTIVE(U11(active(and(mark(z0), z1)), x1)), U11'(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(U11(isNat(z0), x1)) -> c55(ACTIVE(U11(active(isNat(z0)), x1)), U11'(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(U11(isNatList(z0), x1)) -> c55(ACTIVE(U11(active(isNatList(z0)), x1)), U11'(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(U11(isNatIList(z0), x1)) -> c55(ACTIVE(U11(active(isNatIList(z0)), x1)), U11'(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(U11(x0, x1)) -> c55(U11'(mark(x0), x1)) ---------------------------------------- (98) Obligation: Complexity Dependency Tuples Problem Rules: encArg(zeros) -> zeros encArg(0) -> 0 encArg(tt) -> tt encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_U11(z0, z1)) -> U11(encArg(z0), encArg(z1)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_length(z0)) -> length(encArg(z0)) encArg(cons_U21(z0)) -> U21(encArg(z0)) encArg(cons_U31(z0, z1, z2, z3)) -> U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_isNat(z0)) -> isNat(encArg(z0)) encArg(cons_isNatList(z0)) -> isNatList(encArg(z0)) encArg(cons_isNatIList(z0)) -> isNatIList(encArg(z0)) active(zeros) -> mark(cons(0, zeros)) active(U11(tt, z0)) -> mark(s(length(z0))) active(U21(tt)) -> mark(nil) active(U31(tt, z0, z1, z2)) -> mark(cons(z2, take(z1, z0))) active(and(tt, z0)) -> mark(z0) active(isNat(0)) -> mark(tt) active(isNat(length(z0))) -> mark(isNatList(z0)) active(isNat(s(z0))) -> mark(isNat(z0)) active(isNatIList(z0)) -> mark(isNatList(z0)) active(isNatIList(zeros)) -> mark(tt) active(isNatIList(cons(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(isNatList(nil)) -> mark(tt) active(isNatList(cons(z0, z1))) -> mark(and(isNat(z0), isNatList(z1))) active(isNatList(take(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(length(nil)) -> mark(0) active(length(cons(z0, z1))) -> mark(U11(and(isNatList(z1), isNat(z0)), z1)) active(take(0, z0)) -> mark(U21(isNatIList(z0))) active(take(s(z0), cons(z1, z2))) -> mark(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)) mark(zeros) -> active(zeros) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(0) -> active(0) mark(U11(z0, z1)) -> active(U11(mark(z0), z1)) mark(tt) -> active(tt) mark(s(z0)) -> active(s(mark(z0))) mark(length(z0)) -> active(length(mark(z0))) mark(U21(z0)) -> active(U21(mark(z0))) mark(nil) -> active(nil) mark(U31(z0, z1, z2, z3)) -> active(U31(mark(z0), z1, z2, z3)) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(isNat(z0)) -> active(isNat(z0)) mark(isNatList(z0)) -> active(isNatList(z0)) mark(isNatIList(z0)) -> active(isNatIList(z0)) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) U11(mark(z0), z1) -> U11(z0, z1) U11(z0, mark(z1)) -> U11(z0, z1) U11(active(z0), z1) -> U11(z0, z1) U11(z0, active(z1)) -> U11(z0, z1) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) length(mark(z0)) -> length(z0) length(active(z0)) -> length(z0) U21(mark(z0)) -> U21(z0) U21(active(z0)) -> U21(z0) U31(mark(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, mark(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, mark(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, mark(z3)) -> U31(z0, z1, z2, z3) U31(active(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, active(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, active(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, active(z3)) -> U31(z0, z1, z2, z3) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) isNat(mark(z0)) -> isNat(z0) isNat(active(z0)) -> isNat(z0) isNatList(mark(z0)) -> isNatList(z0) isNatList(active(z0)) -> isNatList(z0) isNatIList(mark(z0)) -> isNatIList(z0) isNatIList(active(z0)) -> isNatIList(z0) Tuples: ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(s(z0)) -> c57(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(mark(z0))), LENGTH(mark(z0)), MARK(z0)) MARK(U21(z0)) -> c59(ACTIVE(U21(mark(z0))), U21'(mark(z0)), MARK(z0)) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(mark(z0), z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(take(z0, z1)) -> c62(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 ENCODE_ACTIVE(z0) -> c(ACTIVE(encArg(z0))) ENCODE_MARK(z0) -> c(MARK(encArg(z0))) ENCODE_CONS(z0, z1) -> c(CONS(encArg(z0), encArg(z1))) ENCODE_U11(z0, z1) -> c(U11'(encArg(z0), encArg(z1))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_LENGTH(z0) -> c(LENGTH(encArg(z0))) ENCODE_U21(z0) -> c(U21'(encArg(z0))) ENCODE_U31(z0, z1, z2, z3) -> c(U31'(encArg(z0), encArg(z1), encArg(z2), encArg(z3))) ENCODE_TAKE(z0, z1) -> c(TAKE(encArg(z0), encArg(z1))) ENCODE_AND(z0, z1) -> c(AND(encArg(z0), encArg(z1))) ENCODE_ISNAT(z0) -> c(ISNAT(encArg(z0))) ENCODE_ISNATLIST(z0) -> c(ISNATLIST(encArg(z0))) ENCODE_ISNATILIST(z0) -> c(ISNATILIST(encArg(z0))) ENCARG(cons_active(cons_active(z0))) -> c4(ACTIVE(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_active(cons_mark(z0))) -> c4(ACTIVE(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_active(cons_cons(z0, z1))) -> c4(ACTIVE(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_active(cons_U11(z0, z1))) -> c4(ACTIVE(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_active(cons_s(z0))) -> c4(ACTIVE(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_active(cons_length(z0))) -> c4(ACTIVE(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_active(cons_U21(z0))) -> c4(ACTIVE(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_active(cons_U31(z0, z1, z2, z3))) -> c4(ACTIVE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_active(cons_take(z0, z1))) -> c4(ACTIVE(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_active(cons_and(z0, z1))) -> c4(ACTIVE(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_active(cons_isNat(z0))) -> c4(ACTIVE(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_active(cons_isNatList(z0))) -> c4(ACTIVE(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_active(cons_isNatIList(z0))) -> c4(ACTIVE(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_active(zeros)) -> c4(ACTIVE(zeros)) ENCARG(cons_mark(cons_active(z0))) -> c5(MARK(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_mark(cons_mark(z0))) -> c5(MARK(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_mark(cons_cons(z0, z1))) -> c5(MARK(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_mark(cons_U11(z0, z1))) -> c5(MARK(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_mark(cons_s(z0))) -> c5(MARK(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_mark(cons_length(z0))) -> c5(MARK(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_mark(cons_U21(z0))) -> c5(MARK(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_mark(cons_U31(z0, z1, z2, z3))) -> c5(MARK(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_mark(cons_take(z0, z1))) -> c5(MARK(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(cons_and(z0, z1))) -> c5(MARK(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_mark(cons_isNat(z0))) -> c5(MARK(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_mark(cons_isNatList(z0))) -> c5(MARK(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_mark(cons_isNatIList(z0))) -> c5(MARK(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_mark(zeros)) -> c5(MARK(zeros)) ENCARG(cons_mark(0)) -> c5(MARK(0)) ENCARG(cons_mark(tt)) -> c5(MARK(tt)) ENCARG(cons_mark(nil)) -> c5(MARK(nil)) ENCARG(cons_cons(x0, cons_active(z0))) -> c6(CONS(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_cons(x0, cons_mark(z0))) -> c6(CONS(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_cons(x0, cons_cons(z0, z1))) -> c6(CONS(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_cons(x0, cons_U11(z0, z1))) -> c6(CONS(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_cons(x0, cons_s(z0))) -> c6(CONS(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_cons(x0, cons_length(z0))) -> c6(CONS(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_cons(x0, cons_U21(z0))) -> c6(CONS(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_cons(x0, cons_U31(z0, z1, z2, z3))) -> c6(CONS(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_cons(x0, cons_take(z0, z1))) -> c6(CONS(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_cons(x0, cons_and(z0, z1))) -> c6(CONS(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_cons(x0, cons_isNat(z0))) -> c6(CONS(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_cons(x0, cons_isNatList(z0))) -> c6(CONS(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_cons(x0, cons_isNatIList(z0))) -> c6(CONS(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_cons(cons_active(z0), x1)) -> c6(CONS(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_mark(z0), x1)) -> c6(CONS(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_cons(z0, z1), x1)) -> c6(CONS(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_U11(z0, z1), x1)) -> c6(CONS(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_s(z0), x1)) -> c6(CONS(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_length(z0), x1)) -> c6(CONS(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U21(z0), x1)) -> c6(CONS(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U31(z0, z1, z2, z3), x1)) -> c6(CONS(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_cons(cons_take(z0, z1), x1)) -> c6(CONS(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_and(z0, z1), x1)) -> c6(CONS(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_isNat(z0), x1)) -> c6(CONS(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_isNatList(z0), x1)) -> c6(CONS(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_isNatIList(z0), x1)) -> c6(CONS(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_cons(x0, zeros)) -> c6(CONS(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_cons(x0, 0)) -> c6(CONS(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_cons(x0, tt)) -> c6(CONS(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_cons(x0, nil)) -> c6(CONS(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_cons(zeros, x1)) -> c6(CONS(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(0, x1)) -> c6(CONS(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(tt, x1)) -> c6(CONS(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(nil, x1)) -> c6(CONS(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(x0, cons_active(z0))) -> c7(U11'(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_U11(x0, cons_mark(z0))) -> c7(U11'(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_U11(x0, cons_cons(z0, z1))) -> c7(U11'(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U11(x0, cons_U11(z0, z1))) -> c7(U11'(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U11(x0, cons_s(z0))) -> c7(U11'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_U11(x0, cons_length(z0))) -> c7(U11'(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_U11(x0, cons_U21(z0))) -> c7(U11'(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_U11(x0, cons_U31(z0, z1, z2, z3))) -> c7(U11'(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U11(x0, cons_take(z0, z1))) -> c7(U11'(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_U11(x0, cons_and(z0, z1))) -> c7(U11'(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_U11(x0, cons_isNat(z0))) -> c7(U11'(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_U11(x0, cons_isNatList(z0))) -> c7(U11'(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_U11(x0, cons_isNatIList(z0))) -> c7(U11'(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U11(cons_active(z0), x1)) -> c7(U11'(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_mark(z0), x1)) -> c7(U11'(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_cons(z0, z1), x1)) -> c7(U11'(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_U11(z0, z1), x1)) -> c7(U11'(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_s(z0), x1)) -> c7(U11'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_length(z0), x1)) -> c7(U11'(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_U21(z0), x1)) -> c7(U11'(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_U31(z0, z1, z2, z3), x1)) -> c7(U11'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_U11(cons_take(z0, z1), x1)) -> c7(U11'(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_and(z0, z1), x1)) -> c7(U11'(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_isNat(z0), x1)) -> c7(U11'(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_isNatList(z0), x1)) -> c7(U11'(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_isNatIList(z0), x1)) -> c7(U11'(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_U11(x0, zeros)) -> c7(U11'(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_U11(x0, 0)) -> c7(U11'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_U11(x0, tt)) -> c7(U11'(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_U11(x0, nil)) -> c7(U11'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_U11(zeros, x1)) -> c7(U11'(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(0, x1)) -> c7(U11'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(tt, x1)) -> c7(U11'(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(nil, x1)) -> c7(U11'(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_s(cons_active(z0))) -> c8(S(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_s(cons_mark(z0))) -> c8(S(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_s(cons_cons(z0, z1))) -> c8(S(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_s(cons_U11(z0, z1))) -> c8(S(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_s(cons_s(z0))) -> c8(S(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_length(z0))) -> c8(S(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_s(cons_U21(z0))) -> c8(S(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_s(cons_U31(z0, z1, z2, z3))) -> c8(S(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_s(cons_take(z0, z1))) -> c8(S(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_s(cons_and(z0, z1))) -> c8(S(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_s(cons_isNat(z0))) -> c8(S(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_s(cons_isNatList(z0))) -> c8(S(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_s(cons_isNatIList(z0))) -> c8(S(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_length(cons_active(z0))) -> c9(LENGTH(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_length(cons_mark(z0))) -> c9(LENGTH(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_length(cons_cons(z0, z1))) -> c9(LENGTH(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_length(cons_U11(z0, z1))) -> c9(LENGTH(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_length(cons_s(z0))) -> c9(LENGTH(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_length(cons_length(z0))) -> c9(LENGTH(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_length(cons_U21(z0))) -> c9(LENGTH(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_length(cons_U31(z0, z1, z2, z3))) -> c9(LENGTH(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_length(cons_take(z0, z1))) -> c9(LENGTH(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_length(cons_and(z0, z1))) -> c9(LENGTH(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_length(cons_isNat(z0))) -> c9(LENGTH(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_length(cons_isNatList(z0))) -> c9(LENGTH(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_length(cons_isNatIList(z0))) -> c9(LENGTH(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U21(cons_active(z0))) -> c10(U21'(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_U21(cons_mark(z0))) -> c10(U21'(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_U21(cons_cons(z0, z1))) -> c10(U21'(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U21(cons_U11(z0, z1))) -> c10(U21'(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U21(cons_s(z0))) -> c10(U21'(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_U21(cons_length(z0))) -> c10(U21'(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_U21(cons_U21(z0))) -> c10(U21'(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_U21(cons_U31(z0, z1, z2, z3))) -> c10(U21'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U21(cons_take(z0, z1))) -> c10(U21'(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_U21(cons_and(z0, z1))) -> c10(U21'(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_U21(cons_isNat(z0))) -> c10(U21'(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_U21(cons_isNatList(z0))) -> c10(U21'(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_U21(cons_isNatIList(z0))) -> c10(U21'(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U31(x0, x1, x2, cons_active(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), active(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_active(z0))) ENCARG(cons_U31(x0, x1, x2, cons_mark(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), mark(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_mark(z0))) ENCARG(cons_U31(x0, x1, x2, cons_cons(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_U11(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_s(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), s(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_s(z0))) ENCARG(cons_U31(x0, x1, x2, cons_length(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), length(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_length(z0))) ENCARG(cons_U31(x0, x1, x2, cons_U21(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U21(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U21(z0))) ENCARG(cons_U31(x0, x1, x2, cons_U31(z0, z1, z2, z3))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U31(x0, x1, x2, cons_take(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_take(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_and(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_and(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_isNat(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNat(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNat(z0))) ENCARG(cons_U31(x0, x1, x2, cons_isNatList(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNatList(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNatList(z0))) ENCARG(cons_U31(x0, x1, x2, cons_isNatIList(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U31(x0, x1, cons_active(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), active(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_active(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_mark(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), mark(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_mark(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_cons(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), cons(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_cons(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U11(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), U11(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U11(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_s(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), s(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_s(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_length(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), length(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_length(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U21(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), U21(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U21(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U31(z0, z1, z2, z3), x3)) -> c11(U31'(encArg(x0), encArg(x1), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_take(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), take(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_take(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_and(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), and(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_and(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNat(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNat(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNat(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNatList(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNatList(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNatList(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNatIList(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNatIList(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNatIList(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, cons_active(z0), x2, x3)) -> c11(U31'(encArg(x0), active(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_active(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_mark(z0), x2, x3)) -> c11(U31'(encArg(x0), mark(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_mark(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_cons(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), cons(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_cons(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U11(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), U11(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U11(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_s(z0), x2, x3)) -> c11(U31'(encArg(x0), s(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_s(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_length(z0), x2, x3)) -> c11(U31'(encArg(x0), length(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_length(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U21(z0), x2, x3)) -> c11(U31'(encArg(x0), U21(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U21(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U31(z0, z1, z2, z3), x2, x3)) -> c11(U31'(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_take(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), take(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_take(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_and(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), and(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_and(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNat(z0), x2, x3)) -> c11(U31'(encArg(x0), isNat(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNat(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNatList(z0), x2, x3)) -> c11(U31'(encArg(x0), isNatList(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNatList(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNatIList(z0), x2, x3)) -> c11(U31'(encArg(x0), isNatIList(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNatIList(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_active(z0), x1, x2, x3)) -> c11(U31'(active(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_active(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_mark(z0), x1, x2, x3)) -> c11(U31'(mark(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_mark(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_cons(z0, z1), x1, x2, x3)) -> c11(U31'(cons(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_cons(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U11(z0, z1), x1, x2, x3)) -> c11(U31'(U11(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U11(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_s(z0), x1, x2, x3)) -> c11(U31'(s(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_s(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_length(z0), x1, x2, x3)) -> c11(U31'(length(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_length(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U21(z0), x1, x2, x3)) -> c11(U31'(U21(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U21(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U31(z0, z1, z2, z3), x1, x2, x3)) -> c11(U31'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_take(z0, z1), x1, x2, x3)) -> c11(U31'(take(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_take(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_and(z0, z1), x1, x2, x3)) -> c11(U31'(and(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_and(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNat(z0), x1, x2, x3)) -> c11(U31'(isNat(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNat(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNatList(z0), x1, x2, x3)) -> c11(U31'(isNatList(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNatList(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNatIList(z0), x1, x2, x3)) -> c11(U31'(isNatIList(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNatIList(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, x1, x2, zeros)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), zeros), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, 0)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), 0), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, tt)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), tt), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, nil)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), nil), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, zeros, x3)) -> c11(U31'(encArg(x0), encArg(x1), zeros, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, 0, x3)) -> c11(U31'(encArg(x0), encArg(x1), 0, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, tt, x3)) -> c11(U31'(encArg(x0), encArg(x1), tt, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, nil, x3)) -> c11(U31'(encArg(x0), encArg(x1), nil, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, zeros, x2, x3)) -> c11(U31'(encArg(x0), zeros, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, 0, x2, x3)) -> c11(U31'(encArg(x0), 0, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, tt, x2, x3)) -> c11(U31'(encArg(x0), tt, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, nil, x2, x3)) -> c11(U31'(encArg(x0), nil, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(zeros, x1, x2, x3)) -> c11(U31'(zeros, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(0, x1, x2, x3)) -> c11(U31'(0, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(tt, x1, x2, x3)) -> c11(U31'(tt, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(nil, x1, x2, x3)) -> c11(U31'(nil, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_take(x0, cons_active(z0))) -> c12(TAKE(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_take(x0, cons_mark(z0))) -> c12(TAKE(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_take(x0, cons_cons(z0, z1))) -> c12(TAKE(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_take(x0, cons_U11(z0, z1))) -> c12(TAKE(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_take(x0, cons_s(z0))) -> c12(TAKE(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_take(x0, cons_length(z0))) -> c12(TAKE(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_take(x0, cons_U21(z0))) -> c12(TAKE(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_take(x0, cons_U31(z0, z1, z2, z3))) -> c12(TAKE(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_take(x0, cons_take(z0, z1))) -> c12(TAKE(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_take(x0, cons_and(z0, z1))) -> c12(TAKE(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_take(x0, cons_isNat(z0))) -> c12(TAKE(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_take(x0, cons_isNatList(z0))) -> c12(TAKE(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_take(x0, cons_isNatIList(z0))) -> c12(TAKE(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_take(cons_active(z0), x1)) -> c12(TAKE(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_take(cons_mark(z0), x1)) -> c12(TAKE(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_take(cons_cons(z0, z1), x1)) -> c12(TAKE(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_U11(z0, z1), x1)) -> c12(TAKE(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_s(z0), x1)) -> c12(TAKE(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_take(cons_length(z0), x1)) -> c12(TAKE(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_take(cons_U21(z0), x1)) -> c12(TAKE(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_take(cons_U31(z0, z1, z2, z3), x1)) -> c12(TAKE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_take(cons_take(z0, z1), x1)) -> c12(TAKE(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_and(z0, z1), x1)) -> c12(TAKE(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_isNat(z0), x1)) -> c12(TAKE(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_take(cons_isNatList(z0), x1)) -> c12(TAKE(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_take(cons_isNatIList(z0), x1)) -> c12(TAKE(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_take(x0, zeros)) -> c12(TAKE(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_take(x0, 0)) -> c12(TAKE(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_take(x0, tt)) -> c12(TAKE(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_take(x0, nil)) -> c12(TAKE(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_take(zeros, x1)) -> c12(TAKE(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(0, x1)) -> c12(TAKE(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(tt, x1)) -> c12(TAKE(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(nil, x1)) -> c12(TAKE(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(x0, cons_active(z0))) -> c13(AND(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_and(x0, cons_mark(z0))) -> c13(AND(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_and(x0, cons_cons(z0, z1))) -> c13(AND(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_and(x0, cons_U11(z0, z1))) -> c13(AND(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_and(x0, cons_s(z0))) -> c13(AND(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_and(x0, cons_length(z0))) -> c13(AND(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_and(x0, cons_U21(z0))) -> c13(AND(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_and(x0, cons_U31(z0, z1, z2, z3))) -> c13(AND(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_and(x0, cons_take(z0, z1))) -> c13(AND(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_and(x0, cons_and(z0, z1))) -> c13(AND(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_and(x0, cons_isNat(z0))) -> c13(AND(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_and(x0, cons_isNatList(z0))) -> c13(AND(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_and(x0, cons_isNatIList(z0))) -> c13(AND(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_and(cons_active(z0), x1)) -> c13(AND(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_and(cons_mark(z0), x1)) -> c13(AND(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_and(cons_cons(z0, z1), x1)) -> c13(AND(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_U11(z0, z1), x1)) -> c13(AND(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_s(z0), x1)) -> c13(AND(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_and(cons_length(z0), x1)) -> c13(AND(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_and(cons_U21(z0), x1)) -> c13(AND(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_and(cons_U31(z0, z1, z2, z3), x1)) -> c13(AND(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_and(cons_take(z0, z1), x1)) -> c13(AND(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_and(z0, z1), x1)) -> c13(AND(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_isNat(z0), x1)) -> c13(AND(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_and(cons_isNatList(z0), x1)) -> c13(AND(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_and(cons_isNatIList(z0), x1)) -> c13(AND(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_and(x0, zeros)) -> c13(AND(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_and(x0, 0)) -> c13(AND(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_and(x0, tt)) -> c13(AND(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_and(x0, nil)) -> c13(AND(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_and(zeros, x1)) -> c13(AND(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(0, x1)) -> c13(AND(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(tt, x1)) -> c13(AND(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(nil, x1)) -> c13(AND(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_isNat(cons_active(z0))) -> c14(ISNAT(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_isNat(cons_mark(z0))) -> c14(ISNAT(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_isNat(cons_cons(z0, z1))) -> c14(ISNAT(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_isNat(cons_U11(z0, z1))) -> c14(ISNAT(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_isNat(cons_s(z0))) -> c14(ISNAT(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_isNat(cons_length(z0))) -> c14(ISNAT(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_isNat(cons_U21(z0))) -> c14(ISNAT(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_isNat(cons_U31(z0, z1, z2, z3))) -> c14(ISNAT(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_isNat(cons_take(z0, z1))) -> c14(ISNAT(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_isNat(cons_and(z0, z1))) -> c14(ISNAT(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_isNat(cons_isNat(z0))) -> c14(ISNAT(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_isNat(cons_isNatList(z0))) -> c14(ISNAT(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_isNat(cons_isNatIList(z0))) -> c14(ISNAT(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_isNatList(cons_active(z0))) -> c15(ISNATLIST(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_isNatList(cons_mark(z0))) -> c15(ISNATLIST(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_isNatList(cons_cons(z0, z1))) -> c15(ISNATLIST(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_isNatList(cons_U11(z0, z1))) -> c15(ISNATLIST(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_isNatList(cons_s(z0))) -> c15(ISNATLIST(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_isNatList(cons_length(z0))) -> c15(ISNATLIST(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_isNatList(cons_U21(z0))) -> c15(ISNATLIST(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_isNatList(cons_U31(z0, z1, z2, z3))) -> c15(ISNATLIST(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_isNatList(cons_take(z0, z1))) -> c15(ISNATLIST(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_isNatList(cons_and(z0, z1))) -> c15(ISNATLIST(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_isNatList(cons_isNat(z0))) -> c15(ISNATLIST(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_isNatList(cons_isNatList(z0))) -> c15(ISNATLIST(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_isNatList(cons_isNatIList(z0))) -> c15(ISNATLIST(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_isNatIList(cons_active(z0))) -> c16(ISNATILIST(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_isNatIList(cons_mark(z0))) -> c16(ISNATILIST(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_isNatIList(cons_cons(z0, z1))) -> c16(ISNATILIST(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_isNatIList(cons_U11(z0, z1))) -> c16(ISNATILIST(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_isNatIList(cons_s(z0))) -> c16(ISNATILIST(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_isNatIList(cons_length(z0))) -> c16(ISNATILIST(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_isNatIList(cons_U21(z0))) -> c16(ISNATILIST(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_isNatIList(cons_U31(z0, z1, z2, z3))) -> c16(ISNATILIST(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_isNatIList(cons_take(z0, z1))) -> c16(ISNATILIST(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_isNatIList(cons_and(z0, z1))) -> c16(ISNATILIST(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_isNatIList(cons_isNat(z0))) -> c16(ISNATILIST(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_isNatIList(cons_isNatList(z0))) -> c16(ISNATILIST(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_isNatIList(cons_isNatIList(z0))) -> c16(ISNATILIST(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) MARK(cons(zeros, x1)) -> c53(ACTIVE(cons(active(zeros), x1)), CONS(mark(zeros), x1), MARK(zeros)) MARK(cons(cons(z0, z1), x1)) -> c53(ACTIVE(cons(active(cons(mark(z0), z1)), x1)), CONS(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(cons(0, x1)) -> c53(ACTIVE(cons(active(0), x1)), CONS(mark(0), x1), MARK(0)) MARK(cons(U11(z0, z1), x1)) -> c53(ACTIVE(cons(active(U11(mark(z0), z1)), x1)), CONS(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(cons(tt, x1)) -> c53(ACTIVE(cons(active(tt), x1)), CONS(mark(tt), x1), MARK(tt)) MARK(cons(s(z0), x1)) -> c53(ACTIVE(cons(active(s(mark(z0))), x1)), CONS(mark(s(z0)), x1), MARK(s(z0))) MARK(cons(length(z0), x1)) -> c53(ACTIVE(cons(active(length(mark(z0))), x1)), CONS(mark(length(z0)), x1), MARK(length(z0))) MARK(cons(U21(z0), x1)) -> c53(ACTIVE(cons(active(U21(mark(z0))), x1)), CONS(mark(U21(z0)), x1), MARK(U21(z0))) MARK(cons(nil, x1)) -> c53(ACTIVE(cons(active(nil), x1)), CONS(mark(nil), x1), MARK(nil)) MARK(cons(U31(z0, z1, z2, z3), x1)) -> c53(ACTIVE(cons(active(U31(mark(z0), z1, z2, z3)), x1)), CONS(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(cons(take(z0, z1), x1)) -> c53(ACTIVE(cons(active(take(mark(z0), mark(z1))), x1)), CONS(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(cons(and(z0, z1), x1)) -> c53(ACTIVE(cons(active(and(mark(z0), z1)), x1)), CONS(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(cons(isNat(z0), x1)) -> c53(ACTIVE(cons(active(isNat(z0)), x1)), CONS(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(cons(isNatList(z0), x1)) -> c53(ACTIVE(cons(active(isNatList(z0)), x1)), CONS(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(cons(isNatIList(z0), x1)) -> c53(ACTIVE(cons(active(isNatIList(z0)), x1)), CONS(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(cons(x0, x1)) -> c53(CONS(mark(x0), x1)) MARK(cons(z0, z1)) -> c53(CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(z0, z1)), U11'(mark(z0), z1), MARK(z0)) MARK(U11(zeros, x1)) -> c55(ACTIVE(U11(active(zeros), x1)), U11'(mark(zeros), x1), MARK(zeros)) MARK(U11(cons(z0, z1), x1)) -> c55(ACTIVE(U11(active(cons(mark(z0), z1)), x1)), U11'(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(U11(0, x1)) -> c55(ACTIVE(U11(active(0), x1)), U11'(mark(0), x1), MARK(0)) MARK(U11(U11(z0, z1), x1)) -> c55(ACTIVE(U11(active(U11(mark(z0), z1)), x1)), U11'(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(U11(tt, x1)) -> c55(ACTIVE(U11(active(tt), x1)), U11'(mark(tt), x1), MARK(tt)) MARK(U11(s(z0), x1)) -> c55(ACTIVE(U11(active(s(mark(z0))), x1)), U11'(mark(s(z0)), x1), MARK(s(z0))) MARK(U11(length(z0), x1)) -> c55(ACTIVE(U11(active(length(mark(z0))), x1)), U11'(mark(length(z0)), x1), MARK(length(z0))) MARK(U11(U21(z0), x1)) -> c55(ACTIVE(U11(active(U21(mark(z0))), x1)), U11'(mark(U21(z0)), x1), MARK(U21(z0))) MARK(U11(nil, x1)) -> c55(ACTIVE(U11(active(nil), x1)), U11'(mark(nil), x1), MARK(nil)) MARK(U11(U31(z0, z1, z2, z3), x1)) -> c55(ACTIVE(U11(active(U31(mark(z0), z1, z2, z3)), x1)), U11'(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(U11(take(z0, z1), x1)) -> c55(ACTIVE(U11(active(take(mark(z0), mark(z1))), x1)), U11'(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(U11(and(z0, z1), x1)) -> c55(ACTIVE(U11(active(and(mark(z0), z1)), x1)), U11'(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(U11(isNat(z0), x1)) -> c55(ACTIVE(U11(active(isNat(z0)), x1)), U11'(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(U11(isNatList(z0), x1)) -> c55(ACTIVE(U11(active(isNatList(z0)), x1)), U11'(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(U11(isNatIList(z0), x1)) -> c55(ACTIVE(U11(active(isNatIList(z0)), x1)), U11'(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(U11(x0, x1)) -> c55(U11'(mark(x0), x1)) S tuples: ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(s(z0)) -> c57(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(mark(z0))), LENGTH(mark(z0)), MARK(z0)) MARK(U21(z0)) -> c59(ACTIVE(U21(mark(z0))), U21'(mark(z0)), MARK(z0)) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(mark(z0), z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(take(z0, z1)) -> c62(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 MARK(cons(zeros, x1)) -> c53(ACTIVE(cons(active(zeros), x1)), CONS(mark(zeros), x1), MARK(zeros)) MARK(cons(cons(z0, z1), x1)) -> c53(ACTIVE(cons(active(cons(mark(z0), z1)), x1)), CONS(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(cons(0, x1)) -> c53(ACTIVE(cons(active(0), x1)), CONS(mark(0), x1), MARK(0)) MARK(cons(U11(z0, z1), x1)) -> c53(ACTIVE(cons(active(U11(mark(z0), z1)), x1)), CONS(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(cons(tt, x1)) -> c53(ACTIVE(cons(active(tt), x1)), CONS(mark(tt), x1), MARK(tt)) MARK(cons(s(z0), x1)) -> c53(ACTIVE(cons(active(s(mark(z0))), x1)), CONS(mark(s(z0)), x1), MARK(s(z0))) MARK(cons(length(z0), x1)) -> c53(ACTIVE(cons(active(length(mark(z0))), x1)), CONS(mark(length(z0)), x1), MARK(length(z0))) MARK(cons(U21(z0), x1)) -> c53(ACTIVE(cons(active(U21(mark(z0))), x1)), CONS(mark(U21(z0)), x1), MARK(U21(z0))) MARK(cons(nil, x1)) -> c53(ACTIVE(cons(active(nil), x1)), CONS(mark(nil), x1), MARK(nil)) MARK(cons(U31(z0, z1, z2, z3), x1)) -> c53(ACTIVE(cons(active(U31(mark(z0), z1, z2, z3)), x1)), CONS(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(cons(take(z0, z1), x1)) -> c53(ACTIVE(cons(active(take(mark(z0), mark(z1))), x1)), CONS(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(cons(and(z0, z1), x1)) -> c53(ACTIVE(cons(active(and(mark(z0), z1)), x1)), CONS(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(cons(isNat(z0), x1)) -> c53(ACTIVE(cons(active(isNat(z0)), x1)), CONS(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(cons(isNatList(z0), x1)) -> c53(ACTIVE(cons(active(isNatList(z0)), x1)), CONS(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(cons(isNatIList(z0), x1)) -> c53(ACTIVE(cons(active(isNatIList(z0)), x1)), CONS(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(cons(x0, x1)) -> c53(CONS(mark(x0), x1)) MARK(cons(z0, z1)) -> c53(CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(z0, z1)), U11'(mark(z0), z1), MARK(z0)) MARK(U11(zeros, x1)) -> c55(ACTIVE(U11(active(zeros), x1)), U11'(mark(zeros), x1), MARK(zeros)) MARK(U11(cons(z0, z1), x1)) -> c55(ACTIVE(U11(active(cons(mark(z0), z1)), x1)), U11'(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(U11(0, x1)) -> c55(ACTIVE(U11(active(0), x1)), U11'(mark(0), x1), MARK(0)) MARK(U11(U11(z0, z1), x1)) -> c55(ACTIVE(U11(active(U11(mark(z0), z1)), x1)), U11'(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(U11(tt, x1)) -> c55(ACTIVE(U11(active(tt), x1)), U11'(mark(tt), x1), MARK(tt)) MARK(U11(s(z0), x1)) -> c55(ACTIVE(U11(active(s(mark(z0))), x1)), U11'(mark(s(z0)), x1), MARK(s(z0))) MARK(U11(length(z0), x1)) -> c55(ACTIVE(U11(active(length(mark(z0))), x1)), U11'(mark(length(z0)), x1), MARK(length(z0))) MARK(U11(U21(z0), x1)) -> c55(ACTIVE(U11(active(U21(mark(z0))), x1)), U11'(mark(U21(z0)), x1), MARK(U21(z0))) MARK(U11(nil, x1)) -> c55(ACTIVE(U11(active(nil), x1)), U11'(mark(nil), x1), MARK(nil)) MARK(U11(U31(z0, z1, z2, z3), x1)) -> c55(ACTIVE(U11(active(U31(mark(z0), z1, z2, z3)), x1)), U11'(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(U11(take(z0, z1), x1)) -> c55(ACTIVE(U11(active(take(mark(z0), mark(z1))), x1)), U11'(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(U11(and(z0, z1), x1)) -> c55(ACTIVE(U11(active(and(mark(z0), z1)), x1)), U11'(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(U11(isNat(z0), x1)) -> c55(ACTIVE(U11(active(isNat(z0)), x1)), U11'(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(U11(isNatList(z0), x1)) -> c55(ACTIVE(U11(active(isNatList(z0)), x1)), U11'(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(U11(isNatIList(z0), x1)) -> c55(ACTIVE(U11(active(isNatIList(z0)), x1)), U11'(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(U11(x0, x1)) -> c55(U11'(mark(x0), x1)) K tuples:none Defined Rule Symbols: encArg_1, active_1, mark_1, cons_2, U11_2, s_1, length_1, U21_1, U31_4, take_2, and_2, isNat_1, isNatList_1, isNatIList_1 Defined Pair Symbols: ACTIVE_1, MARK_1, CONS_2, U11'_2, S_1, LENGTH_1, U21'_1, U31'_4, TAKE_2, AND_2, ISNAT_1, ISNATLIST_1, ISNATILIST_1, ENCODE_ACTIVE_1, ENCODE_MARK_1, ENCODE_CONS_2, ENCODE_U11_2, ENCODE_S_1, ENCODE_LENGTH_1, ENCODE_U21_1, ENCODE_U31_4, ENCODE_TAKE_2, ENCODE_AND_2, ENCODE_ISNAT_1, ENCODE_ISNATLIST_1, ENCODE_ISNATILIST_1, ENCARG_1 Compound Symbols: c36_1, c37_3, c38_1, c39_1, c40_2, c41_2, c42_2, c43_1, c45_1, c48_1, c52_1, c57_3, c58_3, c59_3, c61_3, c62_4, c63_3, c64_2, c65_2, c66_2, c67_1, c68_1, c69_1, c70_1, c71_1, c72_1, c73_1, c74_1, c75_1, c76_1, c77_1, c78_1, c79_1, c80_1, c81_1, c82_1, c83_1, c84_1, c85_1, c86_1, c87_1, c88_1, c89_1, c90_1, c91_1, c92_1, c93_1, c94_1, c95_1, c96_1, c97_1, c98_1, c99_1, c100_1, c101_1, c102_1, c34_1, c35_2, c44_3, c46_3, c47_3, c49_3, c50_2, c51_4, c54, c56, c60, c_1, c4_2, c4_1, c5_2, c5_1, c6_3, c6_2, c7_3, c7_2, c8_2, c9_2, c10_2, c11_5, c11_4, c12_3, c12_2, c13_3, c13_2, c14_2, c15_2, c16_2, c53_3, c53_1, c53_2, c55_3, c55_1 ---------------------------------------- (99) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace MARK(s(z0)) -> c57(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) by MARK(s(z0)) -> c57(ACTIVE(s(z0)), S(mark(z0)), MARK(z0)) MARK(s(zeros)) -> c57(ACTIVE(s(active(zeros))), S(mark(zeros)), MARK(zeros)) MARK(s(cons(z0, z1))) -> c57(ACTIVE(s(active(cons(mark(z0), z1)))), S(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(s(0)) -> c57(ACTIVE(s(active(0))), S(mark(0)), MARK(0)) MARK(s(U11(z0, z1))) -> c57(ACTIVE(s(active(U11(mark(z0), z1)))), S(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(s(tt)) -> c57(ACTIVE(s(active(tt))), S(mark(tt)), MARK(tt)) MARK(s(s(z0))) -> c57(ACTIVE(s(active(s(mark(z0))))), S(mark(s(z0))), MARK(s(z0))) MARK(s(length(z0))) -> c57(ACTIVE(s(active(length(mark(z0))))), S(mark(length(z0))), MARK(length(z0))) MARK(s(U21(z0))) -> c57(ACTIVE(s(active(U21(mark(z0))))), S(mark(U21(z0))), MARK(U21(z0))) MARK(s(nil)) -> c57(ACTIVE(s(active(nil))), S(mark(nil)), MARK(nil)) MARK(s(U31(z0, z1, z2, z3))) -> c57(ACTIVE(s(active(U31(mark(z0), z1, z2, z3)))), S(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(s(take(z0, z1))) -> c57(ACTIVE(s(active(take(mark(z0), mark(z1))))), S(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(s(and(z0, z1))) -> c57(ACTIVE(s(active(and(mark(z0), z1)))), S(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(s(isNat(z0))) -> c57(ACTIVE(s(active(isNat(z0)))), S(mark(isNat(z0))), MARK(isNat(z0))) MARK(s(isNatList(z0))) -> c57(ACTIVE(s(active(isNatList(z0)))), S(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(s(isNatIList(z0))) -> c57(ACTIVE(s(active(isNatIList(z0)))), S(mark(isNatIList(z0))), MARK(isNatIList(z0))) ---------------------------------------- (100) Obligation: Complexity Dependency Tuples Problem Rules: encArg(zeros) -> zeros encArg(0) -> 0 encArg(tt) -> tt encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_U11(z0, z1)) -> U11(encArg(z0), encArg(z1)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_length(z0)) -> length(encArg(z0)) encArg(cons_U21(z0)) -> U21(encArg(z0)) encArg(cons_U31(z0, z1, z2, z3)) -> U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_isNat(z0)) -> isNat(encArg(z0)) encArg(cons_isNatList(z0)) -> isNatList(encArg(z0)) encArg(cons_isNatIList(z0)) -> isNatIList(encArg(z0)) active(zeros) -> mark(cons(0, zeros)) active(U11(tt, z0)) -> mark(s(length(z0))) active(U21(tt)) -> mark(nil) active(U31(tt, z0, z1, z2)) -> mark(cons(z2, take(z1, z0))) active(and(tt, z0)) -> mark(z0) active(isNat(0)) -> mark(tt) active(isNat(length(z0))) -> mark(isNatList(z0)) active(isNat(s(z0))) -> mark(isNat(z0)) active(isNatIList(z0)) -> mark(isNatList(z0)) active(isNatIList(zeros)) -> mark(tt) active(isNatIList(cons(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(isNatList(nil)) -> mark(tt) active(isNatList(cons(z0, z1))) -> mark(and(isNat(z0), isNatList(z1))) active(isNatList(take(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(length(nil)) -> mark(0) active(length(cons(z0, z1))) -> mark(U11(and(isNatList(z1), isNat(z0)), z1)) active(take(0, z0)) -> mark(U21(isNatIList(z0))) active(take(s(z0), cons(z1, z2))) -> mark(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)) mark(zeros) -> active(zeros) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(0) -> active(0) mark(U11(z0, z1)) -> active(U11(mark(z0), z1)) mark(tt) -> active(tt) mark(s(z0)) -> active(s(mark(z0))) mark(length(z0)) -> active(length(mark(z0))) mark(U21(z0)) -> active(U21(mark(z0))) mark(nil) -> active(nil) mark(U31(z0, z1, z2, z3)) -> active(U31(mark(z0), z1, z2, z3)) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(isNat(z0)) -> active(isNat(z0)) mark(isNatList(z0)) -> active(isNatList(z0)) mark(isNatIList(z0)) -> active(isNatIList(z0)) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) U11(mark(z0), z1) -> U11(z0, z1) U11(z0, mark(z1)) -> U11(z0, z1) U11(active(z0), z1) -> U11(z0, z1) U11(z0, active(z1)) -> U11(z0, z1) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) length(mark(z0)) -> length(z0) length(active(z0)) -> length(z0) U21(mark(z0)) -> U21(z0) U21(active(z0)) -> U21(z0) U31(mark(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, mark(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, mark(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, mark(z3)) -> U31(z0, z1, z2, z3) U31(active(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, active(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, active(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, active(z3)) -> U31(z0, z1, z2, z3) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) isNat(mark(z0)) -> isNat(z0) isNat(active(z0)) -> isNat(z0) isNatList(mark(z0)) -> isNatList(z0) isNatList(active(z0)) -> isNatList(z0) isNatIList(mark(z0)) -> isNatIList(z0) isNatIList(active(z0)) -> isNatIList(z0) Tuples: ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(length(z0)) -> c58(ACTIVE(length(mark(z0))), LENGTH(mark(z0)), MARK(z0)) MARK(U21(z0)) -> c59(ACTIVE(U21(mark(z0))), U21'(mark(z0)), MARK(z0)) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(mark(z0), z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(take(z0, z1)) -> c62(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 ENCODE_ACTIVE(z0) -> c(ACTIVE(encArg(z0))) ENCODE_MARK(z0) -> c(MARK(encArg(z0))) ENCODE_CONS(z0, z1) -> c(CONS(encArg(z0), encArg(z1))) ENCODE_U11(z0, z1) -> c(U11'(encArg(z0), encArg(z1))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_LENGTH(z0) -> c(LENGTH(encArg(z0))) ENCODE_U21(z0) -> c(U21'(encArg(z0))) ENCODE_U31(z0, z1, z2, z3) -> c(U31'(encArg(z0), encArg(z1), encArg(z2), encArg(z3))) ENCODE_TAKE(z0, z1) -> c(TAKE(encArg(z0), encArg(z1))) ENCODE_AND(z0, z1) -> c(AND(encArg(z0), encArg(z1))) ENCODE_ISNAT(z0) -> c(ISNAT(encArg(z0))) ENCODE_ISNATLIST(z0) -> c(ISNATLIST(encArg(z0))) ENCODE_ISNATILIST(z0) -> c(ISNATILIST(encArg(z0))) ENCARG(cons_active(cons_active(z0))) -> c4(ACTIVE(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_active(cons_mark(z0))) -> c4(ACTIVE(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_active(cons_cons(z0, z1))) -> c4(ACTIVE(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_active(cons_U11(z0, z1))) -> c4(ACTIVE(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_active(cons_s(z0))) -> c4(ACTIVE(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_active(cons_length(z0))) -> c4(ACTIVE(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_active(cons_U21(z0))) -> c4(ACTIVE(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_active(cons_U31(z0, z1, z2, z3))) -> c4(ACTIVE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_active(cons_take(z0, z1))) -> c4(ACTIVE(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_active(cons_and(z0, z1))) -> c4(ACTIVE(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_active(cons_isNat(z0))) -> c4(ACTIVE(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_active(cons_isNatList(z0))) -> c4(ACTIVE(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_active(cons_isNatIList(z0))) -> c4(ACTIVE(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_active(zeros)) -> c4(ACTIVE(zeros)) ENCARG(cons_mark(cons_active(z0))) -> c5(MARK(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_mark(cons_mark(z0))) -> c5(MARK(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_mark(cons_cons(z0, z1))) -> c5(MARK(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_mark(cons_U11(z0, z1))) -> c5(MARK(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_mark(cons_s(z0))) -> c5(MARK(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_mark(cons_length(z0))) -> c5(MARK(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_mark(cons_U21(z0))) -> c5(MARK(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_mark(cons_U31(z0, z1, z2, z3))) -> c5(MARK(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_mark(cons_take(z0, z1))) -> c5(MARK(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(cons_and(z0, z1))) -> c5(MARK(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_mark(cons_isNat(z0))) -> c5(MARK(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_mark(cons_isNatList(z0))) -> c5(MARK(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_mark(cons_isNatIList(z0))) -> c5(MARK(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_mark(zeros)) -> c5(MARK(zeros)) ENCARG(cons_mark(0)) -> c5(MARK(0)) ENCARG(cons_mark(tt)) -> c5(MARK(tt)) ENCARG(cons_mark(nil)) -> c5(MARK(nil)) ENCARG(cons_cons(x0, cons_active(z0))) -> c6(CONS(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_cons(x0, cons_mark(z0))) -> c6(CONS(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_cons(x0, cons_cons(z0, z1))) -> c6(CONS(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_cons(x0, cons_U11(z0, z1))) -> c6(CONS(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_cons(x0, cons_s(z0))) -> c6(CONS(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_cons(x0, cons_length(z0))) -> c6(CONS(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_cons(x0, cons_U21(z0))) -> c6(CONS(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_cons(x0, cons_U31(z0, z1, z2, z3))) -> c6(CONS(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_cons(x0, cons_take(z0, z1))) -> c6(CONS(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_cons(x0, cons_and(z0, z1))) -> c6(CONS(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_cons(x0, cons_isNat(z0))) -> c6(CONS(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_cons(x0, cons_isNatList(z0))) -> c6(CONS(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_cons(x0, cons_isNatIList(z0))) -> c6(CONS(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_cons(cons_active(z0), x1)) -> c6(CONS(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_mark(z0), x1)) -> c6(CONS(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_cons(z0, z1), x1)) -> c6(CONS(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_U11(z0, z1), x1)) -> c6(CONS(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_s(z0), x1)) -> c6(CONS(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_length(z0), x1)) -> c6(CONS(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U21(z0), x1)) -> c6(CONS(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U31(z0, z1, z2, z3), x1)) -> c6(CONS(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_cons(cons_take(z0, z1), x1)) -> c6(CONS(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_and(z0, z1), x1)) -> c6(CONS(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_isNat(z0), x1)) -> c6(CONS(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_isNatList(z0), x1)) -> c6(CONS(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_isNatIList(z0), x1)) -> c6(CONS(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_cons(x0, zeros)) -> c6(CONS(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_cons(x0, 0)) -> c6(CONS(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_cons(x0, tt)) -> c6(CONS(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_cons(x0, nil)) -> c6(CONS(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_cons(zeros, x1)) -> c6(CONS(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(0, x1)) -> c6(CONS(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(tt, x1)) -> c6(CONS(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(nil, x1)) -> c6(CONS(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(x0, cons_active(z0))) -> c7(U11'(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_U11(x0, cons_mark(z0))) -> c7(U11'(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_U11(x0, cons_cons(z0, z1))) -> c7(U11'(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U11(x0, cons_U11(z0, z1))) -> c7(U11'(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U11(x0, cons_s(z0))) -> c7(U11'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_U11(x0, cons_length(z0))) -> c7(U11'(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_U11(x0, cons_U21(z0))) -> c7(U11'(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_U11(x0, cons_U31(z0, z1, z2, z3))) -> c7(U11'(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U11(x0, cons_take(z0, z1))) -> c7(U11'(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_U11(x0, cons_and(z0, z1))) -> c7(U11'(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_U11(x0, cons_isNat(z0))) -> c7(U11'(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_U11(x0, cons_isNatList(z0))) -> c7(U11'(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_U11(x0, cons_isNatIList(z0))) -> c7(U11'(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U11(cons_active(z0), x1)) -> c7(U11'(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_mark(z0), x1)) -> c7(U11'(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_cons(z0, z1), x1)) -> c7(U11'(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_U11(z0, z1), x1)) -> c7(U11'(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_s(z0), x1)) -> c7(U11'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_length(z0), x1)) -> c7(U11'(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_U21(z0), x1)) -> c7(U11'(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_U31(z0, z1, z2, z3), x1)) -> c7(U11'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_U11(cons_take(z0, z1), x1)) -> c7(U11'(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_and(z0, z1), x1)) -> c7(U11'(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_isNat(z0), x1)) -> c7(U11'(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_isNatList(z0), x1)) -> c7(U11'(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_isNatIList(z0), x1)) -> c7(U11'(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_U11(x0, zeros)) -> c7(U11'(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_U11(x0, 0)) -> c7(U11'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_U11(x0, tt)) -> c7(U11'(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_U11(x0, nil)) -> c7(U11'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_U11(zeros, x1)) -> c7(U11'(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(0, x1)) -> c7(U11'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(tt, x1)) -> c7(U11'(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(nil, x1)) -> c7(U11'(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_s(cons_active(z0))) -> c8(S(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_s(cons_mark(z0))) -> c8(S(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_s(cons_cons(z0, z1))) -> c8(S(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_s(cons_U11(z0, z1))) -> c8(S(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_s(cons_s(z0))) -> c8(S(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_length(z0))) -> c8(S(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_s(cons_U21(z0))) -> c8(S(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_s(cons_U31(z0, z1, z2, z3))) -> c8(S(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_s(cons_take(z0, z1))) -> c8(S(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_s(cons_and(z0, z1))) -> c8(S(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_s(cons_isNat(z0))) -> c8(S(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_s(cons_isNatList(z0))) -> c8(S(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_s(cons_isNatIList(z0))) -> c8(S(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_length(cons_active(z0))) -> c9(LENGTH(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_length(cons_mark(z0))) -> c9(LENGTH(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_length(cons_cons(z0, z1))) -> c9(LENGTH(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_length(cons_U11(z0, z1))) -> c9(LENGTH(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_length(cons_s(z0))) -> c9(LENGTH(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_length(cons_length(z0))) -> c9(LENGTH(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_length(cons_U21(z0))) -> c9(LENGTH(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_length(cons_U31(z0, z1, z2, z3))) -> c9(LENGTH(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_length(cons_take(z0, z1))) -> c9(LENGTH(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_length(cons_and(z0, z1))) -> c9(LENGTH(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_length(cons_isNat(z0))) -> c9(LENGTH(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_length(cons_isNatList(z0))) -> c9(LENGTH(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_length(cons_isNatIList(z0))) -> c9(LENGTH(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U21(cons_active(z0))) -> c10(U21'(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_U21(cons_mark(z0))) -> c10(U21'(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_U21(cons_cons(z0, z1))) -> c10(U21'(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U21(cons_U11(z0, z1))) -> c10(U21'(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U21(cons_s(z0))) -> c10(U21'(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_U21(cons_length(z0))) -> c10(U21'(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_U21(cons_U21(z0))) -> c10(U21'(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_U21(cons_U31(z0, z1, z2, z3))) -> c10(U21'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U21(cons_take(z0, z1))) -> c10(U21'(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_U21(cons_and(z0, z1))) -> c10(U21'(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_U21(cons_isNat(z0))) -> c10(U21'(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_U21(cons_isNatList(z0))) -> c10(U21'(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_U21(cons_isNatIList(z0))) -> c10(U21'(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U31(x0, x1, x2, cons_active(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), active(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_active(z0))) ENCARG(cons_U31(x0, x1, x2, cons_mark(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), mark(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_mark(z0))) ENCARG(cons_U31(x0, x1, x2, cons_cons(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_U11(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_s(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), s(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_s(z0))) ENCARG(cons_U31(x0, x1, x2, cons_length(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), length(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_length(z0))) ENCARG(cons_U31(x0, x1, x2, cons_U21(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U21(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U21(z0))) ENCARG(cons_U31(x0, x1, x2, cons_U31(z0, z1, z2, z3))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U31(x0, x1, x2, cons_take(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_take(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_and(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_and(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_isNat(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNat(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNat(z0))) ENCARG(cons_U31(x0, x1, x2, cons_isNatList(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNatList(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNatList(z0))) ENCARG(cons_U31(x0, x1, x2, cons_isNatIList(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U31(x0, x1, cons_active(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), active(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_active(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_mark(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), mark(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_mark(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_cons(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), cons(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_cons(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U11(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), U11(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U11(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_s(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), s(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_s(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_length(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), length(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_length(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U21(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), U21(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U21(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U31(z0, z1, z2, z3), x3)) -> c11(U31'(encArg(x0), encArg(x1), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_take(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), take(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_take(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_and(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), and(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_and(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNat(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNat(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNat(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNatList(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNatList(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNatList(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNatIList(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNatIList(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNatIList(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, cons_active(z0), x2, x3)) -> c11(U31'(encArg(x0), active(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_active(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_mark(z0), x2, x3)) -> c11(U31'(encArg(x0), mark(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_mark(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_cons(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), cons(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_cons(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U11(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), U11(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U11(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_s(z0), x2, x3)) -> c11(U31'(encArg(x0), s(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_s(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_length(z0), x2, x3)) -> c11(U31'(encArg(x0), length(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_length(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U21(z0), x2, x3)) -> c11(U31'(encArg(x0), U21(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U21(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U31(z0, z1, z2, z3), x2, x3)) -> c11(U31'(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_take(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), take(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_take(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_and(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), and(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_and(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNat(z0), x2, x3)) -> c11(U31'(encArg(x0), isNat(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNat(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNatList(z0), x2, x3)) -> c11(U31'(encArg(x0), isNatList(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNatList(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNatIList(z0), x2, x3)) -> c11(U31'(encArg(x0), isNatIList(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNatIList(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_active(z0), x1, x2, x3)) -> c11(U31'(active(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_active(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_mark(z0), x1, x2, x3)) -> c11(U31'(mark(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_mark(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_cons(z0, z1), x1, x2, x3)) -> c11(U31'(cons(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_cons(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U11(z0, z1), x1, x2, x3)) -> c11(U31'(U11(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U11(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_s(z0), x1, x2, x3)) -> c11(U31'(s(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_s(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_length(z0), x1, x2, x3)) -> c11(U31'(length(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_length(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U21(z0), x1, x2, x3)) -> c11(U31'(U21(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U21(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U31(z0, z1, z2, z3), x1, x2, x3)) -> c11(U31'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_take(z0, z1), x1, x2, x3)) -> c11(U31'(take(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_take(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_and(z0, z1), x1, x2, x3)) -> c11(U31'(and(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_and(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNat(z0), x1, x2, x3)) -> c11(U31'(isNat(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNat(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNatList(z0), x1, x2, x3)) -> c11(U31'(isNatList(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNatList(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNatIList(z0), x1, x2, x3)) -> c11(U31'(isNatIList(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNatIList(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, x1, x2, zeros)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), zeros), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, 0)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), 0), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, tt)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), tt), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, nil)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), nil), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, zeros, x3)) -> c11(U31'(encArg(x0), encArg(x1), zeros, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, 0, x3)) -> c11(U31'(encArg(x0), encArg(x1), 0, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, tt, x3)) -> c11(U31'(encArg(x0), encArg(x1), tt, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, nil, x3)) -> c11(U31'(encArg(x0), encArg(x1), nil, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, zeros, x2, x3)) -> c11(U31'(encArg(x0), zeros, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, 0, x2, x3)) -> c11(U31'(encArg(x0), 0, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, tt, x2, x3)) -> c11(U31'(encArg(x0), tt, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, nil, x2, x3)) -> c11(U31'(encArg(x0), nil, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(zeros, x1, x2, x3)) -> c11(U31'(zeros, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(0, x1, x2, x3)) -> c11(U31'(0, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(tt, x1, x2, x3)) -> c11(U31'(tt, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(nil, x1, x2, x3)) -> c11(U31'(nil, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_take(x0, cons_active(z0))) -> c12(TAKE(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_take(x0, cons_mark(z0))) -> c12(TAKE(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_take(x0, cons_cons(z0, z1))) -> c12(TAKE(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_take(x0, cons_U11(z0, z1))) -> c12(TAKE(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_take(x0, cons_s(z0))) -> c12(TAKE(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_take(x0, cons_length(z0))) -> c12(TAKE(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_take(x0, cons_U21(z0))) -> c12(TAKE(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_take(x0, cons_U31(z0, z1, z2, z3))) -> c12(TAKE(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_take(x0, cons_take(z0, z1))) -> c12(TAKE(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_take(x0, cons_and(z0, z1))) -> c12(TAKE(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_take(x0, cons_isNat(z0))) -> c12(TAKE(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_take(x0, cons_isNatList(z0))) -> c12(TAKE(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_take(x0, cons_isNatIList(z0))) -> c12(TAKE(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_take(cons_active(z0), x1)) -> c12(TAKE(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_take(cons_mark(z0), x1)) -> c12(TAKE(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_take(cons_cons(z0, z1), x1)) -> c12(TAKE(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_U11(z0, z1), x1)) -> c12(TAKE(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_s(z0), x1)) -> c12(TAKE(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_take(cons_length(z0), x1)) -> c12(TAKE(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_take(cons_U21(z0), x1)) -> c12(TAKE(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_take(cons_U31(z0, z1, z2, z3), x1)) -> c12(TAKE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_take(cons_take(z0, z1), x1)) -> c12(TAKE(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_and(z0, z1), x1)) -> c12(TAKE(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_isNat(z0), x1)) -> c12(TAKE(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_take(cons_isNatList(z0), x1)) -> c12(TAKE(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_take(cons_isNatIList(z0), x1)) -> c12(TAKE(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_take(x0, zeros)) -> c12(TAKE(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_take(x0, 0)) -> c12(TAKE(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_take(x0, tt)) -> c12(TAKE(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_take(x0, nil)) -> c12(TAKE(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_take(zeros, x1)) -> c12(TAKE(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(0, x1)) -> c12(TAKE(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(tt, x1)) -> c12(TAKE(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(nil, x1)) -> c12(TAKE(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(x0, cons_active(z0))) -> c13(AND(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_and(x0, cons_mark(z0))) -> c13(AND(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_and(x0, cons_cons(z0, z1))) -> c13(AND(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_and(x0, cons_U11(z0, z1))) -> c13(AND(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_and(x0, cons_s(z0))) -> c13(AND(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_and(x0, cons_length(z0))) -> c13(AND(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_and(x0, cons_U21(z0))) -> c13(AND(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_and(x0, cons_U31(z0, z1, z2, z3))) -> c13(AND(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_and(x0, cons_take(z0, z1))) -> c13(AND(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_and(x0, cons_and(z0, z1))) -> c13(AND(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_and(x0, cons_isNat(z0))) -> c13(AND(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_and(x0, cons_isNatList(z0))) -> c13(AND(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_and(x0, cons_isNatIList(z0))) -> c13(AND(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_and(cons_active(z0), x1)) -> c13(AND(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_and(cons_mark(z0), x1)) -> c13(AND(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_and(cons_cons(z0, z1), x1)) -> c13(AND(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_U11(z0, z1), x1)) -> c13(AND(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_s(z0), x1)) -> c13(AND(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_and(cons_length(z0), x1)) -> c13(AND(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_and(cons_U21(z0), x1)) -> c13(AND(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_and(cons_U31(z0, z1, z2, z3), x1)) -> c13(AND(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_and(cons_take(z0, z1), x1)) -> c13(AND(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_and(z0, z1), x1)) -> c13(AND(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_isNat(z0), x1)) -> c13(AND(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_and(cons_isNatList(z0), x1)) -> c13(AND(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_and(cons_isNatIList(z0), x1)) -> c13(AND(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_and(x0, zeros)) -> c13(AND(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_and(x0, 0)) -> c13(AND(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_and(x0, tt)) -> c13(AND(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_and(x0, nil)) -> c13(AND(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_and(zeros, x1)) -> c13(AND(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(0, x1)) -> c13(AND(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(tt, x1)) -> c13(AND(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(nil, x1)) -> c13(AND(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_isNat(cons_active(z0))) -> c14(ISNAT(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_isNat(cons_mark(z0))) -> c14(ISNAT(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_isNat(cons_cons(z0, z1))) -> c14(ISNAT(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_isNat(cons_U11(z0, z1))) -> c14(ISNAT(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_isNat(cons_s(z0))) -> c14(ISNAT(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_isNat(cons_length(z0))) -> c14(ISNAT(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_isNat(cons_U21(z0))) -> c14(ISNAT(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_isNat(cons_U31(z0, z1, z2, z3))) -> c14(ISNAT(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_isNat(cons_take(z0, z1))) -> c14(ISNAT(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_isNat(cons_and(z0, z1))) -> c14(ISNAT(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_isNat(cons_isNat(z0))) -> c14(ISNAT(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_isNat(cons_isNatList(z0))) -> c14(ISNAT(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_isNat(cons_isNatIList(z0))) -> c14(ISNAT(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_isNatList(cons_active(z0))) -> c15(ISNATLIST(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_isNatList(cons_mark(z0))) -> c15(ISNATLIST(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_isNatList(cons_cons(z0, z1))) -> c15(ISNATLIST(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_isNatList(cons_U11(z0, z1))) -> c15(ISNATLIST(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_isNatList(cons_s(z0))) -> c15(ISNATLIST(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_isNatList(cons_length(z0))) -> c15(ISNATLIST(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_isNatList(cons_U21(z0))) -> c15(ISNATLIST(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_isNatList(cons_U31(z0, z1, z2, z3))) -> c15(ISNATLIST(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_isNatList(cons_take(z0, z1))) -> c15(ISNATLIST(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_isNatList(cons_and(z0, z1))) -> c15(ISNATLIST(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_isNatList(cons_isNat(z0))) -> c15(ISNATLIST(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_isNatList(cons_isNatList(z0))) -> c15(ISNATLIST(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_isNatList(cons_isNatIList(z0))) -> c15(ISNATLIST(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_isNatIList(cons_active(z0))) -> c16(ISNATILIST(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_isNatIList(cons_mark(z0))) -> c16(ISNATILIST(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_isNatIList(cons_cons(z0, z1))) -> c16(ISNATILIST(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_isNatIList(cons_U11(z0, z1))) -> c16(ISNATILIST(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_isNatIList(cons_s(z0))) -> c16(ISNATILIST(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_isNatIList(cons_length(z0))) -> c16(ISNATILIST(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_isNatIList(cons_U21(z0))) -> c16(ISNATILIST(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_isNatIList(cons_U31(z0, z1, z2, z3))) -> c16(ISNATILIST(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_isNatIList(cons_take(z0, z1))) -> c16(ISNATILIST(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_isNatIList(cons_and(z0, z1))) -> c16(ISNATILIST(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_isNatIList(cons_isNat(z0))) -> c16(ISNATILIST(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_isNatIList(cons_isNatList(z0))) -> c16(ISNATILIST(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_isNatIList(cons_isNatIList(z0))) -> c16(ISNATILIST(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) MARK(cons(zeros, x1)) -> c53(ACTIVE(cons(active(zeros), x1)), CONS(mark(zeros), x1), MARK(zeros)) MARK(cons(cons(z0, z1), x1)) -> c53(ACTIVE(cons(active(cons(mark(z0), z1)), x1)), CONS(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(cons(0, x1)) -> c53(ACTIVE(cons(active(0), x1)), CONS(mark(0), x1), MARK(0)) MARK(cons(U11(z0, z1), x1)) -> c53(ACTIVE(cons(active(U11(mark(z0), z1)), x1)), CONS(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(cons(tt, x1)) -> c53(ACTIVE(cons(active(tt), x1)), CONS(mark(tt), x1), MARK(tt)) MARK(cons(s(z0), x1)) -> c53(ACTIVE(cons(active(s(mark(z0))), x1)), CONS(mark(s(z0)), x1), MARK(s(z0))) MARK(cons(length(z0), x1)) -> c53(ACTIVE(cons(active(length(mark(z0))), x1)), CONS(mark(length(z0)), x1), MARK(length(z0))) MARK(cons(U21(z0), x1)) -> c53(ACTIVE(cons(active(U21(mark(z0))), x1)), CONS(mark(U21(z0)), x1), MARK(U21(z0))) MARK(cons(nil, x1)) -> c53(ACTIVE(cons(active(nil), x1)), CONS(mark(nil), x1), MARK(nil)) MARK(cons(U31(z0, z1, z2, z3), x1)) -> c53(ACTIVE(cons(active(U31(mark(z0), z1, z2, z3)), x1)), CONS(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(cons(take(z0, z1), x1)) -> c53(ACTIVE(cons(active(take(mark(z0), mark(z1))), x1)), CONS(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(cons(and(z0, z1), x1)) -> c53(ACTIVE(cons(active(and(mark(z0), z1)), x1)), CONS(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(cons(isNat(z0), x1)) -> c53(ACTIVE(cons(active(isNat(z0)), x1)), CONS(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(cons(isNatList(z0), x1)) -> c53(ACTIVE(cons(active(isNatList(z0)), x1)), CONS(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(cons(isNatIList(z0), x1)) -> c53(ACTIVE(cons(active(isNatIList(z0)), x1)), CONS(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(cons(x0, x1)) -> c53(CONS(mark(x0), x1)) MARK(cons(z0, z1)) -> c53(CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(z0, z1)), U11'(mark(z0), z1), MARK(z0)) MARK(U11(zeros, x1)) -> c55(ACTIVE(U11(active(zeros), x1)), U11'(mark(zeros), x1), MARK(zeros)) MARK(U11(cons(z0, z1), x1)) -> c55(ACTIVE(U11(active(cons(mark(z0), z1)), x1)), U11'(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(U11(0, x1)) -> c55(ACTIVE(U11(active(0), x1)), U11'(mark(0), x1), MARK(0)) MARK(U11(U11(z0, z1), x1)) -> c55(ACTIVE(U11(active(U11(mark(z0), z1)), x1)), U11'(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(U11(tt, x1)) -> c55(ACTIVE(U11(active(tt), x1)), U11'(mark(tt), x1), MARK(tt)) MARK(U11(s(z0), x1)) -> c55(ACTIVE(U11(active(s(mark(z0))), x1)), U11'(mark(s(z0)), x1), MARK(s(z0))) MARK(U11(length(z0), x1)) -> c55(ACTIVE(U11(active(length(mark(z0))), x1)), U11'(mark(length(z0)), x1), MARK(length(z0))) MARK(U11(U21(z0), x1)) -> c55(ACTIVE(U11(active(U21(mark(z0))), x1)), U11'(mark(U21(z0)), x1), MARK(U21(z0))) MARK(U11(nil, x1)) -> c55(ACTIVE(U11(active(nil), x1)), U11'(mark(nil), x1), MARK(nil)) MARK(U11(U31(z0, z1, z2, z3), x1)) -> c55(ACTIVE(U11(active(U31(mark(z0), z1, z2, z3)), x1)), U11'(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(U11(take(z0, z1), x1)) -> c55(ACTIVE(U11(active(take(mark(z0), mark(z1))), x1)), U11'(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(U11(and(z0, z1), x1)) -> c55(ACTIVE(U11(active(and(mark(z0), z1)), x1)), U11'(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(U11(isNat(z0), x1)) -> c55(ACTIVE(U11(active(isNat(z0)), x1)), U11'(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(U11(isNatList(z0), x1)) -> c55(ACTIVE(U11(active(isNatList(z0)), x1)), U11'(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(U11(isNatIList(z0), x1)) -> c55(ACTIVE(U11(active(isNatIList(z0)), x1)), U11'(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(U11(x0, x1)) -> c55(U11'(mark(x0), x1)) MARK(s(z0)) -> c57(ACTIVE(s(z0)), S(mark(z0)), MARK(z0)) MARK(s(zeros)) -> c57(ACTIVE(s(active(zeros))), S(mark(zeros)), MARK(zeros)) MARK(s(cons(z0, z1))) -> c57(ACTIVE(s(active(cons(mark(z0), z1)))), S(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(s(0)) -> c57(ACTIVE(s(active(0))), S(mark(0)), MARK(0)) MARK(s(U11(z0, z1))) -> c57(ACTIVE(s(active(U11(mark(z0), z1)))), S(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(s(tt)) -> c57(ACTIVE(s(active(tt))), S(mark(tt)), MARK(tt)) MARK(s(s(z0))) -> c57(ACTIVE(s(active(s(mark(z0))))), S(mark(s(z0))), MARK(s(z0))) MARK(s(length(z0))) -> c57(ACTIVE(s(active(length(mark(z0))))), S(mark(length(z0))), MARK(length(z0))) MARK(s(U21(z0))) -> c57(ACTIVE(s(active(U21(mark(z0))))), S(mark(U21(z0))), MARK(U21(z0))) MARK(s(nil)) -> c57(ACTIVE(s(active(nil))), S(mark(nil)), MARK(nil)) MARK(s(U31(z0, z1, z2, z3))) -> c57(ACTIVE(s(active(U31(mark(z0), z1, z2, z3)))), S(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(s(take(z0, z1))) -> c57(ACTIVE(s(active(take(mark(z0), mark(z1))))), S(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(s(and(z0, z1))) -> c57(ACTIVE(s(active(and(mark(z0), z1)))), S(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(s(isNat(z0))) -> c57(ACTIVE(s(active(isNat(z0)))), S(mark(isNat(z0))), MARK(isNat(z0))) MARK(s(isNatList(z0))) -> c57(ACTIVE(s(active(isNatList(z0)))), S(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(s(isNatIList(z0))) -> c57(ACTIVE(s(active(isNatIList(z0)))), S(mark(isNatIList(z0))), MARK(isNatIList(z0))) S tuples: ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(length(z0)) -> c58(ACTIVE(length(mark(z0))), LENGTH(mark(z0)), MARK(z0)) MARK(U21(z0)) -> c59(ACTIVE(U21(mark(z0))), U21'(mark(z0)), MARK(z0)) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(mark(z0), z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(take(z0, z1)) -> c62(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 MARK(cons(zeros, x1)) -> c53(ACTIVE(cons(active(zeros), x1)), CONS(mark(zeros), x1), MARK(zeros)) MARK(cons(cons(z0, z1), x1)) -> c53(ACTIVE(cons(active(cons(mark(z0), z1)), x1)), CONS(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(cons(0, x1)) -> c53(ACTIVE(cons(active(0), x1)), CONS(mark(0), x1), MARK(0)) MARK(cons(U11(z0, z1), x1)) -> c53(ACTIVE(cons(active(U11(mark(z0), z1)), x1)), CONS(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(cons(tt, x1)) -> c53(ACTIVE(cons(active(tt), x1)), CONS(mark(tt), x1), MARK(tt)) MARK(cons(s(z0), x1)) -> c53(ACTIVE(cons(active(s(mark(z0))), x1)), CONS(mark(s(z0)), x1), MARK(s(z0))) MARK(cons(length(z0), x1)) -> c53(ACTIVE(cons(active(length(mark(z0))), x1)), CONS(mark(length(z0)), x1), MARK(length(z0))) MARK(cons(U21(z0), x1)) -> c53(ACTIVE(cons(active(U21(mark(z0))), x1)), CONS(mark(U21(z0)), x1), MARK(U21(z0))) MARK(cons(nil, x1)) -> c53(ACTIVE(cons(active(nil), x1)), CONS(mark(nil), x1), MARK(nil)) MARK(cons(U31(z0, z1, z2, z3), x1)) -> c53(ACTIVE(cons(active(U31(mark(z0), z1, z2, z3)), x1)), CONS(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(cons(take(z0, z1), x1)) -> c53(ACTIVE(cons(active(take(mark(z0), mark(z1))), x1)), CONS(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(cons(and(z0, z1), x1)) -> c53(ACTIVE(cons(active(and(mark(z0), z1)), x1)), CONS(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(cons(isNat(z0), x1)) -> c53(ACTIVE(cons(active(isNat(z0)), x1)), CONS(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(cons(isNatList(z0), x1)) -> c53(ACTIVE(cons(active(isNatList(z0)), x1)), CONS(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(cons(isNatIList(z0), x1)) -> c53(ACTIVE(cons(active(isNatIList(z0)), x1)), CONS(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(cons(x0, x1)) -> c53(CONS(mark(x0), x1)) MARK(cons(z0, z1)) -> c53(CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(z0, z1)), U11'(mark(z0), z1), MARK(z0)) MARK(U11(zeros, x1)) -> c55(ACTIVE(U11(active(zeros), x1)), U11'(mark(zeros), x1), MARK(zeros)) MARK(U11(cons(z0, z1), x1)) -> c55(ACTIVE(U11(active(cons(mark(z0), z1)), x1)), U11'(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(U11(0, x1)) -> c55(ACTIVE(U11(active(0), x1)), U11'(mark(0), x1), MARK(0)) MARK(U11(U11(z0, z1), x1)) -> c55(ACTIVE(U11(active(U11(mark(z0), z1)), x1)), U11'(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(U11(tt, x1)) -> c55(ACTIVE(U11(active(tt), x1)), U11'(mark(tt), x1), MARK(tt)) MARK(U11(s(z0), x1)) -> c55(ACTIVE(U11(active(s(mark(z0))), x1)), U11'(mark(s(z0)), x1), MARK(s(z0))) MARK(U11(length(z0), x1)) -> c55(ACTIVE(U11(active(length(mark(z0))), x1)), U11'(mark(length(z0)), x1), MARK(length(z0))) MARK(U11(U21(z0), x1)) -> c55(ACTIVE(U11(active(U21(mark(z0))), x1)), U11'(mark(U21(z0)), x1), MARK(U21(z0))) MARK(U11(nil, x1)) -> c55(ACTIVE(U11(active(nil), x1)), U11'(mark(nil), x1), MARK(nil)) MARK(U11(U31(z0, z1, z2, z3), x1)) -> c55(ACTIVE(U11(active(U31(mark(z0), z1, z2, z3)), x1)), U11'(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(U11(take(z0, z1), x1)) -> c55(ACTIVE(U11(active(take(mark(z0), mark(z1))), x1)), U11'(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(U11(and(z0, z1), x1)) -> c55(ACTIVE(U11(active(and(mark(z0), z1)), x1)), U11'(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(U11(isNat(z0), x1)) -> c55(ACTIVE(U11(active(isNat(z0)), x1)), U11'(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(U11(isNatList(z0), x1)) -> c55(ACTIVE(U11(active(isNatList(z0)), x1)), U11'(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(U11(isNatIList(z0), x1)) -> c55(ACTIVE(U11(active(isNatIList(z0)), x1)), U11'(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(U11(x0, x1)) -> c55(U11'(mark(x0), x1)) MARK(s(z0)) -> c57(ACTIVE(s(z0)), S(mark(z0)), MARK(z0)) MARK(s(zeros)) -> c57(ACTIVE(s(active(zeros))), S(mark(zeros)), MARK(zeros)) MARK(s(cons(z0, z1))) -> c57(ACTIVE(s(active(cons(mark(z0), z1)))), S(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(s(0)) -> c57(ACTIVE(s(active(0))), S(mark(0)), MARK(0)) MARK(s(U11(z0, z1))) -> c57(ACTIVE(s(active(U11(mark(z0), z1)))), S(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(s(tt)) -> c57(ACTIVE(s(active(tt))), S(mark(tt)), MARK(tt)) MARK(s(s(z0))) -> c57(ACTIVE(s(active(s(mark(z0))))), S(mark(s(z0))), MARK(s(z0))) MARK(s(length(z0))) -> c57(ACTIVE(s(active(length(mark(z0))))), S(mark(length(z0))), MARK(length(z0))) MARK(s(U21(z0))) -> c57(ACTIVE(s(active(U21(mark(z0))))), S(mark(U21(z0))), MARK(U21(z0))) MARK(s(nil)) -> c57(ACTIVE(s(active(nil))), S(mark(nil)), MARK(nil)) MARK(s(U31(z0, z1, z2, z3))) -> c57(ACTIVE(s(active(U31(mark(z0), z1, z2, z3)))), S(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(s(take(z0, z1))) -> c57(ACTIVE(s(active(take(mark(z0), mark(z1))))), S(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(s(and(z0, z1))) -> c57(ACTIVE(s(active(and(mark(z0), z1)))), S(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(s(isNat(z0))) -> c57(ACTIVE(s(active(isNat(z0)))), S(mark(isNat(z0))), MARK(isNat(z0))) MARK(s(isNatList(z0))) -> c57(ACTIVE(s(active(isNatList(z0)))), S(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(s(isNatIList(z0))) -> c57(ACTIVE(s(active(isNatIList(z0)))), S(mark(isNatIList(z0))), MARK(isNatIList(z0))) K tuples:none Defined Rule Symbols: encArg_1, active_1, mark_1, cons_2, U11_2, s_1, length_1, U21_1, U31_4, take_2, and_2, isNat_1, isNatList_1, isNatIList_1 Defined Pair Symbols: ACTIVE_1, MARK_1, CONS_2, U11'_2, S_1, LENGTH_1, U21'_1, U31'_4, TAKE_2, AND_2, ISNAT_1, ISNATLIST_1, ISNATILIST_1, ENCODE_ACTIVE_1, ENCODE_MARK_1, ENCODE_CONS_2, ENCODE_U11_2, ENCODE_S_1, ENCODE_LENGTH_1, ENCODE_U21_1, ENCODE_U31_4, ENCODE_TAKE_2, ENCODE_AND_2, ENCODE_ISNAT_1, ENCODE_ISNATLIST_1, ENCODE_ISNATILIST_1, ENCARG_1 Compound Symbols: c36_1, c37_3, c38_1, c39_1, c40_2, c41_2, c42_2, c43_1, c45_1, c48_1, c52_1, c58_3, c59_3, c61_3, c62_4, c63_3, c64_2, c65_2, c66_2, c67_1, c68_1, c69_1, c70_1, c71_1, c72_1, c73_1, c74_1, c75_1, c76_1, c77_1, c78_1, c79_1, c80_1, c81_1, c82_1, c83_1, c84_1, c85_1, c86_1, c87_1, c88_1, c89_1, c90_1, c91_1, c92_1, c93_1, c94_1, c95_1, c96_1, c97_1, c98_1, c99_1, c100_1, c101_1, c102_1, c34_1, c35_2, c44_3, c46_3, c47_3, c49_3, c50_2, c51_4, c54, c56, c60, c_1, c4_2, c4_1, c5_2, c5_1, c6_3, c6_2, c7_3, c7_2, c8_2, c9_2, c10_2, c11_5, c11_4, c12_3, c12_2, c13_3, c13_2, c14_2, c15_2, c16_2, c53_3, c53_1, c53_2, c55_3, c55_1, c57_3 ---------------------------------------- (101) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 1 trailing tuple parts ---------------------------------------- (102) Obligation: Complexity Dependency Tuples Problem Rules: encArg(zeros) -> zeros encArg(0) -> 0 encArg(tt) -> tt encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_U11(z0, z1)) -> U11(encArg(z0), encArg(z1)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_length(z0)) -> length(encArg(z0)) encArg(cons_U21(z0)) -> U21(encArg(z0)) encArg(cons_U31(z0, z1, z2, z3)) -> U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_isNat(z0)) -> isNat(encArg(z0)) encArg(cons_isNatList(z0)) -> isNatList(encArg(z0)) encArg(cons_isNatIList(z0)) -> isNatIList(encArg(z0)) active(zeros) -> mark(cons(0, zeros)) active(U11(tt, z0)) -> mark(s(length(z0))) active(U21(tt)) -> mark(nil) active(U31(tt, z0, z1, z2)) -> mark(cons(z2, take(z1, z0))) active(and(tt, z0)) -> mark(z0) active(isNat(0)) -> mark(tt) active(isNat(length(z0))) -> mark(isNatList(z0)) active(isNat(s(z0))) -> mark(isNat(z0)) active(isNatIList(z0)) -> mark(isNatList(z0)) active(isNatIList(zeros)) -> mark(tt) active(isNatIList(cons(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(isNatList(nil)) -> mark(tt) active(isNatList(cons(z0, z1))) -> mark(and(isNat(z0), isNatList(z1))) active(isNatList(take(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(length(nil)) -> mark(0) active(length(cons(z0, z1))) -> mark(U11(and(isNatList(z1), isNat(z0)), z1)) active(take(0, z0)) -> mark(U21(isNatIList(z0))) active(take(s(z0), cons(z1, z2))) -> mark(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)) mark(zeros) -> active(zeros) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(0) -> active(0) mark(U11(z0, z1)) -> active(U11(mark(z0), z1)) mark(tt) -> active(tt) mark(s(z0)) -> active(s(mark(z0))) mark(length(z0)) -> active(length(mark(z0))) mark(U21(z0)) -> active(U21(mark(z0))) mark(nil) -> active(nil) mark(U31(z0, z1, z2, z3)) -> active(U31(mark(z0), z1, z2, z3)) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(isNat(z0)) -> active(isNat(z0)) mark(isNatList(z0)) -> active(isNatList(z0)) mark(isNatIList(z0)) -> active(isNatIList(z0)) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) U11(mark(z0), z1) -> U11(z0, z1) U11(z0, mark(z1)) -> U11(z0, z1) U11(active(z0), z1) -> U11(z0, z1) U11(z0, active(z1)) -> U11(z0, z1) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) length(mark(z0)) -> length(z0) length(active(z0)) -> length(z0) U21(mark(z0)) -> U21(z0) U21(active(z0)) -> U21(z0) U31(mark(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, mark(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, mark(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, mark(z3)) -> U31(z0, z1, z2, z3) U31(active(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, active(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, active(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, active(z3)) -> U31(z0, z1, z2, z3) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) isNat(mark(z0)) -> isNat(z0) isNat(active(z0)) -> isNat(z0) isNatList(mark(z0)) -> isNatList(z0) isNatList(active(z0)) -> isNatList(z0) isNatIList(mark(z0)) -> isNatIList(z0) isNatIList(active(z0)) -> isNatIList(z0) Tuples: ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(length(z0)) -> c58(ACTIVE(length(mark(z0))), LENGTH(mark(z0)), MARK(z0)) MARK(U21(z0)) -> c59(ACTIVE(U21(mark(z0))), U21'(mark(z0)), MARK(z0)) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(mark(z0), z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(take(z0, z1)) -> c62(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 ENCODE_ACTIVE(z0) -> c(ACTIVE(encArg(z0))) ENCODE_MARK(z0) -> c(MARK(encArg(z0))) ENCODE_CONS(z0, z1) -> c(CONS(encArg(z0), encArg(z1))) ENCODE_U11(z0, z1) -> c(U11'(encArg(z0), encArg(z1))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_LENGTH(z0) -> c(LENGTH(encArg(z0))) ENCODE_U21(z0) -> c(U21'(encArg(z0))) ENCODE_U31(z0, z1, z2, z3) -> c(U31'(encArg(z0), encArg(z1), encArg(z2), encArg(z3))) ENCODE_TAKE(z0, z1) -> c(TAKE(encArg(z0), encArg(z1))) ENCODE_AND(z0, z1) -> c(AND(encArg(z0), encArg(z1))) ENCODE_ISNAT(z0) -> c(ISNAT(encArg(z0))) ENCODE_ISNATLIST(z0) -> c(ISNATLIST(encArg(z0))) ENCODE_ISNATILIST(z0) -> c(ISNATILIST(encArg(z0))) ENCARG(cons_active(cons_active(z0))) -> c4(ACTIVE(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_active(cons_mark(z0))) -> c4(ACTIVE(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_active(cons_cons(z0, z1))) -> c4(ACTIVE(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_active(cons_U11(z0, z1))) -> c4(ACTIVE(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_active(cons_s(z0))) -> c4(ACTIVE(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_active(cons_length(z0))) -> c4(ACTIVE(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_active(cons_U21(z0))) -> c4(ACTIVE(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_active(cons_U31(z0, z1, z2, z3))) -> c4(ACTIVE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_active(cons_take(z0, z1))) -> c4(ACTIVE(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_active(cons_and(z0, z1))) -> c4(ACTIVE(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_active(cons_isNat(z0))) -> c4(ACTIVE(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_active(cons_isNatList(z0))) -> c4(ACTIVE(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_active(cons_isNatIList(z0))) -> c4(ACTIVE(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_active(zeros)) -> c4(ACTIVE(zeros)) ENCARG(cons_mark(cons_active(z0))) -> c5(MARK(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_mark(cons_mark(z0))) -> c5(MARK(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_mark(cons_cons(z0, z1))) -> c5(MARK(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_mark(cons_U11(z0, z1))) -> c5(MARK(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_mark(cons_s(z0))) -> c5(MARK(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_mark(cons_length(z0))) -> c5(MARK(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_mark(cons_U21(z0))) -> c5(MARK(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_mark(cons_U31(z0, z1, z2, z3))) -> c5(MARK(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_mark(cons_take(z0, z1))) -> c5(MARK(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(cons_and(z0, z1))) -> c5(MARK(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_mark(cons_isNat(z0))) -> c5(MARK(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_mark(cons_isNatList(z0))) -> c5(MARK(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_mark(cons_isNatIList(z0))) -> c5(MARK(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_mark(zeros)) -> c5(MARK(zeros)) ENCARG(cons_mark(0)) -> c5(MARK(0)) ENCARG(cons_mark(tt)) -> c5(MARK(tt)) ENCARG(cons_mark(nil)) -> c5(MARK(nil)) ENCARG(cons_cons(x0, cons_active(z0))) -> c6(CONS(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_cons(x0, cons_mark(z0))) -> c6(CONS(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_cons(x0, cons_cons(z0, z1))) -> c6(CONS(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_cons(x0, cons_U11(z0, z1))) -> c6(CONS(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_cons(x0, cons_s(z0))) -> c6(CONS(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_cons(x0, cons_length(z0))) -> c6(CONS(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_cons(x0, cons_U21(z0))) -> c6(CONS(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_cons(x0, cons_U31(z0, z1, z2, z3))) -> c6(CONS(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_cons(x0, cons_take(z0, z1))) -> c6(CONS(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_cons(x0, cons_and(z0, z1))) -> c6(CONS(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_cons(x0, cons_isNat(z0))) -> c6(CONS(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_cons(x0, cons_isNatList(z0))) -> c6(CONS(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_cons(x0, cons_isNatIList(z0))) -> c6(CONS(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_cons(cons_active(z0), x1)) -> c6(CONS(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_mark(z0), x1)) -> c6(CONS(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_cons(z0, z1), x1)) -> c6(CONS(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_U11(z0, z1), x1)) -> c6(CONS(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_s(z0), x1)) -> c6(CONS(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_length(z0), x1)) -> c6(CONS(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U21(z0), x1)) -> c6(CONS(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U31(z0, z1, z2, z3), x1)) -> c6(CONS(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_cons(cons_take(z0, z1), x1)) -> c6(CONS(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_and(z0, z1), x1)) -> c6(CONS(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_isNat(z0), x1)) -> c6(CONS(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_isNatList(z0), x1)) -> c6(CONS(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_isNatIList(z0), x1)) -> c6(CONS(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_cons(x0, zeros)) -> c6(CONS(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_cons(x0, 0)) -> c6(CONS(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_cons(x0, tt)) -> c6(CONS(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_cons(x0, nil)) -> c6(CONS(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_cons(zeros, x1)) -> c6(CONS(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(0, x1)) -> c6(CONS(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(tt, x1)) -> c6(CONS(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(nil, x1)) -> c6(CONS(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(x0, cons_active(z0))) -> c7(U11'(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_U11(x0, cons_mark(z0))) -> c7(U11'(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_U11(x0, cons_cons(z0, z1))) -> c7(U11'(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U11(x0, cons_U11(z0, z1))) -> c7(U11'(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U11(x0, cons_s(z0))) -> c7(U11'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_U11(x0, cons_length(z0))) -> c7(U11'(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_U11(x0, cons_U21(z0))) -> c7(U11'(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_U11(x0, cons_U31(z0, z1, z2, z3))) -> c7(U11'(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U11(x0, cons_take(z0, z1))) -> c7(U11'(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_U11(x0, cons_and(z0, z1))) -> c7(U11'(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_U11(x0, cons_isNat(z0))) -> c7(U11'(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_U11(x0, cons_isNatList(z0))) -> c7(U11'(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_U11(x0, cons_isNatIList(z0))) -> c7(U11'(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U11(cons_active(z0), x1)) -> c7(U11'(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_mark(z0), x1)) -> c7(U11'(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_cons(z0, z1), x1)) -> c7(U11'(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_U11(z0, z1), x1)) -> c7(U11'(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_s(z0), x1)) -> c7(U11'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_length(z0), x1)) -> c7(U11'(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_U21(z0), x1)) -> c7(U11'(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_U31(z0, z1, z2, z3), x1)) -> c7(U11'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_U11(cons_take(z0, z1), x1)) -> c7(U11'(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_and(z0, z1), x1)) -> c7(U11'(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_isNat(z0), x1)) -> c7(U11'(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_isNatList(z0), x1)) -> c7(U11'(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_isNatIList(z0), x1)) -> c7(U11'(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_U11(x0, zeros)) -> c7(U11'(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_U11(x0, 0)) -> c7(U11'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_U11(x0, tt)) -> c7(U11'(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_U11(x0, nil)) -> c7(U11'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_U11(zeros, x1)) -> c7(U11'(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(0, x1)) -> c7(U11'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(tt, x1)) -> c7(U11'(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(nil, x1)) -> c7(U11'(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_s(cons_active(z0))) -> c8(S(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_s(cons_mark(z0))) -> c8(S(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_s(cons_cons(z0, z1))) -> c8(S(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_s(cons_U11(z0, z1))) -> c8(S(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_s(cons_s(z0))) -> c8(S(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_length(z0))) -> c8(S(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_s(cons_U21(z0))) -> c8(S(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_s(cons_U31(z0, z1, z2, z3))) -> c8(S(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_s(cons_take(z0, z1))) -> c8(S(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_s(cons_and(z0, z1))) -> c8(S(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_s(cons_isNat(z0))) -> c8(S(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_s(cons_isNatList(z0))) -> c8(S(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_s(cons_isNatIList(z0))) -> c8(S(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_length(cons_active(z0))) -> c9(LENGTH(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_length(cons_mark(z0))) -> c9(LENGTH(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_length(cons_cons(z0, z1))) -> c9(LENGTH(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_length(cons_U11(z0, z1))) -> c9(LENGTH(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_length(cons_s(z0))) -> c9(LENGTH(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_length(cons_length(z0))) -> c9(LENGTH(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_length(cons_U21(z0))) -> c9(LENGTH(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_length(cons_U31(z0, z1, z2, z3))) -> c9(LENGTH(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_length(cons_take(z0, z1))) -> c9(LENGTH(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_length(cons_and(z0, z1))) -> c9(LENGTH(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_length(cons_isNat(z0))) -> c9(LENGTH(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_length(cons_isNatList(z0))) -> c9(LENGTH(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_length(cons_isNatIList(z0))) -> c9(LENGTH(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U21(cons_active(z0))) -> c10(U21'(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_U21(cons_mark(z0))) -> c10(U21'(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_U21(cons_cons(z0, z1))) -> c10(U21'(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U21(cons_U11(z0, z1))) -> c10(U21'(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U21(cons_s(z0))) -> c10(U21'(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_U21(cons_length(z0))) -> c10(U21'(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_U21(cons_U21(z0))) -> c10(U21'(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_U21(cons_U31(z0, z1, z2, z3))) -> c10(U21'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U21(cons_take(z0, z1))) -> c10(U21'(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_U21(cons_and(z0, z1))) -> c10(U21'(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_U21(cons_isNat(z0))) -> c10(U21'(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_U21(cons_isNatList(z0))) -> c10(U21'(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_U21(cons_isNatIList(z0))) -> c10(U21'(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U31(x0, x1, x2, cons_active(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), active(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_active(z0))) ENCARG(cons_U31(x0, x1, x2, cons_mark(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), mark(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_mark(z0))) ENCARG(cons_U31(x0, x1, x2, cons_cons(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_U11(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_s(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), s(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_s(z0))) ENCARG(cons_U31(x0, x1, x2, cons_length(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), length(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_length(z0))) ENCARG(cons_U31(x0, x1, x2, cons_U21(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U21(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U21(z0))) ENCARG(cons_U31(x0, x1, x2, cons_U31(z0, z1, z2, z3))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U31(x0, x1, x2, cons_take(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_take(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_and(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_and(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_isNat(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNat(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNat(z0))) ENCARG(cons_U31(x0, x1, x2, cons_isNatList(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNatList(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNatList(z0))) ENCARG(cons_U31(x0, x1, x2, cons_isNatIList(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U31(x0, x1, cons_active(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), active(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_active(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_mark(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), mark(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_mark(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_cons(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), cons(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_cons(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U11(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), U11(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U11(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_s(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), s(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_s(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_length(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), length(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_length(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U21(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), U21(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U21(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U31(z0, z1, z2, z3), x3)) -> c11(U31'(encArg(x0), encArg(x1), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_take(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), take(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_take(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_and(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), and(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_and(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNat(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNat(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNat(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNatList(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNatList(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNatList(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNatIList(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNatIList(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNatIList(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, cons_active(z0), x2, x3)) -> c11(U31'(encArg(x0), active(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_active(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_mark(z0), x2, x3)) -> c11(U31'(encArg(x0), mark(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_mark(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_cons(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), cons(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_cons(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U11(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), U11(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U11(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_s(z0), x2, x3)) -> c11(U31'(encArg(x0), s(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_s(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_length(z0), x2, x3)) -> c11(U31'(encArg(x0), length(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_length(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U21(z0), x2, x3)) -> c11(U31'(encArg(x0), U21(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U21(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U31(z0, z1, z2, z3), x2, x3)) -> c11(U31'(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_take(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), take(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_take(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_and(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), and(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_and(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNat(z0), x2, x3)) -> c11(U31'(encArg(x0), isNat(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNat(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNatList(z0), x2, x3)) -> c11(U31'(encArg(x0), isNatList(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNatList(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNatIList(z0), x2, x3)) -> c11(U31'(encArg(x0), isNatIList(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNatIList(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_active(z0), x1, x2, x3)) -> c11(U31'(active(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_active(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_mark(z0), x1, x2, x3)) -> c11(U31'(mark(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_mark(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_cons(z0, z1), x1, x2, x3)) -> c11(U31'(cons(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_cons(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U11(z0, z1), x1, x2, x3)) -> c11(U31'(U11(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U11(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_s(z0), x1, x2, x3)) -> c11(U31'(s(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_s(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_length(z0), x1, x2, x3)) -> c11(U31'(length(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_length(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U21(z0), x1, x2, x3)) -> c11(U31'(U21(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U21(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U31(z0, z1, z2, z3), x1, x2, x3)) -> c11(U31'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_take(z0, z1), x1, x2, x3)) -> c11(U31'(take(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_take(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_and(z0, z1), x1, x2, x3)) -> c11(U31'(and(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_and(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNat(z0), x1, x2, x3)) -> c11(U31'(isNat(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNat(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNatList(z0), x1, x2, x3)) -> c11(U31'(isNatList(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNatList(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNatIList(z0), x1, x2, x3)) -> c11(U31'(isNatIList(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNatIList(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, x1, x2, zeros)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), zeros), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, 0)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), 0), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, tt)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), tt), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, nil)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), nil), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, zeros, x3)) -> c11(U31'(encArg(x0), encArg(x1), zeros, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, 0, x3)) -> c11(U31'(encArg(x0), encArg(x1), 0, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, tt, x3)) -> c11(U31'(encArg(x0), encArg(x1), tt, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, nil, x3)) -> c11(U31'(encArg(x0), encArg(x1), nil, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, zeros, x2, x3)) -> c11(U31'(encArg(x0), zeros, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, 0, x2, x3)) -> c11(U31'(encArg(x0), 0, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, tt, x2, x3)) -> c11(U31'(encArg(x0), tt, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, nil, x2, x3)) -> c11(U31'(encArg(x0), nil, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(zeros, x1, x2, x3)) -> c11(U31'(zeros, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(0, x1, x2, x3)) -> c11(U31'(0, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(tt, x1, x2, x3)) -> c11(U31'(tt, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(nil, x1, x2, x3)) -> c11(U31'(nil, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_take(x0, cons_active(z0))) -> c12(TAKE(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_take(x0, cons_mark(z0))) -> c12(TAKE(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_take(x0, cons_cons(z0, z1))) -> c12(TAKE(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_take(x0, cons_U11(z0, z1))) -> c12(TAKE(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_take(x0, cons_s(z0))) -> c12(TAKE(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_take(x0, cons_length(z0))) -> c12(TAKE(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_take(x0, cons_U21(z0))) -> c12(TAKE(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_take(x0, cons_U31(z0, z1, z2, z3))) -> c12(TAKE(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_take(x0, cons_take(z0, z1))) -> c12(TAKE(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_take(x0, cons_and(z0, z1))) -> c12(TAKE(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_take(x0, cons_isNat(z0))) -> c12(TAKE(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_take(x0, cons_isNatList(z0))) -> c12(TAKE(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_take(x0, cons_isNatIList(z0))) -> c12(TAKE(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_take(cons_active(z0), x1)) -> c12(TAKE(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_take(cons_mark(z0), x1)) -> c12(TAKE(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_take(cons_cons(z0, z1), x1)) -> c12(TAKE(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_U11(z0, z1), x1)) -> c12(TAKE(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_s(z0), x1)) -> c12(TAKE(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_take(cons_length(z0), x1)) -> c12(TAKE(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_take(cons_U21(z0), x1)) -> c12(TAKE(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_take(cons_U31(z0, z1, z2, z3), x1)) -> c12(TAKE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_take(cons_take(z0, z1), x1)) -> c12(TAKE(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_and(z0, z1), x1)) -> c12(TAKE(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_isNat(z0), x1)) -> c12(TAKE(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_take(cons_isNatList(z0), x1)) -> c12(TAKE(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_take(cons_isNatIList(z0), x1)) -> c12(TAKE(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_take(x0, zeros)) -> c12(TAKE(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_take(x0, 0)) -> c12(TAKE(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_take(x0, tt)) -> c12(TAKE(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_take(x0, nil)) -> c12(TAKE(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_take(zeros, x1)) -> c12(TAKE(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(0, x1)) -> c12(TAKE(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(tt, x1)) -> c12(TAKE(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(nil, x1)) -> c12(TAKE(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(x0, cons_active(z0))) -> c13(AND(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_and(x0, cons_mark(z0))) -> c13(AND(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_and(x0, cons_cons(z0, z1))) -> c13(AND(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_and(x0, cons_U11(z0, z1))) -> c13(AND(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_and(x0, cons_s(z0))) -> c13(AND(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_and(x0, cons_length(z0))) -> c13(AND(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_and(x0, cons_U21(z0))) -> c13(AND(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_and(x0, cons_U31(z0, z1, z2, z3))) -> c13(AND(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_and(x0, cons_take(z0, z1))) -> c13(AND(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_and(x0, cons_and(z0, z1))) -> c13(AND(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_and(x0, cons_isNat(z0))) -> c13(AND(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_and(x0, cons_isNatList(z0))) -> c13(AND(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_and(x0, cons_isNatIList(z0))) -> c13(AND(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_and(cons_active(z0), x1)) -> c13(AND(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_and(cons_mark(z0), x1)) -> c13(AND(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_and(cons_cons(z0, z1), x1)) -> c13(AND(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_U11(z0, z1), x1)) -> c13(AND(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_s(z0), x1)) -> c13(AND(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_and(cons_length(z0), x1)) -> c13(AND(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_and(cons_U21(z0), x1)) -> c13(AND(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_and(cons_U31(z0, z1, z2, z3), x1)) -> c13(AND(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_and(cons_take(z0, z1), x1)) -> c13(AND(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_and(z0, z1), x1)) -> c13(AND(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_isNat(z0), x1)) -> c13(AND(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_and(cons_isNatList(z0), x1)) -> c13(AND(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_and(cons_isNatIList(z0), x1)) -> c13(AND(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_and(x0, zeros)) -> c13(AND(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_and(x0, 0)) -> c13(AND(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_and(x0, tt)) -> c13(AND(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_and(x0, nil)) -> c13(AND(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_and(zeros, x1)) -> c13(AND(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(0, x1)) -> c13(AND(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(tt, x1)) -> c13(AND(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(nil, x1)) -> c13(AND(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_isNat(cons_active(z0))) -> c14(ISNAT(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_isNat(cons_mark(z0))) -> c14(ISNAT(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_isNat(cons_cons(z0, z1))) -> c14(ISNAT(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_isNat(cons_U11(z0, z1))) -> c14(ISNAT(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_isNat(cons_s(z0))) -> c14(ISNAT(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_isNat(cons_length(z0))) -> c14(ISNAT(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_isNat(cons_U21(z0))) -> c14(ISNAT(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_isNat(cons_U31(z0, z1, z2, z3))) -> c14(ISNAT(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_isNat(cons_take(z0, z1))) -> c14(ISNAT(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_isNat(cons_and(z0, z1))) -> c14(ISNAT(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_isNat(cons_isNat(z0))) -> c14(ISNAT(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_isNat(cons_isNatList(z0))) -> c14(ISNAT(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_isNat(cons_isNatIList(z0))) -> c14(ISNAT(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_isNatList(cons_active(z0))) -> c15(ISNATLIST(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_isNatList(cons_mark(z0))) -> c15(ISNATLIST(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_isNatList(cons_cons(z0, z1))) -> c15(ISNATLIST(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_isNatList(cons_U11(z0, z1))) -> c15(ISNATLIST(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_isNatList(cons_s(z0))) -> c15(ISNATLIST(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_isNatList(cons_length(z0))) -> c15(ISNATLIST(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_isNatList(cons_U21(z0))) -> c15(ISNATLIST(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_isNatList(cons_U31(z0, z1, z2, z3))) -> c15(ISNATLIST(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_isNatList(cons_take(z0, z1))) -> c15(ISNATLIST(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_isNatList(cons_and(z0, z1))) -> c15(ISNATLIST(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_isNatList(cons_isNat(z0))) -> c15(ISNATLIST(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_isNatList(cons_isNatList(z0))) -> c15(ISNATLIST(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_isNatList(cons_isNatIList(z0))) -> c15(ISNATLIST(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_isNatIList(cons_active(z0))) -> c16(ISNATILIST(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_isNatIList(cons_mark(z0))) -> c16(ISNATILIST(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_isNatIList(cons_cons(z0, z1))) -> c16(ISNATILIST(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_isNatIList(cons_U11(z0, z1))) -> c16(ISNATILIST(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_isNatIList(cons_s(z0))) -> c16(ISNATILIST(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_isNatIList(cons_length(z0))) -> c16(ISNATILIST(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_isNatIList(cons_U21(z0))) -> c16(ISNATILIST(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_isNatIList(cons_U31(z0, z1, z2, z3))) -> c16(ISNATILIST(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_isNatIList(cons_take(z0, z1))) -> c16(ISNATILIST(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_isNatIList(cons_and(z0, z1))) -> c16(ISNATILIST(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_isNatIList(cons_isNat(z0))) -> c16(ISNATILIST(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_isNatIList(cons_isNatList(z0))) -> c16(ISNATILIST(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_isNatIList(cons_isNatIList(z0))) -> c16(ISNATILIST(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) MARK(cons(zeros, x1)) -> c53(ACTIVE(cons(active(zeros), x1)), CONS(mark(zeros), x1), MARK(zeros)) MARK(cons(cons(z0, z1), x1)) -> c53(ACTIVE(cons(active(cons(mark(z0), z1)), x1)), CONS(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(cons(0, x1)) -> c53(ACTIVE(cons(active(0), x1)), CONS(mark(0), x1), MARK(0)) MARK(cons(U11(z0, z1), x1)) -> c53(ACTIVE(cons(active(U11(mark(z0), z1)), x1)), CONS(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(cons(tt, x1)) -> c53(ACTIVE(cons(active(tt), x1)), CONS(mark(tt), x1), MARK(tt)) MARK(cons(s(z0), x1)) -> c53(ACTIVE(cons(active(s(mark(z0))), x1)), CONS(mark(s(z0)), x1), MARK(s(z0))) MARK(cons(length(z0), x1)) -> c53(ACTIVE(cons(active(length(mark(z0))), x1)), CONS(mark(length(z0)), x1), MARK(length(z0))) MARK(cons(U21(z0), x1)) -> c53(ACTIVE(cons(active(U21(mark(z0))), x1)), CONS(mark(U21(z0)), x1), MARK(U21(z0))) MARK(cons(nil, x1)) -> c53(ACTIVE(cons(active(nil), x1)), CONS(mark(nil), x1), MARK(nil)) MARK(cons(U31(z0, z1, z2, z3), x1)) -> c53(ACTIVE(cons(active(U31(mark(z0), z1, z2, z3)), x1)), CONS(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(cons(take(z0, z1), x1)) -> c53(ACTIVE(cons(active(take(mark(z0), mark(z1))), x1)), CONS(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(cons(and(z0, z1), x1)) -> c53(ACTIVE(cons(active(and(mark(z0), z1)), x1)), CONS(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(cons(isNat(z0), x1)) -> c53(ACTIVE(cons(active(isNat(z0)), x1)), CONS(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(cons(isNatList(z0), x1)) -> c53(ACTIVE(cons(active(isNatList(z0)), x1)), CONS(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(cons(isNatIList(z0), x1)) -> c53(ACTIVE(cons(active(isNatIList(z0)), x1)), CONS(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(cons(x0, x1)) -> c53(CONS(mark(x0), x1)) MARK(cons(z0, z1)) -> c53(CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(z0, z1)), U11'(mark(z0), z1), MARK(z0)) MARK(U11(zeros, x1)) -> c55(ACTIVE(U11(active(zeros), x1)), U11'(mark(zeros), x1), MARK(zeros)) MARK(U11(cons(z0, z1), x1)) -> c55(ACTIVE(U11(active(cons(mark(z0), z1)), x1)), U11'(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(U11(0, x1)) -> c55(ACTIVE(U11(active(0), x1)), U11'(mark(0), x1), MARK(0)) MARK(U11(U11(z0, z1), x1)) -> c55(ACTIVE(U11(active(U11(mark(z0), z1)), x1)), U11'(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(U11(tt, x1)) -> c55(ACTIVE(U11(active(tt), x1)), U11'(mark(tt), x1), MARK(tt)) MARK(U11(s(z0), x1)) -> c55(ACTIVE(U11(active(s(mark(z0))), x1)), U11'(mark(s(z0)), x1), MARK(s(z0))) MARK(U11(length(z0), x1)) -> c55(ACTIVE(U11(active(length(mark(z0))), x1)), U11'(mark(length(z0)), x1), MARK(length(z0))) MARK(U11(U21(z0), x1)) -> c55(ACTIVE(U11(active(U21(mark(z0))), x1)), U11'(mark(U21(z0)), x1), MARK(U21(z0))) MARK(U11(nil, x1)) -> c55(ACTIVE(U11(active(nil), x1)), U11'(mark(nil), x1), MARK(nil)) MARK(U11(U31(z0, z1, z2, z3), x1)) -> c55(ACTIVE(U11(active(U31(mark(z0), z1, z2, z3)), x1)), U11'(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(U11(take(z0, z1), x1)) -> c55(ACTIVE(U11(active(take(mark(z0), mark(z1))), x1)), U11'(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(U11(and(z0, z1), x1)) -> c55(ACTIVE(U11(active(and(mark(z0), z1)), x1)), U11'(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(U11(isNat(z0), x1)) -> c55(ACTIVE(U11(active(isNat(z0)), x1)), U11'(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(U11(isNatList(z0), x1)) -> c55(ACTIVE(U11(active(isNatList(z0)), x1)), U11'(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(U11(isNatIList(z0), x1)) -> c55(ACTIVE(U11(active(isNatIList(z0)), x1)), U11'(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(U11(x0, x1)) -> c55(U11'(mark(x0), x1)) MARK(s(zeros)) -> c57(ACTIVE(s(active(zeros))), S(mark(zeros)), MARK(zeros)) MARK(s(cons(z0, z1))) -> c57(ACTIVE(s(active(cons(mark(z0), z1)))), S(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(s(0)) -> c57(ACTIVE(s(active(0))), S(mark(0)), MARK(0)) MARK(s(U11(z0, z1))) -> c57(ACTIVE(s(active(U11(mark(z0), z1)))), S(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(s(tt)) -> c57(ACTIVE(s(active(tt))), S(mark(tt)), MARK(tt)) MARK(s(s(z0))) -> c57(ACTIVE(s(active(s(mark(z0))))), S(mark(s(z0))), MARK(s(z0))) MARK(s(length(z0))) -> c57(ACTIVE(s(active(length(mark(z0))))), S(mark(length(z0))), MARK(length(z0))) MARK(s(U21(z0))) -> c57(ACTIVE(s(active(U21(mark(z0))))), S(mark(U21(z0))), MARK(U21(z0))) MARK(s(nil)) -> c57(ACTIVE(s(active(nil))), S(mark(nil)), MARK(nil)) MARK(s(U31(z0, z1, z2, z3))) -> c57(ACTIVE(s(active(U31(mark(z0), z1, z2, z3)))), S(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(s(take(z0, z1))) -> c57(ACTIVE(s(active(take(mark(z0), mark(z1))))), S(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(s(and(z0, z1))) -> c57(ACTIVE(s(active(and(mark(z0), z1)))), S(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(s(isNat(z0))) -> c57(ACTIVE(s(active(isNat(z0)))), S(mark(isNat(z0))), MARK(isNat(z0))) MARK(s(isNatList(z0))) -> c57(ACTIVE(s(active(isNatList(z0)))), S(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(s(isNatIList(z0))) -> c57(ACTIVE(s(active(isNatIList(z0)))), S(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(s(z0)) -> c57(S(mark(z0)), MARK(z0)) S tuples: ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(length(z0)) -> c58(ACTIVE(length(mark(z0))), LENGTH(mark(z0)), MARK(z0)) MARK(U21(z0)) -> c59(ACTIVE(U21(mark(z0))), U21'(mark(z0)), MARK(z0)) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(mark(z0), z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(take(z0, z1)) -> c62(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 MARK(cons(zeros, x1)) -> c53(ACTIVE(cons(active(zeros), x1)), CONS(mark(zeros), x1), MARK(zeros)) MARK(cons(cons(z0, z1), x1)) -> c53(ACTIVE(cons(active(cons(mark(z0), z1)), x1)), CONS(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(cons(0, x1)) -> c53(ACTIVE(cons(active(0), x1)), CONS(mark(0), x1), MARK(0)) MARK(cons(U11(z0, z1), x1)) -> c53(ACTIVE(cons(active(U11(mark(z0), z1)), x1)), CONS(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(cons(tt, x1)) -> c53(ACTIVE(cons(active(tt), x1)), CONS(mark(tt), x1), MARK(tt)) MARK(cons(s(z0), x1)) -> c53(ACTIVE(cons(active(s(mark(z0))), x1)), CONS(mark(s(z0)), x1), MARK(s(z0))) MARK(cons(length(z0), x1)) -> c53(ACTIVE(cons(active(length(mark(z0))), x1)), CONS(mark(length(z0)), x1), MARK(length(z0))) MARK(cons(U21(z0), x1)) -> c53(ACTIVE(cons(active(U21(mark(z0))), x1)), CONS(mark(U21(z0)), x1), MARK(U21(z0))) MARK(cons(nil, x1)) -> c53(ACTIVE(cons(active(nil), x1)), CONS(mark(nil), x1), MARK(nil)) MARK(cons(U31(z0, z1, z2, z3), x1)) -> c53(ACTIVE(cons(active(U31(mark(z0), z1, z2, z3)), x1)), CONS(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(cons(take(z0, z1), x1)) -> c53(ACTIVE(cons(active(take(mark(z0), mark(z1))), x1)), CONS(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(cons(and(z0, z1), x1)) -> c53(ACTIVE(cons(active(and(mark(z0), z1)), x1)), CONS(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(cons(isNat(z0), x1)) -> c53(ACTIVE(cons(active(isNat(z0)), x1)), CONS(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(cons(isNatList(z0), x1)) -> c53(ACTIVE(cons(active(isNatList(z0)), x1)), CONS(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(cons(isNatIList(z0), x1)) -> c53(ACTIVE(cons(active(isNatIList(z0)), x1)), CONS(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(cons(x0, x1)) -> c53(CONS(mark(x0), x1)) MARK(cons(z0, z1)) -> c53(CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(z0, z1)), U11'(mark(z0), z1), MARK(z0)) MARK(U11(zeros, x1)) -> c55(ACTIVE(U11(active(zeros), x1)), U11'(mark(zeros), x1), MARK(zeros)) MARK(U11(cons(z0, z1), x1)) -> c55(ACTIVE(U11(active(cons(mark(z0), z1)), x1)), U11'(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(U11(0, x1)) -> c55(ACTIVE(U11(active(0), x1)), U11'(mark(0), x1), MARK(0)) MARK(U11(U11(z0, z1), x1)) -> c55(ACTIVE(U11(active(U11(mark(z0), z1)), x1)), U11'(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(U11(tt, x1)) -> c55(ACTIVE(U11(active(tt), x1)), U11'(mark(tt), x1), MARK(tt)) MARK(U11(s(z0), x1)) -> c55(ACTIVE(U11(active(s(mark(z0))), x1)), U11'(mark(s(z0)), x1), MARK(s(z0))) MARK(U11(length(z0), x1)) -> c55(ACTIVE(U11(active(length(mark(z0))), x1)), U11'(mark(length(z0)), x1), MARK(length(z0))) MARK(U11(U21(z0), x1)) -> c55(ACTIVE(U11(active(U21(mark(z0))), x1)), U11'(mark(U21(z0)), x1), MARK(U21(z0))) MARK(U11(nil, x1)) -> c55(ACTIVE(U11(active(nil), x1)), U11'(mark(nil), x1), MARK(nil)) MARK(U11(U31(z0, z1, z2, z3), x1)) -> c55(ACTIVE(U11(active(U31(mark(z0), z1, z2, z3)), x1)), U11'(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(U11(take(z0, z1), x1)) -> c55(ACTIVE(U11(active(take(mark(z0), mark(z1))), x1)), U11'(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(U11(and(z0, z1), x1)) -> c55(ACTIVE(U11(active(and(mark(z0), z1)), x1)), U11'(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(U11(isNat(z0), x1)) -> c55(ACTIVE(U11(active(isNat(z0)), x1)), U11'(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(U11(isNatList(z0), x1)) -> c55(ACTIVE(U11(active(isNatList(z0)), x1)), U11'(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(U11(isNatIList(z0), x1)) -> c55(ACTIVE(U11(active(isNatIList(z0)), x1)), U11'(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(U11(x0, x1)) -> c55(U11'(mark(x0), x1)) MARK(s(zeros)) -> c57(ACTIVE(s(active(zeros))), S(mark(zeros)), MARK(zeros)) MARK(s(cons(z0, z1))) -> c57(ACTIVE(s(active(cons(mark(z0), z1)))), S(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(s(0)) -> c57(ACTIVE(s(active(0))), S(mark(0)), MARK(0)) MARK(s(U11(z0, z1))) -> c57(ACTIVE(s(active(U11(mark(z0), z1)))), S(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(s(tt)) -> c57(ACTIVE(s(active(tt))), S(mark(tt)), MARK(tt)) MARK(s(s(z0))) -> c57(ACTIVE(s(active(s(mark(z0))))), S(mark(s(z0))), MARK(s(z0))) MARK(s(length(z0))) -> c57(ACTIVE(s(active(length(mark(z0))))), S(mark(length(z0))), MARK(length(z0))) MARK(s(U21(z0))) -> c57(ACTIVE(s(active(U21(mark(z0))))), S(mark(U21(z0))), MARK(U21(z0))) MARK(s(nil)) -> c57(ACTIVE(s(active(nil))), S(mark(nil)), MARK(nil)) MARK(s(U31(z0, z1, z2, z3))) -> c57(ACTIVE(s(active(U31(mark(z0), z1, z2, z3)))), S(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(s(take(z0, z1))) -> c57(ACTIVE(s(active(take(mark(z0), mark(z1))))), S(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(s(and(z0, z1))) -> c57(ACTIVE(s(active(and(mark(z0), z1)))), S(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(s(isNat(z0))) -> c57(ACTIVE(s(active(isNat(z0)))), S(mark(isNat(z0))), MARK(isNat(z0))) MARK(s(isNatList(z0))) -> c57(ACTIVE(s(active(isNatList(z0)))), S(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(s(isNatIList(z0))) -> c57(ACTIVE(s(active(isNatIList(z0)))), S(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(s(z0)) -> c57(S(mark(z0)), MARK(z0)) K tuples:none Defined Rule Symbols: encArg_1, active_1, mark_1, cons_2, U11_2, s_1, length_1, U21_1, U31_4, take_2, and_2, isNat_1, isNatList_1, isNatIList_1 Defined Pair Symbols: ACTIVE_1, MARK_1, CONS_2, U11'_2, S_1, LENGTH_1, U21'_1, U31'_4, TAKE_2, AND_2, ISNAT_1, ISNATLIST_1, ISNATILIST_1, ENCODE_ACTIVE_1, ENCODE_MARK_1, ENCODE_CONS_2, ENCODE_U11_2, ENCODE_S_1, ENCODE_LENGTH_1, ENCODE_U21_1, ENCODE_U31_4, ENCODE_TAKE_2, ENCODE_AND_2, ENCODE_ISNAT_1, ENCODE_ISNATLIST_1, ENCODE_ISNATILIST_1, ENCARG_1 Compound Symbols: c36_1, c37_3, c38_1, c39_1, c40_2, c41_2, c42_2, c43_1, c45_1, c48_1, c52_1, c58_3, c59_3, c61_3, c62_4, c63_3, c64_2, c65_2, c66_2, c67_1, c68_1, c69_1, c70_1, c71_1, c72_1, c73_1, c74_1, c75_1, c76_1, c77_1, c78_1, c79_1, c80_1, c81_1, c82_1, c83_1, c84_1, c85_1, c86_1, c87_1, c88_1, c89_1, c90_1, c91_1, c92_1, c93_1, c94_1, c95_1, c96_1, c97_1, c98_1, c99_1, c100_1, c101_1, c102_1, c34_1, c35_2, c44_3, c46_3, c47_3, c49_3, c50_2, c51_4, c54, c56, c60, c_1, c4_2, c4_1, c5_2, c5_1, c6_3, c6_2, c7_3, c7_2, c8_2, c9_2, c10_2, c11_5, c11_4, c12_3, c12_2, c13_3, c13_2, c14_2, c15_2, c16_2, c53_3, c53_1, c53_2, c55_3, c55_1, c57_3, c57_2 ---------------------------------------- (103) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace MARK(length(z0)) -> c58(ACTIVE(length(mark(z0))), LENGTH(mark(z0)), MARK(z0)) by MARK(length(z0)) -> c58(ACTIVE(length(z0)), LENGTH(mark(z0)), MARK(z0)) MARK(length(zeros)) -> c58(ACTIVE(length(active(zeros))), LENGTH(mark(zeros)), MARK(zeros)) MARK(length(cons(z0, z1))) -> c58(ACTIVE(length(active(cons(mark(z0), z1)))), LENGTH(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(length(0)) -> c58(ACTIVE(length(active(0))), LENGTH(mark(0)), MARK(0)) MARK(length(U11(z0, z1))) -> c58(ACTIVE(length(active(U11(mark(z0), z1)))), LENGTH(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(length(tt)) -> c58(ACTIVE(length(active(tt))), LENGTH(mark(tt)), MARK(tt)) MARK(length(s(z0))) -> c58(ACTIVE(length(active(s(mark(z0))))), LENGTH(mark(s(z0))), MARK(s(z0))) MARK(length(length(z0))) -> c58(ACTIVE(length(active(length(mark(z0))))), LENGTH(mark(length(z0))), MARK(length(z0))) MARK(length(U21(z0))) -> c58(ACTIVE(length(active(U21(mark(z0))))), LENGTH(mark(U21(z0))), MARK(U21(z0))) MARK(length(nil)) -> c58(ACTIVE(length(active(nil))), LENGTH(mark(nil)), MARK(nil)) MARK(length(U31(z0, z1, z2, z3))) -> c58(ACTIVE(length(active(U31(mark(z0), z1, z2, z3)))), LENGTH(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(length(take(z0, z1))) -> c58(ACTIVE(length(active(take(mark(z0), mark(z1))))), LENGTH(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(length(and(z0, z1))) -> c58(ACTIVE(length(active(and(mark(z0), z1)))), LENGTH(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(length(isNat(z0))) -> c58(ACTIVE(length(active(isNat(z0)))), LENGTH(mark(isNat(z0))), MARK(isNat(z0))) MARK(length(isNatList(z0))) -> c58(ACTIVE(length(active(isNatList(z0)))), LENGTH(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(length(isNatIList(z0))) -> c58(ACTIVE(length(active(isNatIList(z0)))), LENGTH(mark(isNatIList(z0))), MARK(isNatIList(z0))) ---------------------------------------- (104) Obligation: Complexity Dependency Tuples Problem Rules: encArg(zeros) -> zeros encArg(0) -> 0 encArg(tt) -> tt encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_U11(z0, z1)) -> U11(encArg(z0), encArg(z1)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_length(z0)) -> length(encArg(z0)) encArg(cons_U21(z0)) -> U21(encArg(z0)) encArg(cons_U31(z0, z1, z2, z3)) -> U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_isNat(z0)) -> isNat(encArg(z0)) encArg(cons_isNatList(z0)) -> isNatList(encArg(z0)) encArg(cons_isNatIList(z0)) -> isNatIList(encArg(z0)) active(zeros) -> mark(cons(0, zeros)) active(U11(tt, z0)) -> mark(s(length(z0))) active(U21(tt)) -> mark(nil) active(U31(tt, z0, z1, z2)) -> mark(cons(z2, take(z1, z0))) active(and(tt, z0)) -> mark(z0) active(isNat(0)) -> mark(tt) active(isNat(length(z0))) -> mark(isNatList(z0)) active(isNat(s(z0))) -> mark(isNat(z0)) active(isNatIList(z0)) -> mark(isNatList(z0)) active(isNatIList(zeros)) -> mark(tt) active(isNatIList(cons(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(isNatList(nil)) -> mark(tt) active(isNatList(cons(z0, z1))) -> mark(and(isNat(z0), isNatList(z1))) active(isNatList(take(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(length(nil)) -> mark(0) active(length(cons(z0, z1))) -> mark(U11(and(isNatList(z1), isNat(z0)), z1)) active(take(0, z0)) -> mark(U21(isNatIList(z0))) active(take(s(z0), cons(z1, z2))) -> mark(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)) mark(zeros) -> active(zeros) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(0) -> active(0) mark(U11(z0, z1)) -> active(U11(mark(z0), z1)) mark(tt) -> active(tt) mark(s(z0)) -> active(s(mark(z0))) mark(length(z0)) -> active(length(mark(z0))) mark(U21(z0)) -> active(U21(mark(z0))) mark(nil) -> active(nil) mark(U31(z0, z1, z2, z3)) -> active(U31(mark(z0), z1, z2, z3)) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(isNat(z0)) -> active(isNat(z0)) mark(isNatList(z0)) -> active(isNatList(z0)) mark(isNatIList(z0)) -> active(isNatIList(z0)) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) U11(mark(z0), z1) -> U11(z0, z1) U11(z0, mark(z1)) -> U11(z0, z1) U11(active(z0), z1) -> U11(z0, z1) U11(z0, active(z1)) -> U11(z0, z1) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) length(mark(z0)) -> length(z0) length(active(z0)) -> length(z0) U21(mark(z0)) -> U21(z0) U21(active(z0)) -> U21(z0) U31(mark(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, mark(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, mark(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, mark(z3)) -> U31(z0, z1, z2, z3) U31(active(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, active(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, active(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, active(z3)) -> U31(z0, z1, z2, z3) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) isNat(mark(z0)) -> isNat(z0) isNat(active(z0)) -> isNat(z0) isNatList(mark(z0)) -> isNatList(z0) isNatList(active(z0)) -> isNatList(z0) isNatIList(mark(z0)) -> isNatIList(z0) isNatIList(active(z0)) -> isNatIList(z0) Tuples: ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(U21(z0)) -> c59(ACTIVE(U21(mark(z0))), U21'(mark(z0)), MARK(z0)) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(mark(z0), z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(take(z0, z1)) -> c62(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 ENCODE_ACTIVE(z0) -> c(ACTIVE(encArg(z0))) ENCODE_MARK(z0) -> c(MARK(encArg(z0))) ENCODE_CONS(z0, z1) -> c(CONS(encArg(z0), encArg(z1))) ENCODE_U11(z0, z1) -> c(U11'(encArg(z0), encArg(z1))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_LENGTH(z0) -> c(LENGTH(encArg(z0))) ENCODE_U21(z0) -> c(U21'(encArg(z0))) ENCODE_U31(z0, z1, z2, z3) -> c(U31'(encArg(z0), encArg(z1), encArg(z2), encArg(z3))) ENCODE_TAKE(z0, z1) -> c(TAKE(encArg(z0), encArg(z1))) ENCODE_AND(z0, z1) -> c(AND(encArg(z0), encArg(z1))) ENCODE_ISNAT(z0) -> c(ISNAT(encArg(z0))) ENCODE_ISNATLIST(z0) -> c(ISNATLIST(encArg(z0))) ENCODE_ISNATILIST(z0) -> c(ISNATILIST(encArg(z0))) ENCARG(cons_active(cons_active(z0))) -> c4(ACTIVE(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_active(cons_mark(z0))) -> c4(ACTIVE(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_active(cons_cons(z0, z1))) -> c4(ACTIVE(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_active(cons_U11(z0, z1))) -> c4(ACTIVE(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_active(cons_s(z0))) -> c4(ACTIVE(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_active(cons_length(z0))) -> c4(ACTIVE(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_active(cons_U21(z0))) -> c4(ACTIVE(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_active(cons_U31(z0, z1, z2, z3))) -> c4(ACTIVE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_active(cons_take(z0, z1))) -> c4(ACTIVE(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_active(cons_and(z0, z1))) -> c4(ACTIVE(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_active(cons_isNat(z0))) -> c4(ACTIVE(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_active(cons_isNatList(z0))) -> c4(ACTIVE(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_active(cons_isNatIList(z0))) -> c4(ACTIVE(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_active(zeros)) -> c4(ACTIVE(zeros)) ENCARG(cons_mark(cons_active(z0))) -> c5(MARK(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_mark(cons_mark(z0))) -> c5(MARK(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_mark(cons_cons(z0, z1))) -> c5(MARK(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_mark(cons_U11(z0, z1))) -> c5(MARK(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_mark(cons_s(z0))) -> c5(MARK(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_mark(cons_length(z0))) -> c5(MARK(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_mark(cons_U21(z0))) -> c5(MARK(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_mark(cons_U31(z0, z1, z2, z3))) -> c5(MARK(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_mark(cons_take(z0, z1))) -> c5(MARK(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(cons_and(z0, z1))) -> c5(MARK(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_mark(cons_isNat(z0))) -> c5(MARK(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_mark(cons_isNatList(z0))) -> c5(MARK(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_mark(cons_isNatIList(z0))) -> c5(MARK(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_mark(zeros)) -> c5(MARK(zeros)) ENCARG(cons_mark(0)) -> c5(MARK(0)) ENCARG(cons_mark(tt)) -> c5(MARK(tt)) ENCARG(cons_mark(nil)) -> c5(MARK(nil)) ENCARG(cons_cons(x0, cons_active(z0))) -> c6(CONS(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_cons(x0, cons_mark(z0))) -> c6(CONS(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_cons(x0, cons_cons(z0, z1))) -> c6(CONS(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_cons(x0, cons_U11(z0, z1))) -> c6(CONS(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_cons(x0, cons_s(z0))) -> c6(CONS(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_cons(x0, cons_length(z0))) -> c6(CONS(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_cons(x0, cons_U21(z0))) -> c6(CONS(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_cons(x0, cons_U31(z0, z1, z2, z3))) -> c6(CONS(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_cons(x0, cons_take(z0, z1))) -> c6(CONS(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_cons(x0, cons_and(z0, z1))) -> c6(CONS(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_cons(x0, cons_isNat(z0))) -> c6(CONS(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_cons(x0, cons_isNatList(z0))) -> c6(CONS(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_cons(x0, cons_isNatIList(z0))) -> c6(CONS(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_cons(cons_active(z0), x1)) -> c6(CONS(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_mark(z0), x1)) -> c6(CONS(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_cons(z0, z1), x1)) -> c6(CONS(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_U11(z0, z1), x1)) -> c6(CONS(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_s(z0), x1)) -> c6(CONS(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_length(z0), x1)) -> c6(CONS(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U21(z0), x1)) -> c6(CONS(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U31(z0, z1, z2, z3), x1)) -> c6(CONS(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_cons(cons_take(z0, z1), x1)) -> c6(CONS(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_and(z0, z1), x1)) -> c6(CONS(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_isNat(z0), x1)) -> c6(CONS(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_isNatList(z0), x1)) -> c6(CONS(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_isNatIList(z0), x1)) -> c6(CONS(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_cons(x0, zeros)) -> c6(CONS(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_cons(x0, 0)) -> c6(CONS(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_cons(x0, tt)) -> c6(CONS(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_cons(x0, nil)) -> c6(CONS(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_cons(zeros, x1)) -> c6(CONS(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(0, x1)) -> c6(CONS(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(tt, x1)) -> c6(CONS(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(nil, x1)) -> c6(CONS(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(x0, cons_active(z0))) -> c7(U11'(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_U11(x0, cons_mark(z0))) -> c7(U11'(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_U11(x0, cons_cons(z0, z1))) -> c7(U11'(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U11(x0, cons_U11(z0, z1))) -> c7(U11'(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U11(x0, cons_s(z0))) -> c7(U11'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_U11(x0, cons_length(z0))) -> c7(U11'(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_U11(x0, cons_U21(z0))) -> c7(U11'(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_U11(x0, cons_U31(z0, z1, z2, z3))) -> c7(U11'(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U11(x0, cons_take(z0, z1))) -> c7(U11'(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_U11(x0, cons_and(z0, z1))) -> c7(U11'(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_U11(x0, cons_isNat(z0))) -> c7(U11'(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_U11(x0, cons_isNatList(z0))) -> c7(U11'(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_U11(x0, cons_isNatIList(z0))) -> c7(U11'(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U11(cons_active(z0), x1)) -> c7(U11'(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_mark(z0), x1)) -> c7(U11'(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_cons(z0, z1), x1)) -> c7(U11'(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_U11(z0, z1), x1)) -> c7(U11'(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_s(z0), x1)) -> c7(U11'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_length(z0), x1)) -> c7(U11'(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_U21(z0), x1)) -> c7(U11'(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_U31(z0, z1, z2, z3), x1)) -> c7(U11'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_U11(cons_take(z0, z1), x1)) -> c7(U11'(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_and(z0, z1), x1)) -> c7(U11'(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_isNat(z0), x1)) -> c7(U11'(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_isNatList(z0), x1)) -> c7(U11'(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_isNatIList(z0), x1)) -> c7(U11'(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_U11(x0, zeros)) -> c7(U11'(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_U11(x0, 0)) -> c7(U11'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_U11(x0, tt)) -> c7(U11'(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_U11(x0, nil)) -> c7(U11'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_U11(zeros, x1)) -> c7(U11'(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(0, x1)) -> c7(U11'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(tt, x1)) -> c7(U11'(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(nil, x1)) -> c7(U11'(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_s(cons_active(z0))) -> c8(S(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_s(cons_mark(z0))) -> c8(S(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_s(cons_cons(z0, z1))) -> c8(S(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_s(cons_U11(z0, z1))) -> c8(S(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_s(cons_s(z0))) -> c8(S(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_length(z0))) -> c8(S(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_s(cons_U21(z0))) -> c8(S(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_s(cons_U31(z0, z1, z2, z3))) -> c8(S(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_s(cons_take(z0, z1))) -> c8(S(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_s(cons_and(z0, z1))) -> c8(S(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_s(cons_isNat(z0))) -> c8(S(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_s(cons_isNatList(z0))) -> c8(S(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_s(cons_isNatIList(z0))) -> c8(S(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_length(cons_active(z0))) -> c9(LENGTH(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_length(cons_mark(z0))) -> c9(LENGTH(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_length(cons_cons(z0, z1))) -> c9(LENGTH(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_length(cons_U11(z0, z1))) -> c9(LENGTH(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_length(cons_s(z0))) -> c9(LENGTH(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_length(cons_length(z0))) -> c9(LENGTH(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_length(cons_U21(z0))) -> c9(LENGTH(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_length(cons_U31(z0, z1, z2, z3))) -> c9(LENGTH(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_length(cons_take(z0, z1))) -> c9(LENGTH(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_length(cons_and(z0, z1))) -> c9(LENGTH(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_length(cons_isNat(z0))) -> c9(LENGTH(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_length(cons_isNatList(z0))) -> c9(LENGTH(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_length(cons_isNatIList(z0))) -> c9(LENGTH(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U21(cons_active(z0))) -> c10(U21'(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_U21(cons_mark(z0))) -> c10(U21'(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_U21(cons_cons(z0, z1))) -> c10(U21'(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U21(cons_U11(z0, z1))) -> c10(U21'(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U21(cons_s(z0))) -> c10(U21'(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_U21(cons_length(z0))) -> c10(U21'(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_U21(cons_U21(z0))) -> c10(U21'(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_U21(cons_U31(z0, z1, z2, z3))) -> c10(U21'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U21(cons_take(z0, z1))) -> c10(U21'(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_U21(cons_and(z0, z1))) -> c10(U21'(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_U21(cons_isNat(z0))) -> c10(U21'(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_U21(cons_isNatList(z0))) -> c10(U21'(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_U21(cons_isNatIList(z0))) -> c10(U21'(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U31(x0, x1, x2, cons_active(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), active(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_active(z0))) ENCARG(cons_U31(x0, x1, x2, cons_mark(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), mark(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_mark(z0))) ENCARG(cons_U31(x0, x1, x2, cons_cons(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_U11(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_s(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), s(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_s(z0))) ENCARG(cons_U31(x0, x1, x2, cons_length(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), length(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_length(z0))) ENCARG(cons_U31(x0, x1, x2, cons_U21(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U21(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U21(z0))) ENCARG(cons_U31(x0, x1, x2, cons_U31(z0, z1, z2, z3))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U31(x0, x1, x2, cons_take(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_take(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_and(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_and(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_isNat(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNat(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNat(z0))) ENCARG(cons_U31(x0, x1, x2, cons_isNatList(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNatList(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNatList(z0))) ENCARG(cons_U31(x0, x1, x2, cons_isNatIList(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U31(x0, x1, cons_active(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), active(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_active(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_mark(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), mark(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_mark(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_cons(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), cons(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_cons(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U11(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), U11(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U11(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_s(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), s(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_s(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_length(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), length(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_length(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U21(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), U21(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U21(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U31(z0, z1, z2, z3), x3)) -> c11(U31'(encArg(x0), encArg(x1), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_take(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), take(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_take(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_and(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), and(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_and(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNat(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNat(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNat(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNatList(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNatList(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNatList(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNatIList(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNatIList(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNatIList(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, cons_active(z0), x2, x3)) -> c11(U31'(encArg(x0), active(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_active(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_mark(z0), x2, x3)) -> c11(U31'(encArg(x0), mark(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_mark(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_cons(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), cons(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_cons(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U11(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), U11(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U11(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_s(z0), x2, x3)) -> c11(U31'(encArg(x0), s(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_s(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_length(z0), x2, x3)) -> c11(U31'(encArg(x0), length(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_length(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U21(z0), x2, x3)) -> c11(U31'(encArg(x0), U21(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U21(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U31(z0, z1, z2, z3), x2, x3)) -> c11(U31'(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_take(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), take(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_take(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_and(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), and(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_and(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNat(z0), x2, x3)) -> c11(U31'(encArg(x0), isNat(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNat(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNatList(z0), x2, x3)) -> c11(U31'(encArg(x0), isNatList(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNatList(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNatIList(z0), x2, x3)) -> c11(U31'(encArg(x0), isNatIList(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNatIList(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_active(z0), x1, x2, x3)) -> c11(U31'(active(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_active(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_mark(z0), x1, x2, x3)) -> c11(U31'(mark(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_mark(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_cons(z0, z1), x1, x2, x3)) -> c11(U31'(cons(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_cons(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U11(z0, z1), x1, x2, x3)) -> c11(U31'(U11(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U11(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_s(z0), x1, x2, x3)) -> c11(U31'(s(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_s(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_length(z0), x1, x2, x3)) -> c11(U31'(length(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_length(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U21(z0), x1, x2, x3)) -> c11(U31'(U21(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U21(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U31(z0, z1, z2, z3), x1, x2, x3)) -> c11(U31'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_take(z0, z1), x1, x2, x3)) -> c11(U31'(take(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_take(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_and(z0, z1), x1, x2, x3)) -> c11(U31'(and(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_and(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNat(z0), x1, x2, x3)) -> c11(U31'(isNat(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNat(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNatList(z0), x1, x2, x3)) -> c11(U31'(isNatList(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNatList(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNatIList(z0), x1, x2, x3)) -> c11(U31'(isNatIList(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNatIList(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, x1, x2, zeros)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), zeros), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, 0)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), 0), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, tt)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), tt), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, nil)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), nil), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, zeros, x3)) -> c11(U31'(encArg(x0), encArg(x1), zeros, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, 0, x3)) -> c11(U31'(encArg(x0), encArg(x1), 0, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, tt, x3)) -> c11(U31'(encArg(x0), encArg(x1), tt, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, nil, x3)) -> c11(U31'(encArg(x0), encArg(x1), nil, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, zeros, x2, x3)) -> c11(U31'(encArg(x0), zeros, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, 0, x2, x3)) -> c11(U31'(encArg(x0), 0, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, tt, x2, x3)) -> c11(U31'(encArg(x0), tt, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, nil, x2, x3)) -> c11(U31'(encArg(x0), nil, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(zeros, x1, x2, x3)) -> c11(U31'(zeros, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(0, x1, x2, x3)) -> c11(U31'(0, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(tt, x1, x2, x3)) -> c11(U31'(tt, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(nil, x1, x2, x3)) -> c11(U31'(nil, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_take(x0, cons_active(z0))) -> c12(TAKE(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_take(x0, cons_mark(z0))) -> c12(TAKE(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_take(x0, cons_cons(z0, z1))) -> c12(TAKE(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_take(x0, cons_U11(z0, z1))) -> c12(TAKE(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_take(x0, cons_s(z0))) -> c12(TAKE(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_take(x0, cons_length(z0))) -> c12(TAKE(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_take(x0, cons_U21(z0))) -> c12(TAKE(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_take(x0, cons_U31(z0, z1, z2, z3))) -> c12(TAKE(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_take(x0, cons_take(z0, z1))) -> c12(TAKE(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_take(x0, cons_and(z0, z1))) -> c12(TAKE(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_take(x0, cons_isNat(z0))) -> c12(TAKE(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_take(x0, cons_isNatList(z0))) -> c12(TAKE(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_take(x0, cons_isNatIList(z0))) -> c12(TAKE(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_take(cons_active(z0), x1)) -> c12(TAKE(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_take(cons_mark(z0), x1)) -> c12(TAKE(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_take(cons_cons(z0, z1), x1)) -> c12(TAKE(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_U11(z0, z1), x1)) -> c12(TAKE(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_s(z0), x1)) -> c12(TAKE(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_take(cons_length(z0), x1)) -> c12(TAKE(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_take(cons_U21(z0), x1)) -> c12(TAKE(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_take(cons_U31(z0, z1, z2, z3), x1)) -> c12(TAKE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_take(cons_take(z0, z1), x1)) -> c12(TAKE(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_and(z0, z1), x1)) -> c12(TAKE(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_isNat(z0), x1)) -> c12(TAKE(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_take(cons_isNatList(z0), x1)) -> c12(TAKE(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_take(cons_isNatIList(z0), x1)) -> c12(TAKE(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_take(x0, zeros)) -> c12(TAKE(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_take(x0, 0)) -> c12(TAKE(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_take(x0, tt)) -> c12(TAKE(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_take(x0, nil)) -> c12(TAKE(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_take(zeros, x1)) -> c12(TAKE(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(0, x1)) -> c12(TAKE(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(tt, x1)) -> c12(TAKE(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(nil, x1)) -> c12(TAKE(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(x0, cons_active(z0))) -> c13(AND(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_and(x0, cons_mark(z0))) -> c13(AND(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_and(x0, cons_cons(z0, z1))) -> c13(AND(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_and(x0, cons_U11(z0, z1))) -> c13(AND(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_and(x0, cons_s(z0))) -> c13(AND(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_and(x0, cons_length(z0))) -> c13(AND(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_and(x0, cons_U21(z0))) -> c13(AND(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_and(x0, cons_U31(z0, z1, z2, z3))) -> c13(AND(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_and(x0, cons_take(z0, z1))) -> c13(AND(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_and(x0, cons_and(z0, z1))) -> c13(AND(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_and(x0, cons_isNat(z0))) -> c13(AND(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_and(x0, cons_isNatList(z0))) -> c13(AND(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_and(x0, cons_isNatIList(z0))) -> c13(AND(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_and(cons_active(z0), x1)) -> c13(AND(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_and(cons_mark(z0), x1)) -> c13(AND(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_and(cons_cons(z0, z1), x1)) -> c13(AND(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_U11(z0, z1), x1)) -> c13(AND(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_s(z0), x1)) -> c13(AND(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_and(cons_length(z0), x1)) -> c13(AND(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_and(cons_U21(z0), x1)) -> c13(AND(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_and(cons_U31(z0, z1, z2, z3), x1)) -> c13(AND(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_and(cons_take(z0, z1), x1)) -> c13(AND(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_and(z0, z1), x1)) -> c13(AND(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_isNat(z0), x1)) -> c13(AND(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_and(cons_isNatList(z0), x1)) -> c13(AND(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_and(cons_isNatIList(z0), x1)) -> c13(AND(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_and(x0, zeros)) -> c13(AND(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_and(x0, 0)) -> c13(AND(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_and(x0, tt)) -> c13(AND(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_and(x0, nil)) -> c13(AND(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_and(zeros, x1)) -> c13(AND(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(0, x1)) -> c13(AND(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(tt, x1)) -> c13(AND(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(nil, x1)) -> c13(AND(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_isNat(cons_active(z0))) -> c14(ISNAT(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_isNat(cons_mark(z0))) -> c14(ISNAT(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_isNat(cons_cons(z0, z1))) -> c14(ISNAT(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_isNat(cons_U11(z0, z1))) -> c14(ISNAT(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_isNat(cons_s(z0))) -> c14(ISNAT(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_isNat(cons_length(z0))) -> c14(ISNAT(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_isNat(cons_U21(z0))) -> c14(ISNAT(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_isNat(cons_U31(z0, z1, z2, z3))) -> c14(ISNAT(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_isNat(cons_take(z0, z1))) -> c14(ISNAT(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_isNat(cons_and(z0, z1))) -> c14(ISNAT(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_isNat(cons_isNat(z0))) -> c14(ISNAT(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_isNat(cons_isNatList(z0))) -> c14(ISNAT(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_isNat(cons_isNatIList(z0))) -> c14(ISNAT(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_isNatList(cons_active(z0))) -> c15(ISNATLIST(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_isNatList(cons_mark(z0))) -> c15(ISNATLIST(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_isNatList(cons_cons(z0, z1))) -> c15(ISNATLIST(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_isNatList(cons_U11(z0, z1))) -> c15(ISNATLIST(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_isNatList(cons_s(z0))) -> c15(ISNATLIST(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_isNatList(cons_length(z0))) -> c15(ISNATLIST(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_isNatList(cons_U21(z0))) -> c15(ISNATLIST(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_isNatList(cons_U31(z0, z1, z2, z3))) -> c15(ISNATLIST(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_isNatList(cons_take(z0, z1))) -> c15(ISNATLIST(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_isNatList(cons_and(z0, z1))) -> c15(ISNATLIST(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_isNatList(cons_isNat(z0))) -> c15(ISNATLIST(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_isNatList(cons_isNatList(z0))) -> c15(ISNATLIST(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_isNatList(cons_isNatIList(z0))) -> c15(ISNATLIST(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_isNatIList(cons_active(z0))) -> c16(ISNATILIST(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_isNatIList(cons_mark(z0))) -> c16(ISNATILIST(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_isNatIList(cons_cons(z0, z1))) -> c16(ISNATILIST(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_isNatIList(cons_U11(z0, z1))) -> c16(ISNATILIST(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_isNatIList(cons_s(z0))) -> c16(ISNATILIST(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_isNatIList(cons_length(z0))) -> c16(ISNATILIST(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_isNatIList(cons_U21(z0))) -> c16(ISNATILIST(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_isNatIList(cons_U31(z0, z1, z2, z3))) -> c16(ISNATILIST(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_isNatIList(cons_take(z0, z1))) -> c16(ISNATILIST(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_isNatIList(cons_and(z0, z1))) -> c16(ISNATILIST(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_isNatIList(cons_isNat(z0))) -> c16(ISNATILIST(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_isNatIList(cons_isNatList(z0))) -> c16(ISNATILIST(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_isNatIList(cons_isNatIList(z0))) -> c16(ISNATILIST(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) MARK(cons(zeros, x1)) -> c53(ACTIVE(cons(active(zeros), x1)), CONS(mark(zeros), x1), MARK(zeros)) MARK(cons(cons(z0, z1), x1)) -> c53(ACTIVE(cons(active(cons(mark(z0), z1)), x1)), CONS(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(cons(0, x1)) -> c53(ACTIVE(cons(active(0), x1)), CONS(mark(0), x1), MARK(0)) MARK(cons(U11(z0, z1), x1)) -> c53(ACTIVE(cons(active(U11(mark(z0), z1)), x1)), CONS(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(cons(tt, x1)) -> c53(ACTIVE(cons(active(tt), x1)), CONS(mark(tt), x1), MARK(tt)) MARK(cons(s(z0), x1)) -> c53(ACTIVE(cons(active(s(mark(z0))), x1)), CONS(mark(s(z0)), x1), MARK(s(z0))) MARK(cons(length(z0), x1)) -> c53(ACTIVE(cons(active(length(mark(z0))), x1)), CONS(mark(length(z0)), x1), MARK(length(z0))) MARK(cons(U21(z0), x1)) -> c53(ACTIVE(cons(active(U21(mark(z0))), x1)), CONS(mark(U21(z0)), x1), MARK(U21(z0))) MARK(cons(nil, x1)) -> c53(ACTIVE(cons(active(nil), x1)), CONS(mark(nil), x1), MARK(nil)) MARK(cons(U31(z0, z1, z2, z3), x1)) -> c53(ACTIVE(cons(active(U31(mark(z0), z1, z2, z3)), x1)), CONS(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(cons(take(z0, z1), x1)) -> c53(ACTIVE(cons(active(take(mark(z0), mark(z1))), x1)), CONS(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(cons(and(z0, z1), x1)) -> c53(ACTIVE(cons(active(and(mark(z0), z1)), x1)), CONS(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(cons(isNat(z0), x1)) -> c53(ACTIVE(cons(active(isNat(z0)), x1)), CONS(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(cons(isNatList(z0), x1)) -> c53(ACTIVE(cons(active(isNatList(z0)), x1)), CONS(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(cons(isNatIList(z0), x1)) -> c53(ACTIVE(cons(active(isNatIList(z0)), x1)), CONS(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(cons(x0, x1)) -> c53(CONS(mark(x0), x1)) MARK(cons(z0, z1)) -> c53(CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(z0, z1)), U11'(mark(z0), z1), MARK(z0)) MARK(U11(zeros, x1)) -> c55(ACTIVE(U11(active(zeros), x1)), U11'(mark(zeros), x1), MARK(zeros)) MARK(U11(cons(z0, z1), x1)) -> c55(ACTIVE(U11(active(cons(mark(z0), z1)), x1)), U11'(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(U11(0, x1)) -> c55(ACTIVE(U11(active(0), x1)), U11'(mark(0), x1), MARK(0)) MARK(U11(U11(z0, z1), x1)) -> c55(ACTIVE(U11(active(U11(mark(z0), z1)), x1)), U11'(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(U11(tt, x1)) -> c55(ACTIVE(U11(active(tt), x1)), U11'(mark(tt), x1), MARK(tt)) MARK(U11(s(z0), x1)) -> c55(ACTIVE(U11(active(s(mark(z0))), x1)), U11'(mark(s(z0)), x1), MARK(s(z0))) MARK(U11(length(z0), x1)) -> c55(ACTIVE(U11(active(length(mark(z0))), x1)), U11'(mark(length(z0)), x1), MARK(length(z0))) MARK(U11(U21(z0), x1)) -> c55(ACTIVE(U11(active(U21(mark(z0))), x1)), U11'(mark(U21(z0)), x1), MARK(U21(z0))) MARK(U11(nil, x1)) -> c55(ACTIVE(U11(active(nil), x1)), U11'(mark(nil), x1), MARK(nil)) MARK(U11(U31(z0, z1, z2, z3), x1)) -> c55(ACTIVE(U11(active(U31(mark(z0), z1, z2, z3)), x1)), U11'(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(U11(take(z0, z1), x1)) -> c55(ACTIVE(U11(active(take(mark(z0), mark(z1))), x1)), U11'(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(U11(and(z0, z1), x1)) -> c55(ACTIVE(U11(active(and(mark(z0), z1)), x1)), U11'(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(U11(isNat(z0), x1)) -> c55(ACTIVE(U11(active(isNat(z0)), x1)), U11'(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(U11(isNatList(z0), x1)) -> c55(ACTIVE(U11(active(isNatList(z0)), x1)), U11'(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(U11(isNatIList(z0), x1)) -> c55(ACTIVE(U11(active(isNatIList(z0)), x1)), U11'(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(U11(x0, x1)) -> c55(U11'(mark(x0), x1)) MARK(s(zeros)) -> c57(ACTIVE(s(active(zeros))), S(mark(zeros)), MARK(zeros)) MARK(s(cons(z0, z1))) -> c57(ACTIVE(s(active(cons(mark(z0), z1)))), S(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(s(0)) -> c57(ACTIVE(s(active(0))), S(mark(0)), MARK(0)) MARK(s(U11(z0, z1))) -> c57(ACTIVE(s(active(U11(mark(z0), z1)))), S(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(s(tt)) -> c57(ACTIVE(s(active(tt))), S(mark(tt)), MARK(tt)) MARK(s(s(z0))) -> c57(ACTIVE(s(active(s(mark(z0))))), S(mark(s(z0))), MARK(s(z0))) MARK(s(length(z0))) -> c57(ACTIVE(s(active(length(mark(z0))))), S(mark(length(z0))), MARK(length(z0))) MARK(s(U21(z0))) -> c57(ACTIVE(s(active(U21(mark(z0))))), S(mark(U21(z0))), MARK(U21(z0))) MARK(s(nil)) -> c57(ACTIVE(s(active(nil))), S(mark(nil)), MARK(nil)) MARK(s(U31(z0, z1, z2, z3))) -> c57(ACTIVE(s(active(U31(mark(z0), z1, z2, z3)))), S(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(s(take(z0, z1))) -> c57(ACTIVE(s(active(take(mark(z0), mark(z1))))), S(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(s(and(z0, z1))) -> c57(ACTIVE(s(active(and(mark(z0), z1)))), S(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(s(isNat(z0))) -> c57(ACTIVE(s(active(isNat(z0)))), S(mark(isNat(z0))), MARK(isNat(z0))) MARK(s(isNatList(z0))) -> c57(ACTIVE(s(active(isNatList(z0)))), S(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(s(isNatIList(z0))) -> c57(ACTIVE(s(active(isNatIList(z0)))), S(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(s(z0)) -> c57(S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(z0)), LENGTH(mark(z0)), MARK(z0)) MARK(length(zeros)) -> c58(ACTIVE(length(active(zeros))), LENGTH(mark(zeros)), MARK(zeros)) MARK(length(cons(z0, z1))) -> c58(ACTIVE(length(active(cons(mark(z0), z1)))), LENGTH(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(length(0)) -> c58(ACTIVE(length(active(0))), LENGTH(mark(0)), MARK(0)) MARK(length(U11(z0, z1))) -> c58(ACTIVE(length(active(U11(mark(z0), z1)))), LENGTH(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(length(tt)) -> c58(ACTIVE(length(active(tt))), LENGTH(mark(tt)), MARK(tt)) MARK(length(s(z0))) -> c58(ACTIVE(length(active(s(mark(z0))))), LENGTH(mark(s(z0))), MARK(s(z0))) MARK(length(length(z0))) -> c58(ACTIVE(length(active(length(mark(z0))))), LENGTH(mark(length(z0))), MARK(length(z0))) MARK(length(U21(z0))) -> c58(ACTIVE(length(active(U21(mark(z0))))), LENGTH(mark(U21(z0))), MARK(U21(z0))) MARK(length(nil)) -> c58(ACTIVE(length(active(nil))), LENGTH(mark(nil)), MARK(nil)) MARK(length(U31(z0, z1, z2, z3))) -> c58(ACTIVE(length(active(U31(mark(z0), z1, z2, z3)))), LENGTH(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(length(take(z0, z1))) -> c58(ACTIVE(length(active(take(mark(z0), mark(z1))))), LENGTH(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(length(and(z0, z1))) -> c58(ACTIVE(length(active(and(mark(z0), z1)))), LENGTH(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(length(isNat(z0))) -> c58(ACTIVE(length(active(isNat(z0)))), LENGTH(mark(isNat(z0))), MARK(isNat(z0))) MARK(length(isNatList(z0))) -> c58(ACTIVE(length(active(isNatList(z0)))), LENGTH(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(length(isNatIList(z0))) -> c58(ACTIVE(length(active(isNatIList(z0)))), LENGTH(mark(isNatIList(z0))), MARK(isNatIList(z0))) S tuples: ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(U21(z0)) -> c59(ACTIVE(U21(mark(z0))), U21'(mark(z0)), MARK(z0)) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(mark(z0), z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(take(z0, z1)) -> c62(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 MARK(cons(zeros, x1)) -> c53(ACTIVE(cons(active(zeros), x1)), CONS(mark(zeros), x1), MARK(zeros)) MARK(cons(cons(z0, z1), x1)) -> c53(ACTIVE(cons(active(cons(mark(z0), z1)), x1)), CONS(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(cons(0, x1)) -> c53(ACTIVE(cons(active(0), x1)), CONS(mark(0), x1), MARK(0)) MARK(cons(U11(z0, z1), x1)) -> c53(ACTIVE(cons(active(U11(mark(z0), z1)), x1)), CONS(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(cons(tt, x1)) -> c53(ACTIVE(cons(active(tt), x1)), CONS(mark(tt), x1), MARK(tt)) MARK(cons(s(z0), x1)) -> c53(ACTIVE(cons(active(s(mark(z0))), x1)), CONS(mark(s(z0)), x1), MARK(s(z0))) MARK(cons(length(z0), x1)) -> c53(ACTIVE(cons(active(length(mark(z0))), x1)), CONS(mark(length(z0)), x1), MARK(length(z0))) MARK(cons(U21(z0), x1)) -> c53(ACTIVE(cons(active(U21(mark(z0))), x1)), CONS(mark(U21(z0)), x1), MARK(U21(z0))) MARK(cons(nil, x1)) -> c53(ACTIVE(cons(active(nil), x1)), CONS(mark(nil), x1), MARK(nil)) MARK(cons(U31(z0, z1, z2, z3), x1)) -> c53(ACTIVE(cons(active(U31(mark(z0), z1, z2, z3)), x1)), CONS(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(cons(take(z0, z1), x1)) -> c53(ACTIVE(cons(active(take(mark(z0), mark(z1))), x1)), CONS(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(cons(and(z0, z1), x1)) -> c53(ACTIVE(cons(active(and(mark(z0), z1)), x1)), CONS(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(cons(isNat(z0), x1)) -> c53(ACTIVE(cons(active(isNat(z0)), x1)), CONS(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(cons(isNatList(z0), x1)) -> c53(ACTIVE(cons(active(isNatList(z0)), x1)), CONS(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(cons(isNatIList(z0), x1)) -> c53(ACTIVE(cons(active(isNatIList(z0)), x1)), CONS(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(cons(x0, x1)) -> c53(CONS(mark(x0), x1)) MARK(cons(z0, z1)) -> c53(CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(z0, z1)), U11'(mark(z0), z1), MARK(z0)) MARK(U11(zeros, x1)) -> c55(ACTIVE(U11(active(zeros), x1)), U11'(mark(zeros), x1), MARK(zeros)) MARK(U11(cons(z0, z1), x1)) -> c55(ACTIVE(U11(active(cons(mark(z0), z1)), x1)), U11'(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(U11(0, x1)) -> c55(ACTIVE(U11(active(0), x1)), U11'(mark(0), x1), MARK(0)) MARK(U11(U11(z0, z1), x1)) -> c55(ACTIVE(U11(active(U11(mark(z0), z1)), x1)), U11'(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(U11(tt, x1)) -> c55(ACTIVE(U11(active(tt), x1)), U11'(mark(tt), x1), MARK(tt)) MARK(U11(s(z0), x1)) -> c55(ACTIVE(U11(active(s(mark(z0))), x1)), U11'(mark(s(z0)), x1), MARK(s(z0))) MARK(U11(length(z0), x1)) -> c55(ACTIVE(U11(active(length(mark(z0))), x1)), U11'(mark(length(z0)), x1), MARK(length(z0))) MARK(U11(U21(z0), x1)) -> c55(ACTIVE(U11(active(U21(mark(z0))), x1)), U11'(mark(U21(z0)), x1), MARK(U21(z0))) MARK(U11(nil, x1)) -> c55(ACTIVE(U11(active(nil), x1)), U11'(mark(nil), x1), MARK(nil)) MARK(U11(U31(z0, z1, z2, z3), x1)) -> c55(ACTIVE(U11(active(U31(mark(z0), z1, z2, z3)), x1)), U11'(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(U11(take(z0, z1), x1)) -> c55(ACTIVE(U11(active(take(mark(z0), mark(z1))), x1)), U11'(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(U11(and(z0, z1), x1)) -> c55(ACTIVE(U11(active(and(mark(z0), z1)), x1)), U11'(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(U11(isNat(z0), x1)) -> c55(ACTIVE(U11(active(isNat(z0)), x1)), U11'(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(U11(isNatList(z0), x1)) -> c55(ACTIVE(U11(active(isNatList(z0)), x1)), U11'(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(U11(isNatIList(z0), x1)) -> c55(ACTIVE(U11(active(isNatIList(z0)), x1)), U11'(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(U11(x0, x1)) -> c55(U11'(mark(x0), x1)) MARK(s(zeros)) -> c57(ACTIVE(s(active(zeros))), S(mark(zeros)), MARK(zeros)) MARK(s(cons(z0, z1))) -> c57(ACTIVE(s(active(cons(mark(z0), z1)))), S(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(s(0)) -> c57(ACTIVE(s(active(0))), S(mark(0)), MARK(0)) MARK(s(U11(z0, z1))) -> c57(ACTIVE(s(active(U11(mark(z0), z1)))), S(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(s(tt)) -> c57(ACTIVE(s(active(tt))), S(mark(tt)), MARK(tt)) MARK(s(s(z0))) -> c57(ACTIVE(s(active(s(mark(z0))))), S(mark(s(z0))), MARK(s(z0))) MARK(s(length(z0))) -> c57(ACTIVE(s(active(length(mark(z0))))), S(mark(length(z0))), MARK(length(z0))) MARK(s(U21(z0))) -> c57(ACTIVE(s(active(U21(mark(z0))))), S(mark(U21(z0))), MARK(U21(z0))) MARK(s(nil)) -> c57(ACTIVE(s(active(nil))), S(mark(nil)), MARK(nil)) MARK(s(U31(z0, z1, z2, z3))) -> c57(ACTIVE(s(active(U31(mark(z0), z1, z2, z3)))), S(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(s(take(z0, z1))) -> c57(ACTIVE(s(active(take(mark(z0), mark(z1))))), S(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(s(and(z0, z1))) -> c57(ACTIVE(s(active(and(mark(z0), z1)))), S(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(s(isNat(z0))) -> c57(ACTIVE(s(active(isNat(z0)))), S(mark(isNat(z0))), MARK(isNat(z0))) MARK(s(isNatList(z0))) -> c57(ACTIVE(s(active(isNatList(z0)))), S(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(s(isNatIList(z0))) -> c57(ACTIVE(s(active(isNatIList(z0)))), S(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(s(z0)) -> c57(S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(z0)), LENGTH(mark(z0)), MARK(z0)) MARK(length(zeros)) -> c58(ACTIVE(length(active(zeros))), LENGTH(mark(zeros)), MARK(zeros)) MARK(length(cons(z0, z1))) -> c58(ACTIVE(length(active(cons(mark(z0), z1)))), LENGTH(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(length(0)) -> c58(ACTIVE(length(active(0))), LENGTH(mark(0)), MARK(0)) MARK(length(U11(z0, z1))) -> c58(ACTIVE(length(active(U11(mark(z0), z1)))), LENGTH(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(length(tt)) -> c58(ACTIVE(length(active(tt))), LENGTH(mark(tt)), MARK(tt)) MARK(length(s(z0))) -> c58(ACTIVE(length(active(s(mark(z0))))), LENGTH(mark(s(z0))), MARK(s(z0))) MARK(length(length(z0))) -> c58(ACTIVE(length(active(length(mark(z0))))), LENGTH(mark(length(z0))), MARK(length(z0))) MARK(length(U21(z0))) -> c58(ACTIVE(length(active(U21(mark(z0))))), LENGTH(mark(U21(z0))), MARK(U21(z0))) MARK(length(nil)) -> c58(ACTIVE(length(active(nil))), LENGTH(mark(nil)), MARK(nil)) MARK(length(U31(z0, z1, z2, z3))) -> c58(ACTIVE(length(active(U31(mark(z0), z1, z2, z3)))), LENGTH(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(length(take(z0, z1))) -> c58(ACTIVE(length(active(take(mark(z0), mark(z1))))), LENGTH(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(length(and(z0, z1))) -> c58(ACTIVE(length(active(and(mark(z0), z1)))), LENGTH(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(length(isNat(z0))) -> c58(ACTIVE(length(active(isNat(z0)))), LENGTH(mark(isNat(z0))), MARK(isNat(z0))) MARK(length(isNatList(z0))) -> c58(ACTIVE(length(active(isNatList(z0)))), LENGTH(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(length(isNatIList(z0))) -> c58(ACTIVE(length(active(isNatIList(z0)))), LENGTH(mark(isNatIList(z0))), MARK(isNatIList(z0))) K tuples:none Defined Rule Symbols: encArg_1, active_1, mark_1, cons_2, U11_2, s_1, length_1, U21_1, U31_4, take_2, and_2, isNat_1, isNatList_1, isNatIList_1 Defined Pair Symbols: ACTIVE_1, MARK_1, CONS_2, U11'_2, S_1, LENGTH_1, U21'_1, U31'_4, TAKE_2, AND_2, ISNAT_1, ISNATLIST_1, ISNATILIST_1, ENCODE_ACTIVE_1, ENCODE_MARK_1, ENCODE_CONS_2, ENCODE_U11_2, ENCODE_S_1, ENCODE_LENGTH_1, ENCODE_U21_1, ENCODE_U31_4, ENCODE_TAKE_2, ENCODE_AND_2, ENCODE_ISNAT_1, ENCODE_ISNATLIST_1, ENCODE_ISNATILIST_1, ENCARG_1 Compound Symbols: c36_1, c37_3, c38_1, c39_1, c40_2, c41_2, c42_2, c43_1, c45_1, c48_1, c52_1, c59_3, c61_3, c62_4, c63_3, c64_2, c65_2, c66_2, c67_1, c68_1, c69_1, c70_1, c71_1, c72_1, c73_1, c74_1, c75_1, c76_1, c77_1, c78_1, c79_1, c80_1, c81_1, c82_1, c83_1, c84_1, c85_1, c86_1, c87_1, c88_1, c89_1, c90_1, c91_1, c92_1, c93_1, c94_1, c95_1, c96_1, c97_1, c98_1, c99_1, c100_1, c101_1, c102_1, c34_1, c35_2, c44_3, c46_3, c47_3, c49_3, c50_2, c51_4, c54, c56, c60, c_1, c4_2, c4_1, c5_2, c5_1, c6_3, c6_2, c7_3, c7_2, c8_2, c9_2, c10_2, c11_5, c11_4, c12_3, c12_2, c13_3, c13_2, c14_2, c15_2, c16_2, c53_3, c53_1, c53_2, c55_3, c55_1, c57_3, c57_2, c58_3 ---------------------------------------- (105) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace MARK(U21(z0)) -> c59(ACTIVE(U21(mark(z0))), U21'(mark(z0)), MARK(z0)) by MARK(U21(z0)) -> c59(ACTIVE(U21(z0)), U21'(mark(z0)), MARK(z0)) MARK(U21(zeros)) -> c59(ACTIVE(U21(active(zeros))), U21'(mark(zeros)), MARK(zeros)) MARK(U21(cons(z0, z1))) -> c59(ACTIVE(U21(active(cons(mark(z0), z1)))), U21'(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(U21(0)) -> c59(ACTIVE(U21(active(0))), U21'(mark(0)), MARK(0)) MARK(U21(U11(z0, z1))) -> c59(ACTIVE(U21(active(U11(mark(z0), z1)))), U21'(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(U21(tt)) -> c59(ACTIVE(U21(active(tt))), U21'(mark(tt)), MARK(tt)) MARK(U21(s(z0))) -> c59(ACTIVE(U21(active(s(mark(z0))))), U21'(mark(s(z0))), MARK(s(z0))) MARK(U21(length(z0))) -> c59(ACTIVE(U21(active(length(mark(z0))))), U21'(mark(length(z0))), MARK(length(z0))) MARK(U21(U21(z0))) -> c59(ACTIVE(U21(active(U21(mark(z0))))), U21'(mark(U21(z0))), MARK(U21(z0))) MARK(U21(nil)) -> c59(ACTIVE(U21(active(nil))), U21'(mark(nil)), MARK(nil)) MARK(U21(U31(z0, z1, z2, z3))) -> c59(ACTIVE(U21(active(U31(mark(z0), z1, z2, z3)))), U21'(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(U21(take(z0, z1))) -> c59(ACTIVE(U21(active(take(mark(z0), mark(z1))))), U21'(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(U21(and(z0, z1))) -> c59(ACTIVE(U21(active(and(mark(z0), z1)))), U21'(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(U21(isNat(z0))) -> c59(ACTIVE(U21(active(isNat(z0)))), U21'(mark(isNat(z0))), MARK(isNat(z0))) MARK(U21(isNatList(z0))) -> c59(ACTIVE(U21(active(isNatList(z0)))), U21'(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(U21(isNatIList(z0))) -> c59(ACTIVE(U21(active(isNatIList(z0)))), U21'(mark(isNatIList(z0))), MARK(isNatIList(z0))) ---------------------------------------- (106) Obligation: Complexity Dependency Tuples Problem Rules: encArg(zeros) -> zeros encArg(0) -> 0 encArg(tt) -> tt encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_U11(z0, z1)) -> U11(encArg(z0), encArg(z1)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_length(z0)) -> length(encArg(z0)) encArg(cons_U21(z0)) -> U21(encArg(z0)) encArg(cons_U31(z0, z1, z2, z3)) -> U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_isNat(z0)) -> isNat(encArg(z0)) encArg(cons_isNatList(z0)) -> isNatList(encArg(z0)) encArg(cons_isNatIList(z0)) -> isNatIList(encArg(z0)) active(zeros) -> mark(cons(0, zeros)) active(U11(tt, z0)) -> mark(s(length(z0))) active(U21(tt)) -> mark(nil) active(U31(tt, z0, z1, z2)) -> mark(cons(z2, take(z1, z0))) active(and(tt, z0)) -> mark(z0) active(isNat(0)) -> mark(tt) active(isNat(length(z0))) -> mark(isNatList(z0)) active(isNat(s(z0))) -> mark(isNat(z0)) active(isNatIList(z0)) -> mark(isNatList(z0)) active(isNatIList(zeros)) -> mark(tt) active(isNatIList(cons(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(isNatList(nil)) -> mark(tt) active(isNatList(cons(z0, z1))) -> mark(and(isNat(z0), isNatList(z1))) active(isNatList(take(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(length(nil)) -> mark(0) active(length(cons(z0, z1))) -> mark(U11(and(isNatList(z1), isNat(z0)), z1)) active(take(0, z0)) -> mark(U21(isNatIList(z0))) active(take(s(z0), cons(z1, z2))) -> mark(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)) mark(zeros) -> active(zeros) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(0) -> active(0) mark(U11(z0, z1)) -> active(U11(mark(z0), z1)) mark(tt) -> active(tt) mark(s(z0)) -> active(s(mark(z0))) mark(length(z0)) -> active(length(mark(z0))) mark(U21(z0)) -> active(U21(mark(z0))) mark(nil) -> active(nil) mark(U31(z0, z1, z2, z3)) -> active(U31(mark(z0), z1, z2, z3)) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(isNat(z0)) -> active(isNat(z0)) mark(isNatList(z0)) -> active(isNatList(z0)) mark(isNatIList(z0)) -> active(isNatIList(z0)) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) U11(mark(z0), z1) -> U11(z0, z1) U11(z0, mark(z1)) -> U11(z0, z1) U11(active(z0), z1) -> U11(z0, z1) U11(z0, active(z1)) -> U11(z0, z1) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) length(mark(z0)) -> length(z0) length(active(z0)) -> length(z0) U21(mark(z0)) -> U21(z0) U21(active(z0)) -> U21(z0) U31(mark(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, mark(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, mark(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, mark(z3)) -> U31(z0, z1, z2, z3) U31(active(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, active(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, active(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, active(z3)) -> U31(z0, z1, z2, z3) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) isNat(mark(z0)) -> isNat(z0) isNat(active(z0)) -> isNat(z0) isNatList(mark(z0)) -> isNatList(z0) isNatList(active(z0)) -> isNatList(z0) isNatIList(mark(z0)) -> isNatIList(z0) isNatIList(active(z0)) -> isNatIList(z0) Tuples: ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(mark(z0), z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(take(z0, z1)) -> c62(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 ENCODE_ACTIVE(z0) -> c(ACTIVE(encArg(z0))) ENCODE_MARK(z0) -> c(MARK(encArg(z0))) ENCODE_CONS(z0, z1) -> c(CONS(encArg(z0), encArg(z1))) ENCODE_U11(z0, z1) -> c(U11'(encArg(z0), encArg(z1))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_LENGTH(z0) -> c(LENGTH(encArg(z0))) ENCODE_U21(z0) -> c(U21'(encArg(z0))) ENCODE_U31(z0, z1, z2, z3) -> c(U31'(encArg(z0), encArg(z1), encArg(z2), encArg(z3))) ENCODE_TAKE(z0, z1) -> c(TAKE(encArg(z0), encArg(z1))) ENCODE_AND(z0, z1) -> c(AND(encArg(z0), encArg(z1))) ENCODE_ISNAT(z0) -> c(ISNAT(encArg(z0))) ENCODE_ISNATLIST(z0) -> c(ISNATLIST(encArg(z0))) ENCODE_ISNATILIST(z0) -> c(ISNATILIST(encArg(z0))) ENCARG(cons_active(cons_active(z0))) -> c4(ACTIVE(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_active(cons_mark(z0))) -> c4(ACTIVE(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_active(cons_cons(z0, z1))) -> c4(ACTIVE(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_active(cons_U11(z0, z1))) -> c4(ACTIVE(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_active(cons_s(z0))) -> c4(ACTIVE(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_active(cons_length(z0))) -> c4(ACTIVE(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_active(cons_U21(z0))) -> c4(ACTIVE(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_active(cons_U31(z0, z1, z2, z3))) -> c4(ACTIVE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_active(cons_take(z0, z1))) -> c4(ACTIVE(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_active(cons_and(z0, z1))) -> c4(ACTIVE(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_active(cons_isNat(z0))) -> c4(ACTIVE(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_active(cons_isNatList(z0))) -> c4(ACTIVE(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_active(cons_isNatIList(z0))) -> c4(ACTIVE(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_active(zeros)) -> c4(ACTIVE(zeros)) ENCARG(cons_mark(cons_active(z0))) -> c5(MARK(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_mark(cons_mark(z0))) -> c5(MARK(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_mark(cons_cons(z0, z1))) -> c5(MARK(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_mark(cons_U11(z0, z1))) -> c5(MARK(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_mark(cons_s(z0))) -> c5(MARK(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_mark(cons_length(z0))) -> c5(MARK(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_mark(cons_U21(z0))) -> c5(MARK(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_mark(cons_U31(z0, z1, z2, z3))) -> c5(MARK(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_mark(cons_take(z0, z1))) -> c5(MARK(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(cons_and(z0, z1))) -> c5(MARK(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_mark(cons_isNat(z0))) -> c5(MARK(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_mark(cons_isNatList(z0))) -> c5(MARK(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_mark(cons_isNatIList(z0))) -> c5(MARK(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_mark(zeros)) -> c5(MARK(zeros)) ENCARG(cons_mark(0)) -> c5(MARK(0)) ENCARG(cons_mark(tt)) -> c5(MARK(tt)) ENCARG(cons_mark(nil)) -> c5(MARK(nil)) ENCARG(cons_cons(x0, cons_active(z0))) -> c6(CONS(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_cons(x0, cons_mark(z0))) -> c6(CONS(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_cons(x0, cons_cons(z0, z1))) -> c6(CONS(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_cons(x0, cons_U11(z0, z1))) -> c6(CONS(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_cons(x0, cons_s(z0))) -> c6(CONS(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_cons(x0, cons_length(z0))) -> c6(CONS(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_cons(x0, cons_U21(z0))) -> c6(CONS(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_cons(x0, cons_U31(z0, z1, z2, z3))) -> c6(CONS(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_cons(x0, cons_take(z0, z1))) -> c6(CONS(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_cons(x0, cons_and(z0, z1))) -> c6(CONS(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_cons(x0, cons_isNat(z0))) -> c6(CONS(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_cons(x0, cons_isNatList(z0))) -> c6(CONS(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_cons(x0, cons_isNatIList(z0))) -> c6(CONS(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_cons(cons_active(z0), x1)) -> c6(CONS(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_mark(z0), x1)) -> c6(CONS(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_cons(z0, z1), x1)) -> c6(CONS(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_U11(z0, z1), x1)) -> c6(CONS(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_s(z0), x1)) -> c6(CONS(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_length(z0), x1)) -> c6(CONS(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U21(z0), x1)) -> c6(CONS(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U31(z0, z1, z2, z3), x1)) -> c6(CONS(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_cons(cons_take(z0, z1), x1)) -> c6(CONS(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_and(z0, z1), x1)) -> c6(CONS(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_isNat(z0), x1)) -> c6(CONS(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_isNatList(z0), x1)) -> c6(CONS(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_isNatIList(z0), x1)) -> c6(CONS(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_cons(x0, zeros)) -> c6(CONS(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_cons(x0, 0)) -> c6(CONS(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_cons(x0, tt)) -> c6(CONS(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_cons(x0, nil)) -> c6(CONS(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_cons(zeros, x1)) -> c6(CONS(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(0, x1)) -> c6(CONS(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(tt, x1)) -> c6(CONS(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(nil, x1)) -> c6(CONS(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(x0, cons_active(z0))) -> c7(U11'(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_U11(x0, cons_mark(z0))) -> c7(U11'(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_U11(x0, cons_cons(z0, z1))) -> c7(U11'(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U11(x0, cons_U11(z0, z1))) -> c7(U11'(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U11(x0, cons_s(z0))) -> c7(U11'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_U11(x0, cons_length(z0))) -> c7(U11'(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_U11(x0, cons_U21(z0))) -> c7(U11'(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_U11(x0, cons_U31(z0, z1, z2, z3))) -> c7(U11'(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U11(x0, cons_take(z0, z1))) -> c7(U11'(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_U11(x0, cons_and(z0, z1))) -> c7(U11'(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_U11(x0, cons_isNat(z0))) -> c7(U11'(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_U11(x0, cons_isNatList(z0))) -> c7(U11'(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_U11(x0, cons_isNatIList(z0))) -> c7(U11'(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U11(cons_active(z0), x1)) -> c7(U11'(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_mark(z0), x1)) -> c7(U11'(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_cons(z0, z1), x1)) -> c7(U11'(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_U11(z0, z1), x1)) -> c7(U11'(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_s(z0), x1)) -> c7(U11'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_length(z0), x1)) -> c7(U11'(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_U21(z0), x1)) -> c7(U11'(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_U31(z0, z1, z2, z3), x1)) -> c7(U11'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_U11(cons_take(z0, z1), x1)) -> c7(U11'(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_and(z0, z1), x1)) -> c7(U11'(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_isNat(z0), x1)) -> c7(U11'(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_isNatList(z0), x1)) -> c7(U11'(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_isNatIList(z0), x1)) -> c7(U11'(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_U11(x0, zeros)) -> c7(U11'(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_U11(x0, 0)) -> c7(U11'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_U11(x0, tt)) -> c7(U11'(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_U11(x0, nil)) -> c7(U11'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_U11(zeros, x1)) -> c7(U11'(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(0, x1)) -> c7(U11'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(tt, x1)) -> c7(U11'(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(nil, x1)) -> c7(U11'(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_s(cons_active(z0))) -> c8(S(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_s(cons_mark(z0))) -> c8(S(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_s(cons_cons(z0, z1))) -> c8(S(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_s(cons_U11(z0, z1))) -> c8(S(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_s(cons_s(z0))) -> c8(S(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_length(z0))) -> c8(S(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_s(cons_U21(z0))) -> c8(S(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_s(cons_U31(z0, z1, z2, z3))) -> c8(S(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_s(cons_take(z0, z1))) -> c8(S(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_s(cons_and(z0, z1))) -> c8(S(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_s(cons_isNat(z0))) -> c8(S(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_s(cons_isNatList(z0))) -> c8(S(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_s(cons_isNatIList(z0))) -> c8(S(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_length(cons_active(z0))) -> c9(LENGTH(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_length(cons_mark(z0))) -> c9(LENGTH(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_length(cons_cons(z0, z1))) -> c9(LENGTH(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_length(cons_U11(z0, z1))) -> c9(LENGTH(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_length(cons_s(z0))) -> c9(LENGTH(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_length(cons_length(z0))) -> c9(LENGTH(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_length(cons_U21(z0))) -> c9(LENGTH(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_length(cons_U31(z0, z1, z2, z3))) -> c9(LENGTH(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_length(cons_take(z0, z1))) -> c9(LENGTH(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_length(cons_and(z0, z1))) -> c9(LENGTH(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_length(cons_isNat(z0))) -> c9(LENGTH(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_length(cons_isNatList(z0))) -> c9(LENGTH(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_length(cons_isNatIList(z0))) -> c9(LENGTH(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U21(cons_active(z0))) -> c10(U21'(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_U21(cons_mark(z0))) -> c10(U21'(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_U21(cons_cons(z0, z1))) -> c10(U21'(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U21(cons_U11(z0, z1))) -> c10(U21'(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U21(cons_s(z0))) -> c10(U21'(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_U21(cons_length(z0))) -> c10(U21'(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_U21(cons_U21(z0))) -> c10(U21'(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_U21(cons_U31(z0, z1, z2, z3))) -> c10(U21'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U21(cons_take(z0, z1))) -> c10(U21'(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_U21(cons_and(z0, z1))) -> c10(U21'(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_U21(cons_isNat(z0))) -> c10(U21'(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_U21(cons_isNatList(z0))) -> c10(U21'(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_U21(cons_isNatIList(z0))) -> c10(U21'(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U31(x0, x1, x2, cons_active(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), active(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_active(z0))) ENCARG(cons_U31(x0, x1, x2, cons_mark(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), mark(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_mark(z0))) ENCARG(cons_U31(x0, x1, x2, cons_cons(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_U11(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_s(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), s(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_s(z0))) ENCARG(cons_U31(x0, x1, x2, cons_length(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), length(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_length(z0))) ENCARG(cons_U31(x0, x1, x2, cons_U21(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U21(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U21(z0))) ENCARG(cons_U31(x0, x1, x2, cons_U31(z0, z1, z2, z3))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U31(x0, x1, x2, cons_take(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_take(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_and(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_and(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_isNat(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNat(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNat(z0))) ENCARG(cons_U31(x0, x1, x2, cons_isNatList(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNatList(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNatList(z0))) ENCARG(cons_U31(x0, x1, x2, cons_isNatIList(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U31(x0, x1, cons_active(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), active(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_active(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_mark(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), mark(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_mark(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_cons(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), cons(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_cons(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U11(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), U11(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U11(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_s(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), s(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_s(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_length(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), length(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_length(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U21(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), U21(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U21(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U31(z0, z1, z2, z3), x3)) -> c11(U31'(encArg(x0), encArg(x1), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_take(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), take(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_take(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_and(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), and(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_and(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNat(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNat(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNat(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNatList(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNatList(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNatList(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNatIList(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNatIList(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNatIList(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, cons_active(z0), x2, x3)) -> c11(U31'(encArg(x0), active(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_active(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_mark(z0), x2, x3)) -> c11(U31'(encArg(x0), mark(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_mark(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_cons(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), cons(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_cons(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U11(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), U11(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U11(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_s(z0), x2, x3)) -> c11(U31'(encArg(x0), s(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_s(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_length(z0), x2, x3)) -> c11(U31'(encArg(x0), length(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_length(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U21(z0), x2, x3)) -> c11(U31'(encArg(x0), U21(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U21(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U31(z0, z1, z2, z3), x2, x3)) -> c11(U31'(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_take(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), take(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_take(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_and(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), and(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_and(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNat(z0), x2, x3)) -> c11(U31'(encArg(x0), isNat(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNat(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNatList(z0), x2, x3)) -> c11(U31'(encArg(x0), isNatList(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNatList(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNatIList(z0), x2, x3)) -> c11(U31'(encArg(x0), isNatIList(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNatIList(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_active(z0), x1, x2, x3)) -> c11(U31'(active(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_active(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_mark(z0), x1, x2, x3)) -> c11(U31'(mark(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_mark(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_cons(z0, z1), x1, x2, x3)) -> c11(U31'(cons(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_cons(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U11(z0, z1), x1, x2, x3)) -> c11(U31'(U11(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U11(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_s(z0), x1, x2, x3)) -> c11(U31'(s(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_s(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_length(z0), x1, x2, x3)) -> c11(U31'(length(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_length(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U21(z0), x1, x2, x3)) -> c11(U31'(U21(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U21(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U31(z0, z1, z2, z3), x1, x2, x3)) -> c11(U31'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_take(z0, z1), x1, x2, x3)) -> c11(U31'(take(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_take(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_and(z0, z1), x1, x2, x3)) -> c11(U31'(and(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_and(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNat(z0), x1, x2, x3)) -> c11(U31'(isNat(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNat(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNatList(z0), x1, x2, x3)) -> c11(U31'(isNatList(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNatList(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNatIList(z0), x1, x2, x3)) -> c11(U31'(isNatIList(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNatIList(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, x1, x2, zeros)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), zeros), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, 0)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), 0), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, tt)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), tt), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, nil)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), nil), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, zeros, x3)) -> c11(U31'(encArg(x0), encArg(x1), zeros, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, 0, x3)) -> c11(U31'(encArg(x0), encArg(x1), 0, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, tt, x3)) -> c11(U31'(encArg(x0), encArg(x1), tt, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, nil, x3)) -> c11(U31'(encArg(x0), encArg(x1), nil, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, zeros, x2, x3)) -> c11(U31'(encArg(x0), zeros, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, 0, x2, x3)) -> c11(U31'(encArg(x0), 0, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, tt, x2, x3)) -> c11(U31'(encArg(x0), tt, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, nil, x2, x3)) -> c11(U31'(encArg(x0), nil, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(zeros, x1, x2, x3)) -> c11(U31'(zeros, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(0, x1, x2, x3)) -> c11(U31'(0, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(tt, x1, x2, x3)) -> c11(U31'(tt, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(nil, x1, x2, x3)) -> c11(U31'(nil, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_take(x0, cons_active(z0))) -> c12(TAKE(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_take(x0, cons_mark(z0))) -> c12(TAKE(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_take(x0, cons_cons(z0, z1))) -> c12(TAKE(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_take(x0, cons_U11(z0, z1))) -> c12(TAKE(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_take(x0, cons_s(z0))) -> c12(TAKE(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_take(x0, cons_length(z0))) -> c12(TAKE(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_take(x0, cons_U21(z0))) -> c12(TAKE(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_take(x0, cons_U31(z0, z1, z2, z3))) -> c12(TAKE(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_take(x0, cons_take(z0, z1))) -> c12(TAKE(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_take(x0, cons_and(z0, z1))) -> c12(TAKE(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_take(x0, cons_isNat(z0))) -> c12(TAKE(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_take(x0, cons_isNatList(z0))) -> c12(TAKE(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_take(x0, cons_isNatIList(z0))) -> c12(TAKE(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_take(cons_active(z0), x1)) -> c12(TAKE(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_take(cons_mark(z0), x1)) -> c12(TAKE(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_take(cons_cons(z0, z1), x1)) -> c12(TAKE(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_U11(z0, z1), x1)) -> c12(TAKE(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_s(z0), x1)) -> c12(TAKE(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_take(cons_length(z0), x1)) -> c12(TAKE(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_take(cons_U21(z0), x1)) -> c12(TAKE(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_take(cons_U31(z0, z1, z2, z3), x1)) -> c12(TAKE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_take(cons_take(z0, z1), x1)) -> c12(TAKE(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_and(z0, z1), x1)) -> c12(TAKE(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_isNat(z0), x1)) -> c12(TAKE(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_take(cons_isNatList(z0), x1)) -> c12(TAKE(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_take(cons_isNatIList(z0), x1)) -> c12(TAKE(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_take(x0, zeros)) -> c12(TAKE(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_take(x0, 0)) -> c12(TAKE(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_take(x0, tt)) -> c12(TAKE(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_take(x0, nil)) -> c12(TAKE(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_take(zeros, x1)) -> c12(TAKE(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(0, x1)) -> c12(TAKE(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(tt, x1)) -> c12(TAKE(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(nil, x1)) -> c12(TAKE(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(x0, cons_active(z0))) -> c13(AND(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_and(x0, cons_mark(z0))) -> c13(AND(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_and(x0, cons_cons(z0, z1))) -> c13(AND(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_and(x0, cons_U11(z0, z1))) -> c13(AND(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_and(x0, cons_s(z0))) -> c13(AND(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_and(x0, cons_length(z0))) -> c13(AND(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_and(x0, cons_U21(z0))) -> c13(AND(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_and(x0, cons_U31(z0, z1, z2, z3))) -> c13(AND(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_and(x0, cons_take(z0, z1))) -> c13(AND(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_and(x0, cons_and(z0, z1))) -> c13(AND(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_and(x0, cons_isNat(z0))) -> c13(AND(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_and(x0, cons_isNatList(z0))) -> c13(AND(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_and(x0, cons_isNatIList(z0))) -> c13(AND(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_and(cons_active(z0), x1)) -> c13(AND(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_and(cons_mark(z0), x1)) -> c13(AND(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_and(cons_cons(z0, z1), x1)) -> c13(AND(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_U11(z0, z1), x1)) -> c13(AND(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_s(z0), x1)) -> c13(AND(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_and(cons_length(z0), x1)) -> c13(AND(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_and(cons_U21(z0), x1)) -> c13(AND(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_and(cons_U31(z0, z1, z2, z3), x1)) -> c13(AND(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_and(cons_take(z0, z1), x1)) -> c13(AND(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_and(z0, z1), x1)) -> c13(AND(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_isNat(z0), x1)) -> c13(AND(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_and(cons_isNatList(z0), x1)) -> c13(AND(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_and(cons_isNatIList(z0), x1)) -> c13(AND(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_and(x0, zeros)) -> c13(AND(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_and(x0, 0)) -> c13(AND(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_and(x0, tt)) -> c13(AND(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_and(x0, nil)) -> c13(AND(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_and(zeros, x1)) -> c13(AND(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(0, x1)) -> c13(AND(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(tt, x1)) -> c13(AND(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(nil, x1)) -> c13(AND(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_isNat(cons_active(z0))) -> c14(ISNAT(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_isNat(cons_mark(z0))) -> c14(ISNAT(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_isNat(cons_cons(z0, z1))) -> c14(ISNAT(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_isNat(cons_U11(z0, z1))) -> c14(ISNAT(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_isNat(cons_s(z0))) -> c14(ISNAT(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_isNat(cons_length(z0))) -> c14(ISNAT(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_isNat(cons_U21(z0))) -> c14(ISNAT(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_isNat(cons_U31(z0, z1, z2, z3))) -> c14(ISNAT(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_isNat(cons_take(z0, z1))) -> c14(ISNAT(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_isNat(cons_and(z0, z1))) -> c14(ISNAT(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_isNat(cons_isNat(z0))) -> c14(ISNAT(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_isNat(cons_isNatList(z0))) -> c14(ISNAT(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_isNat(cons_isNatIList(z0))) -> c14(ISNAT(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_isNatList(cons_active(z0))) -> c15(ISNATLIST(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_isNatList(cons_mark(z0))) -> c15(ISNATLIST(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_isNatList(cons_cons(z0, z1))) -> c15(ISNATLIST(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_isNatList(cons_U11(z0, z1))) -> c15(ISNATLIST(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_isNatList(cons_s(z0))) -> c15(ISNATLIST(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_isNatList(cons_length(z0))) -> c15(ISNATLIST(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_isNatList(cons_U21(z0))) -> c15(ISNATLIST(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_isNatList(cons_U31(z0, z1, z2, z3))) -> c15(ISNATLIST(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_isNatList(cons_take(z0, z1))) -> c15(ISNATLIST(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_isNatList(cons_and(z0, z1))) -> c15(ISNATLIST(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_isNatList(cons_isNat(z0))) -> c15(ISNATLIST(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_isNatList(cons_isNatList(z0))) -> c15(ISNATLIST(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_isNatList(cons_isNatIList(z0))) -> c15(ISNATLIST(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_isNatIList(cons_active(z0))) -> c16(ISNATILIST(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_isNatIList(cons_mark(z0))) -> c16(ISNATILIST(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_isNatIList(cons_cons(z0, z1))) -> c16(ISNATILIST(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_isNatIList(cons_U11(z0, z1))) -> c16(ISNATILIST(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_isNatIList(cons_s(z0))) -> c16(ISNATILIST(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_isNatIList(cons_length(z0))) -> c16(ISNATILIST(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_isNatIList(cons_U21(z0))) -> c16(ISNATILIST(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_isNatIList(cons_U31(z0, z1, z2, z3))) -> c16(ISNATILIST(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_isNatIList(cons_take(z0, z1))) -> c16(ISNATILIST(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_isNatIList(cons_and(z0, z1))) -> c16(ISNATILIST(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_isNatIList(cons_isNat(z0))) -> c16(ISNATILIST(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_isNatIList(cons_isNatList(z0))) -> c16(ISNATILIST(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_isNatIList(cons_isNatIList(z0))) -> c16(ISNATILIST(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) MARK(cons(zeros, x1)) -> c53(ACTIVE(cons(active(zeros), x1)), CONS(mark(zeros), x1), MARK(zeros)) MARK(cons(cons(z0, z1), x1)) -> c53(ACTIVE(cons(active(cons(mark(z0), z1)), x1)), CONS(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(cons(0, x1)) -> c53(ACTIVE(cons(active(0), x1)), CONS(mark(0), x1), MARK(0)) MARK(cons(U11(z0, z1), x1)) -> c53(ACTIVE(cons(active(U11(mark(z0), z1)), x1)), CONS(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(cons(tt, x1)) -> c53(ACTIVE(cons(active(tt), x1)), CONS(mark(tt), x1), MARK(tt)) MARK(cons(s(z0), x1)) -> c53(ACTIVE(cons(active(s(mark(z0))), x1)), CONS(mark(s(z0)), x1), MARK(s(z0))) MARK(cons(length(z0), x1)) -> c53(ACTIVE(cons(active(length(mark(z0))), x1)), CONS(mark(length(z0)), x1), MARK(length(z0))) MARK(cons(U21(z0), x1)) -> c53(ACTIVE(cons(active(U21(mark(z0))), x1)), CONS(mark(U21(z0)), x1), MARK(U21(z0))) MARK(cons(nil, x1)) -> c53(ACTIVE(cons(active(nil), x1)), CONS(mark(nil), x1), MARK(nil)) MARK(cons(U31(z0, z1, z2, z3), x1)) -> c53(ACTIVE(cons(active(U31(mark(z0), z1, z2, z3)), x1)), CONS(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(cons(take(z0, z1), x1)) -> c53(ACTIVE(cons(active(take(mark(z0), mark(z1))), x1)), CONS(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(cons(and(z0, z1), x1)) -> c53(ACTIVE(cons(active(and(mark(z0), z1)), x1)), CONS(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(cons(isNat(z0), x1)) -> c53(ACTIVE(cons(active(isNat(z0)), x1)), CONS(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(cons(isNatList(z0), x1)) -> c53(ACTIVE(cons(active(isNatList(z0)), x1)), CONS(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(cons(isNatIList(z0), x1)) -> c53(ACTIVE(cons(active(isNatIList(z0)), x1)), CONS(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(cons(x0, x1)) -> c53(CONS(mark(x0), x1)) MARK(cons(z0, z1)) -> c53(CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(z0, z1)), U11'(mark(z0), z1), MARK(z0)) MARK(U11(zeros, x1)) -> c55(ACTIVE(U11(active(zeros), x1)), U11'(mark(zeros), x1), MARK(zeros)) MARK(U11(cons(z0, z1), x1)) -> c55(ACTIVE(U11(active(cons(mark(z0), z1)), x1)), U11'(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(U11(0, x1)) -> c55(ACTIVE(U11(active(0), x1)), U11'(mark(0), x1), MARK(0)) MARK(U11(U11(z0, z1), x1)) -> c55(ACTIVE(U11(active(U11(mark(z0), z1)), x1)), U11'(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(U11(tt, x1)) -> c55(ACTIVE(U11(active(tt), x1)), U11'(mark(tt), x1), MARK(tt)) MARK(U11(s(z0), x1)) -> c55(ACTIVE(U11(active(s(mark(z0))), x1)), U11'(mark(s(z0)), x1), MARK(s(z0))) MARK(U11(length(z0), x1)) -> c55(ACTIVE(U11(active(length(mark(z0))), x1)), U11'(mark(length(z0)), x1), MARK(length(z0))) MARK(U11(U21(z0), x1)) -> c55(ACTIVE(U11(active(U21(mark(z0))), x1)), U11'(mark(U21(z0)), x1), MARK(U21(z0))) MARK(U11(nil, x1)) -> c55(ACTIVE(U11(active(nil), x1)), U11'(mark(nil), x1), MARK(nil)) MARK(U11(U31(z0, z1, z2, z3), x1)) -> c55(ACTIVE(U11(active(U31(mark(z0), z1, z2, z3)), x1)), U11'(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(U11(take(z0, z1), x1)) -> c55(ACTIVE(U11(active(take(mark(z0), mark(z1))), x1)), U11'(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(U11(and(z0, z1), x1)) -> c55(ACTIVE(U11(active(and(mark(z0), z1)), x1)), U11'(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(U11(isNat(z0), x1)) -> c55(ACTIVE(U11(active(isNat(z0)), x1)), U11'(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(U11(isNatList(z0), x1)) -> c55(ACTIVE(U11(active(isNatList(z0)), x1)), U11'(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(U11(isNatIList(z0), x1)) -> c55(ACTIVE(U11(active(isNatIList(z0)), x1)), U11'(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(U11(x0, x1)) -> c55(U11'(mark(x0), x1)) MARK(s(zeros)) -> c57(ACTIVE(s(active(zeros))), S(mark(zeros)), MARK(zeros)) MARK(s(cons(z0, z1))) -> c57(ACTIVE(s(active(cons(mark(z0), z1)))), S(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(s(0)) -> c57(ACTIVE(s(active(0))), S(mark(0)), MARK(0)) MARK(s(U11(z0, z1))) -> c57(ACTIVE(s(active(U11(mark(z0), z1)))), S(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(s(tt)) -> c57(ACTIVE(s(active(tt))), S(mark(tt)), MARK(tt)) MARK(s(s(z0))) -> c57(ACTIVE(s(active(s(mark(z0))))), S(mark(s(z0))), MARK(s(z0))) MARK(s(length(z0))) -> c57(ACTIVE(s(active(length(mark(z0))))), S(mark(length(z0))), MARK(length(z0))) MARK(s(U21(z0))) -> c57(ACTIVE(s(active(U21(mark(z0))))), S(mark(U21(z0))), MARK(U21(z0))) MARK(s(nil)) -> c57(ACTIVE(s(active(nil))), S(mark(nil)), MARK(nil)) MARK(s(U31(z0, z1, z2, z3))) -> c57(ACTIVE(s(active(U31(mark(z0), z1, z2, z3)))), S(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(s(take(z0, z1))) -> c57(ACTIVE(s(active(take(mark(z0), mark(z1))))), S(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(s(and(z0, z1))) -> c57(ACTIVE(s(active(and(mark(z0), z1)))), S(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(s(isNat(z0))) -> c57(ACTIVE(s(active(isNat(z0)))), S(mark(isNat(z0))), MARK(isNat(z0))) MARK(s(isNatList(z0))) -> c57(ACTIVE(s(active(isNatList(z0)))), S(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(s(isNatIList(z0))) -> c57(ACTIVE(s(active(isNatIList(z0)))), S(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(s(z0)) -> c57(S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(z0)), LENGTH(mark(z0)), MARK(z0)) MARK(length(zeros)) -> c58(ACTIVE(length(active(zeros))), LENGTH(mark(zeros)), MARK(zeros)) MARK(length(cons(z0, z1))) -> c58(ACTIVE(length(active(cons(mark(z0), z1)))), LENGTH(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(length(0)) -> c58(ACTIVE(length(active(0))), LENGTH(mark(0)), MARK(0)) MARK(length(U11(z0, z1))) -> c58(ACTIVE(length(active(U11(mark(z0), z1)))), LENGTH(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(length(tt)) -> c58(ACTIVE(length(active(tt))), LENGTH(mark(tt)), MARK(tt)) MARK(length(s(z0))) -> c58(ACTIVE(length(active(s(mark(z0))))), LENGTH(mark(s(z0))), MARK(s(z0))) MARK(length(length(z0))) -> c58(ACTIVE(length(active(length(mark(z0))))), LENGTH(mark(length(z0))), MARK(length(z0))) MARK(length(U21(z0))) -> c58(ACTIVE(length(active(U21(mark(z0))))), LENGTH(mark(U21(z0))), MARK(U21(z0))) MARK(length(nil)) -> c58(ACTIVE(length(active(nil))), LENGTH(mark(nil)), MARK(nil)) MARK(length(U31(z0, z1, z2, z3))) -> c58(ACTIVE(length(active(U31(mark(z0), z1, z2, z3)))), LENGTH(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(length(take(z0, z1))) -> c58(ACTIVE(length(active(take(mark(z0), mark(z1))))), LENGTH(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(length(and(z0, z1))) -> c58(ACTIVE(length(active(and(mark(z0), z1)))), LENGTH(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(length(isNat(z0))) -> c58(ACTIVE(length(active(isNat(z0)))), LENGTH(mark(isNat(z0))), MARK(isNat(z0))) MARK(length(isNatList(z0))) -> c58(ACTIVE(length(active(isNatList(z0)))), LENGTH(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(length(isNatIList(z0))) -> c58(ACTIVE(length(active(isNatIList(z0)))), LENGTH(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(U21(z0)) -> c59(ACTIVE(U21(z0)), U21'(mark(z0)), MARK(z0)) MARK(U21(zeros)) -> c59(ACTIVE(U21(active(zeros))), U21'(mark(zeros)), MARK(zeros)) MARK(U21(cons(z0, z1))) -> c59(ACTIVE(U21(active(cons(mark(z0), z1)))), U21'(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(U21(0)) -> c59(ACTIVE(U21(active(0))), U21'(mark(0)), MARK(0)) MARK(U21(U11(z0, z1))) -> c59(ACTIVE(U21(active(U11(mark(z0), z1)))), U21'(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(U21(tt)) -> c59(ACTIVE(U21(active(tt))), U21'(mark(tt)), MARK(tt)) MARK(U21(s(z0))) -> c59(ACTIVE(U21(active(s(mark(z0))))), U21'(mark(s(z0))), MARK(s(z0))) MARK(U21(length(z0))) -> c59(ACTIVE(U21(active(length(mark(z0))))), U21'(mark(length(z0))), MARK(length(z0))) MARK(U21(U21(z0))) -> c59(ACTIVE(U21(active(U21(mark(z0))))), U21'(mark(U21(z0))), MARK(U21(z0))) MARK(U21(nil)) -> c59(ACTIVE(U21(active(nil))), U21'(mark(nil)), MARK(nil)) MARK(U21(U31(z0, z1, z2, z3))) -> c59(ACTIVE(U21(active(U31(mark(z0), z1, z2, z3)))), U21'(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(U21(take(z0, z1))) -> c59(ACTIVE(U21(active(take(mark(z0), mark(z1))))), U21'(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(U21(and(z0, z1))) -> c59(ACTIVE(U21(active(and(mark(z0), z1)))), U21'(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(U21(isNat(z0))) -> c59(ACTIVE(U21(active(isNat(z0)))), U21'(mark(isNat(z0))), MARK(isNat(z0))) MARK(U21(isNatList(z0))) -> c59(ACTIVE(U21(active(isNatList(z0)))), U21'(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(U21(isNatIList(z0))) -> c59(ACTIVE(U21(active(isNatIList(z0)))), U21'(mark(isNatIList(z0))), MARK(isNatIList(z0))) S tuples: ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(mark(z0), z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(take(z0, z1)) -> c62(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 MARK(cons(zeros, x1)) -> c53(ACTIVE(cons(active(zeros), x1)), CONS(mark(zeros), x1), MARK(zeros)) MARK(cons(cons(z0, z1), x1)) -> c53(ACTIVE(cons(active(cons(mark(z0), z1)), x1)), CONS(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(cons(0, x1)) -> c53(ACTIVE(cons(active(0), x1)), CONS(mark(0), x1), MARK(0)) MARK(cons(U11(z0, z1), x1)) -> c53(ACTIVE(cons(active(U11(mark(z0), z1)), x1)), CONS(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(cons(tt, x1)) -> c53(ACTIVE(cons(active(tt), x1)), CONS(mark(tt), x1), MARK(tt)) MARK(cons(s(z0), x1)) -> c53(ACTIVE(cons(active(s(mark(z0))), x1)), CONS(mark(s(z0)), x1), MARK(s(z0))) MARK(cons(length(z0), x1)) -> c53(ACTIVE(cons(active(length(mark(z0))), x1)), CONS(mark(length(z0)), x1), MARK(length(z0))) MARK(cons(U21(z0), x1)) -> c53(ACTIVE(cons(active(U21(mark(z0))), x1)), CONS(mark(U21(z0)), x1), MARK(U21(z0))) MARK(cons(nil, x1)) -> c53(ACTIVE(cons(active(nil), x1)), CONS(mark(nil), x1), MARK(nil)) MARK(cons(U31(z0, z1, z2, z3), x1)) -> c53(ACTIVE(cons(active(U31(mark(z0), z1, z2, z3)), x1)), CONS(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(cons(take(z0, z1), x1)) -> c53(ACTIVE(cons(active(take(mark(z0), mark(z1))), x1)), CONS(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(cons(and(z0, z1), x1)) -> c53(ACTIVE(cons(active(and(mark(z0), z1)), x1)), CONS(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(cons(isNat(z0), x1)) -> c53(ACTIVE(cons(active(isNat(z0)), x1)), CONS(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(cons(isNatList(z0), x1)) -> c53(ACTIVE(cons(active(isNatList(z0)), x1)), CONS(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(cons(isNatIList(z0), x1)) -> c53(ACTIVE(cons(active(isNatIList(z0)), x1)), CONS(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(cons(x0, x1)) -> c53(CONS(mark(x0), x1)) MARK(cons(z0, z1)) -> c53(CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(z0, z1)), U11'(mark(z0), z1), MARK(z0)) MARK(U11(zeros, x1)) -> c55(ACTIVE(U11(active(zeros), x1)), U11'(mark(zeros), x1), MARK(zeros)) MARK(U11(cons(z0, z1), x1)) -> c55(ACTIVE(U11(active(cons(mark(z0), z1)), x1)), U11'(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(U11(0, x1)) -> c55(ACTIVE(U11(active(0), x1)), U11'(mark(0), x1), MARK(0)) MARK(U11(U11(z0, z1), x1)) -> c55(ACTIVE(U11(active(U11(mark(z0), z1)), x1)), U11'(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(U11(tt, x1)) -> c55(ACTIVE(U11(active(tt), x1)), U11'(mark(tt), x1), MARK(tt)) MARK(U11(s(z0), x1)) -> c55(ACTIVE(U11(active(s(mark(z0))), x1)), U11'(mark(s(z0)), x1), MARK(s(z0))) MARK(U11(length(z0), x1)) -> c55(ACTIVE(U11(active(length(mark(z0))), x1)), U11'(mark(length(z0)), x1), MARK(length(z0))) MARK(U11(U21(z0), x1)) -> c55(ACTIVE(U11(active(U21(mark(z0))), x1)), U11'(mark(U21(z0)), x1), MARK(U21(z0))) MARK(U11(nil, x1)) -> c55(ACTIVE(U11(active(nil), x1)), U11'(mark(nil), x1), MARK(nil)) MARK(U11(U31(z0, z1, z2, z3), x1)) -> c55(ACTIVE(U11(active(U31(mark(z0), z1, z2, z3)), x1)), U11'(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(U11(take(z0, z1), x1)) -> c55(ACTIVE(U11(active(take(mark(z0), mark(z1))), x1)), U11'(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(U11(and(z0, z1), x1)) -> c55(ACTIVE(U11(active(and(mark(z0), z1)), x1)), U11'(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(U11(isNat(z0), x1)) -> c55(ACTIVE(U11(active(isNat(z0)), x1)), U11'(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(U11(isNatList(z0), x1)) -> c55(ACTIVE(U11(active(isNatList(z0)), x1)), U11'(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(U11(isNatIList(z0), x1)) -> c55(ACTIVE(U11(active(isNatIList(z0)), x1)), U11'(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(U11(x0, x1)) -> c55(U11'(mark(x0), x1)) MARK(s(zeros)) -> c57(ACTIVE(s(active(zeros))), S(mark(zeros)), MARK(zeros)) MARK(s(cons(z0, z1))) -> c57(ACTIVE(s(active(cons(mark(z0), z1)))), S(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(s(0)) -> c57(ACTIVE(s(active(0))), S(mark(0)), MARK(0)) MARK(s(U11(z0, z1))) -> c57(ACTIVE(s(active(U11(mark(z0), z1)))), S(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(s(tt)) -> c57(ACTIVE(s(active(tt))), S(mark(tt)), MARK(tt)) MARK(s(s(z0))) -> c57(ACTIVE(s(active(s(mark(z0))))), S(mark(s(z0))), MARK(s(z0))) MARK(s(length(z0))) -> c57(ACTIVE(s(active(length(mark(z0))))), S(mark(length(z0))), MARK(length(z0))) MARK(s(U21(z0))) -> c57(ACTIVE(s(active(U21(mark(z0))))), S(mark(U21(z0))), MARK(U21(z0))) MARK(s(nil)) -> c57(ACTIVE(s(active(nil))), S(mark(nil)), MARK(nil)) MARK(s(U31(z0, z1, z2, z3))) -> c57(ACTIVE(s(active(U31(mark(z0), z1, z2, z3)))), S(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(s(take(z0, z1))) -> c57(ACTIVE(s(active(take(mark(z0), mark(z1))))), S(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(s(and(z0, z1))) -> c57(ACTIVE(s(active(and(mark(z0), z1)))), S(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(s(isNat(z0))) -> c57(ACTIVE(s(active(isNat(z0)))), S(mark(isNat(z0))), MARK(isNat(z0))) MARK(s(isNatList(z0))) -> c57(ACTIVE(s(active(isNatList(z0)))), S(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(s(isNatIList(z0))) -> c57(ACTIVE(s(active(isNatIList(z0)))), S(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(s(z0)) -> c57(S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(z0)), LENGTH(mark(z0)), MARK(z0)) MARK(length(zeros)) -> c58(ACTIVE(length(active(zeros))), LENGTH(mark(zeros)), MARK(zeros)) MARK(length(cons(z0, z1))) -> c58(ACTIVE(length(active(cons(mark(z0), z1)))), LENGTH(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(length(0)) -> c58(ACTIVE(length(active(0))), LENGTH(mark(0)), MARK(0)) MARK(length(U11(z0, z1))) -> c58(ACTIVE(length(active(U11(mark(z0), z1)))), LENGTH(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(length(tt)) -> c58(ACTIVE(length(active(tt))), LENGTH(mark(tt)), MARK(tt)) MARK(length(s(z0))) -> c58(ACTIVE(length(active(s(mark(z0))))), LENGTH(mark(s(z0))), MARK(s(z0))) MARK(length(length(z0))) -> c58(ACTIVE(length(active(length(mark(z0))))), LENGTH(mark(length(z0))), MARK(length(z0))) MARK(length(U21(z0))) -> c58(ACTIVE(length(active(U21(mark(z0))))), LENGTH(mark(U21(z0))), MARK(U21(z0))) MARK(length(nil)) -> c58(ACTIVE(length(active(nil))), LENGTH(mark(nil)), MARK(nil)) MARK(length(U31(z0, z1, z2, z3))) -> c58(ACTIVE(length(active(U31(mark(z0), z1, z2, z3)))), LENGTH(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(length(take(z0, z1))) -> c58(ACTIVE(length(active(take(mark(z0), mark(z1))))), LENGTH(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(length(and(z0, z1))) -> c58(ACTIVE(length(active(and(mark(z0), z1)))), LENGTH(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(length(isNat(z0))) -> c58(ACTIVE(length(active(isNat(z0)))), LENGTH(mark(isNat(z0))), MARK(isNat(z0))) MARK(length(isNatList(z0))) -> c58(ACTIVE(length(active(isNatList(z0)))), LENGTH(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(length(isNatIList(z0))) -> c58(ACTIVE(length(active(isNatIList(z0)))), LENGTH(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(U21(z0)) -> c59(ACTIVE(U21(z0)), U21'(mark(z0)), MARK(z0)) MARK(U21(zeros)) -> c59(ACTIVE(U21(active(zeros))), U21'(mark(zeros)), MARK(zeros)) MARK(U21(cons(z0, z1))) -> c59(ACTIVE(U21(active(cons(mark(z0), z1)))), U21'(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(U21(0)) -> c59(ACTIVE(U21(active(0))), U21'(mark(0)), MARK(0)) MARK(U21(U11(z0, z1))) -> c59(ACTIVE(U21(active(U11(mark(z0), z1)))), U21'(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(U21(tt)) -> c59(ACTIVE(U21(active(tt))), U21'(mark(tt)), MARK(tt)) MARK(U21(s(z0))) -> c59(ACTIVE(U21(active(s(mark(z0))))), U21'(mark(s(z0))), MARK(s(z0))) MARK(U21(length(z0))) -> c59(ACTIVE(U21(active(length(mark(z0))))), U21'(mark(length(z0))), MARK(length(z0))) MARK(U21(U21(z0))) -> c59(ACTIVE(U21(active(U21(mark(z0))))), U21'(mark(U21(z0))), MARK(U21(z0))) MARK(U21(nil)) -> c59(ACTIVE(U21(active(nil))), U21'(mark(nil)), MARK(nil)) MARK(U21(U31(z0, z1, z2, z3))) -> c59(ACTIVE(U21(active(U31(mark(z0), z1, z2, z3)))), U21'(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(U21(take(z0, z1))) -> c59(ACTIVE(U21(active(take(mark(z0), mark(z1))))), U21'(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(U21(and(z0, z1))) -> c59(ACTIVE(U21(active(and(mark(z0), z1)))), U21'(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(U21(isNat(z0))) -> c59(ACTIVE(U21(active(isNat(z0)))), U21'(mark(isNat(z0))), MARK(isNat(z0))) MARK(U21(isNatList(z0))) -> c59(ACTIVE(U21(active(isNatList(z0)))), U21'(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(U21(isNatIList(z0))) -> c59(ACTIVE(U21(active(isNatIList(z0)))), U21'(mark(isNatIList(z0))), MARK(isNatIList(z0))) K tuples:none Defined Rule Symbols: encArg_1, active_1, mark_1, cons_2, U11_2, s_1, length_1, U21_1, U31_4, take_2, and_2, isNat_1, isNatList_1, isNatIList_1 Defined Pair Symbols: ACTIVE_1, MARK_1, CONS_2, U11'_2, S_1, LENGTH_1, U21'_1, U31'_4, TAKE_2, AND_2, ISNAT_1, ISNATLIST_1, ISNATILIST_1, ENCODE_ACTIVE_1, ENCODE_MARK_1, ENCODE_CONS_2, ENCODE_U11_2, ENCODE_S_1, ENCODE_LENGTH_1, ENCODE_U21_1, ENCODE_U31_4, ENCODE_TAKE_2, ENCODE_AND_2, ENCODE_ISNAT_1, ENCODE_ISNATLIST_1, ENCODE_ISNATILIST_1, ENCARG_1 Compound Symbols: c36_1, c37_3, c38_1, c39_1, c40_2, c41_2, c42_2, c43_1, c45_1, c48_1, c52_1, c61_3, c62_4, c63_3, c64_2, c65_2, c66_2, c67_1, c68_1, c69_1, c70_1, c71_1, c72_1, c73_1, c74_1, c75_1, c76_1, c77_1, c78_1, c79_1, c80_1, c81_1, c82_1, c83_1, c84_1, c85_1, c86_1, c87_1, c88_1, c89_1, c90_1, c91_1, c92_1, c93_1, c94_1, c95_1, c96_1, c97_1, c98_1, c99_1, c100_1, c101_1, c102_1, c34_1, c35_2, c44_3, c46_3, c47_3, c49_3, c50_2, c51_4, c54, c56, c60, c_1, c4_2, c4_1, c5_2, c5_1, c6_3, c6_2, c7_3, c7_2, c8_2, c9_2, c10_2, c11_5, c11_4, c12_3, c12_2, c13_3, c13_2, c14_2, c15_2, c16_2, c53_3, c53_1, c53_2, c55_3, c55_1, c57_3, c57_2, c58_3, c59_3 ---------------------------------------- (107) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(mark(z0), z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) by MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(z0, z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U31(zeros, x1, x2, x3)) -> c61(ACTIVE(U31(active(zeros), x1, x2, x3)), U31'(mark(zeros), x1, x2, x3), MARK(zeros)) MARK(U31(cons(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(cons(mark(z0), z1)), x1, x2, x3)), U31'(mark(cons(z0, z1)), x1, x2, x3), MARK(cons(z0, z1))) MARK(U31(0, x1, x2, x3)) -> c61(ACTIVE(U31(active(0), x1, x2, x3)), U31'(mark(0), x1, x2, x3), MARK(0)) MARK(U31(U11(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(U11(mark(z0), z1)), x1, x2, x3)), U31'(mark(U11(z0, z1)), x1, x2, x3), MARK(U11(z0, z1))) MARK(U31(tt, x1, x2, x3)) -> c61(ACTIVE(U31(active(tt), x1, x2, x3)), U31'(mark(tt), x1, x2, x3), MARK(tt)) MARK(U31(s(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(s(mark(z0))), x1, x2, x3)), U31'(mark(s(z0)), x1, x2, x3), MARK(s(z0))) MARK(U31(length(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(length(mark(z0))), x1, x2, x3)), U31'(mark(length(z0)), x1, x2, x3), MARK(length(z0))) MARK(U31(U21(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(U21(mark(z0))), x1, x2, x3)), U31'(mark(U21(z0)), x1, x2, x3), MARK(U21(z0))) MARK(U31(nil, x1, x2, x3)) -> c61(ACTIVE(U31(active(nil), x1, x2, x3)), U31'(mark(nil), x1, x2, x3), MARK(nil)) MARK(U31(U31(z0, z1, z2, z3), x1, x2, x3)) -> c61(ACTIVE(U31(active(U31(mark(z0), z1, z2, z3)), x1, x2, x3)), U31'(mark(U31(z0, z1, z2, z3)), x1, x2, x3), MARK(U31(z0, z1, z2, z3))) MARK(U31(take(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(take(mark(z0), mark(z1))), x1, x2, x3)), U31'(mark(take(z0, z1)), x1, x2, x3), MARK(take(z0, z1))) MARK(U31(and(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(and(mark(z0), z1)), x1, x2, x3)), U31'(mark(and(z0, z1)), x1, x2, x3), MARK(and(z0, z1))) MARK(U31(isNat(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNat(z0)), x1, x2, x3)), U31'(mark(isNat(z0)), x1, x2, x3), MARK(isNat(z0))) MARK(U31(isNatList(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNatList(z0)), x1, x2, x3)), U31'(mark(isNatList(z0)), x1, x2, x3), MARK(isNatList(z0))) MARK(U31(isNatIList(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNatIList(z0)), x1, x2, x3)), U31'(mark(isNatIList(z0)), x1, x2, x3), MARK(isNatIList(z0))) MARK(U31(x0, x1, x2, x3)) -> c61(U31'(mark(x0), x1, x2, x3)) ---------------------------------------- (108) Obligation: Complexity Dependency Tuples Problem Rules: encArg(zeros) -> zeros encArg(0) -> 0 encArg(tt) -> tt encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_U11(z0, z1)) -> U11(encArg(z0), encArg(z1)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_length(z0)) -> length(encArg(z0)) encArg(cons_U21(z0)) -> U21(encArg(z0)) encArg(cons_U31(z0, z1, z2, z3)) -> U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_isNat(z0)) -> isNat(encArg(z0)) encArg(cons_isNatList(z0)) -> isNatList(encArg(z0)) encArg(cons_isNatIList(z0)) -> isNatIList(encArg(z0)) active(zeros) -> mark(cons(0, zeros)) active(U11(tt, z0)) -> mark(s(length(z0))) active(U21(tt)) -> mark(nil) active(U31(tt, z0, z1, z2)) -> mark(cons(z2, take(z1, z0))) active(and(tt, z0)) -> mark(z0) active(isNat(0)) -> mark(tt) active(isNat(length(z0))) -> mark(isNatList(z0)) active(isNat(s(z0))) -> mark(isNat(z0)) active(isNatIList(z0)) -> mark(isNatList(z0)) active(isNatIList(zeros)) -> mark(tt) active(isNatIList(cons(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(isNatList(nil)) -> mark(tt) active(isNatList(cons(z0, z1))) -> mark(and(isNat(z0), isNatList(z1))) active(isNatList(take(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(length(nil)) -> mark(0) active(length(cons(z0, z1))) -> mark(U11(and(isNatList(z1), isNat(z0)), z1)) active(take(0, z0)) -> mark(U21(isNatIList(z0))) active(take(s(z0), cons(z1, z2))) -> mark(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)) mark(zeros) -> active(zeros) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(0) -> active(0) mark(U11(z0, z1)) -> active(U11(mark(z0), z1)) mark(tt) -> active(tt) mark(s(z0)) -> active(s(mark(z0))) mark(length(z0)) -> active(length(mark(z0))) mark(U21(z0)) -> active(U21(mark(z0))) mark(nil) -> active(nil) mark(U31(z0, z1, z2, z3)) -> active(U31(mark(z0), z1, z2, z3)) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(isNat(z0)) -> active(isNat(z0)) mark(isNatList(z0)) -> active(isNatList(z0)) mark(isNatIList(z0)) -> active(isNatIList(z0)) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) U11(mark(z0), z1) -> U11(z0, z1) U11(z0, mark(z1)) -> U11(z0, z1) U11(active(z0), z1) -> U11(z0, z1) U11(z0, active(z1)) -> U11(z0, z1) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) length(mark(z0)) -> length(z0) length(active(z0)) -> length(z0) U21(mark(z0)) -> U21(z0) U21(active(z0)) -> U21(z0) U31(mark(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, mark(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, mark(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, mark(z3)) -> U31(z0, z1, z2, z3) U31(active(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, active(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, active(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, active(z3)) -> U31(z0, z1, z2, z3) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) isNat(mark(z0)) -> isNat(z0) isNat(active(z0)) -> isNat(z0) isNatList(mark(z0)) -> isNatList(z0) isNatList(active(z0)) -> isNatList(z0) isNatIList(mark(z0)) -> isNatIList(z0) isNatIList(active(z0)) -> isNatIList(z0) Tuples: ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(take(z0, z1)) -> c62(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 ENCODE_ACTIVE(z0) -> c(ACTIVE(encArg(z0))) ENCODE_MARK(z0) -> c(MARK(encArg(z0))) ENCODE_CONS(z0, z1) -> c(CONS(encArg(z0), encArg(z1))) ENCODE_U11(z0, z1) -> c(U11'(encArg(z0), encArg(z1))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_LENGTH(z0) -> c(LENGTH(encArg(z0))) ENCODE_U21(z0) -> c(U21'(encArg(z0))) ENCODE_U31(z0, z1, z2, z3) -> c(U31'(encArg(z0), encArg(z1), encArg(z2), encArg(z3))) ENCODE_TAKE(z0, z1) -> c(TAKE(encArg(z0), encArg(z1))) ENCODE_AND(z0, z1) -> c(AND(encArg(z0), encArg(z1))) ENCODE_ISNAT(z0) -> c(ISNAT(encArg(z0))) ENCODE_ISNATLIST(z0) -> c(ISNATLIST(encArg(z0))) ENCODE_ISNATILIST(z0) -> c(ISNATILIST(encArg(z0))) ENCARG(cons_active(cons_active(z0))) -> c4(ACTIVE(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_active(cons_mark(z0))) -> c4(ACTIVE(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_active(cons_cons(z0, z1))) -> c4(ACTIVE(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_active(cons_U11(z0, z1))) -> c4(ACTIVE(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_active(cons_s(z0))) -> c4(ACTIVE(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_active(cons_length(z0))) -> c4(ACTIVE(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_active(cons_U21(z0))) -> c4(ACTIVE(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_active(cons_U31(z0, z1, z2, z3))) -> c4(ACTIVE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_active(cons_take(z0, z1))) -> c4(ACTIVE(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_active(cons_and(z0, z1))) -> c4(ACTIVE(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_active(cons_isNat(z0))) -> c4(ACTIVE(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_active(cons_isNatList(z0))) -> c4(ACTIVE(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_active(cons_isNatIList(z0))) -> c4(ACTIVE(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_active(zeros)) -> c4(ACTIVE(zeros)) ENCARG(cons_mark(cons_active(z0))) -> c5(MARK(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_mark(cons_mark(z0))) -> c5(MARK(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_mark(cons_cons(z0, z1))) -> c5(MARK(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_mark(cons_U11(z0, z1))) -> c5(MARK(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_mark(cons_s(z0))) -> c5(MARK(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_mark(cons_length(z0))) -> c5(MARK(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_mark(cons_U21(z0))) -> c5(MARK(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_mark(cons_U31(z0, z1, z2, z3))) -> c5(MARK(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_mark(cons_take(z0, z1))) -> c5(MARK(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(cons_and(z0, z1))) -> c5(MARK(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_mark(cons_isNat(z0))) -> c5(MARK(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_mark(cons_isNatList(z0))) -> c5(MARK(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_mark(cons_isNatIList(z0))) -> c5(MARK(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_mark(zeros)) -> c5(MARK(zeros)) ENCARG(cons_mark(0)) -> c5(MARK(0)) ENCARG(cons_mark(tt)) -> c5(MARK(tt)) ENCARG(cons_mark(nil)) -> c5(MARK(nil)) ENCARG(cons_cons(x0, cons_active(z0))) -> c6(CONS(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_cons(x0, cons_mark(z0))) -> c6(CONS(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_cons(x0, cons_cons(z0, z1))) -> c6(CONS(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_cons(x0, cons_U11(z0, z1))) -> c6(CONS(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_cons(x0, cons_s(z0))) -> c6(CONS(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_cons(x0, cons_length(z0))) -> c6(CONS(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_cons(x0, cons_U21(z0))) -> c6(CONS(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_cons(x0, cons_U31(z0, z1, z2, z3))) -> c6(CONS(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_cons(x0, cons_take(z0, z1))) -> c6(CONS(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_cons(x0, cons_and(z0, z1))) -> c6(CONS(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_cons(x0, cons_isNat(z0))) -> c6(CONS(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_cons(x0, cons_isNatList(z0))) -> c6(CONS(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_cons(x0, cons_isNatIList(z0))) -> c6(CONS(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_cons(cons_active(z0), x1)) -> c6(CONS(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_mark(z0), x1)) -> c6(CONS(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_cons(z0, z1), x1)) -> c6(CONS(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_U11(z0, z1), x1)) -> c6(CONS(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_s(z0), x1)) -> c6(CONS(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_length(z0), x1)) -> c6(CONS(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U21(z0), x1)) -> c6(CONS(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U31(z0, z1, z2, z3), x1)) -> c6(CONS(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_cons(cons_take(z0, z1), x1)) -> c6(CONS(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_and(z0, z1), x1)) -> c6(CONS(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_isNat(z0), x1)) -> c6(CONS(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_isNatList(z0), x1)) -> c6(CONS(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_isNatIList(z0), x1)) -> c6(CONS(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_cons(x0, zeros)) -> c6(CONS(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_cons(x0, 0)) -> c6(CONS(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_cons(x0, tt)) -> c6(CONS(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_cons(x0, nil)) -> c6(CONS(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_cons(zeros, x1)) -> c6(CONS(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(0, x1)) -> c6(CONS(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(tt, x1)) -> c6(CONS(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(nil, x1)) -> c6(CONS(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(x0, cons_active(z0))) -> c7(U11'(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_U11(x0, cons_mark(z0))) -> c7(U11'(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_U11(x0, cons_cons(z0, z1))) -> c7(U11'(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U11(x0, cons_U11(z0, z1))) -> c7(U11'(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U11(x0, cons_s(z0))) -> c7(U11'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_U11(x0, cons_length(z0))) -> c7(U11'(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_U11(x0, cons_U21(z0))) -> c7(U11'(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_U11(x0, cons_U31(z0, z1, z2, z3))) -> c7(U11'(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U11(x0, cons_take(z0, z1))) -> c7(U11'(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_U11(x0, cons_and(z0, z1))) -> c7(U11'(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_U11(x0, cons_isNat(z0))) -> c7(U11'(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_U11(x0, cons_isNatList(z0))) -> c7(U11'(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_U11(x0, cons_isNatIList(z0))) -> c7(U11'(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U11(cons_active(z0), x1)) -> c7(U11'(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_mark(z0), x1)) -> c7(U11'(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_cons(z0, z1), x1)) -> c7(U11'(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_U11(z0, z1), x1)) -> c7(U11'(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_s(z0), x1)) -> c7(U11'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_length(z0), x1)) -> c7(U11'(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_U21(z0), x1)) -> c7(U11'(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_U31(z0, z1, z2, z3), x1)) -> c7(U11'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_U11(cons_take(z0, z1), x1)) -> c7(U11'(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_and(z0, z1), x1)) -> c7(U11'(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_isNat(z0), x1)) -> c7(U11'(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_isNatList(z0), x1)) -> c7(U11'(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_isNatIList(z0), x1)) -> c7(U11'(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_U11(x0, zeros)) -> c7(U11'(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_U11(x0, 0)) -> c7(U11'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_U11(x0, tt)) -> c7(U11'(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_U11(x0, nil)) -> c7(U11'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_U11(zeros, x1)) -> c7(U11'(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(0, x1)) -> c7(U11'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(tt, x1)) -> c7(U11'(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(nil, x1)) -> c7(U11'(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_s(cons_active(z0))) -> c8(S(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_s(cons_mark(z0))) -> c8(S(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_s(cons_cons(z0, z1))) -> c8(S(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_s(cons_U11(z0, z1))) -> c8(S(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_s(cons_s(z0))) -> c8(S(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_length(z0))) -> c8(S(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_s(cons_U21(z0))) -> c8(S(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_s(cons_U31(z0, z1, z2, z3))) -> c8(S(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_s(cons_take(z0, z1))) -> c8(S(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_s(cons_and(z0, z1))) -> c8(S(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_s(cons_isNat(z0))) -> c8(S(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_s(cons_isNatList(z0))) -> c8(S(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_s(cons_isNatIList(z0))) -> c8(S(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_length(cons_active(z0))) -> c9(LENGTH(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_length(cons_mark(z0))) -> c9(LENGTH(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_length(cons_cons(z0, z1))) -> c9(LENGTH(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_length(cons_U11(z0, z1))) -> c9(LENGTH(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_length(cons_s(z0))) -> c9(LENGTH(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_length(cons_length(z0))) -> c9(LENGTH(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_length(cons_U21(z0))) -> c9(LENGTH(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_length(cons_U31(z0, z1, z2, z3))) -> c9(LENGTH(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_length(cons_take(z0, z1))) -> c9(LENGTH(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_length(cons_and(z0, z1))) -> c9(LENGTH(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_length(cons_isNat(z0))) -> c9(LENGTH(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_length(cons_isNatList(z0))) -> c9(LENGTH(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_length(cons_isNatIList(z0))) -> c9(LENGTH(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U21(cons_active(z0))) -> c10(U21'(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_U21(cons_mark(z0))) -> c10(U21'(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_U21(cons_cons(z0, z1))) -> c10(U21'(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U21(cons_U11(z0, z1))) -> c10(U21'(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U21(cons_s(z0))) -> c10(U21'(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_U21(cons_length(z0))) -> c10(U21'(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_U21(cons_U21(z0))) -> c10(U21'(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_U21(cons_U31(z0, z1, z2, z3))) -> c10(U21'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U21(cons_take(z0, z1))) -> c10(U21'(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_U21(cons_and(z0, z1))) -> c10(U21'(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_U21(cons_isNat(z0))) -> c10(U21'(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_U21(cons_isNatList(z0))) -> c10(U21'(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_U21(cons_isNatIList(z0))) -> c10(U21'(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U31(x0, x1, x2, cons_active(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), active(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_active(z0))) ENCARG(cons_U31(x0, x1, x2, cons_mark(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), mark(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_mark(z0))) ENCARG(cons_U31(x0, x1, x2, cons_cons(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_U11(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_s(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), s(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_s(z0))) ENCARG(cons_U31(x0, x1, x2, cons_length(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), length(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_length(z0))) ENCARG(cons_U31(x0, x1, x2, cons_U21(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U21(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U21(z0))) ENCARG(cons_U31(x0, x1, x2, cons_U31(z0, z1, z2, z3))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U31(x0, x1, x2, cons_take(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_take(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_and(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_and(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_isNat(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNat(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNat(z0))) ENCARG(cons_U31(x0, x1, x2, cons_isNatList(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNatList(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNatList(z0))) ENCARG(cons_U31(x0, x1, x2, cons_isNatIList(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U31(x0, x1, cons_active(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), active(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_active(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_mark(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), mark(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_mark(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_cons(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), cons(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_cons(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U11(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), U11(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U11(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_s(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), s(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_s(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_length(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), length(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_length(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U21(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), U21(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U21(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U31(z0, z1, z2, z3), x3)) -> c11(U31'(encArg(x0), encArg(x1), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_take(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), take(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_take(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_and(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), and(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_and(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNat(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNat(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNat(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNatList(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNatList(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNatList(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNatIList(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNatIList(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNatIList(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, cons_active(z0), x2, x3)) -> c11(U31'(encArg(x0), active(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_active(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_mark(z0), x2, x3)) -> c11(U31'(encArg(x0), mark(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_mark(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_cons(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), cons(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_cons(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U11(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), U11(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U11(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_s(z0), x2, x3)) -> c11(U31'(encArg(x0), s(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_s(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_length(z0), x2, x3)) -> c11(U31'(encArg(x0), length(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_length(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U21(z0), x2, x3)) -> c11(U31'(encArg(x0), U21(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U21(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U31(z0, z1, z2, z3), x2, x3)) -> c11(U31'(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_take(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), take(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_take(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_and(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), and(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_and(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNat(z0), x2, x3)) -> c11(U31'(encArg(x0), isNat(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNat(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNatList(z0), x2, x3)) -> c11(U31'(encArg(x0), isNatList(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNatList(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNatIList(z0), x2, x3)) -> c11(U31'(encArg(x0), isNatIList(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNatIList(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_active(z0), x1, x2, x3)) -> c11(U31'(active(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_active(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_mark(z0), x1, x2, x3)) -> c11(U31'(mark(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_mark(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_cons(z0, z1), x1, x2, x3)) -> c11(U31'(cons(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_cons(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U11(z0, z1), x1, x2, x3)) -> c11(U31'(U11(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U11(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_s(z0), x1, x2, x3)) -> c11(U31'(s(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_s(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_length(z0), x1, x2, x3)) -> c11(U31'(length(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_length(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U21(z0), x1, x2, x3)) -> c11(U31'(U21(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U21(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U31(z0, z1, z2, z3), x1, x2, x3)) -> c11(U31'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_take(z0, z1), x1, x2, x3)) -> c11(U31'(take(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_take(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_and(z0, z1), x1, x2, x3)) -> c11(U31'(and(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_and(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNat(z0), x1, x2, x3)) -> c11(U31'(isNat(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNat(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNatList(z0), x1, x2, x3)) -> c11(U31'(isNatList(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNatList(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNatIList(z0), x1, x2, x3)) -> c11(U31'(isNatIList(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNatIList(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, x1, x2, zeros)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), zeros), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, 0)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), 0), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, tt)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), tt), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, nil)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), nil), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, zeros, x3)) -> c11(U31'(encArg(x0), encArg(x1), zeros, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, 0, x3)) -> c11(U31'(encArg(x0), encArg(x1), 0, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, tt, x3)) -> c11(U31'(encArg(x0), encArg(x1), tt, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, nil, x3)) -> c11(U31'(encArg(x0), encArg(x1), nil, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, zeros, x2, x3)) -> c11(U31'(encArg(x0), zeros, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, 0, x2, x3)) -> c11(U31'(encArg(x0), 0, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, tt, x2, x3)) -> c11(U31'(encArg(x0), tt, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, nil, x2, x3)) -> c11(U31'(encArg(x0), nil, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(zeros, x1, x2, x3)) -> c11(U31'(zeros, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(0, x1, x2, x3)) -> c11(U31'(0, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(tt, x1, x2, x3)) -> c11(U31'(tt, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(nil, x1, x2, x3)) -> c11(U31'(nil, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_take(x0, cons_active(z0))) -> c12(TAKE(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_take(x0, cons_mark(z0))) -> c12(TAKE(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_take(x0, cons_cons(z0, z1))) -> c12(TAKE(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_take(x0, cons_U11(z0, z1))) -> c12(TAKE(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_take(x0, cons_s(z0))) -> c12(TAKE(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_take(x0, cons_length(z0))) -> c12(TAKE(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_take(x0, cons_U21(z0))) -> c12(TAKE(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_take(x0, cons_U31(z0, z1, z2, z3))) -> c12(TAKE(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_take(x0, cons_take(z0, z1))) -> c12(TAKE(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_take(x0, cons_and(z0, z1))) -> c12(TAKE(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_take(x0, cons_isNat(z0))) -> c12(TAKE(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_take(x0, cons_isNatList(z0))) -> c12(TAKE(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_take(x0, cons_isNatIList(z0))) -> c12(TAKE(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_take(cons_active(z0), x1)) -> c12(TAKE(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_take(cons_mark(z0), x1)) -> c12(TAKE(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_take(cons_cons(z0, z1), x1)) -> c12(TAKE(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_U11(z0, z1), x1)) -> c12(TAKE(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_s(z0), x1)) -> c12(TAKE(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_take(cons_length(z0), x1)) -> c12(TAKE(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_take(cons_U21(z0), x1)) -> c12(TAKE(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_take(cons_U31(z0, z1, z2, z3), x1)) -> c12(TAKE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_take(cons_take(z0, z1), x1)) -> c12(TAKE(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_and(z0, z1), x1)) -> c12(TAKE(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_isNat(z0), x1)) -> c12(TAKE(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_take(cons_isNatList(z0), x1)) -> c12(TAKE(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_take(cons_isNatIList(z0), x1)) -> c12(TAKE(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_take(x0, zeros)) -> c12(TAKE(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_take(x0, 0)) -> c12(TAKE(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_take(x0, tt)) -> c12(TAKE(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_take(x0, nil)) -> c12(TAKE(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_take(zeros, x1)) -> c12(TAKE(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(0, x1)) -> c12(TAKE(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(tt, x1)) -> c12(TAKE(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(nil, x1)) -> c12(TAKE(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(x0, cons_active(z0))) -> c13(AND(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_and(x0, cons_mark(z0))) -> c13(AND(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_and(x0, cons_cons(z0, z1))) -> c13(AND(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_and(x0, cons_U11(z0, z1))) -> c13(AND(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_and(x0, cons_s(z0))) -> c13(AND(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_and(x0, cons_length(z0))) -> c13(AND(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_and(x0, cons_U21(z0))) -> c13(AND(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_and(x0, cons_U31(z0, z1, z2, z3))) -> c13(AND(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_and(x0, cons_take(z0, z1))) -> c13(AND(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_and(x0, cons_and(z0, z1))) -> c13(AND(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_and(x0, cons_isNat(z0))) -> c13(AND(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_and(x0, cons_isNatList(z0))) -> c13(AND(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_and(x0, cons_isNatIList(z0))) -> c13(AND(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_and(cons_active(z0), x1)) -> c13(AND(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_and(cons_mark(z0), x1)) -> c13(AND(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_and(cons_cons(z0, z1), x1)) -> c13(AND(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_U11(z0, z1), x1)) -> c13(AND(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_s(z0), x1)) -> c13(AND(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_and(cons_length(z0), x1)) -> c13(AND(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_and(cons_U21(z0), x1)) -> c13(AND(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_and(cons_U31(z0, z1, z2, z3), x1)) -> c13(AND(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_and(cons_take(z0, z1), x1)) -> c13(AND(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_and(z0, z1), x1)) -> c13(AND(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_isNat(z0), x1)) -> c13(AND(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_and(cons_isNatList(z0), x1)) -> c13(AND(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_and(cons_isNatIList(z0), x1)) -> c13(AND(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_and(x0, zeros)) -> c13(AND(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_and(x0, 0)) -> c13(AND(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_and(x0, tt)) -> c13(AND(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_and(x0, nil)) -> c13(AND(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_and(zeros, x1)) -> c13(AND(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(0, x1)) -> c13(AND(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(tt, x1)) -> c13(AND(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(nil, x1)) -> c13(AND(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_isNat(cons_active(z0))) -> c14(ISNAT(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_isNat(cons_mark(z0))) -> c14(ISNAT(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_isNat(cons_cons(z0, z1))) -> c14(ISNAT(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_isNat(cons_U11(z0, z1))) -> c14(ISNAT(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_isNat(cons_s(z0))) -> c14(ISNAT(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_isNat(cons_length(z0))) -> c14(ISNAT(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_isNat(cons_U21(z0))) -> c14(ISNAT(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_isNat(cons_U31(z0, z1, z2, z3))) -> c14(ISNAT(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_isNat(cons_take(z0, z1))) -> c14(ISNAT(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_isNat(cons_and(z0, z1))) -> c14(ISNAT(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_isNat(cons_isNat(z0))) -> c14(ISNAT(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_isNat(cons_isNatList(z0))) -> c14(ISNAT(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_isNat(cons_isNatIList(z0))) -> c14(ISNAT(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_isNatList(cons_active(z0))) -> c15(ISNATLIST(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_isNatList(cons_mark(z0))) -> c15(ISNATLIST(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_isNatList(cons_cons(z0, z1))) -> c15(ISNATLIST(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_isNatList(cons_U11(z0, z1))) -> c15(ISNATLIST(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_isNatList(cons_s(z0))) -> c15(ISNATLIST(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_isNatList(cons_length(z0))) -> c15(ISNATLIST(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_isNatList(cons_U21(z0))) -> c15(ISNATLIST(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_isNatList(cons_U31(z0, z1, z2, z3))) -> c15(ISNATLIST(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_isNatList(cons_take(z0, z1))) -> c15(ISNATLIST(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_isNatList(cons_and(z0, z1))) -> c15(ISNATLIST(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_isNatList(cons_isNat(z0))) -> c15(ISNATLIST(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_isNatList(cons_isNatList(z0))) -> c15(ISNATLIST(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_isNatList(cons_isNatIList(z0))) -> c15(ISNATLIST(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_isNatIList(cons_active(z0))) -> c16(ISNATILIST(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_isNatIList(cons_mark(z0))) -> c16(ISNATILIST(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_isNatIList(cons_cons(z0, z1))) -> c16(ISNATILIST(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_isNatIList(cons_U11(z0, z1))) -> c16(ISNATILIST(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_isNatIList(cons_s(z0))) -> c16(ISNATILIST(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_isNatIList(cons_length(z0))) -> c16(ISNATILIST(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_isNatIList(cons_U21(z0))) -> c16(ISNATILIST(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_isNatIList(cons_U31(z0, z1, z2, z3))) -> c16(ISNATILIST(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_isNatIList(cons_take(z0, z1))) -> c16(ISNATILIST(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_isNatIList(cons_and(z0, z1))) -> c16(ISNATILIST(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_isNatIList(cons_isNat(z0))) -> c16(ISNATILIST(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_isNatIList(cons_isNatList(z0))) -> c16(ISNATILIST(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_isNatIList(cons_isNatIList(z0))) -> c16(ISNATILIST(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) MARK(cons(zeros, x1)) -> c53(ACTIVE(cons(active(zeros), x1)), CONS(mark(zeros), x1), MARK(zeros)) MARK(cons(cons(z0, z1), x1)) -> c53(ACTIVE(cons(active(cons(mark(z0), z1)), x1)), CONS(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(cons(0, x1)) -> c53(ACTIVE(cons(active(0), x1)), CONS(mark(0), x1), MARK(0)) MARK(cons(U11(z0, z1), x1)) -> c53(ACTIVE(cons(active(U11(mark(z0), z1)), x1)), CONS(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(cons(tt, x1)) -> c53(ACTIVE(cons(active(tt), x1)), CONS(mark(tt), x1), MARK(tt)) MARK(cons(s(z0), x1)) -> c53(ACTIVE(cons(active(s(mark(z0))), x1)), CONS(mark(s(z0)), x1), MARK(s(z0))) MARK(cons(length(z0), x1)) -> c53(ACTIVE(cons(active(length(mark(z0))), x1)), CONS(mark(length(z0)), x1), MARK(length(z0))) MARK(cons(U21(z0), x1)) -> c53(ACTIVE(cons(active(U21(mark(z0))), x1)), CONS(mark(U21(z0)), x1), MARK(U21(z0))) MARK(cons(nil, x1)) -> c53(ACTIVE(cons(active(nil), x1)), CONS(mark(nil), x1), MARK(nil)) MARK(cons(U31(z0, z1, z2, z3), x1)) -> c53(ACTIVE(cons(active(U31(mark(z0), z1, z2, z3)), x1)), CONS(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(cons(take(z0, z1), x1)) -> c53(ACTIVE(cons(active(take(mark(z0), mark(z1))), x1)), CONS(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(cons(and(z0, z1), x1)) -> c53(ACTIVE(cons(active(and(mark(z0), z1)), x1)), CONS(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(cons(isNat(z0), x1)) -> c53(ACTIVE(cons(active(isNat(z0)), x1)), CONS(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(cons(isNatList(z0), x1)) -> c53(ACTIVE(cons(active(isNatList(z0)), x1)), CONS(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(cons(isNatIList(z0), x1)) -> c53(ACTIVE(cons(active(isNatIList(z0)), x1)), CONS(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(cons(x0, x1)) -> c53(CONS(mark(x0), x1)) MARK(cons(z0, z1)) -> c53(CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(z0, z1)), U11'(mark(z0), z1), MARK(z0)) MARK(U11(zeros, x1)) -> c55(ACTIVE(U11(active(zeros), x1)), U11'(mark(zeros), x1), MARK(zeros)) MARK(U11(cons(z0, z1), x1)) -> c55(ACTIVE(U11(active(cons(mark(z0), z1)), x1)), U11'(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(U11(0, x1)) -> c55(ACTIVE(U11(active(0), x1)), U11'(mark(0), x1), MARK(0)) MARK(U11(U11(z0, z1), x1)) -> c55(ACTIVE(U11(active(U11(mark(z0), z1)), x1)), U11'(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(U11(tt, x1)) -> c55(ACTIVE(U11(active(tt), x1)), U11'(mark(tt), x1), MARK(tt)) MARK(U11(s(z0), x1)) -> c55(ACTIVE(U11(active(s(mark(z0))), x1)), U11'(mark(s(z0)), x1), MARK(s(z0))) MARK(U11(length(z0), x1)) -> c55(ACTIVE(U11(active(length(mark(z0))), x1)), U11'(mark(length(z0)), x1), MARK(length(z0))) MARK(U11(U21(z0), x1)) -> c55(ACTIVE(U11(active(U21(mark(z0))), x1)), U11'(mark(U21(z0)), x1), MARK(U21(z0))) MARK(U11(nil, x1)) -> c55(ACTIVE(U11(active(nil), x1)), U11'(mark(nil), x1), MARK(nil)) MARK(U11(U31(z0, z1, z2, z3), x1)) -> c55(ACTIVE(U11(active(U31(mark(z0), z1, z2, z3)), x1)), U11'(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(U11(take(z0, z1), x1)) -> c55(ACTIVE(U11(active(take(mark(z0), mark(z1))), x1)), U11'(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(U11(and(z0, z1), x1)) -> c55(ACTIVE(U11(active(and(mark(z0), z1)), x1)), U11'(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(U11(isNat(z0), x1)) -> c55(ACTIVE(U11(active(isNat(z0)), x1)), U11'(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(U11(isNatList(z0), x1)) -> c55(ACTIVE(U11(active(isNatList(z0)), x1)), U11'(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(U11(isNatIList(z0), x1)) -> c55(ACTIVE(U11(active(isNatIList(z0)), x1)), U11'(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(U11(x0, x1)) -> c55(U11'(mark(x0), x1)) MARK(s(zeros)) -> c57(ACTIVE(s(active(zeros))), S(mark(zeros)), MARK(zeros)) MARK(s(cons(z0, z1))) -> c57(ACTIVE(s(active(cons(mark(z0), z1)))), S(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(s(0)) -> c57(ACTIVE(s(active(0))), S(mark(0)), MARK(0)) MARK(s(U11(z0, z1))) -> c57(ACTIVE(s(active(U11(mark(z0), z1)))), S(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(s(tt)) -> c57(ACTIVE(s(active(tt))), S(mark(tt)), MARK(tt)) MARK(s(s(z0))) -> c57(ACTIVE(s(active(s(mark(z0))))), S(mark(s(z0))), MARK(s(z0))) MARK(s(length(z0))) -> c57(ACTIVE(s(active(length(mark(z0))))), S(mark(length(z0))), MARK(length(z0))) MARK(s(U21(z0))) -> c57(ACTIVE(s(active(U21(mark(z0))))), S(mark(U21(z0))), MARK(U21(z0))) MARK(s(nil)) -> c57(ACTIVE(s(active(nil))), S(mark(nil)), MARK(nil)) MARK(s(U31(z0, z1, z2, z3))) -> c57(ACTIVE(s(active(U31(mark(z0), z1, z2, z3)))), S(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(s(take(z0, z1))) -> c57(ACTIVE(s(active(take(mark(z0), mark(z1))))), S(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(s(and(z0, z1))) -> c57(ACTIVE(s(active(and(mark(z0), z1)))), S(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(s(isNat(z0))) -> c57(ACTIVE(s(active(isNat(z0)))), S(mark(isNat(z0))), MARK(isNat(z0))) MARK(s(isNatList(z0))) -> c57(ACTIVE(s(active(isNatList(z0)))), S(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(s(isNatIList(z0))) -> c57(ACTIVE(s(active(isNatIList(z0)))), S(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(s(z0)) -> c57(S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(z0)), LENGTH(mark(z0)), MARK(z0)) MARK(length(zeros)) -> c58(ACTIVE(length(active(zeros))), LENGTH(mark(zeros)), MARK(zeros)) MARK(length(cons(z0, z1))) -> c58(ACTIVE(length(active(cons(mark(z0), z1)))), LENGTH(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(length(0)) -> c58(ACTIVE(length(active(0))), LENGTH(mark(0)), MARK(0)) MARK(length(U11(z0, z1))) -> c58(ACTIVE(length(active(U11(mark(z0), z1)))), LENGTH(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(length(tt)) -> c58(ACTIVE(length(active(tt))), LENGTH(mark(tt)), MARK(tt)) MARK(length(s(z0))) -> c58(ACTIVE(length(active(s(mark(z0))))), LENGTH(mark(s(z0))), MARK(s(z0))) MARK(length(length(z0))) -> c58(ACTIVE(length(active(length(mark(z0))))), LENGTH(mark(length(z0))), MARK(length(z0))) MARK(length(U21(z0))) -> c58(ACTIVE(length(active(U21(mark(z0))))), LENGTH(mark(U21(z0))), MARK(U21(z0))) MARK(length(nil)) -> c58(ACTIVE(length(active(nil))), LENGTH(mark(nil)), MARK(nil)) MARK(length(U31(z0, z1, z2, z3))) -> c58(ACTIVE(length(active(U31(mark(z0), z1, z2, z3)))), LENGTH(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(length(take(z0, z1))) -> c58(ACTIVE(length(active(take(mark(z0), mark(z1))))), LENGTH(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(length(and(z0, z1))) -> c58(ACTIVE(length(active(and(mark(z0), z1)))), LENGTH(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(length(isNat(z0))) -> c58(ACTIVE(length(active(isNat(z0)))), LENGTH(mark(isNat(z0))), MARK(isNat(z0))) MARK(length(isNatList(z0))) -> c58(ACTIVE(length(active(isNatList(z0)))), LENGTH(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(length(isNatIList(z0))) -> c58(ACTIVE(length(active(isNatIList(z0)))), LENGTH(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(U21(z0)) -> c59(ACTIVE(U21(z0)), U21'(mark(z0)), MARK(z0)) MARK(U21(zeros)) -> c59(ACTIVE(U21(active(zeros))), U21'(mark(zeros)), MARK(zeros)) MARK(U21(cons(z0, z1))) -> c59(ACTIVE(U21(active(cons(mark(z0), z1)))), U21'(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(U21(0)) -> c59(ACTIVE(U21(active(0))), U21'(mark(0)), MARK(0)) MARK(U21(U11(z0, z1))) -> c59(ACTIVE(U21(active(U11(mark(z0), z1)))), U21'(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(U21(tt)) -> c59(ACTIVE(U21(active(tt))), U21'(mark(tt)), MARK(tt)) MARK(U21(s(z0))) -> c59(ACTIVE(U21(active(s(mark(z0))))), U21'(mark(s(z0))), MARK(s(z0))) MARK(U21(length(z0))) -> c59(ACTIVE(U21(active(length(mark(z0))))), U21'(mark(length(z0))), MARK(length(z0))) MARK(U21(U21(z0))) -> c59(ACTIVE(U21(active(U21(mark(z0))))), U21'(mark(U21(z0))), MARK(U21(z0))) MARK(U21(nil)) -> c59(ACTIVE(U21(active(nil))), U21'(mark(nil)), MARK(nil)) MARK(U21(U31(z0, z1, z2, z3))) -> c59(ACTIVE(U21(active(U31(mark(z0), z1, z2, z3)))), U21'(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(U21(take(z0, z1))) -> c59(ACTIVE(U21(active(take(mark(z0), mark(z1))))), U21'(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(U21(and(z0, z1))) -> c59(ACTIVE(U21(active(and(mark(z0), z1)))), U21'(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(U21(isNat(z0))) -> c59(ACTIVE(U21(active(isNat(z0)))), U21'(mark(isNat(z0))), MARK(isNat(z0))) MARK(U21(isNatList(z0))) -> c59(ACTIVE(U21(active(isNatList(z0)))), U21'(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(U21(isNatIList(z0))) -> c59(ACTIVE(U21(active(isNatIList(z0)))), U21'(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(z0, z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U31(zeros, x1, x2, x3)) -> c61(ACTIVE(U31(active(zeros), x1, x2, x3)), U31'(mark(zeros), x1, x2, x3), MARK(zeros)) MARK(U31(cons(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(cons(mark(z0), z1)), x1, x2, x3)), U31'(mark(cons(z0, z1)), x1, x2, x3), MARK(cons(z0, z1))) MARK(U31(0, x1, x2, x3)) -> c61(ACTIVE(U31(active(0), x1, x2, x3)), U31'(mark(0), x1, x2, x3), MARK(0)) MARK(U31(U11(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(U11(mark(z0), z1)), x1, x2, x3)), U31'(mark(U11(z0, z1)), x1, x2, x3), MARK(U11(z0, z1))) MARK(U31(tt, x1, x2, x3)) -> c61(ACTIVE(U31(active(tt), x1, x2, x3)), U31'(mark(tt), x1, x2, x3), MARK(tt)) MARK(U31(s(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(s(mark(z0))), x1, x2, x3)), U31'(mark(s(z0)), x1, x2, x3), MARK(s(z0))) MARK(U31(length(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(length(mark(z0))), x1, x2, x3)), U31'(mark(length(z0)), x1, x2, x3), MARK(length(z0))) MARK(U31(U21(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(U21(mark(z0))), x1, x2, x3)), U31'(mark(U21(z0)), x1, x2, x3), MARK(U21(z0))) MARK(U31(nil, x1, x2, x3)) -> c61(ACTIVE(U31(active(nil), x1, x2, x3)), U31'(mark(nil), x1, x2, x3), MARK(nil)) MARK(U31(U31(z0, z1, z2, z3), x1, x2, x3)) -> c61(ACTIVE(U31(active(U31(mark(z0), z1, z2, z3)), x1, x2, x3)), U31'(mark(U31(z0, z1, z2, z3)), x1, x2, x3), MARK(U31(z0, z1, z2, z3))) MARK(U31(take(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(take(mark(z0), mark(z1))), x1, x2, x3)), U31'(mark(take(z0, z1)), x1, x2, x3), MARK(take(z0, z1))) MARK(U31(and(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(and(mark(z0), z1)), x1, x2, x3)), U31'(mark(and(z0, z1)), x1, x2, x3), MARK(and(z0, z1))) MARK(U31(isNat(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNat(z0)), x1, x2, x3)), U31'(mark(isNat(z0)), x1, x2, x3), MARK(isNat(z0))) MARK(U31(isNatList(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNatList(z0)), x1, x2, x3)), U31'(mark(isNatList(z0)), x1, x2, x3), MARK(isNatList(z0))) MARK(U31(isNatIList(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNatIList(z0)), x1, x2, x3)), U31'(mark(isNatIList(z0)), x1, x2, x3), MARK(isNatIList(z0))) MARK(U31(x0, x1, x2, x3)) -> c61(U31'(mark(x0), x1, x2, x3)) S tuples: ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(take(z0, z1)) -> c62(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 MARK(cons(zeros, x1)) -> c53(ACTIVE(cons(active(zeros), x1)), CONS(mark(zeros), x1), MARK(zeros)) MARK(cons(cons(z0, z1), x1)) -> c53(ACTIVE(cons(active(cons(mark(z0), z1)), x1)), CONS(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(cons(0, x1)) -> c53(ACTIVE(cons(active(0), x1)), CONS(mark(0), x1), MARK(0)) MARK(cons(U11(z0, z1), x1)) -> c53(ACTIVE(cons(active(U11(mark(z0), z1)), x1)), CONS(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(cons(tt, x1)) -> c53(ACTIVE(cons(active(tt), x1)), CONS(mark(tt), x1), MARK(tt)) MARK(cons(s(z0), x1)) -> c53(ACTIVE(cons(active(s(mark(z0))), x1)), CONS(mark(s(z0)), x1), MARK(s(z0))) MARK(cons(length(z0), x1)) -> c53(ACTIVE(cons(active(length(mark(z0))), x1)), CONS(mark(length(z0)), x1), MARK(length(z0))) MARK(cons(U21(z0), x1)) -> c53(ACTIVE(cons(active(U21(mark(z0))), x1)), CONS(mark(U21(z0)), x1), MARK(U21(z0))) MARK(cons(nil, x1)) -> c53(ACTIVE(cons(active(nil), x1)), CONS(mark(nil), x1), MARK(nil)) MARK(cons(U31(z0, z1, z2, z3), x1)) -> c53(ACTIVE(cons(active(U31(mark(z0), z1, z2, z3)), x1)), CONS(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(cons(take(z0, z1), x1)) -> c53(ACTIVE(cons(active(take(mark(z0), mark(z1))), x1)), CONS(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(cons(and(z0, z1), x1)) -> c53(ACTIVE(cons(active(and(mark(z0), z1)), x1)), CONS(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(cons(isNat(z0), x1)) -> c53(ACTIVE(cons(active(isNat(z0)), x1)), CONS(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(cons(isNatList(z0), x1)) -> c53(ACTIVE(cons(active(isNatList(z0)), x1)), CONS(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(cons(isNatIList(z0), x1)) -> c53(ACTIVE(cons(active(isNatIList(z0)), x1)), CONS(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(cons(x0, x1)) -> c53(CONS(mark(x0), x1)) MARK(cons(z0, z1)) -> c53(CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(z0, z1)), U11'(mark(z0), z1), MARK(z0)) MARK(U11(zeros, x1)) -> c55(ACTIVE(U11(active(zeros), x1)), U11'(mark(zeros), x1), MARK(zeros)) MARK(U11(cons(z0, z1), x1)) -> c55(ACTIVE(U11(active(cons(mark(z0), z1)), x1)), U11'(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(U11(0, x1)) -> c55(ACTIVE(U11(active(0), x1)), U11'(mark(0), x1), MARK(0)) MARK(U11(U11(z0, z1), x1)) -> c55(ACTIVE(U11(active(U11(mark(z0), z1)), x1)), U11'(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(U11(tt, x1)) -> c55(ACTIVE(U11(active(tt), x1)), U11'(mark(tt), x1), MARK(tt)) MARK(U11(s(z0), x1)) -> c55(ACTIVE(U11(active(s(mark(z0))), x1)), U11'(mark(s(z0)), x1), MARK(s(z0))) MARK(U11(length(z0), x1)) -> c55(ACTIVE(U11(active(length(mark(z0))), x1)), U11'(mark(length(z0)), x1), MARK(length(z0))) MARK(U11(U21(z0), x1)) -> c55(ACTIVE(U11(active(U21(mark(z0))), x1)), U11'(mark(U21(z0)), x1), MARK(U21(z0))) MARK(U11(nil, x1)) -> c55(ACTIVE(U11(active(nil), x1)), U11'(mark(nil), x1), MARK(nil)) MARK(U11(U31(z0, z1, z2, z3), x1)) -> c55(ACTIVE(U11(active(U31(mark(z0), z1, z2, z3)), x1)), U11'(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(U11(take(z0, z1), x1)) -> c55(ACTIVE(U11(active(take(mark(z0), mark(z1))), x1)), U11'(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(U11(and(z0, z1), x1)) -> c55(ACTIVE(U11(active(and(mark(z0), z1)), x1)), U11'(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(U11(isNat(z0), x1)) -> c55(ACTIVE(U11(active(isNat(z0)), x1)), U11'(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(U11(isNatList(z0), x1)) -> c55(ACTIVE(U11(active(isNatList(z0)), x1)), U11'(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(U11(isNatIList(z0), x1)) -> c55(ACTIVE(U11(active(isNatIList(z0)), x1)), U11'(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(U11(x0, x1)) -> c55(U11'(mark(x0), x1)) MARK(s(zeros)) -> c57(ACTIVE(s(active(zeros))), S(mark(zeros)), MARK(zeros)) MARK(s(cons(z0, z1))) -> c57(ACTIVE(s(active(cons(mark(z0), z1)))), S(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(s(0)) -> c57(ACTIVE(s(active(0))), S(mark(0)), MARK(0)) MARK(s(U11(z0, z1))) -> c57(ACTIVE(s(active(U11(mark(z0), z1)))), S(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(s(tt)) -> c57(ACTIVE(s(active(tt))), S(mark(tt)), MARK(tt)) MARK(s(s(z0))) -> c57(ACTIVE(s(active(s(mark(z0))))), S(mark(s(z0))), MARK(s(z0))) MARK(s(length(z0))) -> c57(ACTIVE(s(active(length(mark(z0))))), S(mark(length(z0))), MARK(length(z0))) MARK(s(U21(z0))) -> c57(ACTIVE(s(active(U21(mark(z0))))), S(mark(U21(z0))), MARK(U21(z0))) MARK(s(nil)) -> c57(ACTIVE(s(active(nil))), S(mark(nil)), MARK(nil)) MARK(s(U31(z0, z1, z2, z3))) -> c57(ACTIVE(s(active(U31(mark(z0), z1, z2, z3)))), S(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(s(take(z0, z1))) -> c57(ACTIVE(s(active(take(mark(z0), mark(z1))))), S(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(s(and(z0, z1))) -> c57(ACTIVE(s(active(and(mark(z0), z1)))), S(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(s(isNat(z0))) -> c57(ACTIVE(s(active(isNat(z0)))), S(mark(isNat(z0))), MARK(isNat(z0))) MARK(s(isNatList(z0))) -> c57(ACTIVE(s(active(isNatList(z0)))), S(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(s(isNatIList(z0))) -> c57(ACTIVE(s(active(isNatIList(z0)))), S(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(s(z0)) -> c57(S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(z0)), LENGTH(mark(z0)), MARK(z0)) MARK(length(zeros)) -> c58(ACTIVE(length(active(zeros))), LENGTH(mark(zeros)), MARK(zeros)) MARK(length(cons(z0, z1))) -> c58(ACTIVE(length(active(cons(mark(z0), z1)))), LENGTH(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(length(0)) -> c58(ACTIVE(length(active(0))), LENGTH(mark(0)), MARK(0)) MARK(length(U11(z0, z1))) -> c58(ACTIVE(length(active(U11(mark(z0), z1)))), LENGTH(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(length(tt)) -> c58(ACTIVE(length(active(tt))), LENGTH(mark(tt)), MARK(tt)) MARK(length(s(z0))) -> c58(ACTIVE(length(active(s(mark(z0))))), LENGTH(mark(s(z0))), MARK(s(z0))) MARK(length(length(z0))) -> c58(ACTIVE(length(active(length(mark(z0))))), LENGTH(mark(length(z0))), MARK(length(z0))) MARK(length(U21(z0))) -> c58(ACTIVE(length(active(U21(mark(z0))))), LENGTH(mark(U21(z0))), MARK(U21(z0))) MARK(length(nil)) -> c58(ACTIVE(length(active(nil))), LENGTH(mark(nil)), MARK(nil)) MARK(length(U31(z0, z1, z2, z3))) -> c58(ACTIVE(length(active(U31(mark(z0), z1, z2, z3)))), LENGTH(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(length(take(z0, z1))) -> c58(ACTIVE(length(active(take(mark(z0), mark(z1))))), LENGTH(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(length(and(z0, z1))) -> c58(ACTIVE(length(active(and(mark(z0), z1)))), LENGTH(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(length(isNat(z0))) -> c58(ACTIVE(length(active(isNat(z0)))), LENGTH(mark(isNat(z0))), MARK(isNat(z0))) MARK(length(isNatList(z0))) -> c58(ACTIVE(length(active(isNatList(z0)))), LENGTH(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(length(isNatIList(z0))) -> c58(ACTIVE(length(active(isNatIList(z0)))), LENGTH(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(U21(z0)) -> c59(ACTIVE(U21(z0)), U21'(mark(z0)), MARK(z0)) MARK(U21(zeros)) -> c59(ACTIVE(U21(active(zeros))), U21'(mark(zeros)), MARK(zeros)) MARK(U21(cons(z0, z1))) -> c59(ACTIVE(U21(active(cons(mark(z0), z1)))), U21'(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(U21(0)) -> c59(ACTIVE(U21(active(0))), U21'(mark(0)), MARK(0)) MARK(U21(U11(z0, z1))) -> c59(ACTIVE(U21(active(U11(mark(z0), z1)))), U21'(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(U21(tt)) -> c59(ACTIVE(U21(active(tt))), U21'(mark(tt)), MARK(tt)) MARK(U21(s(z0))) -> c59(ACTIVE(U21(active(s(mark(z0))))), U21'(mark(s(z0))), MARK(s(z0))) MARK(U21(length(z0))) -> c59(ACTIVE(U21(active(length(mark(z0))))), U21'(mark(length(z0))), MARK(length(z0))) MARK(U21(U21(z0))) -> c59(ACTIVE(U21(active(U21(mark(z0))))), U21'(mark(U21(z0))), MARK(U21(z0))) MARK(U21(nil)) -> c59(ACTIVE(U21(active(nil))), U21'(mark(nil)), MARK(nil)) MARK(U21(U31(z0, z1, z2, z3))) -> c59(ACTIVE(U21(active(U31(mark(z0), z1, z2, z3)))), U21'(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(U21(take(z0, z1))) -> c59(ACTIVE(U21(active(take(mark(z0), mark(z1))))), U21'(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(U21(and(z0, z1))) -> c59(ACTIVE(U21(active(and(mark(z0), z1)))), U21'(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(U21(isNat(z0))) -> c59(ACTIVE(U21(active(isNat(z0)))), U21'(mark(isNat(z0))), MARK(isNat(z0))) MARK(U21(isNatList(z0))) -> c59(ACTIVE(U21(active(isNatList(z0)))), U21'(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(U21(isNatIList(z0))) -> c59(ACTIVE(U21(active(isNatIList(z0)))), U21'(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(z0, z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U31(zeros, x1, x2, x3)) -> c61(ACTIVE(U31(active(zeros), x1, x2, x3)), U31'(mark(zeros), x1, x2, x3), MARK(zeros)) MARK(U31(cons(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(cons(mark(z0), z1)), x1, x2, x3)), U31'(mark(cons(z0, z1)), x1, x2, x3), MARK(cons(z0, z1))) MARK(U31(0, x1, x2, x3)) -> c61(ACTIVE(U31(active(0), x1, x2, x3)), U31'(mark(0), x1, x2, x3), MARK(0)) MARK(U31(U11(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(U11(mark(z0), z1)), x1, x2, x3)), U31'(mark(U11(z0, z1)), x1, x2, x3), MARK(U11(z0, z1))) MARK(U31(tt, x1, x2, x3)) -> c61(ACTIVE(U31(active(tt), x1, x2, x3)), U31'(mark(tt), x1, x2, x3), MARK(tt)) MARK(U31(s(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(s(mark(z0))), x1, x2, x3)), U31'(mark(s(z0)), x1, x2, x3), MARK(s(z0))) MARK(U31(length(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(length(mark(z0))), x1, x2, x3)), U31'(mark(length(z0)), x1, x2, x3), MARK(length(z0))) MARK(U31(U21(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(U21(mark(z0))), x1, x2, x3)), U31'(mark(U21(z0)), x1, x2, x3), MARK(U21(z0))) MARK(U31(nil, x1, x2, x3)) -> c61(ACTIVE(U31(active(nil), x1, x2, x3)), U31'(mark(nil), x1, x2, x3), MARK(nil)) MARK(U31(U31(z0, z1, z2, z3), x1, x2, x3)) -> c61(ACTIVE(U31(active(U31(mark(z0), z1, z2, z3)), x1, x2, x3)), U31'(mark(U31(z0, z1, z2, z3)), x1, x2, x3), MARK(U31(z0, z1, z2, z3))) MARK(U31(take(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(take(mark(z0), mark(z1))), x1, x2, x3)), U31'(mark(take(z0, z1)), x1, x2, x3), MARK(take(z0, z1))) MARK(U31(and(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(and(mark(z0), z1)), x1, x2, x3)), U31'(mark(and(z0, z1)), x1, x2, x3), MARK(and(z0, z1))) MARK(U31(isNat(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNat(z0)), x1, x2, x3)), U31'(mark(isNat(z0)), x1, x2, x3), MARK(isNat(z0))) MARK(U31(isNatList(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNatList(z0)), x1, x2, x3)), U31'(mark(isNatList(z0)), x1, x2, x3), MARK(isNatList(z0))) MARK(U31(isNatIList(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNatIList(z0)), x1, x2, x3)), U31'(mark(isNatIList(z0)), x1, x2, x3), MARK(isNatIList(z0))) MARK(U31(x0, x1, x2, x3)) -> c61(U31'(mark(x0), x1, x2, x3)) K tuples:none Defined Rule Symbols: encArg_1, active_1, mark_1, cons_2, U11_2, s_1, length_1, U21_1, U31_4, take_2, and_2, isNat_1, isNatList_1, isNatIList_1 Defined Pair Symbols: ACTIVE_1, MARK_1, CONS_2, U11'_2, S_1, LENGTH_1, U21'_1, U31'_4, TAKE_2, AND_2, ISNAT_1, ISNATLIST_1, ISNATILIST_1, ENCODE_ACTIVE_1, ENCODE_MARK_1, ENCODE_CONS_2, ENCODE_U11_2, ENCODE_S_1, ENCODE_LENGTH_1, ENCODE_U21_1, ENCODE_U31_4, ENCODE_TAKE_2, ENCODE_AND_2, ENCODE_ISNAT_1, ENCODE_ISNATLIST_1, ENCODE_ISNATILIST_1, ENCARG_1 Compound Symbols: c36_1, c37_3, c38_1, c39_1, c40_2, c41_2, c42_2, c43_1, c45_1, c48_1, c52_1, c62_4, c63_3, c64_2, c65_2, c66_2, c67_1, c68_1, c69_1, c70_1, c71_1, c72_1, c73_1, c74_1, c75_1, c76_1, c77_1, c78_1, c79_1, c80_1, c81_1, c82_1, c83_1, c84_1, c85_1, c86_1, c87_1, c88_1, c89_1, c90_1, c91_1, c92_1, c93_1, c94_1, c95_1, c96_1, c97_1, c98_1, c99_1, c100_1, c101_1, c102_1, c34_1, c35_2, c44_3, c46_3, c47_3, c49_3, c50_2, c51_4, c54, c56, c60, c_1, c4_2, c4_1, c5_2, c5_1, c6_3, c6_2, c7_3, c7_2, c8_2, c9_2, c10_2, c11_5, c11_4, c12_3, c12_2, c13_3, c13_2, c14_2, c15_2, c16_2, c53_3, c53_1, c53_2, c55_3, c55_1, c57_3, c57_2, c58_3, c59_3, c61_3, c61_1 ---------------------------------------- (109) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace MARK(take(z0, z1)) -> c62(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) by MARK(take(z0, x1)) -> c62(ACTIVE(take(z0, mark(x1))), TAKE(mark(z0), mark(x1)), MARK(z0), MARK(x1)) MARK(take(x0, z1)) -> c62(ACTIVE(take(mark(x0), z1)), TAKE(mark(x0), mark(z1)), MARK(x0), MARK(z1)) MARK(take(x0, zeros)) -> c62(ACTIVE(take(mark(x0), active(zeros))), TAKE(mark(x0), mark(zeros)), MARK(x0), MARK(zeros)) MARK(take(x0, cons(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(cons(mark(z0), z1)))), TAKE(mark(x0), mark(cons(z0, z1))), MARK(x0), MARK(cons(z0, z1))) MARK(take(x0, 0)) -> c62(ACTIVE(take(mark(x0), active(0))), TAKE(mark(x0), mark(0)), MARK(x0), MARK(0)) MARK(take(x0, U11(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(U11(mark(z0), z1)))), TAKE(mark(x0), mark(U11(z0, z1))), MARK(x0), MARK(U11(z0, z1))) MARK(take(x0, tt)) -> c62(ACTIVE(take(mark(x0), active(tt))), TAKE(mark(x0), mark(tt)), MARK(x0), MARK(tt)) MARK(take(x0, s(z0))) -> c62(ACTIVE(take(mark(x0), active(s(mark(z0))))), TAKE(mark(x0), mark(s(z0))), MARK(x0), MARK(s(z0))) MARK(take(x0, length(z0))) -> c62(ACTIVE(take(mark(x0), active(length(mark(z0))))), TAKE(mark(x0), mark(length(z0))), MARK(x0), MARK(length(z0))) MARK(take(x0, U21(z0))) -> c62(ACTIVE(take(mark(x0), active(U21(mark(z0))))), TAKE(mark(x0), mark(U21(z0))), MARK(x0), MARK(U21(z0))) MARK(take(x0, nil)) -> c62(ACTIVE(take(mark(x0), active(nil))), TAKE(mark(x0), mark(nil)), MARK(x0), MARK(nil)) MARK(take(x0, U31(z0, z1, z2, z3))) -> c62(ACTIVE(take(mark(x0), active(U31(mark(z0), z1, z2, z3)))), TAKE(mark(x0), mark(U31(z0, z1, z2, z3))), MARK(x0), MARK(U31(z0, z1, z2, z3))) MARK(take(x0, take(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(take(mark(z0), mark(z1))))), TAKE(mark(x0), mark(take(z0, z1))), MARK(x0), MARK(take(z0, z1))) MARK(take(x0, and(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(and(mark(z0), z1)))), TAKE(mark(x0), mark(and(z0, z1))), MARK(x0), MARK(and(z0, z1))) MARK(take(x0, isNat(z0))) -> c62(ACTIVE(take(mark(x0), active(isNat(z0)))), TAKE(mark(x0), mark(isNat(z0))), MARK(x0), MARK(isNat(z0))) MARK(take(x0, isNatList(z0))) -> c62(ACTIVE(take(mark(x0), active(isNatList(z0)))), TAKE(mark(x0), mark(isNatList(z0))), MARK(x0), MARK(isNatList(z0))) MARK(take(x0, isNatIList(z0))) -> c62(ACTIVE(take(mark(x0), active(isNatIList(z0)))), TAKE(mark(x0), mark(isNatIList(z0))), MARK(x0), MARK(isNatIList(z0))) MARK(take(zeros, x1)) -> c62(ACTIVE(take(active(zeros), mark(x1))), TAKE(mark(zeros), mark(x1)), MARK(zeros), MARK(x1)) MARK(take(cons(z0, z1), x1)) -> c62(ACTIVE(take(active(cons(mark(z0), z1)), mark(x1))), TAKE(mark(cons(z0, z1)), mark(x1)), MARK(cons(z0, z1)), MARK(x1)) MARK(take(0, x1)) -> c62(ACTIVE(take(active(0), mark(x1))), TAKE(mark(0), mark(x1)), MARK(0), MARK(x1)) MARK(take(U11(z0, z1), x1)) -> c62(ACTIVE(take(active(U11(mark(z0), z1)), mark(x1))), TAKE(mark(U11(z0, z1)), mark(x1)), MARK(U11(z0, z1)), MARK(x1)) MARK(take(tt, x1)) -> c62(ACTIVE(take(active(tt), mark(x1))), TAKE(mark(tt), mark(x1)), MARK(tt), MARK(x1)) MARK(take(s(z0), x1)) -> c62(ACTIVE(take(active(s(mark(z0))), mark(x1))), TAKE(mark(s(z0)), mark(x1)), MARK(s(z0)), MARK(x1)) MARK(take(length(z0), x1)) -> c62(ACTIVE(take(active(length(mark(z0))), mark(x1))), TAKE(mark(length(z0)), mark(x1)), MARK(length(z0)), MARK(x1)) MARK(take(U21(z0), x1)) -> c62(ACTIVE(take(active(U21(mark(z0))), mark(x1))), TAKE(mark(U21(z0)), mark(x1)), MARK(U21(z0)), MARK(x1)) MARK(take(nil, x1)) -> c62(ACTIVE(take(active(nil), mark(x1))), TAKE(mark(nil), mark(x1)), MARK(nil), MARK(x1)) MARK(take(U31(z0, z1, z2, z3), x1)) -> c62(ACTIVE(take(active(U31(mark(z0), z1, z2, z3)), mark(x1))), TAKE(mark(U31(z0, z1, z2, z3)), mark(x1)), MARK(U31(z0, z1, z2, z3)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c62(ACTIVE(take(active(take(mark(z0), mark(z1))), mark(x1))), TAKE(mark(take(z0, z1)), mark(x1)), MARK(take(z0, z1)), MARK(x1)) MARK(take(and(z0, z1), x1)) -> c62(ACTIVE(take(active(and(mark(z0), z1)), mark(x1))), TAKE(mark(and(z0, z1)), mark(x1)), MARK(and(z0, z1)), MARK(x1)) MARK(take(isNat(z0), x1)) -> c62(ACTIVE(take(active(isNat(z0)), mark(x1))), TAKE(mark(isNat(z0)), mark(x1)), MARK(isNat(z0)), MARK(x1)) MARK(take(isNatList(z0), x1)) -> c62(ACTIVE(take(active(isNatList(z0)), mark(x1))), TAKE(mark(isNatList(z0)), mark(x1)), MARK(isNatList(z0)), MARK(x1)) MARK(take(isNatIList(z0), x1)) -> c62(ACTIVE(take(active(isNatIList(z0)), mark(x1))), TAKE(mark(isNatIList(z0)), mark(x1)), MARK(isNatIList(z0)), MARK(x1)) ---------------------------------------- (110) Obligation: Complexity Dependency Tuples Problem Rules: encArg(zeros) -> zeros encArg(0) -> 0 encArg(tt) -> tt encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_U11(z0, z1)) -> U11(encArg(z0), encArg(z1)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_length(z0)) -> length(encArg(z0)) encArg(cons_U21(z0)) -> U21(encArg(z0)) encArg(cons_U31(z0, z1, z2, z3)) -> U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_isNat(z0)) -> isNat(encArg(z0)) encArg(cons_isNatList(z0)) -> isNatList(encArg(z0)) encArg(cons_isNatIList(z0)) -> isNatIList(encArg(z0)) active(zeros) -> mark(cons(0, zeros)) active(U11(tt, z0)) -> mark(s(length(z0))) active(U21(tt)) -> mark(nil) active(U31(tt, z0, z1, z2)) -> mark(cons(z2, take(z1, z0))) active(and(tt, z0)) -> mark(z0) active(isNat(0)) -> mark(tt) active(isNat(length(z0))) -> mark(isNatList(z0)) active(isNat(s(z0))) -> mark(isNat(z0)) active(isNatIList(z0)) -> mark(isNatList(z0)) active(isNatIList(zeros)) -> mark(tt) active(isNatIList(cons(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(isNatList(nil)) -> mark(tt) active(isNatList(cons(z0, z1))) -> mark(and(isNat(z0), isNatList(z1))) active(isNatList(take(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(length(nil)) -> mark(0) active(length(cons(z0, z1))) -> mark(U11(and(isNatList(z1), isNat(z0)), z1)) active(take(0, z0)) -> mark(U21(isNatIList(z0))) active(take(s(z0), cons(z1, z2))) -> mark(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)) mark(zeros) -> active(zeros) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(0) -> active(0) mark(U11(z0, z1)) -> active(U11(mark(z0), z1)) mark(tt) -> active(tt) mark(s(z0)) -> active(s(mark(z0))) mark(length(z0)) -> active(length(mark(z0))) mark(U21(z0)) -> active(U21(mark(z0))) mark(nil) -> active(nil) mark(U31(z0, z1, z2, z3)) -> active(U31(mark(z0), z1, z2, z3)) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(isNat(z0)) -> active(isNat(z0)) mark(isNatList(z0)) -> active(isNatList(z0)) mark(isNatIList(z0)) -> active(isNatIList(z0)) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) U11(mark(z0), z1) -> U11(z0, z1) U11(z0, mark(z1)) -> U11(z0, z1) U11(active(z0), z1) -> U11(z0, z1) U11(z0, active(z1)) -> U11(z0, z1) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) length(mark(z0)) -> length(z0) length(active(z0)) -> length(z0) U21(mark(z0)) -> U21(z0) U21(active(z0)) -> U21(z0) U31(mark(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, mark(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, mark(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, mark(z3)) -> U31(z0, z1, z2, z3) U31(active(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, active(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, active(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, active(z3)) -> U31(z0, z1, z2, z3) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) isNat(mark(z0)) -> isNat(z0) isNat(active(z0)) -> isNat(z0) isNatList(mark(z0)) -> isNatList(z0) isNatList(active(z0)) -> isNatList(z0) isNatIList(mark(z0)) -> isNatIList(z0) isNatIList(active(z0)) -> isNatIList(z0) Tuples: ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(and(z0, z1)) -> c63(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 ENCODE_ACTIVE(z0) -> c(ACTIVE(encArg(z0))) ENCODE_MARK(z0) -> c(MARK(encArg(z0))) ENCODE_CONS(z0, z1) -> c(CONS(encArg(z0), encArg(z1))) ENCODE_U11(z0, z1) -> c(U11'(encArg(z0), encArg(z1))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_LENGTH(z0) -> c(LENGTH(encArg(z0))) ENCODE_U21(z0) -> c(U21'(encArg(z0))) ENCODE_U31(z0, z1, z2, z3) -> c(U31'(encArg(z0), encArg(z1), encArg(z2), encArg(z3))) ENCODE_TAKE(z0, z1) -> c(TAKE(encArg(z0), encArg(z1))) ENCODE_AND(z0, z1) -> c(AND(encArg(z0), encArg(z1))) ENCODE_ISNAT(z0) -> c(ISNAT(encArg(z0))) ENCODE_ISNATLIST(z0) -> c(ISNATLIST(encArg(z0))) ENCODE_ISNATILIST(z0) -> c(ISNATILIST(encArg(z0))) ENCARG(cons_active(cons_active(z0))) -> c4(ACTIVE(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_active(cons_mark(z0))) -> c4(ACTIVE(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_active(cons_cons(z0, z1))) -> c4(ACTIVE(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_active(cons_U11(z0, z1))) -> c4(ACTIVE(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_active(cons_s(z0))) -> c4(ACTIVE(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_active(cons_length(z0))) -> c4(ACTIVE(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_active(cons_U21(z0))) -> c4(ACTIVE(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_active(cons_U31(z0, z1, z2, z3))) -> c4(ACTIVE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_active(cons_take(z0, z1))) -> c4(ACTIVE(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_active(cons_and(z0, z1))) -> c4(ACTIVE(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_active(cons_isNat(z0))) -> c4(ACTIVE(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_active(cons_isNatList(z0))) -> c4(ACTIVE(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_active(cons_isNatIList(z0))) -> c4(ACTIVE(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_active(zeros)) -> c4(ACTIVE(zeros)) ENCARG(cons_mark(cons_active(z0))) -> c5(MARK(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_mark(cons_mark(z0))) -> c5(MARK(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_mark(cons_cons(z0, z1))) -> c5(MARK(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_mark(cons_U11(z0, z1))) -> c5(MARK(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_mark(cons_s(z0))) -> c5(MARK(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_mark(cons_length(z0))) -> c5(MARK(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_mark(cons_U21(z0))) -> c5(MARK(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_mark(cons_U31(z0, z1, z2, z3))) -> c5(MARK(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_mark(cons_take(z0, z1))) -> c5(MARK(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(cons_and(z0, z1))) -> c5(MARK(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_mark(cons_isNat(z0))) -> c5(MARK(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_mark(cons_isNatList(z0))) -> c5(MARK(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_mark(cons_isNatIList(z0))) -> c5(MARK(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_mark(zeros)) -> c5(MARK(zeros)) ENCARG(cons_mark(0)) -> c5(MARK(0)) ENCARG(cons_mark(tt)) -> c5(MARK(tt)) ENCARG(cons_mark(nil)) -> c5(MARK(nil)) ENCARG(cons_cons(x0, cons_active(z0))) -> c6(CONS(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_cons(x0, cons_mark(z0))) -> c6(CONS(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_cons(x0, cons_cons(z0, z1))) -> c6(CONS(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_cons(x0, cons_U11(z0, z1))) -> c6(CONS(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_cons(x0, cons_s(z0))) -> c6(CONS(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_cons(x0, cons_length(z0))) -> c6(CONS(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_cons(x0, cons_U21(z0))) -> c6(CONS(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_cons(x0, cons_U31(z0, z1, z2, z3))) -> c6(CONS(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_cons(x0, cons_take(z0, z1))) -> c6(CONS(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_cons(x0, cons_and(z0, z1))) -> c6(CONS(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_cons(x0, cons_isNat(z0))) -> c6(CONS(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_cons(x0, cons_isNatList(z0))) -> c6(CONS(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_cons(x0, cons_isNatIList(z0))) -> c6(CONS(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_cons(cons_active(z0), x1)) -> c6(CONS(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_mark(z0), x1)) -> c6(CONS(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_cons(z0, z1), x1)) -> c6(CONS(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_U11(z0, z1), x1)) -> c6(CONS(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_s(z0), x1)) -> c6(CONS(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_length(z0), x1)) -> c6(CONS(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U21(z0), x1)) -> c6(CONS(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U31(z0, z1, z2, z3), x1)) -> c6(CONS(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_cons(cons_take(z0, z1), x1)) -> c6(CONS(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_and(z0, z1), x1)) -> c6(CONS(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_isNat(z0), x1)) -> c6(CONS(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_isNatList(z0), x1)) -> c6(CONS(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_isNatIList(z0), x1)) -> c6(CONS(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_cons(x0, zeros)) -> c6(CONS(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_cons(x0, 0)) -> c6(CONS(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_cons(x0, tt)) -> c6(CONS(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_cons(x0, nil)) -> c6(CONS(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_cons(zeros, x1)) -> c6(CONS(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(0, x1)) -> c6(CONS(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(tt, x1)) -> c6(CONS(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(nil, x1)) -> c6(CONS(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(x0, cons_active(z0))) -> c7(U11'(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_U11(x0, cons_mark(z0))) -> c7(U11'(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_U11(x0, cons_cons(z0, z1))) -> c7(U11'(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U11(x0, cons_U11(z0, z1))) -> c7(U11'(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U11(x0, cons_s(z0))) -> c7(U11'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_U11(x0, cons_length(z0))) -> c7(U11'(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_U11(x0, cons_U21(z0))) -> c7(U11'(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_U11(x0, cons_U31(z0, z1, z2, z3))) -> c7(U11'(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U11(x0, cons_take(z0, z1))) -> c7(U11'(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_U11(x0, cons_and(z0, z1))) -> c7(U11'(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_U11(x0, cons_isNat(z0))) -> c7(U11'(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_U11(x0, cons_isNatList(z0))) -> c7(U11'(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_U11(x0, cons_isNatIList(z0))) -> c7(U11'(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U11(cons_active(z0), x1)) -> c7(U11'(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_mark(z0), x1)) -> c7(U11'(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_cons(z0, z1), x1)) -> c7(U11'(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_U11(z0, z1), x1)) -> c7(U11'(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_s(z0), x1)) -> c7(U11'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_length(z0), x1)) -> c7(U11'(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_U21(z0), x1)) -> c7(U11'(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_U31(z0, z1, z2, z3), x1)) -> c7(U11'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_U11(cons_take(z0, z1), x1)) -> c7(U11'(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_and(z0, z1), x1)) -> c7(U11'(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_isNat(z0), x1)) -> c7(U11'(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_isNatList(z0), x1)) -> c7(U11'(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_isNatIList(z0), x1)) -> c7(U11'(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_U11(x0, zeros)) -> c7(U11'(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_U11(x0, 0)) -> c7(U11'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_U11(x0, tt)) -> c7(U11'(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_U11(x0, nil)) -> c7(U11'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_U11(zeros, x1)) -> c7(U11'(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(0, x1)) -> c7(U11'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(tt, x1)) -> c7(U11'(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(nil, x1)) -> c7(U11'(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_s(cons_active(z0))) -> c8(S(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_s(cons_mark(z0))) -> c8(S(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_s(cons_cons(z0, z1))) -> c8(S(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_s(cons_U11(z0, z1))) -> c8(S(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_s(cons_s(z0))) -> c8(S(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_length(z0))) -> c8(S(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_s(cons_U21(z0))) -> c8(S(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_s(cons_U31(z0, z1, z2, z3))) -> c8(S(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_s(cons_take(z0, z1))) -> c8(S(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_s(cons_and(z0, z1))) -> c8(S(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_s(cons_isNat(z0))) -> c8(S(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_s(cons_isNatList(z0))) -> c8(S(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_s(cons_isNatIList(z0))) -> c8(S(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_length(cons_active(z0))) -> c9(LENGTH(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_length(cons_mark(z0))) -> c9(LENGTH(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_length(cons_cons(z0, z1))) -> c9(LENGTH(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_length(cons_U11(z0, z1))) -> c9(LENGTH(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_length(cons_s(z0))) -> c9(LENGTH(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_length(cons_length(z0))) -> c9(LENGTH(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_length(cons_U21(z0))) -> c9(LENGTH(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_length(cons_U31(z0, z1, z2, z3))) -> c9(LENGTH(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_length(cons_take(z0, z1))) -> c9(LENGTH(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_length(cons_and(z0, z1))) -> c9(LENGTH(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_length(cons_isNat(z0))) -> c9(LENGTH(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_length(cons_isNatList(z0))) -> c9(LENGTH(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_length(cons_isNatIList(z0))) -> c9(LENGTH(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U21(cons_active(z0))) -> c10(U21'(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_U21(cons_mark(z0))) -> c10(U21'(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_U21(cons_cons(z0, z1))) -> c10(U21'(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U21(cons_U11(z0, z1))) -> c10(U21'(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U21(cons_s(z0))) -> c10(U21'(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_U21(cons_length(z0))) -> c10(U21'(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_U21(cons_U21(z0))) -> c10(U21'(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_U21(cons_U31(z0, z1, z2, z3))) -> c10(U21'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U21(cons_take(z0, z1))) -> c10(U21'(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_U21(cons_and(z0, z1))) -> c10(U21'(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_U21(cons_isNat(z0))) -> c10(U21'(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_U21(cons_isNatList(z0))) -> c10(U21'(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_U21(cons_isNatIList(z0))) -> c10(U21'(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U31(x0, x1, x2, cons_active(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), active(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_active(z0))) ENCARG(cons_U31(x0, x1, x2, cons_mark(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), mark(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_mark(z0))) ENCARG(cons_U31(x0, x1, x2, cons_cons(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_U11(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_s(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), s(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_s(z0))) ENCARG(cons_U31(x0, x1, x2, cons_length(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), length(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_length(z0))) ENCARG(cons_U31(x0, x1, x2, cons_U21(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U21(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U21(z0))) ENCARG(cons_U31(x0, x1, x2, cons_U31(z0, z1, z2, z3))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U31(x0, x1, x2, cons_take(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_take(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_and(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_and(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_isNat(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNat(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNat(z0))) ENCARG(cons_U31(x0, x1, x2, cons_isNatList(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNatList(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNatList(z0))) ENCARG(cons_U31(x0, x1, x2, cons_isNatIList(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U31(x0, x1, cons_active(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), active(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_active(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_mark(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), mark(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_mark(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_cons(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), cons(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_cons(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U11(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), U11(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U11(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_s(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), s(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_s(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_length(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), length(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_length(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U21(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), U21(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U21(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U31(z0, z1, z2, z3), x3)) -> c11(U31'(encArg(x0), encArg(x1), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_take(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), take(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_take(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_and(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), and(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_and(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNat(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNat(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNat(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNatList(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNatList(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNatList(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNatIList(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNatIList(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNatIList(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, cons_active(z0), x2, x3)) -> c11(U31'(encArg(x0), active(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_active(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_mark(z0), x2, x3)) -> c11(U31'(encArg(x0), mark(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_mark(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_cons(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), cons(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_cons(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U11(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), U11(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U11(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_s(z0), x2, x3)) -> c11(U31'(encArg(x0), s(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_s(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_length(z0), x2, x3)) -> c11(U31'(encArg(x0), length(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_length(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U21(z0), x2, x3)) -> c11(U31'(encArg(x0), U21(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U21(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U31(z0, z1, z2, z3), x2, x3)) -> c11(U31'(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_take(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), take(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_take(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_and(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), and(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_and(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNat(z0), x2, x3)) -> c11(U31'(encArg(x0), isNat(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNat(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNatList(z0), x2, x3)) -> c11(U31'(encArg(x0), isNatList(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNatList(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNatIList(z0), x2, x3)) -> c11(U31'(encArg(x0), isNatIList(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNatIList(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_active(z0), x1, x2, x3)) -> c11(U31'(active(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_active(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_mark(z0), x1, x2, x3)) -> c11(U31'(mark(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_mark(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_cons(z0, z1), x1, x2, x3)) -> c11(U31'(cons(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_cons(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U11(z0, z1), x1, x2, x3)) -> c11(U31'(U11(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U11(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_s(z0), x1, x2, x3)) -> c11(U31'(s(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_s(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_length(z0), x1, x2, x3)) -> c11(U31'(length(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_length(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U21(z0), x1, x2, x3)) -> c11(U31'(U21(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U21(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U31(z0, z1, z2, z3), x1, x2, x3)) -> c11(U31'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_take(z0, z1), x1, x2, x3)) -> c11(U31'(take(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_take(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_and(z0, z1), x1, x2, x3)) -> c11(U31'(and(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_and(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNat(z0), x1, x2, x3)) -> c11(U31'(isNat(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNat(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNatList(z0), x1, x2, x3)) -> c11(U31'(isNatList(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNatList(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNatIList(z0), x1, x2, x3)) -> c11(U31'(isNatIList(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNatIList(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, x1, x2, zeros)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), zeros), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, 0)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), 0), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, tt)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), tt), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, nil)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), nil), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, zeros, x3)) -> c11(U31'(encArg(x0), encArg(x1), zeros, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, 0, x3)) -> c11(U31'(encArg(x0), encArg(x1), 0, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, tt, x3)) -> c11(U31'(encArg(x0), encArg(x1), tt, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, nil, x3)) -> c11(U31'(encArg(x0), encArg(x1), nil, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, zeros, x2, x3)) -> c11(U31'(encArg(x0), zeros, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, 0, x2, x3)) -> c11(U31'(encArg(x0), 0, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, tt, x2, x3)) -> c11(U31'(encArg(x0), tt, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, nil, x2, x3)) -> c11(U31'(encArg(x0), nil, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(zeros, x1, x2, x3)) -> c11(U31'(zeros, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(0, x1, x2, x3)) -> c11(U31'(0, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(tt, x1, x2, x3)) -> c11(U31'(tt, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(nil, x1, x2, x3)) -> c11(U31'(nil, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_take(x0, cons_active(z0))) -> c12(TAKE(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_take(x0, cons_mark(z0))) -> c12(TAKE(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_take(x0, cons_cons(z0, z1))) -> c12(TAKE(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_take(x0, cons_U11(z0, z1))) -> c12(TAKE(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_take(x0, cons_s(z0))) -> c12(TAKE(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_take(x0, cons_length(z0))) -> c12(TAKE(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_take(x0, cons_U21(z0))) -> c12(TAKE(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_take(x0, cons_U31(z0, z1, z2, z3))) -> c12(TAKE(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_take(x0, cons_take(z0, z1))) -> c12(TAKE(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_take(x0, cons_and(z0, z1))) -> c12(TAKE(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_take(x0, cons_isNat(z0))) -> c12(TAKE(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_take(x0, cons_isNatList(z0))) -> c12(TAKE(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_take(x0, cons_isNatIList(z0))) -> c12(TAKE(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_take(cons_active(z0), x1)) -> c12(TAKE(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_take(cons_mark(z0), x1)) -> c12(TAKE(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_take(cons_cons(z0, z1), x1)) -> c12(TAKE(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_U11(z0, z1), x1)) -> c12(TAKE(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_s(z0), x1)) -> c12(TAKE(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_take(cons_length(z0), x1)) -> c12(TAKE(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_take(cons_U21(z0), x1)) -> c12(TAKE(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_take(cons_U31(z0, z1, z2, z3), x1)) -> c12(TAKE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_take(cons_take(z0, z1), x1)) -> c12(TAKE(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_and(z0, z1), x1)) -> c12(TAKE(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_isNat(z0), x1)) -> c12(TAKE(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_take(cons_isNatList(z0), x1)) -> c12(TAKE(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_take(cons_isNatIList(z0), x1)) -> c12(TAKE(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_take(x0, zeros)) -> c12(TAKE(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_take(x0, 0)) -> c12(TAKE(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_take(x0, tt)) -> c12(TAKE(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_take(x0, nil)) -> c12(TAKE(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_take(zeros, x1)) -> c12(TAKE(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(0, x1)) -> c12(TAKE(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(tt, x1)) -> c12(TAKE(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(nil, x1)) -> c12(TAKE(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(x0, cons_active(z0))) -> c13(AND(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_and(x0, cons_mark(z0))) -> c13(AND(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_and(x0, cons_cons(z0, z1))) -> c13(AND(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_and(x0, cons_U11(z0, z1))) -> c13(AND(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_and(x0, cons_s(z0))) -> c13(AND(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_and(x0, cons_length(z0))) -> c13(AND(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_and(x0, cons_U21(z0))) -> c13(AND(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_and(x0, cons_U31(z0, z1, z2, z3))) -> c13(AND(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_and(x0, cons_take(z0, z1))) -> c13(AND(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_and(x0, cons_and(z0, z1))) -> c13(AND(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_and(x0, cons_isNat(z0))) -> c13(AND(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_and(x0, cons_isNatList(z0))) -> c13(AND(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_and(x0, cons_isNatIList(z0))) -> c13(AND(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_and(cons_active(z0), x1)) -> c13(AND(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_and(cons_mark(z0), x1)) -> c13(AND(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_and(cons_cons(z0, z1), x1)) -> c13(AND(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_U11(z0, z1), x1)) -> c13(AND(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_s(z0), x1)) -> c13(AND(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_and(cons_length(z0), x1)) -> c13(AND(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_and(cons_U21(z0), x1)) -> c13(AND(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_and(cons_U31(z0, z1, z2, z3), x1)) -> c13(AND(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_and(cons_take(z0, z1), x1)) -> c13(AND(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_and(z0, z1), x1)) -> c13(AND(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_isNat(z0), x1)) -> c13(AND(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_and(cons_isNatList(z0), x1)) -> c13(AND(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_and(cons_isNatIList(z0), x1)) -> c13(AND(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_and(x0, zeros)) -> c13(AND(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_and(x0, 0)) -> c13(AND(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_and(x0, tt)) -> c13(AND(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_and(x0, nil)) -> c13(AND(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_and(zeros, x1)) -> c13(AND(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(0, x1)) -> c13(AND(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(tt, x1)) -> c13(AND(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(nil, x1)) -> c13(AND(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_isNat(cons_active(z0))) -> c14(ISNAT(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_isNat(cons_mark(z0))) -> c14(ISNAT(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_isNat(cons_cons(z0, z1))) -> c14(ISNAT(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_isNat(cons_U11(z0, z1))) -> c14(ISNAT(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_isNat(cons_s(z0))) -> c14(ISNAT(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_isNat(cons_length(z0))) -> c14(ISNAT(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_isNat(cons_U21(z0))) -> c14(ISNAT(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_isNat(cons_U31(z0, z1, z2, z3))) -> c14(ISNAT(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_isNat(cons_take(z0, z1))) -> c14(ISNAT(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_isNat(cons_and(z0, z1))) -> c14(ISNAT(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_isNat(cons_isNat(z0))) -> c14(ISNAT(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_isNat(cons_isNatList(z0))) -> c14(ISNAT(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_isNat(cons_isNatIList(z0))) -> c14(ISNAT(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_isNatList(cons_active(z0))) -> c15(ISNATLIST(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_isNatList(cons_mark(z0))) -> c15(ISNATLIST(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_isNatList(cons_cons(z0, z1))) -> c15(ISNATLIST(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_isNatList(cons_U11(z0, z1))) -> c15(ISNATLIST(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_isNatList(cons_s(z0))) -> c15(ISNATLIST(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_isNatList(cons_length(z0))) -> c15(ISNATLIST(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_isNatList(cons_U21(z0))) -> c15(ISNATLIST(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_isNatList(cons_U31(z0, z1, z2, z3))) -> c15(ISNATLIST(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_isNatList(cons_take(z0, z1))) -> c15(ISNATLIST(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_isNatList(cons_and(z0, z1))) -> c15(ISNATLIST(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_isNatList(cons_isNat(z0))) -> c15(ISNATLIST(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_isNatList(cons_isNatList(z0))) -> c15(ISNATLIST(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_isNatList(cons_isNatIList(z0))) -> c15(ISNATLIST(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_isNatIList(cons_active(z0))) -> c16(ISNATILIST(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_isNatIList(cons_mark(z0))) -> c16(ISNATILIST(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_isNatIList(cons_cons(z0, z1))) -> c16(ISNATILIST(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_isNatIList(cons_U11(z0, z1))) -> c16(ISNATILIST(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_isNatIList(cons_s(z0))) -> c16(ISNATILIST(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_isNatIList(cons_length(z0))) -> c16(ISNATILIST(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_isNatIList(cons_U21(z0))) -> c16(ISNATILIST(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_isNatIList(cons_U31(z0, z1, z2, z3))) -> c16(ISNATILIST(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_isNatIList(cons_take(z0, z1))) -> c16(ISNATILIST(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_isNatIList(cons_and(z0, z1))) -> c16(ISNATILIST(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_isNatIList(cons_isNat(z0))) -> c16(ISNATILIST(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_isNatIList(cons_isNatList(z0))) -> c16(ISNATILIST(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_isNatIList(cons_isNatIList(z0))) -> c16(ISNATILIST(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) MARK(cons(zeros, x1)) -> c53(ACTIVE(cons(active(zeros), x1)), CONS(mark(zeros), x1), MARK(zeros)) MARK(cons(cons(z0, z1), x1)) -> c53(ACTIVE(cons(active(cons(mark(z0), z1)), x1)), CONS(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(cons(0, x1)) -> c53(ACTIVE(cons(active(0), x1)), CONS(mark(0), x1), MARK(0)) MARK(cons(U11(z0, z1), x1)) -> c53(ACTIVE(cons(active(U11(mark(z0), z1)), x1)), CONS(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(cons(tt, x1)) -> c53(ACTIVE(cons(active(tt), x1)), CONS(mark(tt), x1), MARK(tt)) MARK(cons(s(z0), x1)) -> c53(ACTIVE(cons(active(s(mark(z0))), x1)), CONS(mark(s(z0)), x1), MARK(s(z0))) MARK(cons(length(z0), x1)) -> c53(ACTIVE(cons(active(length(mark(z0))), x1)), CONS(mark(length(z0)), x1), MARK(length(z0))) MARK(cons(U21(z0), x1)) -> c53(ACTIVE(cons(active(U21(mark(z0))), x1)), CONS(mark(U21(z0)), x1), MARK(U21(z0))) MARK(cons(nil, x1)) -> c53(ACTIVE(cons(active(nil), x1)), CONS(mark(nil), x1), MARK(nil)) MARK(cons(U31(z0, z1, z2, z3), x1)) -> c53(ACTIVE(cons(active(U31(mark(z0), z1, z2, z3)), x1)), CONS(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(cons(take(z0, z1), x1)) -> c53(ACTIVE(cons(active(take(mark(z0), mark(z1))), x1)), CONS(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(cons(and(z0, z1), x1)) -> c53(ACTIVE(cons(active(and(mark(z0), z1)), x1)), CONS(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(cons(isNat(z0), x1)) -> c53(ACTIVE(cons(active(isNat(z0)), x1)), CONS(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(cons(isNatList(z0), x1)) -> c53(ACTIVE(cons(active(isNatList(z0)), x1)), CONS(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(cons(isNatIList(z0), x1)) -> c53(ACTIVE(cons(active(isNatIList(z0)), x1)), CONS(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(cons(x0, x1)) -> c53(CONS(mark(x0), x1)) MARK(cons(z0, z1)) -> c53(CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(z0, z1)), U11'(mark(z0), z1), MARK(z0)) MARK(U11(zeros, x1)) -> c55(ACTIVE(U11(active(zeros), x1)), U11'(mark(zeros), x1), MARK(zeros)) MARK(U11(cons(z0, z1), x1)) -> c55(ACTIVE(U11(active(cons(mark(z0), z1)), x1)), U11'(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(U11(0, x1)) -> c55(ACTIVE(U11(active(0), x1)), U11'(mark(0), x1), MARK(0)) MARK(U11(U11(z0, z1), x1)) -> c55(ACTIVE(U11(active(U11(mark(z0), z1)), x1)), U11'(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(U11(tt, x1)) -> c55(ACTIVE(U11(active(tt), x1)), U11'(mark(tt), x1), MARK(tt)) MARK(U11(s(z0), x1)) -> c55(ACTIVE(U11(active(s(mark(z0))), x1)), U11'(mark(s(z0)), x1), MARK(s(z0))) MARK(U11(length(z0), x1)) -> c55(ACTIVE(U11(active(length(mark(z0))), x1)), U11'(mark(length(z0)), x1), MARK(length(z0))) MARK(U11(U21(z0), x1)) -> c55(ACTIVE(U11(active(U21(mark(z0))), x1)), U11'(mark(U21(z0)), x1), MARK(U21(z0))) MARK(U11(nil, x1)) -> c55(ACTIVE(U11(active(nil), x1)), U11'(mark(nil), x1), MARK(nil)) MARK(U11(U31(z0, z1, z2, z3), x1)) -> c55(ACTIVE(U11(active(U31(mark(z0), z1, z2, z3)), x1)), U11'(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(U11(take(z0, z1), x1)) -> c55(ACTIVE(U11(active(take(mark(z0), mark(z1))), x1)), U11'(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(U11(and(z0, z1), x1)) -> c55(ACTIVE(U11(active(and(mark(z0), z1)), x1)), U11'(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(U11(isNat(z0), x1)) -> c55(ACTIVE(U11(active(isNat(z0)), x1)), U11'(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(U11(isNatList(z0), x1)) -> c55(ACTIVE(U11(active(isNatList(z0)), x1)), U11'(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(U11(isNatIList(z0), x1)) -> c55(ACTIVE(U11(active(isNatIList(z0)), x1)), U11'(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(U11(x0, x1)) -> c55(U11'(mark(x0), x1)) MARK(s(zeros)) -> c57(ACTIVE(s(active(zeros))), S(mark(zeros)), MARK(zeros)) MARK(s(cons(z0, z1))) -> c57(ACTIVE(s(active(cons(mark(z0), z1)))), S(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(s(0)) -> c57(ACTIVE(s(active(0))), S(mark(0)), MARK(0)) MARK(s(U11(z0, z1))) -> c57(ACTIVE(s(active(U11(mark(z0), z1)))), S(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(s(tt)) -> c57(ACTIVE(s(active(tt))), S(mark(tt)), MARK(tt)) MARK(s(s(z0))) -> c57(ACTIVE(s(active(s(mark(z0))))), S(mark(s(z0))), MARK(s(z0))) MARK(s(length(z0))) -> c57(ACTIVE(s(active(length(mark(z0))))), S(mark(length(z0))), MARK(length(z0))) MARK(s(U21(z0))) -> c57(ACTIVE(s(active(U21(mark(z0))))), S(mark(U21(z0))), MARK(U21(z0))) MARK(s(nil)) -> c57(ACTIVE(s(active(nil))), S(mark(nil)), MARK(nil)) MARK(s(U31(z0, z1, z2, z3))) -> c57(ACTIVE(s(active(U31(mark(z0), z1, z2, z3)))), S(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(s(take(z0, z1))) -> c57(ACTIVE(s(active(take(mark(z0), mark(z1))))), S(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(s(and(z0, z1))) -> c57(ACTIVE(s(active(and(mark(z0), z1)))), S(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(s(isNat(z0))) -> c57(ACTIVE(s(active(isNat(z0)))), S(mark(isNat(z0))), MARK(isNat(z0))) MARK(s(isNatList(z0))) -> c57(ACTIVE(s(active(isNatList(z0)))), S(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(s(isNatIList(z0))) -> c57(ACTIVE(s(active(isNatIList(z0)))), S(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(s(z0)) -> c57(S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(z0)), LENGTH(mark(z0)), MARK(z0)) MARK(length(zeros)) -> c58(ACTIVE(length(active(zeros))), LENGTH(mark(zeros)), MARK(zeros)) MARK(length(cons(z0, z1))) -> c58(ACTIVE(length(active(cons(mark(z0), z1)))), LENGTH(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(length(0)) -> c58(ACTIVE(length(active(0))), LENGTH(mark(0)), MARK(0)) MARK(length(U11(z0, z1))) -> c58(ACTIVE(length(active(U11(mark(z0), z1)))), LENGTH(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(length(tt)) -> c58(ACTIVE(length(active(tt))), LENGTH(mark(tt)), MARK(tt)) MARK(length(s(z0))) -> c58(ACTIVE(length(active(s(mark(z0))))), LENGTH(mark(s(z0))), MARK(s(z0))) MARK(length(length(z0))) -> c58(ACTIVE(length(active(length(mark(z0))))), LENGTH(mark(length(z0))), MARK(length(z0))) MARK(length(U21(z0))) -> c58(ACTIVE(length(active(U21(mark(z0))))), LENGTH(mark(U21(z0))), MARK(U21(z0))) MARK(length(nil)) -> c58(ACTIVE(length(active(nil))), LENGTH(mark(nil)), MARK(nil)) MARK(length(U31(z0, z1, z2, z3))) -> c58(ACTIVE(length(active(U31(mark(z0), z1, z2, z3)))), LENGTH(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(length(take(z0, z1))) -> c58(ACTIVE(length(active(take(mark(z0), mark(z1))))), LENGTH(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(length(and(z0, z1))) -> c58(ACTIVE(length(active(and(mark(z0), z1)))), LENGTH(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(length(isNat(z0))) -> c58(ACTIVE(length(active(isNat(z0)))), LENGTH(mark(isNat(z0))), MARK(isNat(z0))) MARK(length(isNatList(z0))) -> c58(ACTIVE(length(active(isNatList(z0)))), LENGTH(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(length(isNatIList(z0))) -> c58(ACTIVE(length(active(isNatIList(z0)))), LENGTH(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(U21(z0)) -> c59(ACTIVE(U21(z0)), U21'(mark(z0)), MARK(z0)) MARK(U21(zeros)) -> c59(ACTIVE(U21(active(zeros))), U21'(mark(zeros)), MARK(zeros)) MARK(U21(cons(z0, z1))) -> c59(ACTIVE(U21(active(cons(mark(z0), z1)))), U21'(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(U21(0)) -> c59(ACTIVE(U21(active(0))), U21'(mark(0)), MARK(0)) MARK(U21(U11(z0, z1))) -> c59(ACTIVE(U21(active(U11(mark(z0), z1)))), U21'(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(U21(tt)) -> c59(ACTIVE(U21(active(tt))), U21'(mark(tt)), MARK(tt)) MARK(U21(s(z0))) -> c59(ACTIVE(U21(active(s(mark(z0))))), U21'(mark(s(z0))), MARK(s(z0))) MARK(U21(length(z0))) -> c59(ACTIVE(U21(active(length(mark(z0))))), U21'(mark(length(z0))), MARK(length(z0))) MARK(U21(U21(z0))) -> c59(ACTIVE(U21(active(U21(mark(z0))))), U21'(mark(U21(z0))), MARK(U21(z0))) MARK(U21(nil)) -> c59(ACTIVE(U21(active(nil))), U21'(mark(nil)), MARK(nil)) MARK(U21(U31(z0, z1, z2, z3))) -> c59(ACTIVE(U21(active(U31(mark(z0), z1, z2, z3)))), U21'(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(U21(take(z0, z1))) -> c59(ACTIVE(U21(active(take(mark(z0), mark(z1))))), U21'(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(U21(and(z0, z1))) -> c59(ACTIVE(U21(active(and(mark(z0), z1)))), U21'(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(U21(isNat(z0))) -> c59(ACTIVE(U21(active(isNat(z0)))), U21'(mark(isNat(z0))), MARK(isNat(z0))) MARK(U21(isNatList(z0))) -> c59(ACTIVE(U21(active(isNatList(z0)))), U21'(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(U21(isNatIList(z0))) -> c59(ACTIVE(U21(active(isNatIList(z0)))), U21'(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(z0, z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U31(zeros, x1, x2, x3)) -> c61(ACTIVE(U31(active(zeros), x1, x2, x3)), U31'(mark(zeros), x1, x2, x3), MARK(zeros)) MARK(U31(cons(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(cons(mark(z0), z1)), x1, x2, x3)), U31'(mark(cons(z0, z1)), x1, x2, x3), MARK(cons(z0, z1))) MARK(U31(0, x1, x2, x3)) -> c61(ACTIVE(U31(active(0), x1, x2, x3)), U31'(mark(0), x1, x2, x3), MARK(0)) MARK(U31(U11(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(U11(mark(z0), z1)), x1, x2, x3)), U31'(mark(U11(z0, z1)), x1, x2, x3), MARK(U11(z0, z1))) MARK(U31(tt, x1, x2, x3)) -> c61(ACTIVE(U31(active(tt), x1, x2, x3)), U31'(mark(tt), x1, x2, x3), MARK(tt)) MARK(U31(s(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(s(mark(z0))), x1, x2, x3)), U31'(mark(s(z0)), x1, x2, x3), MARK(s(z0))) MARK(U31(length(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(length(mark(z0))), x1, x2, x3)), U31'(mark(length(z0)), x1, x2, x3), MARK(length(z0))) MARK(U31(U21(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(U21(mark(z0))), x1, x2, x3)), U31'(mark(U21(z0)), x1, x2, x3), MARK(U21(z0))) MARK(U31(nil, x1, x2, x3)) -> c61(ACTIVE(U31(active(nil), x1, x2, x3)), U31'(mark(nil), x1, x2, x3), MARK(nil)) MARK(U31(U31(z0, z1, z2, z3), x1, x2, x3)) -> c61(ACTIVE(U31(active(U31(mark(z0), z1, z2, z3)), x1, x2, x3)), U31'(mark(U31(z0, z1, z2, z3)), x1, x2, x3), MARK(U31(z0, z1, z2, z3))) MARK(U31(take(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(take(mark(z0), mark(z1))), x1, x2, x3)), U31'(mark(take(z0, z1)), x1, x2, x3), MARK(take(z0, z1))) MARK(U31(and(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(and(mark(z0), z1)), x1, x2, x3)), U31'(mark(and(z0, z1)), x1, x2, x3), MARK(and(z0, z1))) MARK(U31(isNat(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNat(z0)), x1, x2, x3)), U31'(mark(isNat(z0)), x1, x2, x3), MARK(isNat(z0))) MARK(U31(isNatList(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNatList(z0)), x1, x2, x3)), U31'(mark(isNatList(z0)), x1, x2, x3), MARK(isNatList(z0))) MARK(U31(isNatIList(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNatIList(z0)), x1, x2, x3)), U31'(mark(isNatIList(z0)), x1, x2, x3), MARK(isNatIList(z0))) MARK(U31(x0, x1, x2, x3)) -> c61(U31'(mark(x0), x1, x2, x3)) MARK(take(z0, x1)) -> c62(ACTIVE(take(z0, mark(x1))), TAKE(mark(z0), mark(x1)), MARK(z0), MARK(x1)) MARK(take(x0, z1)) -> c62(ACTIVE(take(mark(x0), z1)), TAKE(mark(x0), mark(z1)), MARK(x0), MARK(z1)) MARK(take(x0, zeros)) -> c62(ACTIVE(take(mark(x0), active(zeros))), TAKE(mark(x0), mark(zeros)), MARK(x0), MARK(zeros)) MARK(take(x0, cons(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(cons(mark(z0), z1)))), TAKE(mark(x0), mark(cons(z0, z1))), MARK(x0), MARK(cons(z0, z1))) MARK(take(x0, 0)) -> c62(ACTIVE(take(mark(x0), active(0))), TAKE(mark(x0), mark(0)), MARK(x0), MARK(0)) MARK(take(x0, U11(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(U11(mark(z0), z1)))), TAKE(mark(x0), mark(U11(z0, z1))), MARK(x0), MARK(U11(z0, z1))) MARK(take(x0, tt)) -> c62(ACTIVE(take(mark(x0), active(tt))), TAKE(mark(x0), mark(tt)), MARK(x0), MARK(tt)) MARK(take(x0, s(z0))) -> c62(ACTIVE(take(mark(x0), active(s(mark(z0))))), TAKE(mark(x0), mark(s(z0))), MARK(x0), MARK(s(z0))) MARK(take(x0, length(z0))) -> c62(ACTIVE(take(mark(x0), active(length(mark(z0))))), TAKE(mark(x0), mark(length(z0))), MARK(x0), MARK(length(z0))) MARK(take(x0, U21(z0))) -> c62(ACTIVE(take(mark(x0), active(U21(mark(z0))))), TAKE(mark(x0), mark(U21(z0))), MARK(x0), MARK(U21(z0))) MARK(take(x0, nil)) -> c62(ACTIVE(take(mark(x0), active(nil))), TAKE(mark(x0), mark(nil)), MARK(x0), MARK(nil)) MARK(take(x0, U31(z0, z1, z2, z3))) -> c62(ACTIVE(take(mark(x0), active(U31(mark(z0), z1, z2, z3)))), TAKE(mark(x0), mark(U31(z0, z1, z2, z3))), MARK(x0), MARK(U31(z0, z1, z2, z3))) MARK(take(x0, take(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(take(mark(z0), mark(z1))))), TAKE(mark(x0), mark(take(z0, z1))), MARK(x0), MARK(take(z0, z1))) MARK(take(x0, and(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(and(mark(z0), z1)))), TAKE(mark(x0), mark(and(z0, z1))), MARK(x0), MARK(and(z0, z1))) MARK(take(x0, isNat(z0))) -> c62(ACTIVE(take(mark(x0), active(isNat(z0)))), TAKE(mark(x0), mark(isNat(z0))), MARK(x0), MARK(isNat(z0))) MARK(take(x0, isNatList(z0))) -> c62(ACTIVE(take(mark(x0), active(isNatList(z0)))), TAKE(mark(x0), mark(isNatList(z0))), MARK(x0), MARK(isNatList(z0))) MARK(take(x0, isNatIList(z0))) -> c62(ACTIVE(take(mark(x0), active(isNatIList(z0)))), TAKE(mark(x0), mark(isNatIList(z0))), MARK(x0), MARK(isNatIList(z0))) MARK(take(zeros, x1)) -> c62(ACTIVE(take(active(zeros), mark(x1))), TAKE(mark(zeros), mark(x1)), MARK(zeros), MARK(x1)) MARK(take(cons(z0, z1), x1)) -> c62(ACTIVE(take(active(cons(mark(z0), z1)), mark(x1))), TAKE(mark(cons(z0, z1)), mark(x1)), MARK(cons(z0, z1)), MARK(x1)) MARK(take(0, x1)) -> c62(ACTIVE(take(active(0), mark(x1))), TAKE(mark(0), mark(x1)), MARK(0), MARK(x1)) MARK(take(U11(z0, z1), x1)) -> c62(ACTIVE(take(active(U11(mark(z0), z1)), mark(x1))), TAKE(mark(U11(z0, z1)), mark(x1)), MARK(U11(z0, z1)), MARK(x1)) MARK(take(tt, x1)) -> c62(ACTIVE(take(active(tt), mark(x1))), TAKE(mark(tt), mark(x1)), MARK(tt), MARK(x1)) MARK(take(s(z0), x1)) -> c62(ACTIVE(take(active(s(mark(z0))), mark(x1))), TAKE(mark(s(z0)), mark(x1)), MARK(s(z0)), MARK(x1)) MARK(take(length(z0), x1)) -> c62(ACTIVE(take(active(length(mark(z0))), mark(x1))), TAKE(mark(length(z0)), mark(x1)), MARK(length(z0)), MARK(x1)) MARK(take(U21(z0), x1)) -> c62(ACTIVE(take(active(U21(mark(z0))), mark(x1))), TAKE(mark(U21(z0)), mark(x1)), MARK(U21(z0)), MARK(x1)) MARK(take(nil, x1)) -> c62(ACTIVE(take(active(nil), mark(x1))), TAKE(mark(nil), mark(x1)), MARK(nil), MARK(x1)) MARK(take(U31(z0, z1, z2, z3), x1)) -> c62(ACTIVE(take(active(U31(mark(z0), z1, z2, z3)), mark(x1))), TAKE(mark(U31(z0, z1, z2, z3)), mark(x1)), MARK(U31(z0, z1, z2, z3)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c62(ACTIVE(take(active(take(mark(z0), mark(z1))), mark(x1))), TAKE(mark(take(z0, z1)), mark(x1)), MARK(take(z0, z1)), MARK(x1)) MARK(take(and(z0, z1), x1)) -> c62(ACTIVE(take(active(and(mark(z0), z1)), mark(x1))), TAKE(mark(and(z0, z1)), mark(x1)), MARK(and(z0, z1)), MARK(x1)) MARK(take(isNat(z0), x1)) -> c62(ACTIVE(take(active(isNat(z0)), mark(x1))), TAKE(mark(isNat(z0)), mark(x1)), MARK(isNat(z0)), MARK(x1)) MARK(take(isNatList(z0), x1)) -> c62(ACTIVE(take(active(isNatList(z0)), mark(x1))), TAKE(mark(isNatList(z0)), mark(x1)), MARK(isNatList(z0)), MARK(x1)) MARK(take(isNatIList(z0), x1)) -> c62(ACTIVE(take(active(isNatIList(z0)), mark(x1))), TAKE(mark(isNatIList(z0)), mark(x1)), MARK(isNatIList(z0)), MARK(x1)) S tuples: ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(and(z0, z1)) -> c63(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 MARK(cons(zeros, x1)) -> c53(ACTIVE(cons(active(zeros), x1)), CONS(mark(zeros), x1), MARK(zeros)) MARK(cons(cons(z0, z1), x1)) -> c53(ACTIVE(cons(active(cons(mark(z0), z1)), x1)), CONS(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(cons(0, x1)) -> c53(ACTIVE(cons(active(0), x1)), CONS(mark(0), x1), MARK(0)) MARK(cons(U11(z0, z1), x1)) -> c53(ACTIVE(cons(active(U11(mark(z0), z1)), x1)), CONS(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(cons(tt, x1)) -> c53(ACTIVE(cons(active(tt), x1)), CONS(mark(tt), x1), MARK(tt)) MARK(cons(s(z0), x1)) -> c53(ACTIVE(cons(active(s(mark(z0))), x1)), CONS(mark(s(z0)), x1), MARK(s(z0))) MARK(cons(length(z0), x1)) -> c53(ACTIVE(cons(active(length(mark(z0))), x1)), CONS(mark(length(z0)), x1), MARK(length(z0))) MARK(cons(U21(z0), x1)) -> c53(ACTIVE(cons(active(U21(mark(z0))), x1)), CONS(mark(U21(z0)), x1), MARK(U21(z0))) MARK(cons(nil, x1)) -> c53(ACTIVE(cons(active(nil), x1)), CONS(mark(nil), x1), MARK(nil)) MARK(cons(U31(z0, z1, z2, z3), x1)) -> c53(ACTIVE(cons(active(U31(mark(z0), z1, z2, z3)), x1)), CONS(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(cons(take(z0, z1), x1)) -> c53(ACTIVE(cons(active(take(mark(z0), mark(z1))), x1)), CONS(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(cons(and(z0, z1), x1)) -> c53(ACTIVE(cons(active(and(mark(z0), z1)), x1)), CONS(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(cons(isNat(z0), x1)) -> c53(ACTIVE(cons(active(isNat(z0)), x1)), CONS(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(cons(isNatList(z0), x1)) -> c53(ACTIVE(cons(active(isNatList(z0)), x1)), CONS(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(cons(isNatIList(z0), x1)) -> c53(ACTIVE(cons(active(isNatIList(z0)), x1)), CONS(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(cons(x0, x1)) -> c53(CONS(mark(x0), x1)) MARK(cons(z0, z1)) -> c53(CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(z0, z1)), U11'(mark(z0), z1), MARK(z0)) MARK(U11(zeros, x1)) -> c55(ACTIVE(U11(active(zeros), x1)), U11'(mark(zeros), x1), MARK(zeros)) MARK(U11(cons(z0, z1), x1)) -> c55(ACTIVE(U11(active(cons(mark(z0), z1)), x1)), U11'(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(U11(0, x1)) -> c55(ACTIVE(U11(active(0), x1)), U11'(mark(0), x1), MARK(0)) MARK(U11(U11(z0, z1), x1)) -> c55(ACTIVE(U11(active(U11(mark(z0), z1)), x1)), U11'(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(U11(tt, x1)) -> c55(ACTIVE(U11(active(tt), x1)), U11'(mark(tt), x1), MARK(tt)) MARK(U11(s(z0), x1)) -> c55(ACTIVE(U11(active(s(mark(z0))), x1)), U11'(mark(s(z0)), x1), MARK(s(z0))) MARK(U11(length(z0), x1)) -> c55(ACTIVE(U11(active(length(mark(z0))), x1)), U11'(mark(length(z0)), x1), MARK(length(z0))) MARK(U11(U21(z0), x1)) -> c55(ACTIVE(U11(active(U21(mark(z0))), x1)), U11'(mark(U21(z0)), x1), MARK(U21(z0))) MARK(U11(nil, x1)) -> c55(ACTIVE(U11(active(nil), x1)), U11'(mark(nil), x1), MARK(nil)) MARK(U11(U31(z0, z1, z2, z3), x1)) -> c55(ACTIVE(U11(active(U31(mark(z0), z1, z2, z3)), x1)), U11'(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(U11(take(z0, z1), x1)) -> c55(ACTIVE(U11(active(take(mark(z0), mark(z1))), x1)), U11'(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(U11(and(z0, z1), x1)) -> c55(ACTIVE(U11(active(and(mark(z0), z1)), x1)), U11'(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(U11(isNat(z0), x1)) -> c55(ACTIVE(U11(active(isNat(z0)), x1)), U11'(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(U11(isNatList(z0), x1)) -> c55(ACTIVE(U11(active(isNatList(z0)), x1)), U11'(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(U11(isNatIList(z0), x1)) -> c55(ACTIVE(U11(active(isNatIList(z0)), x1)), U11'(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(U11(x0, x1)) -> c55(U11'(mark(x0), x1)) MARK(s(zeros)) -> c57(ACTIVE(s(active(zeros))), S(mark(zeros)), MARK(zeros)) MARK(s(cons(z0, z1))) -> c57(ACTIVE(s(active(cons(mark(z0), z1)))), S(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(s(0)) -> c57(ACTIVE(s(active(0))), S(mark(0)), MARK(0)) MARK(s(U11(z0, z1))) -> c57(ACTIVE(s(active(U11(mark(z0), z1)))), S(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(s(tt)) -> c57(ACTIVE(s(active(tt))), S(mark(tt)), MARK(tt)) MARK(s(s(z0))) -> c57(ACTIVE(s(active(s(mark(z0))))), S(mark(s(z0))), MARK(s(z0))) MARK(s(length(z0))) -> c57(ACTIVE(s(active(length(mark(z0))))), S(mark(length(z0))), MARK(length(z0))) MARK(s(U21(z0))) -> c57(ACTIVE(s(active(U21(mark(z0))))), S(mark(U21(z0))), MARK(U21(z0))) MARK(s(nil)) -> c57(ACTIVE(s(active(nil))), S(mark(nil)), MARK(nil)) MARK(s(U31(z0, z1, z2, z3))) -> c57(ACTIVE(s(active(U31(mark(z0), z1, z2, z3)))), S(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(s(take(z0, z1))) -> c57(ACTIVE(s(active(take(mark(z0), mark(z1))))), S(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(s(and(z0, z1))) -> c57(ACTIVE(s(active(and(mark(z0), z1)))), S(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(s(isNat(z0))) -> c57(ACTIVE(s(active(isNat(z0)))), S(mark(isNat(z0))), MARK(isNat(z0))) MARK(s(isNatList(z0))) -> c57(ACTIVE(s(active(isNatList(z0)))), S(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(s(isNatIList(z0))) -> c57(ACTIVE(s(active(isNatIList(z0)))), S(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(s(z0)) -> c57(S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(z0)), LENGTH(mark(z0)), MARK(z0)) MARK(length(zeros)) -> c58(ACTIVE(length(active(zeros))), LENGTH(mark(zeros)), MARK(zeros)) MARK(length(cons(z0, z1))) -> c58(ACTIVE(length(active(cons(mark(z0), z1)))), LENGTH(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(length(0)) -> c58(ACTIVE(length(active(0))), LENGTH(mark(0)), MARK(0)) MARK(length(U11(z0, z1))) -> c58(ACTIVE(length(active(U11(mark(z0), z1)))), LENGTH(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(length(tt)) -> c58(ACTIVE(length(active(tt))), LENGTH(mark(tt)), MARK(tt)) MARK(length(s(z0))) -> c58(ACTIVE(length(active(s(mark(z0))))), LENGTH(mark(s(z0))), MARK(s(z0))) MARK(length(length(z0))) -> c58(ACTIVE(length(active(length(mark(z0))))), LENGTH(mark(length(z0))), MARK(length(z0))) MARK(length(U21(z0))) -> c58(ACTIVE(length(active(U21(mark(z0))))), LENGTH(mark(U21(z0))), MARK(U21(z0))) MARK(length(nil)) -> c58(ACTIVE(length(active(nil))), LENGTH(mark(nil)), MARK(nil)) MARK(length(U31(z0, z1, z2, z3))) -> c58(ACTIVE(length(active(U31(mark(z0), z1, z2, z3)))), LENGTH(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(length(take(z0, z1))) -> c58(ACTIVE(length(active(take(mark(z0), mark(z1))))), LENGTH(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(length(and(z0, z1))) -> c58(ACTIVE(length(active(and(mark(z0), z1)))), LENGTH(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(length(isNat(z0))) -> c58(ACTIVE(length(active(isNat(z0)))), LENGTH(mark(isNat(z0))), MARK(isNat(z0))) MARK(length(isNatList(z0))) -> c58(ACTIVE(length(active(isNatList(z0)))), LENGTH(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(length(isNatIList(z0))) -> c58(ACTIVE(length(active(isNatIList(z0)))), LENGTH(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(U21(z0)) -> c59(ACTIVE(U21(z0)), U21'(mark(z0)), MARK(z0)) MARK(U21(zeros)) -> c59(ACTIVE(U21(active(zeros))), U21'(mark(zeros)), MARK(zeros)) MARK(U21(cons(z0, z1))) -> c59(ACTIVE(U21(active(cons(mark(z0), z1)))), U21'(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(U21(0)) -> c59(ACTIVE(U21(active(0))), U21'(mark(0)), MARK(0)) MARK(U21(U11(z0, z1))) -> c59(ACTIVE(U21(active(U11(mark(z0), z1)))), U21'(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(U21(tt)) -> c59(ACTIVE(U21(active(tt))), U21'(mark(tt)), MARK(tt)) MARK(U21(s(z0))) -> c59(ACTIVE(U21(active(s(mark(z0))))), U21'(mark(s(z0))), MARK(s(z0))) MARK(U21(length(z0))) -> c59(ACTIVE(U21(active(length(mark(z0))))), U21'(mark(length(z0))), MARK(length(z0))) MARK(U21(U21(z0))) -> c59(ACTIVE(U21(active(U21(mark(z0))))), U21'(mark(U21(z0))), MARK(U21(z0))) MARK(U21(nil)) -> c59(ACTIVE(U21(active(nil))), U21'(mark(nil)), MARK(nil)) MARK(U21(U31(z0, z1, z2, z3))) -> c59(ACTIVE(U21(active(U31(mark(z0), z1, z2, z3)))), U21'(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(U21(take(z0, z1))) -> c59(ACTIVE(U21(active(take(mark(z0), mark(z1))))), U21'(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(U21(and(z0, z1))) -> c59(ACTIVE(U21(active(and(mark(z0), z1)))), U21'(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(U21(isNat(z0))) -> c59(ACTIVE(U21(active(isNat(z0)))), U21'(mark(isNat(z0))), MARK(isNat(z0))) MARK(U21(isNatList(z0))) -> c59(ACTIVE(U21(active(isNatList(z0)))), U21'(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(U21(isNatIList(z0))) -> c59(ACTIVE(U21(active(isNatIList(z0)))), U21'(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(z0, z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U31(zeros, x1, x2, x3)) -> c61(ACTIVE(U31(active(zeros), x1, x2, x3)), U31'(mark(zeros), x1, x2, x3), MARK(zeros)) MARK(U31(cons(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(cons(mark(z0), z1)), x1, x2, x3)), U31'(mark(cons(z0, z1)), x1, x2, x3), MARK(cons(z0, z1))) MARK(U31(0, x1, x2, x3)) -> c61(ACTIVE(U31(active(0), x1, x2, x3)), U31'(mark(0), x1, x2, x3), MARK(0)) MARK(U31(U11(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(U11(mark(z0), z1)), x1, x2, x3)), U31'(mark(U11(z0, z1)), x1, x2, x3), MARK(U11(z0, z1))) MARK(U31(tt, x1, x2, x3)) -> c61(ACTIVE(U31(active(tt), x1, x2, x3)), U31'(mark(tt), x1, x2, x3), MARK(tt)) MARK(U31(s(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(s(mark(z0))), x1, x2, x3)), U31'(mark(s(z0)), x1, x2, x3), MARK(s(z0))) MARK(U31(length(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(length(mark(z0))), x1, x2, x3)), U31'(mark(length(z0)), x1, x2, x3), MARK(length(z0))) MARK(U31(U21(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(U21(mark(z0))), x1, x2, x3)), U31'(mark(U21(z0)), x1, x2, x3), MARK(U21(z0))) MARK(U31(nil, x1, x2, x3)) -> c61(ACTIVE(U31(active(nil), x1, x2, x3)), U31'(mark(nil), x1, x2, x3), MARK(nil)) MARK(U31(U31(z0, z1, z2, z3), x1, x2, x3)) -> c61(ACTIVE(U31(active(U31(mark(z0), z1, z2, z3)), x1, x2, x3)), U31'(mark(U31(z0, z1, z2, z3)), x1, x2, x3), MARK(U31(z0, z1, z2, z3))) MARK(U31(take(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(take(mark(z0), mark(z1))), x1, x2, x3)), U31'(mark(take(z0, z1)), x1, x2, x3), MARK(take(z0, z1))) MARK(U31(and(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(and(mark(z0), z1)), x1, x2, x3)), U31'(mark(and(z0, z1)), x1, x2, x3), MARK(and(z0, z1))) MARK(U31(isNat(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNat(z0)), x1, x2, x3)), U31'(mark(isNat(z0)), x1, x2, x3), MARK(isNat(z0))) MARK(U31(isNatList(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNatList(z0)), x1, x2, x3)), U31'(mark(isNatList(z0)), x1, x2, x3), MARK(isNatList(z0))) MARK(U31(isNatIList(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNatIList(z0)), x1, x2, x3)), U31'(mark(isNatIList(z0)), x1, x2, x3), MARK(isNatIList(z0))) MARK(U31(x0, x1, x2, x3)) -> c61(U31'(mark(x0), x1, x2, x3)) MARK(take(z0, x1)) -> c62(ACTIVE(take(z0, mark(x1))), TAKE(mark(z0), mark(x1)), MARK(z0), MARK(x1)) MARK(take(x0, z1)) -> c62(ACTIVE(take(mark(x0), z1)), TAKE(mark(x0), mark(z1)), MARK(x0), MARK(z1)) MARK(take(x0, zeros)) -> c62(ACTIVE(take(mark(x0), active(zeros))), TAKE(mark(x0), mark(zeros)), MARK(x0), MARK(zeros)) MARK(take(x0, cons(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(cons(mark(z0), z1)))), TAKE(mark(x0), mark(cons(z0, z1))), MARK(x0), MARK(cons(z0, z1))) MARK(take(x0, 0)) -> c62(ACTIVE(take(mark(x0), active(0))), TAKE(mark(x0), mark(0)), MARK(x0), MARK(0)) MARK(take(x0, U11(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(U11(mark(z0), z1)))), TAKE(mark(x0), mark(U11(z0, z1))), MARK(x0), MARK(U11(z0, z1))) MARK(take(x0, tt)) -> c62(ACTIVE(take(mark(x0), active(tt))), TAKE(mark(x0), mark(tt)), MARK(x0), MARK(tt)) MARK(take(x0, s(z0))) -> c62(ACTIVE(take(mark(x0), active(s(mark(z0))))), TAKE(mark(x0), mark(s(z0))), MARK(x0), MARK(s(z0))) MARK(take(x0, length(z0))) -> c62(ACTIVE(take(mark(x0), active(length(mark(z0))))), TAKE(mark(x0), mark(length(z0))), MARK(x0), MARK(length(z0))) MARK(take(x0, U21(z0))) -> c62(ACTIVE(take(mark(x0), active(U21(mark(z0))))), TAKE(mark(x0), mark(U21(z0))), MARK(x0), MARK(U21(z0))) MARK(take(x0, nil)) -> c62(ACTIVE(take(mark(x0), active(nil))), TAKE(mark(x0), mark(nil)), MARK(x0), MARK(nil)) MARK(take(x0, U31(z0, z1, z2, z3))) -> c62(ACTIVE(take(mark(x0), active(U31(mark(z0), z1, z2, z3)))), TAKE(mark(x0), mark(U31(z0, z1, z2, z3))), MARK(x0), MARK(U31(z0, z1, z2, z3))) MARK(take(x0, take(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(take(mark(z0), mark(z1))))), TAKE(mark(x0), mark(take(z0, z1))), MARK(x0), MARK(take(z0, z1))) MARK(take(x0, and(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(and(mark(z0), z1)))), TAKE(mark(x0), mark(and(z0, z1))), MARK(x0), MARK(and(z0, z1))) MARK(take(x0, isNat(z0))) -> c62(ACTIVE(take(mark(x0), active(isNat(z0)))), TAKE(mark(x0), mark(isNat(z0))), MARK(x0), MARK(isNat(z0))) MARK(take(x0, isNatList(z0))) -> c62(ACTIVE(take(mark(x0), active(isNatList(z0)))), TAKE(mark(x0), mark(isNatList(z0))), MARK(x0), MARK(isNatList(z0))) MARK(take(x0, isNatIList(z0))) -> c62(ACTIVE(take(mark(x0), active(isNatIList(z0)))), TAKE(mark(x0), mark(isNatIList(z0))), MARK(x0), MARK(isNatIList(z0))) MARK(take(zeros, x1)) -> c62(ACTIVE(take(active(zeros), mark(x1))), TAKE(mark(zeros), mark(x1)), MARK(zeros), MARK(x1)) MARK(take(cons(z0, z1), x1)) -> c62(ACTIVE(take(active(cons(mark(z0), z1)), mark(x1))), TAKE(mark(cons(z0, z1)), mark(x1)), MARK(cons(z0, z1)), MARK(x1)) MARK(take(0, x1)) -> c62(ACTIVE(take(active(0), mark(x1))), TAKE(mark(0), mark(x1)), MARK(0), MARK(x1)) MARK(take(U11(z0, z1), x1)) -> c62(ACTIVE(take(active(U11(mark(z0), z1)), mark(x1))), TAKE(mark(U11(z0, z1)), mark(x1)), MARK(U11(z0, z1)), MARK(x1)) MARK(take(tt, x1)) -> c62(ACTIVE(take(active(tt), mark(x1))), TAKE(mark(tt), mark(x1)), MARK(tt), MARK(x1)) MARK(take(s(z0), x1)) -> c62(ACTIVE(take(active(s(mark(z0))), mark(x1))), TAKE(mark(s(z0)), mark(x1)), MARK(s(z0)), MARK(x1)) MARK(take(length(z0), x1)) -> c62(ACTIVE(take(active(length(mark(z0))), mark(x1))), TAKE(mark(length(z0)), mark(x1)), MARK(length(z0)), MARK(x1)) MARK(take(U21(z0), x1)) -> c62(ACTIVE(take(active(U21(mark(z0))), mark(x1))), TAKE(mark(U21(z0)), mark(x1)), MARK(U21(z0)), MARK(x1)) MARK(take(nil, x1)) -> c62(ACTIVE(take(active(nil), mark(x1))), TAKE(mark(nil), mark(x1)), MARK(nil), MARK(x1)) MARK(take(U31(z0, z1, z2, z3), x1)) -> c62(ACTIVE(take(active(U31(mark(z0), z1, z2, z3)), mark(x1))), TAKE(mark(U31(z0, z1, z2, z3)), mark(x1)), MARK(U31(z0, z1, z2, z3)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c62(ACTIVE(take(active(take(mark(z0), mark(z1))), mark(x1))), TAKE(mark(take(z0, z1)), mark(x1)), MARK(take(z0, z1)), MARK(x1)) MARK(take(and(z0, z1), x1)) -> c62(ACTIVE(take(active(and(mark(z0), z1)), mark(x1))), TAKE(mark(and(z0, z1)), mark(x1)), MARK(and(z0, z1)), MARK(x1)) MARK(take(isNat(z0), x1)) -> c62(ACTIVE(take(active(isNat(z0)), mark(x1))), TAKE(mark(isNat(z0)), mark(x1)), MARK(isNat(z0)), MARK(x1)) MARK(take(isNatList(z0), x1)) -> c62(ACTIVE(take(active(isNatList(z0)), mark(x1))), TAKE(mark(isNatList(z0)), mark(x1)), MARK(isNatList(z0)), MARK(x1)) MARK(take(isNatIList(z0), x1)) -> c62(ACTIVE(take(active(isNatIList(z0)), mark(x1))), TAKE(mark(isNatIList(z0)), mark(x1)), MARK(isNatIList(z0)), MARK(x1)) K tuples:none Defined Rule Symbols: encArg_1, active_1, mark_1, cons_2, U11_2, s_1, length_1, U21_1, U31_4, take_2, and_2, isNat_1, isNatList_1, isNatIList_1 Defined Pair Symbols: ACTIVE_1, MARK_1, CONS_2, U11'_2, S_1, LENGTH_1, U21'_1, U31'_4, TAKE_2, AND_2, ISNAT_1, ISNATLIST_1, ISNATILIST_1, ENCODE_ACTIVE_1, ENCODE_MARK_1, ENCODE_CONS_2, ENCODE_U11_2, ENCODE_S_1, ENCODE_LENGTH_1, ENCODE_U21_1, ENCODE_U31_4, ENCODE_TAKE_2, ENCODE_AND_2, ENCODE_ISNAT_1, ENCODE_ISNATLIST_1, ENCODE_ISNATILIST_1, ENCARG_1 Compound Symbols: c36_1, c37_3, c38_1, c39_1, c40_2, c41_2, c42_2, c43_1, c45_1, c48_1, c52_1, c63_3, c64_2, c65_2, c66_2, c67_1, c68_1, c69_1, c70_1, c71_1, c72_1, c73_1, c74_1, c75_1, c76_1, c77_1, c78_1, c79_1, c80_1, c81_1, c82_1, c83_1, c84_1, c85_1, c86_1, c87_1, c88_1, c89_1, c90_1, c91_1, c92_1, c93_1, c94_1, c95_1, c96_1, c97_1, c98_1, c99_1, c100_1, c101_1, c102_1, c34_1, c35_2, c44_3, c46_3, c47_3, c49_3, c50_2, c51_4, c54, c56, c60, c_1, c4_2, c4_1, c5_2, c5_1, c6_3, c6_2, c7_3, c7_2, c8_2, c9_2, c10_2, c11_5, c11_4, c12_3, c12_2, c13_3, c13_2, c14_2, c15_2, c16_2, c53_3, c53_1, c53_2, c55_3, c55_1, c57_3, c57_2, c58_3, c59_3, c61_3, c61_1, c62_4 ---------------------------------------- (111) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace MARK(and(z0, z1)) -> c63(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) by MARK(and(z0, z1)) -> c63(ACTIVE(and(z0, z1)), AND(mark(z0), z1), MARK(z0)) MARK(and(zeros, x1)) -> c63(ACTIVE(and(active(zeros), x1)), AND(mark(zeros), x1), MARK(zeros)) MARK(and(cons(z0, z1), x1)) -> c63(ACTIVE(and(active(cons(mark(z0), z1)), x1)), AND(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(and(0, x1)) -> c63(ACTIVE(and(active(0), x1)), AND(mark(0), x1), MARK(0)) MARK(and(U11(z0, z1), x1)) -> c63(ACTIVE(and(active(U11(mark(z0), z1)), x1)), AND(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(and(tt, x1)) -> c63(ACTIVE(and(active(tt), x1)), AND(mark(tt), x1), MARK(tt)) MARK(and(s(z0), x1)) -> c63(ACTIVE(and(active(s(mark(z0))), x1)), AND(mark(s(z0)), x1), MARK(s(z0))) MARK(and(length(z0), x1)) -> c63(ACTIVE(and(active(length(mark(z0))), x1)), AND(mark(length(z0)), x1), MARK(length(z0))) MARK(and(U21(z0), x1)) -> c63(ACTIVE(and(active(U21(mark(z0))), x1)), AND(mark(U21(z0)), x1), MARK(U21(z0))) MARK(and(nil, x1)) -> c63(ACTIVE(and(active(nil), x1)), AND(mark(nil), x1), MARK(nil)) MARK(and(U31(z0, z1, z2, z3), x1)) -> c63(ACTIVE(and(active(U31(mark(z0), z1, z2, z3)), x1)), AND(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(and(take(z0, z1), x1)) -> c63(ACTIVE(and(active(take(mark(z0), mark(z1))), x1)), AND(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(and(and(z0, z1), x1)) -> c63(ACTIVE(and(active(and(mark(z0), z1)), x1)), AND(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(and(isNat(z0), x1)) -> c63(ACTIVE(and(active(isNat(z0)), x1)), AND(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(and(isNatList(z0), x1)) -> c63(ACTIVE(and(active(isNatList(z0)), x1)), AND(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(and(isNatIList(z0), x1)) -> c63(ACTIVE(and(active(isNatIList(z0)), x1)), AND(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(and(x0, x1)) -> c63(AND(mark(x0), x1)) ---------------------------------------- (112) Obligation: Complexity Dependency Tuples Problem Rules: encArg(zeros) -> zeros encArg(0) -> 0 encArg(tt) -> tt encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_U11(z0, z1)) -> U11(encArg(z0), encArg(z1)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_length(z0)) -> length(encArg(z0)) encArg(cons_U21(z0)) -> U21(encArg(z0)) encArg(cons_U31(z0, z1, z2, z3)) -> U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_isNat(z0)) -> isNat(encArg(z0)) encArg(cons_isNatList(z0)) -> isNatList(encArg(z0)) encArg(cons_isNatIList(z0)) -> isNatIList(encArg(z0)) active(zeros) -> mark(cons(0, zeros)) active(U11(tt, z0)) -> mark(s(length(z0))) active(U21(tt)) -> mark(nil) active(U31(tt, z0, z1, z2)) -> mark(cons(z2, take(z1, z0))) active(and(tt, z0)) -> mark(z0) active(isNat(0)) -> mark(tt) active(isNat(length(z0))) -> mark(isNatList(z0)) active(isNat(s(z0))) -> mark(isNat(z0)) active(isNatIList(z0)) -> mark(isNatList(z0)) active(isNatIList(zeros)) -> mark(tt) active(isNatIList(cons(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(isNatList(nil)) -> mark(tt) active(isNatList(cons(z0, z1))) -> mark(and(isNat(z0), isNatList(z1))) active(isNatList(take(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(length(nil)) -> mark(0) active(length(cons(z0, z1))) -> mark(U11(and(isNatList(z1), isNat(z0)), z1)) active(take(0, z0)) -> mark(U21(isNatIList(z0))) active(take(s(z0), cons(z1, z2))) -> mark(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)) mark(zeros) -> active(zeros) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(0) -> active(0) mark(U11(z0, z1)) -> active(U11(mark(z0), z1)) mark(tt) -> active(tt) mark(s(z0)) -> active(s(mark(z0))) mark(length(z0)) -> active(length(mark(z0))) mark(U21(z0)) -> active(U21(mark(z0))) mark(nil) -> active(nil) mark(U31(z0, z1, z2, z3)) -> active(U31(mark(z0), z1, z2, z3)) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(isNat(z0)) -> active(isNat(z0)) mark(isNatList(z0)) -> active(isNatList(z0)) mark(isNatIList(z0)) -> active(isNatIList(z0)) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) U11(mark(z0), z1) -> U11(z0, z1) U11(z0, mark(z1)) -> U11(z0, z1) U11(active(z0), z1) -> U11(z0, z1) U11(z0, active(z1)) -> U11(z0, z1) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) length(mark(z0)) -> length(z0) length(active(z0)) -> length(z0) U21(mark(z0)) -> U21(z0) U21(active(z0)) -> U21(z0) U31(mark(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, mark(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, mark(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, mark(z3)) -> U31(z0, z1, z2, z3) U31(active(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, active(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, active(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, active(z3)) -> U31(z0, z1, z2, z3) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) isNat(mark(z0)) -> isNat(z0) isNat(active(z0)) -> isNat(z0) isNatList(mark(z0)) -> isNatList(z0) isNatList(active(z0)) -> isNatList(z0) isNatIList(mark(z0)) -> isNatIList(z0) isNatIList(active(z0)) -> isNatIList(z0) Tuples: ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 ENCODE_ACTIVE(z0) -> c(ACTIVE(encArg(z0))) ENCODE_MARK(z0) -> c(MARK(encArg(z0))) ENCODE_CONS(z0, z1) -> c(CONS(encArg(z0), encArg(z1))) ENCODE_U11(z0, z1) -> c(U11'(encArg(z0), encArg(z1))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_LENGTH(z0) -> c(LENGTH(encArg(z0))) ENCODE_U21(z0) -> c(U21'(encArg(z0))) ENCODE_U31(z0, z1, z2, z3) -> c(U31'(encArg(z0), encArg(z1), encArg(z2), encArg(z3))) ENCODE_TAKE(z0, z1) -> c(TAKE(encArg(z0), encArg(z1))) ENCODE_AND(z0, z1) -> c(AND(encArg(z0), encArg(z1))) ENCODE_ISNAT(z0) -> c(ISNAT(encArg(z0))) ENCODE_ISNATLIST(z0) -> c(ISNATLIST(encArg(z0))) ENCODE_ISNATILIST(z0) -> c(ISNATILIST(encArg(z0))) ENCARG(cons_active(cons_active(z0))) -> c4(ACTIVE(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_active(cons_mark(z0))) -> c4(ACTIVE(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_active(cons_cons(z0, z1))) -> c4(ACTIVE(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_active(cons_U11(z0, z1))) -> c4(ACTIVE(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_active(cons_s(z0))) -> c4(ACTIVE(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_active(cons_length(z0))) -> c4(ACTIVE(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_active(cons_U21(z0))) -> c4(ACTIVE(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_active(cons_U31(z0, z1, z2, z3))) -> c4(ACTIVE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_active(cons_take(z0, z1))) -> c4(ACTIVE(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_active(cons_and(z0, z1))) -> c4(ACTIVE(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_active(cons_isNat(z0))) -> c4(ACTIVE(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_active(cons_isNatList(z0))) -> c4(ACTIVE(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_active(cons_isNatIList(z0))) -> c4(ACTIVE(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_active(zeros)) -> c4(ACTIVE(zeros)) ENCARG(cons_mark(cons_active(z0))) -> c5(MARK(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_mark(cons_mark(z0))) -> c5(MARK(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_mark(cons_cons(z0, z1))) -> c5(MARK(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_mark(cons_U11(z0, z1))) -> c5(MARK(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_mark(cons_s(z0))) -> c5(MARK(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_mark(cons_length(z0))) -> c5(MARK(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_mark(cons_U21(z0))) -> c5(MARK(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_mark(cons_U31(z0, z1, z2, z3))) -> c5(MARK(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_mark(cons_take(z0, z1))) -> c5(MARK(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(cons_and(z0, z1))) -> c5(MARK(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_mark(cons_isNat(z0))) -> c5(MARK(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_mark(cons_isNatList(z0))) -> c5(MARK(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_mark(cons_isNatIList(z0))) -> c5(MARK(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_mark(zeros)) -> c5(MARK(zeros)) ENCARG(cons_mark(0)) -> c5(MARK(0)) ENCARG(cons_mark(tt)) -> c5(MARK(tt)) ENCARG(cons_mark(nil)) -> c5(MARK(nil)) ENCARG(cons_cons(x0, cons_active(z0))) -> c6(CONS(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_cons(x0, cons_mark(z0))) -> c6(CONS(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_cons(x0, cons_cons(z0, z1))) -> c6(CONS(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_cons(x0, cons_U11(z0, z1))) -> c6(CONS(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_cons(x0, cons_s(z0))) -> c6(CONS(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_cons(x0, cons_length(z0))) -> c6(CONS(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_cons(x0, cons_U21(z0))) -> c6(CONS(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_cons(x0, cons_U31(z0, z1, z2, z3))) -> c6(CONS(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_cons(x0, cons_take(z0, z1))) -> c6(CONS(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_cons(x0, cons_and(z0, z1))) -> c6(CONS(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_cons(x0, cons_isNat(z0))) -> c6(CONS(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_cons(x0, cons_isNatList(z0))) -> c6(CONS(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_cons(x0, cons_isNatIList(z0))) -> c6(CONS(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_cons(cons_active(z0), x1)) -> c6(CONS(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_mark(z0), x1)) -> c6(CONS(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_cons(z0, z1), x1)) -> c6(CONS(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_U11(z0, z1), x1)) -> c6(CONS(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_s(z0), x1)) -> c6(CONS(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_length(z0), x1)) -> c6(CONS(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U21(z0), x1)) -> c6(CONS(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U31(z0, z1, z2, z3), x1)) -> c6(CONS(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_cons(cons_take(z0, z1), x1)) -> c6(CONS(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_and(z0, z1), x1)) -> c6(CONS(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_isNat(z0), x1)) -> c6(CONS(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_isNatList(z0), x1)) -> c6(CONS(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_isNatIList(z0), x1)) -> c6(CONS(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_cons(x0, zeros)) -> c6(CONS(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_cons(x0, 0)) -> c6(CONS(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_cons(x0, tt)) -> c6(CONS(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_cons(x0, nil)) -> c6(CONS(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_cons(zeros, x1)) -> c6(CONS(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(0, x1)) -> c6(CONS(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(tt, x1)) -> c6(CONS(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(nil, x1)) -> c6(CONS(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(x0, cons_active(z0))) -> c7(U11'(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_U11(x0, cons_mark(z0))) -> c7(U11'(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_U11(x0, cons_cons(z0, z1))) -> c7(U11'(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U11(x0, cons_U11(z0, z1))) -> c7(U11'(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U11(x0, cons_s(z0))) -> c7(U11'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_U11(x0, cons_length(z0))) -> c7(U11'(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_U11(x0, cons_U21(z0))) -> c7(U11'(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_U11(x0, cons_U31(z0, z1, z2, z3))) -> c7(U11'(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U11(x0, cons_take(z0, z1))) -> c7(U11'(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_U11(x0, cons_and(z0, z1))) -> c7(U11'(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_U11(x0, cons_isNat(z0))) -> c7(U11'(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_U11(x0, cons_isNatList(z0))) -> c7(U11'(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_U11(x0, cons_isNatIList(z0))) -> c7(U11'(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U11(cons_active(z0), x1)) -> c7(U11'(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_mark(z0), x1)) -> c7(U11'(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_cons(z0, z1), x1)) -> c7(U11'(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_U11(z0, z1), x1)) -> c7(U11'(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_s(z0), x1)) -> c7(U11'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_length(z0), x1)) -> c7(U11'(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_U21(z0), x1)) -> c7(U11'(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_U31(z0, z1, z2, z3), x1)) -> c7(U11'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_U11(cons_take(z0, z1), x1)) -> c7(U11'(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_and(z0, z1), x1)) -> c7(U11'(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_isNat(z0), x1)) -> c7(U11'(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_isNatList(z0), x1)) -> c7(U11'(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_isNatIList(z0), x1)) -> c7(U11'(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_U11(x0, zeros)) -> c7(U11'(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_U11(x0, 0)) -> c7(U11'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_U11(x0, tt)) -> c7(U11'(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_U11(x0, nil)) -> c7(U11'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_U11(zeros, x1)) -> c7(U11'(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(0, x1)) -> c7(U11'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(tt, x1)) -> c7(U11'(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(nil, x1)) -> c7(U11'(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_s(cons_active(z0))) -> c8(S(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_s(cons_mark(z0))) -> c8(S(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_s(cons_cons(z0, z1))) -> c8(S(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_s(cons_U11(z0, z1))) -> c8(S(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_s(cons_s(z0))) -> c8(S(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_length(z0))) -> c8(S(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_s(cons_U21(z0))) -> c8(S(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_s(cons_U31(z0, z1, z2, z3))) -> c8(S(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_s(cons_take(z0, z1))) -> c8(S(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_s(cons_and(z0, z1))) -> c8(S(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_s(cons_isNat(z0))) -> c8(S(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_s(cons_isNatList(z0))) -> c8(S(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_s(cons_isNatIList(z0))) -> c8(S(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_length(cons_active(z0))) -> c9(LENGTH(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_length(cons_mark(z0))) -> c9(LENGTH(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_length(cons_cons(z0, z1))) -> c9(LENGTH(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_length(cons_U11(z0, z1))) -> c9(LENGTH(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_length(cons_s(z0))) -> c9(LENGTH(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_length(cons_length(z0))) -> c9(LENGTH(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_length(cons_U21(z0))) -> c9(LENGTH(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_length(cons_U31(z0, z1, z2, z3))) -> c9(LENGTH(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_length(cons_take(z0, z1))) -> c9(LENGTH(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_length(cons_and(z0, z1))) -> c9(LENGTH(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_length(cons_isNat(z0))) -> c9(LENGTH(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_length(cons_isNatList(z0))) -> c9(LENGTH(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_length(cons_isNatIList(z0))) -> c9(LENGTH(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U21(cons_active(z0))) -> c10(U21'(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_U21(cons_mark(z0))) -> c10(U21'(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_U21(cons_cons(z0, z1))) -> c10(U21'(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U21(cons_U11(z0, z1))) -> c10(U21'(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U21(cons_s(z0))) -> c10(U21'(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_U21(cons_length(z0))) -> c10(U21'(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_U21(cons_U21(z0))) -> c10(U21'(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_U21(cons_U31(z0, z1, z2, z3))) -> c10(U21'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U21(cons_take(z0, z1))) -> c10(U21'(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_U21(cons_and(z0, z1))) -> c10(U21'(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_U21(cons_isNat(z0))) -> c10(U21'(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_U21(cons_isNatList(z0))) -> c10(U21'(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_U21(cons_isNatIList(z0))) -> c10(U21'(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U31(x0, x1, x2, cons_active(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), active(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_active(z0))) ENCARG(cons_U31(x0, x1, x2, cons_mark(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), mark(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_mark(z0))) ENCARG(cons_U31(x0, x1, x2, cons_cons(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_U11(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_s(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), s(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_s(z0))) ENCARG(cons_U31(x0, x1, x2, cons_length(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), length(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_length(z0))) ENCARG(cons_U31(x0, x1, x2, cons_U21(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U21(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U21(z0))) ENCARG(cons_U31(x0, x1, x2, cons_U31(z0, z1, z2, z3))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U31(x0, x1, x2, cons_take(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_take(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_and(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_and(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_isNat(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNat(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNat(z0))) ENCARG(cons_U31(x0, x1, x2, cons_isNatList(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNatList(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNatList(z0))) ENCARG(cons_U31(x0, x1, x2, cons_isNatIList(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U31(x0, x1, cons_active(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), active(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_active(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_mark(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), mark(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_mark(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_cons(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), cons(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_cons(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U11(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), U11(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U11(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_s(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), s(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_s(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_length(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), length(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_length(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U21(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), U21(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U21(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U31(z0, z1, z2, z3), x3)) -> c11(U31'(encArg(x0), encArg(x1), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_take(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), take(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_take(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_and(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), and(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_and(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNat(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNat(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNat(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNatList(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNatList(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNatList(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNatIList(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNatIList(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNatIList(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, cons_active(z0), x2, x3)) -> c11(U31'(encArg(x0), active(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_active(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_mark(z0), x2, x3)) -> c11(U31'(encArg(x0), mark(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_mark(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_cons(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), cons(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_cons(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U11(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), U11(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U11(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_s(z0), x2, x3)) -> c11(U31'(encArg(x0), s(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_s(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_length(z0), x2, x3)) -> c11(U31'(encArg(x0), length(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_length(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U21(z0), x2, x3)) -> c11(U31'(encArg(x0), U21(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U21(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U31(z0, z1, z2, z3), x2, x3)) -> c11(U31'(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_take(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), take(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_take(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_and(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), and(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_and(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNat(z0), x2, x3)) -> c11(U31'(encArg(x0), isNat(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNat(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNatList(z0), x2, x3)) -> c11(U31'(encArg(x0), isNatList(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNatList(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNatIList(z0), x2, x3)) -> c11(U31'(encArg(x0), isNatIList(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNatIList(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_active(z0), x1, x2, x3)) -> c11(U31'(active(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_active(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_mark(z0), x1, x2, x3)) -> c11(U31'(mark(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_mark(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_cons(z0, z1), x1, x2, x3)) -> c11(U31'(cons(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_cons(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U11(z0, z1), x1, x2, x3)) -> c11(U31'(U11(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U11(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_s(z0), x1, x2, x3)) -> c11(U31'(s(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_s(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_length(z0), x1, x2, x3)) -> c11(U31'(length(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_length(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U21(z0), x1, x2, x3)) -> c11(U31'(U21(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U21(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U31(z0, z1, z2, z3), x1, x2, x3)) -> c11(U31'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_take(z0, z1), x1, x2, x3)) -> c11(U31'(take(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_take(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_and(z0, z1), x1, x2, x3)) -> c11(U31'(and(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_and(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNat(z0), x1, x2, x3)) -> c11(U31'(isNat(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNat(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNatList(z0), x1, x2, x3)) -> c11(U31'(isNatList(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNatList(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNatIList(z0), x1, x2, x3)) -> c11(U31'(isNatIList(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNatIList(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, x1, x2, zeros)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), zeros), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, 0)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), 0), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, tt)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), tt), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, nil)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), nil), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, zeros, x3)) -> c11(U31'(encArg(x0), encArg(x1), zeros, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, 0, x3)) -> c11(U31'(encArg(x0), encArg(x1), 0, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, tt, x3)) -> c11(U31'(encArg(x0), encArg(x1), tt, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, nil, x3)) -> c11(U31'(encArg(x0), encArg(x1), nil, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, zeros, x2, x3)) -> c11(U31'(encArg(x0), zeros, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, 0, x2, x3)) -> c11(U31'(encArg(x0), 0, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, tt, x2, x3)) -> c11(U31'(encArg(x0), tt, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, nil, x2, x3)) -> c11(U31'(encArg(x0), nil, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(zeros, x1, x2, x3)) -> c11(U31'(zeros, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(0, x1, x2, x3)) -> c11(U31'(0, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(tt, x1, x2, x3)) -> c11(U31'(tt, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(nil, x1, x2, x3)) -> c11(U31'(nil, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_take(x0, cons_active(z0))) -> c12(TAKE(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_take(x0, cons_mark(z0))) -> c12(TAKE(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_take(x0, cons_cons(z0, z1))) -> c12(TAKE(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_take(x0, cons_U11(z0, z1))) -> c12(TAKE(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_take(x0, cons_s(z0))) -> c12(TAKE(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_take(x0, cons_length(z0))) -> c12(TAKE(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_take(x0, cons_U21(z0))) -> c12(TAKE(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_take(x0, cons_U31(z0, z1, z2, z3))) -> c12(TAKE(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_take(x0, cons_take(z0, z1))) -> c12(TAKE(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_take(x0, cons_and(z0, z1))) -> c12(TAKE(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_take(x0, cons_isNat(z0))) -> c12(TAKE(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_take(x0, cons_isNatList(z0))) -> c12(TAKE(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_take(x0, cons_isNatIList(z0))) -> c12(TAKE(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_take(cons_active(z0), x1)) -> c12(TAKE(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_take(cons_mark(z0), x1)) -> c12(TAKE(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_take(cons_cons(z0, z1), x1)) -> c12(TAKE(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_U11(z0, z1), x1)) -> c12(TAKE(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_s(z0), x1)) -> c12(TAKE(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_take(cons_length(z0), x1)) -> c12(TAKE(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_take(cons_U21(z0), x1)) -> c12(TAKE(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_take(cons_U31(z0, z1, z2, z3), x1)) -> c12(TAKE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_take(cons_take(z0, z1), x1)) -> c12(TAKE(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_and(z0, z1), x1)) -> c12(TAKE(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_isNat(z0), x1)) -> c12(TAKE(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_take(cons_isNatList(z0), x1)) -> c12(TAKE(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_take(cons_isNatIList(z0), x1)) -> c12(TAKE(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_take(x0, zeros)) -> c12(TAKE(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_take(x0, 0)) -> c12(TAKE(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_take(x0, tt)) -> c12(TAKE(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_take(x0, nil)) -> c12(TAKE(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_take(zeros, x1)) -> c12(TAKE(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(0, x1)) -> c12(TAKE(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(tt, x1)) -> c12(TAKE(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(nil, x1)) -> c12(TAKE(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(x0, cons_active(z0))) -> c13(AND(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_and(x0, cons_mark(z0))) -> c13(AND(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_and(x0, cons_cons(z0, z1))) -> c13(AND(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_and(x0, cons_U11(z0, z1))) -> c13(AND(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_and(x0, cons_s(z0))) -> c13(AND(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_and(x0, cons_length(z0))) -> c13(AND(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_and(x0, cons_U21(z0))) -> c13(AND(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_and(x0, cons_U31(z0, z1, z2, z3))) -> c13(AND(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_and(x0, cons_take(z0, z1))) -> c13(AND(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_and(x0, cons_and(z0, z1))) -> c13(AND(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_and(x0, cons_isNat(z0))) -> c13(AND(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_and(x0, cons_isNatList(z0))) -> c13(AND(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_and(x0, cons_isNatIList(z0))) -> c13(AND(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_and(cons_active(z0), x1)) -> c13(AND(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_and(cons_mark(z0), x1)) -> c13(AND(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_and(cons_cons(z0, z1), x1)) -> c13(AND(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_U11(z0, z1), x1)) -> c13(AND(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_s(z0), x1)) -> c13(AND(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_and(cons_length(z0), x1)) -> c13(AND(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_and(cons_U21(z0), x1)) -> c13(AND(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_and(cons_U31(z0, z1, z2, z3), x1)) -> c13(AND(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_and(cons_take(z0, z1), x1)) -> c13(AND(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_and(z0, z1), x1)) -> c13(AND(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_isNat(z0), x1)) -> c13(AND(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_and(cons_isNatList(z0), x1)) -> c13(AND(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_and(cons_isNatIList(z0), x1)) -> c13(AND(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_and(x0, zeros)) -> c13(AND(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_and(x0, 0)) -> c13(AND(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_and(x0, tt)) -> c13(AND(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_and(x0, nil)) -> c13(AND(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_and(zeros, x1)) -> c13(AND(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(0, x1)) -> c13(AND(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(tt, x1)) -> c13(AND(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(nil, x1)) -> c13(AND(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_isNat(cons_active(z0))) -> c14(ISNAT(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_isNat(cons_mark(z0))) -> c14(ISNAT(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_isNat(cons_cons(z0, z1))) -> c14(ISNAT(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_isNat(cons_U11(z0, z1))) -> c14(ISNAT(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_isNat(cons_s(z0))) -> c14(ISNAT(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_isNat(cons_length(z0))) -> c14(ISNAT(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_isNat(cons_U21(z0))) -> c14(ISNAT(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_isNat(cons_U31(z0, z1, z2, z3))) -> c14(ISNAT(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_isNat(cons_take(z0, z1))) -> c14(ISNAT(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_isNat(cons_and(z0, z1))) -> c14(ISNAT(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_isNat(cons_isNat(z0))) -> c14(ISNAT(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_isNat(cons_isNatList(z0))) -> c14(ISNAT(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_isNat(cons_isNatIList(z0))) -> c14(ISNAT(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_isNatList(cons_active(z0))) -> c15(ISNATLIST(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_isNatList(cons_mark(z0))) -> c15(ISNATLIST(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_isNatList(cons_cons(z0, z1))) -> c15(ISNATLIST(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_isNatList(cons_U11(z0, z1))) -> c15(ISNATLIST(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_isNatList(cons_s(z0))) -> c15(ISNATLIST(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_isNatList(cons_length(z0))) -> c15(ISNATLIST(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_isNatList(cons_U21(z0))) -> c15(ISNATLIST(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_isNatList(cons_U31(z0, z1, z2, z3))) -> c15(ISNATLIST(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_isNatList(cons_take(z0, z1))) -> c15(ISNATLIST(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_isNatList(cons_and(z0, z1))) -> c15(ISNATLIST(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_isNatList(cons_isNat(z0))) -> c15(ISNATLIST(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_isNatList(cons_isNatList(z0))) -> c15(ISNATLIST(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_isNatList(cons_isNatIList(z0))) -> c15(ISNATLIST(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_isNatIList(cons_active(z0))) -> c16(ISNATILIST(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_isNatIList(cons_mark(z0))) -> c16(ISNATILIST(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_isNatIList(cons_cons(z0, z1))) -> c16(ISNATILIST(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_isNatIList(cons_U11(z0, z1))) -> c16(ISNATILIST(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_isNatIList(cons_s(z0))) -> c16(ISNATILIST(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_isNatIList(cons_length(z0))) -> c16(ISNATILIST(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_isNatIList(cons_U21(z0))) -> c16(ISNATILIST(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_isNatIList(cons_U31(z0, z1, z2, z3))) -> c16(ISNATILIST(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_isNatIList(cons_take(z0, z1))) -> c16(ISNATILIST(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_isNatIList(cons_and(z0, z1))) -> c16(ISNATILIST(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_isNatIList(cons_isNat(z0))) -> c16(ISNATILIST(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_isNatIList(cons_isNatList(z0))) -> c16(ISNATILIST(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_isNatIList(cons_isNatIList(z0))) -> c16(ISNATILIST(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) MARK(cons(zeros, x1)) -> c53(ACTIVE(cons(active(zeros), x1)), CONS(mark(zeros), x1), MARK(zeros)) MARK(cons(cons(z0, z1), x1)) -> c53(ACTIVE(cons(active(cons(mark(z0), z1)), x1)), CONS(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(cons(0, x1)) -> c53(ACTIVE(cons(active(0), x1)), CONS(mark(0), x1), MARK(0)) MARK(cons(U11(z0, z1), x1)) -> c53(ACTIVE(cons(active(U11(mark(z0), z1)), x1)), CONS(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(cons(tt, x1)) -> c53(ACTIVE(cons(active(tt), x1)), CONS(mark(tt), x1), MARK(tt)) MARK(cons(s(z0), x1)) -> c53(ACTIVE(cons(active(s(mark(z0))), x1)), CONS(mark(s(z0)), x1), MARK(s(z0))) MARK(cons(length(z0), x1)) -> c53(ACTIVE(cons(active(length(mark(z0))), x1)), CONS(mark(length(z0)), x1), MARK(length(z0))) MARK(cons(U21(z0), x1)) -> c53(ACTIVE(cons(active(U21(mark(z0))), x1)), CONS(mark(U21(z0)), x1), MARK(U21(z0))) MARK(cons(nil, x1)) -> c53(ACTIVE(cons(active(nil), x1)), CONS(mark(nil), x1), MARK(nil)) MARK(cons(U31(z0, z1, z2, z3), x1)) -> c53(ACTIVE(cons(active(U31(mark(z0), z1, z2, z3)), x1)), CONS(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(cons(take(z0, z1), x1)) -> c53(ACTIVE(cons(active(take(mark(z0), mark(z1))), x1)), CONS(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(cons(and(z0, z1), x1)) -> c53(ACTIVE(cons(active(and(mark(z0), z1)), x1)), CONS(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(cons(isNat(z0), x1)) -> c53(ACTIVE(cons(active(isNat(z0)), x1)), CONS(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(cons(isNatList(z0), x1)) -> c53(ACTIVE(cons(active(isNatList(z0)), x1)), CONS(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(cons(isNatIList(z0), x1)) -> c53(ACTIVE(cons(active(isNatIList(z0)), x1)), CONS(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(cons(x0, x1)) -> c53(CONS(mark(x0), x1)) MARK(cons(z0, z1)) -> c53(CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(z0, z1)), U11'(mark(z0), z1), MARK(z0)) MARK(U11(zeros, x1)) -> c55(ACTIVE(U11(active(zeros), x1)), U11'(mark(zeros), x1), MARK(zeros)) MARK(U11(cons(z0, z1), x1)) -> c55(ACTIVE(U11(active(cons(mark(z0), z1)), x1)), U11'(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(U11(0, x1)) -> c55(ACTIVE(U11(active(0), x1)), U11'(mark(0), x1), MARK(0)) MARK(U11(U11(z0, z1), x1)) -> c55(ACTIVE(U11(active(U11(mark(z0), z1)), x1)), U11'(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(U11(tt, x1)) -> c55(ACTIVE(U11(active(tt), x1)), U11'(mark(tt), x1), MARK(tt)) MARK(U11(s(z0), x1)) -> c55(ACTIVE(U11(active(s(mark(z0))), x1)), U11'(mark(s(z0)), x1), MARK(s(z0))) MARK(U11(length(z0), x1)) -> c55(ACTIVE(U11(active(length(mark(z0))), x1)), U11'(mark(length(z0)), x1), MARK(length(z0))) MARK(U11(U21(z0), x1)) -> c55(ACTIVE(U11(active(U21(mark(z0))), x1)), U11'(mark(U21(z0)), x1), MARK(U21(z0))) MARK(U11(nil, x1)) -> c55(ACTIVE(U11(active(nil), x1)), U11'(mark(nil), x1), MARK(nil)) MARK(U11(U31(z0, z1, z2, z3), x1)) -> c55(ACTIVE(U11(active(U31(mark(z0), z1, z2, z3)), x1)), U11'(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(U11(take(z0, z1), x1)) -> c55(ACTIVE(U11(active(take(mark(z0), mark(z1))), x1)), U11'(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(U11(and(z0, z1), x1)) -> c55(ACTIVE(U11(active(and(mark(z0), z1)), x1)), U11'(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(U11(isNat(z0), x1)) -> c55(ACTIVE(U11(active(isNat(z0)), x1)), U11'(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(U11(isNatList(z0), x1)) -> c55(ACTIVE(U11(active(isNatList(z0)), x1)), U11'(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(U11(isNatIList(z0), x1)) -> c55(ACTIVE(U11(active(isNatIList(z0)), x1)), U11'(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(U11(x0, x1)) -> c55(U11'(mark(x0), x1)) MARK(s(zeros)) -> c57(ACTIVE(s(active(zeros))), S(mark(zeros)), MARK(zeros)) MARK(s(cons(z0, z1))) -> c57(ACTIVE(s(active(cons(mark(z0), z1)))), S(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(s(0)) -> c57(ACTIVE(s(active(0))), S(mark(0)), MARK(0)) MARK(s(U11(z0, z1))) -> c57(ACTIVE(s(active(U11(mark(z0), z1)))), S(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(s(tt)) -> c57(ACTIVE(s(active(tt))), S(mark(tt)), MARK(tt)) MARK(s(s(z0))) -> c57(ACTIVE(s(active(s(mark(z0))))), S(mark(s(z0))), MARK(s(z0))) MARK(s(length(z0))) -> c57(ACTIVE(s(active(length(mark(z0))))), S(mark(length(z0))), MARK(length(z0))) MARK(s(U21(z0))) -> c57(ACTIVE(s(active(U21(mark(z0))))), S(mark(U21(z0))), MARK(U21(z0))) MARK(s(nil)) -> c57(ACTIVE(s(active(nil))), S(mark(nil)), MARK(nil)) MARK(s(U31(z0, z1, z2, z3))) -> c57(ACTIVE(s(active(U31(mark(z0), z1, z2, z3)))), S(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(s(take(z0, z1))) -> c57(ACTIVE(s(active(take(mark(z0), mark(z1))))), S(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(s(and(z0, z1))) -> c57(ACTIVE(s(active(and(mark(z0), z1)))), S(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(s(isNat(z0))) -> c57(ACTIVE(s(active(isNat(z0)))), S(mark(isNat(z0))), MARK(isNat(z0))) MARK(s(isNatList(z0))) -> c57(ACTIVE(s(active(isNatList(z0)))), S(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(s(isNatIList(z0))) -> c57(ACTIVE(s(active(isNatIList(z0)))), S(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(s(z0)) -> c57(S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(z0)), LENGTH(mark(z0)), MARK(z0)) MARK(length(zeros)) -> c58(ACTIVE(length(active(zeros))), LENGTH(mark(zeros)), MARK(zeros)) MARK(length(cons(z0, z1))) -> c58(ACTIVE(length(active(cons(mark(z0), z1)))), LENGTH(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(length(0)) -> c58(ACTIVE(length(active(0))), LENGTH(mark(0)), MARK(0)) MARK(length(U11(z0, z1))) -> c58(ACTIVE(length(active(U11(mark(z0), z1)))), LENGTH(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(length(tt)) -> c58(ACTIVE(length(active(tt))), LENGTH(mark(tt)), MARK(tt)) MARK(length(s(z0))) -> c58(ACTIVE(length(active(s(mark(z0))))), LENGTH(mark(s(z0))), MARK(s(z0))) MARK(length(length(z0))) -> c58(ACTIVE(length(active(length(mark(z0))))), LENGTH(mark(length(z0))), MARK(length(z0))) MARK(length(U21(z0))) -> c58(ACTIVE(length(active(U21(mark(z0))))), LENGTH(mark(U21(z0))), MARK(U21(z0))) MARK(length(nil)) -> c58(ACTIVE(length(active(nil))), LENGTH(mark(nil)), MARK(nil)) MARK(length(U31(z0, z1, z2, z3))) -> c58(ACTIVE(length(active(U31(mark(z0), z1, z2, z3)))), LENGTH(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(length(take(z0, z1))) -> c58(ACTIVE(length(active(take(mark(z0), mark(z1))))), LENGTH(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(length(and(z0, z1))) -> c58(ACTIVE(length(active(and(mark(z0), z1)))), LENGTH(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(length(isNat(z0))) -> c58(ACTIVE(length(active(isNat(z0)))), LENGTH(mark(isNat(z0))), MARK(isNat(z0))) MARK(length(isNatList(z0))) -> c58(ACTIVE(length(active(isNatList(z0)))), LENGTH(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(length(isNatIList(z0))) -> c58(ACTIVE(length(active(isNatIList(z0)))), LENGTH(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(U21(z0)) -> c59(ACTIVE(U21(z0)), U21'(mark(z0)), MARK(z0)) MARK(U21(zeros)) -> c59(ACTIVE(U21(active(zeros))), U21'(mark(zeros)), MARK(zeros)) MARK(U21(cons(z0, z1))) -> c59(ACTIVE(U21(active(cons(mark(z0), z1)))), U21'(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(U21(0)) -> c59(ACTIVE(U21(active(0))), U21'(mark(0)), MARK(0)) MARK(U21(U11(z0, z1))) -> c59(ACTIVE(U21(active(U11(mark(z0), z1)))), U21'(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(U21(tt)) -> c59(ACTIVE(U21(active(tt))), U21'(mark(tt)), MARK(tt)) MARK(U21(s(z0))) -> c59(ACTIVE(U21(active(s(mark(z0))))), U21'(mark(s(z0))), MARK(s(z0))) MARK(U21(length(z0))) -> c59(ACTIVE(U21(active(length(mark(z0))))), U21'(mark(length(z0))), MARK(length(z0))) MARK(U21(U21(z0))) -> c59(ACTIVE(U21(active(U21(mark(z0))))), U21'(mark(U21(z0))), MARK(U21(z0))) MARK(U21(nil)) -> c59(ACTIVE(U21(active(nil))), U21'(mark(nil)), MARK(nil)) MARK(U21(U31(z0, z1, z2, z3))) -> c59(ACTIVE(U21(active(U31(mark(z0), z1, z2, z3)))), U21'(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(U21(take(z0, z1))) -> c59(ACTIVE(U21(active(take(mark(z0), mark(z1))))), U21'(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(U21(and(z0, z1))) -> c59(ACTIVE(U21(active(and(mark(z0), z1)))), U21'(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(U21(isNat(z0))) -> c59(ACTIVE(U21(active(isNat(z0)))), U21'(mark(isNat(z0))), MARK(isNat(z0))) MARK(U21(isNatList(z0))) -> c59(ACTIVE(U21(active(isNatList(z0)))), U21'(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(U21(isNatIList(z0))) -> c59(ACTIVE(U21(active(isNatIList(z0)))), U21'(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(z0, z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U31(zeros, x1, x2, x3)) -> c61(ACTIVE(U31(active(zeros), x1, x2, x3)), U31'(mark(zeros), x1, x2, x3), MARK(zeros)) MARK(U31(cons(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(cons(mark(z0), z1)), x1, x2, x3)), U31'(mark(cons(z0, z1)), x1, x2, x3), MARK(cons(z0, z1))) MARK(U31(0, x1, x2, x3)) -> c61(ACTIVE(U31(active(0), x1, x2, x3)), U31'(mark(0), x1, x2, x3), MARK(0)) MARK(U31(U11(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(U11(mark(z0), z1)), x1, x2, x3)), U31'(mark(U11(z0, z1)), x1, x2, x3), MARK(U11(z0, z1))) MARK(U31(tt, x1, x2, x3)) -> c61(ACTIVE(U31(active(tt), x1, x2, x3)), U31'(mark(tt), x1, x2, x3), MARK(tt)) MARK(U31(s(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(s(mark(z0))), x1, x2, x3)), U31'(mark(s(z0)), x1, x2, x3), MARK(s(z0))) MARK(U31(length(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(length(mark(z0))), x1, x2, x3)), U31'(mark(length(z0)), x1, x2, x3), MARK(length(z0))) MARK(U31(U21(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(U21(mark(z0))), x1, x2, x3)), U31'(mark(U21(z0)), x1, x2, x3), MARK(U21(z0))) MARK(U31(nil, x1, x2, x3)) -> c61(ACTIVE(U31(active(nil), x1, x2, x3)), U31'(mark(nil), x1, x2, x3), MARK(nil)) MARK(U31(U31(z0, z1, z2, z3), x1, x2, x3)) -> c61(ACTIVE(U31(active(U31(mark(z0), z1, z2, z3)), x1, x2, x3)), U31'(mark(U31(z0, z1, z2, z3)), x1, x2, x3), MARK(U31(z0, z1, z2, z3))) MARK(U31(take(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(take(mark(z0), mark(z1))), x1, x2, x3)), U31'(mark(take(z0, z1)), x1, x2, x3), MARK(take(z0, z1))) MARK(U31(and(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(and(mark(z0), z1)), x1, x2, x3)), U31'(mark(and(z0, z1)), x1, x2, x3), MARK(and(z0, z1))) MARK(U31(isNat(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNat(z0)), x1, x2, x3)), U31'(mark(isNat(z0)), x1, x2, x3), MARK(isNat(z0))) MARK(U31(isNatList(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNatList(z0)), x1, x2, x3)), U31'(mark(isNatList(z0)), x1, x2, x3), MARK(isNatList(z0))) MARK(U31(isNatIList(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNatIList(z0)), x1, x2, x3)), U31'(mark(isNatIList(z0)), x1, x2, x3), MARK(isNatIList(z0))) MARK(U31(x0, x1, x2, x3)) -> c61(U31'(mark(x0), x1, x2, x3)) MARK(take(z0, x1)) -> c62(ACTIVE(take(z0, mark(x1))), TAKE(mark(z0), mark(x1)), MARK(z0), MARK(x1)) MARK(take(x0, z1)) -> c62(ACTIVE(take(mark(x0), z1)), TAKE(mark(x0), mark(z1)), MARK(x0), MARK(z1)) MARK(take(x0, zeros)) -> c62(ACTIVE(take(mark(x0), active(zeros))), TAKE(mark(x0), mark(zeros)), MARK(x0), MARK(zeros)) MARK(take(x0, cons(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(cons(mark(z0), z1)))), TAKE(mark(x0), mark(cons(z0, z1))), MARK(x0), MARK(cons(z0, z1))) MARK(take(x0, 0)) -> c62(ACTIVE(take(mark(x0), active(0))), TAKE(mark(x0), mark(0)), MARK(x0), MARK(0)) MARK(take(x0, U11(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(U11(mark(z0), z1)))), TAKE(mark(x0), mark(U11(z0, z1))), MARK(x0), MARK(U11(z0, z1))) MARK(take(x0, tt)) -> c62(ACTIVE(take(mark(x0), active(tt))), TAKE(mark(x0), mark(tt)), MARK(x0), MARK(tt)) MARK(take(x0, s(z0))) -> c62(ACTIVE(take(mark(x0), active(s(mark(z0))))), TAKE(mark(x0), mark(s(z0))), MARK(x0), MARK(s(z0))) MARK(take(x0, length(z0))) -> c62(ACTIVE(take(mark(x0), active(length(mark(z0))))), TAKE(mark(x0), mark(length(z0))), MARK(x0), MARK(length(z0))) MARK(take(x0, U21(z0))) -> c62(ACTIVE(take(mark(x0), active(U21(mark(z0))))), TAKE(mark(x0), mark(U21(z0))), MARK(x0), MARK(U21(z0))) MARK(take(x0, nil)) -> c62(ACTIVE(take(mark(x0), active(nil))), TAKE(mark(x0), mark(nil)), MARK(x0), MARK(nil)) MARK(take(x0, U31(z0, z1, z2, z3))) -> c62(ACTIVE(take(mark(x0), active(U31(mark(z0), z1, z2, z3)))), TAKE(mark(x0), mark(U31(z0, z1, z2, z3))), MARK(x0), MARK(U31(z0, z1, z2, z3))) MARK(take(x0, take(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(take(mark(z0), mark(z1))))), TAKE(mark(x0), mark(take(z0, z1))), MARK(x0), MARK(take(z0, z1))) MARK(take(x0, and(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(and(mark(z0), z1)))), TAKE(mark(x0), mark(and(z0, z1))), MARK(x0), MARK(and(z0, z1))) MARK(take(x0, isNat(z0))) -> c62(ACTIVE(take(mark(x0), active(isNat(z0)))), TAKE(mark(x0), mark(isNat(z0))), MARK(x0), MARK(isNat(z0))) MARK(take(x0, isNatList(z0))) -> c62(ACTIVE(take(mark(x0), active(isNatList(z0)))), TAKE(mark(x0), mark(isNatList(z0))), MARK(x0), MARK(isNatList(z0))) MARK(take(x0, isNatIList(z0))) -> c62(ACTIVE(take(mark(x0), active(isNatIList(z0)))), TAKE(mark(x0), mark(isNatIList(z0))), MARK(x0), MARK(isNatIList(z0))) MARK(take(zeros, x1)) -> c62(ACTIVE(take(active(zeros), mark(x1))), TAKE(mark(zeros), mark(x1)), MARK(zeros), MARK(x1)) MARK(take(cons(z0, z1), x1)) -> c62(ACTIVE(take(active(cons(mark(z0), z1)), mark(x1))), TAKE(mark(cons(z0, z1)), mark(x1)), MARK(cons(z0, z1)), MARK(x1)) MARK(take(0, x1)) -> c62(ACTIVE(take(active(0), mark(x1))), TAKE(mark(0), mark(x1)), MARK(0), MARK(x1)) MARK(take(U11(z0, z1), x1)) -> c62(ACTIVE(take(active(U11(mark(z0), z1)), mark(x1))), TAKE(mark(U11(z0, z1)), mark(x1)), MARK(U11(z0, z1)), MARK(x1)) MARK(take(tt, x1)) -> c62(ACTIVE(take(active(tt), mark(x1))), TAKE(mark(tt), mark(x1)), MARK(tt), MARK(x1)) MARK(take(s(z0), x1)) -> c62(ACTIVE(take(active(s(mark(z0))), mark(x1))), TAKE(mark(s(z0)), mark(x1)), MARK(s(z0)), MARK(x1)) MARK(take(length(z0), x1)) -> c62(ACTIVE(take(active(length(mark(z0))), mark(x1))), TAKE(mark(length(z0)), mark(x1)), MARK(length(z0)), MARK(x1)) MARK(take(U21(z0), x1)) -> c62(ACTIVE(take(active(U21(mark(z0))), mark(x1))), TAKE(mark(U21(z0)), mark(x1)), MARK(U21(z0)), MARK(x1)) MARK(take(nil, x1)) -> c62(ACTIVE(take(active(nil), mark(x1))), TAKE(mark(nil), mark(x1)), MARK(nil), MARK(x1)) MARK(take(U31(z0, z1, z2, z3), x1)) -> c62(ACTIVE(take(active(U31(mark(z0), z1, z2, z3)), mark(x1))), TAKE(mark(U31(z0, z1, z2, z3)), mark(x1)), MARK(U31(z0, z1, z2, z3)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c62(ACTIVE(take(active(take(mark(z0), mark(z1))), mark(x1))), TAKE(mark(take(z0, z1)), mark(x1)), MARK(take(z0, z1)), MARK(x1)) MARK(take(and(z0, z1), x1)) -> c62(ACTIVE(take(active(and(mark(z0), z1)), mark(x1))), TAKE(mark(and(z0, z1)), mark(x1)), MARK(and(z0, z1)), MARK(x1)) MARK(take(isNat(z0), x1)) -> c62(ACTIVE(take(active(isNat(z0)), mark(x1))), TAKE(mark(isNat(z0)), mark(x1)), MARK(isNat(z0)), MARK(x1)) MARK(take(isNatList(z0), x1)) -> c62(ACTIVE(take(active(isNatList(z0)), mark(x1))), TAKE(mark(isNatList(z0)), mark(x1)), MARK(isNatList(z0)), MARK(x1)) MARK(take(isNatIList(z0), x1)) -> c62(ACTIVE(take(active(isNatIList(z0)), mark(x1))), TAKE(mark(isNatIList(z0)), mark(x1)), MARK(isNatIList(z0)), MARK(x1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(z0, z1)), AND(mark(z0), z1), MARK(z0)) MARK(and(zeros, x1)) -> c63(ACTIVE(and(active(zeros), x1)), AND(mark(zeros), x1), MARK(zeros)) MARK(and(cons(z0, z1), x1)) -> c63(ACTIVE(and(active(cons(mark(z0), z1)), x1)), AND(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(and(0, x1)) -> c63(ACTIVE(and(active(0), x1)), AND(mark(0), x1), MARK(0)) MARK(and(U11(z0, z1), x1)) -> c63(ACTIVE(and(active(U11(mark(z0), z1)), x1)), AND(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(and(tt, x1)) -> c63(ACTIVE(and(active(tt), x1)), AND(mark(tt), x1), MARK(tt)) MARK(and(s(z0), x1)) -> c63(ACTIVE(and(active(s(mark(z0))), x1)), AND(mark(s(z0)), x1), MARK(s(z0))) MARK(and(length(z0), x1)) -> c63(ACTIVE(and(active(length(mark(z0))), x1)), AND(mark(length(z0)), x1), MARK(length(z0))) MARK(and(U21(z0), x1)) -> c63(ACTIVE(and(active(U21(mark(z0))), x1)), AND(mark(U21(z0)), x1), MARK(U21(z0))) MARK(and(nil, x1)) -> c63(ACTIVE(and(active(nil), x1)), AND(mark(nil), x1), MARK(nil)) MARK(and(U31(z0, z1, z2, z3), x1)) -> c63(ACTIVE(and(active(U31(mark(z0), z1, z2, z3)), x1)), AND(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(and(take(z0, z1), x1)) -> c63(ACTIVE(and(active(take(mark(z0), mark(z1))), x1)), AND(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(and(and(z0, z1), x1)) -> c63(ACTIVE(and(active(and(mark(z0), z1)), x1)), AND(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(and(isNat(z0), x1)) -> c63(ACTIVE(and(active(isNat(z0)), x1)), AND(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(and(isNatList(z0), x1)) -> c63(ACTIVE(and(active(isNatList(z0)), x1)), AND(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(and(isNatIList(z0), x1)) -> c63(ACTIVE(and(active(isNatIList(z0)), x1)), AND(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(and(x0, x1)) -> c63(AND(mark(x0), x1)) S tuples: ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 MARK(cons(zeros, x1)) -> c53(ACTIVE(cons(active(zeros), x1)), CONS(mark(zeros), x1), MARK(zeros)) MARK(cons(cons(z0, z1), x1)) -> c53(ACTIVE(cons(active(cons(mark(z0), z1)), x1)), CONS(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(cons(0, x1)) -> c53(ACTIVE(cons(active(0), x1)), CONS(mark(0), x1), MARK(0)) MARK(cons(U11(z0, z1), x1)) -> c53(ACTIVE(cons(active(U11(mark(z0), z1)), x1)), CONS(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(cons(tt, x1)) -> c53(ACTIVE(cons(active(tt), x1)), CONS(mark(tt), x1), MARK(tt)) MARK(cons(s(z0), x1)) -> c53(ACTIVE(cons(active(s(mark(z0))), x1)), CONS(mark(s(z0)), x1), MARK(s(z0))) MARK(cons(length(z0), x1)) -> c53(ACTIVE(cons(active(length(mark(z0))), x1)), CONS(mark(length(z0)), x1), MARK(length(z0))) MARK(cons(U21(z0), x1)) -> c53(ACTIVE(cons(active(U21(mark(z0))), x1)), CONS(mark(U21(z0)), x1), MARK(U21(z0))) MARK(cons(nil, x1)) -> c53(ACTIVE(cons(active(nil), x1)), CONS(mark(nil), x1), MARK(nil)) MARK(cons(U31(z0, z1, z2, z3), x1)) -> c53(ACTIVE(cons(active(U31(mark(z0), z1, z2, z3)), x1)), CONS(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(cons(take(z0, z1), x1)) -> c53(ACTIVE(cons(active(take(mark(z0), mark(z1))), x1)), CONS(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(cons(and(z0, z1), x1)) -> c53(ACTIVE(cons(active(and(mark(z0), z1)), x1)), CONS(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(cons(isNat(z0), x1)) -> c53(ACTIVE(cons(active(isNat(z0)), x1)), CONS(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(cons(isNatList(z0), x1)) -> c53(ACTIVE(cons(active(isNatList(z0)), x1)), CONS(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(cons(isNatIList(z0), x1)) -> c53(ACTIVE(cons(active(isNatIList(z0)), x1)), CONS(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(cons(x0, x1)) -> c53(CONS(mark(x0), x1)) MARK(cons(z0, z1)) -> c53(CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(z0, z1)), U11'(mark(z0), z1), MARK(z0)) MARK(U11(zeros, x1)) -> c55(ACTIVE(U11(active(zeros), x1)), U11'(mark(zeros), x1), MARK(zeros)) MARK(U11(cons(z0, z1), x1)) -> c55(ACTIVE(U11(active(cons(mark(z0), z1)), x1)), U11'(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(U11(0, x1)) -> c55(ACTIVE(U11(active(0), x1)), U11'(mark(0), x1), MARK(0)) MARK(U11(U11(z0, z1), x1)) -> c55(ACTIVE(U11(active(U11(mark(z0), z1)), x1)), U11'(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(U11(tt, x1)) -> c55(ACTIVE(U11(active(tt), x1)), U11'(mark(tt), x1), MARK(tt)) MARK(U11(s(z0), x1)) -> c55(ACTIVE(U11(active(s(mark(z0))), x1)), U11'(mark(s(z0)), x1), MARK(s(z0))) MARK(U11(length(z0), x1)) -> c55(ACTIVE(U11(active(length(mark(z0))), x1)), U11'(mark(length(z0)), x1), MARK(length(z0))) MARK(U11(U21(z0), x1)) -> c55(ACTIVE(U11(active(U21(mark(z0))), x1)), U11'(mark(U21(z0)), x1), MARK(U21(z0))) MARK(U11(nil, x1)) -> c55(ACTIVE(U11(active(nil), x1)), U11'(mark(nil), x1), MARK(nil)) MARK(U11(U31(z0, z1, z2, z3), x1)) -> c55(ACTIVE(U11(active(U31(mark(z0), z1, z2, z3)), x1)), U11'(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(U11(take(z0, z1), x1)) -> c55(ACTIVE(U11(active(take(mark(z0), mark(z1))), x1)), U11'(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(U11(and(z0, z1), x1)) -> c55(ACTIVE(U11(active(and(mark(z0), z1)), x1)), U11'(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(U11(isNat(z0), x1)) -> c55(ACTIVE(U11(active(isNat(z0)), x1)), U11'(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(U11(isNatList(z0), x1)) -> c55(ACTIVE(U11(active(isNatList(z0)), x1)), U11'(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(U11(isNatIList(z0), x1)) -> c55(ACTIVE(U11(active(isNatIList(z0)), x1)), U11'(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(U11(x0, x1)) -> c55(U11'(mark(x0), x1)) MARK(s(zeros)) -> c57(ACTIVE(s(active(zeros))), S(mark(zeros)), MARK(zeros)) MARK(s(cons(z0, z1))) -> c57(ACTIVE(s(active(cons(mark(z0), z1)))), S(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(s(0)) -> c57(ACTIVE(s(active(0))), S(mark(0)), MARK(0)) MARK(s(U11(z0, z1))) -> c57(ACTIVE(s(active(U11(mark(z0), z1)))), S(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(s(tt)) -> c57(ACTIVE(s(active(tt))), S(mark(tt)), MARK(tt)) MARK(s(s(z0))) -> c57(ACTIVE(s(active(s(mark(z0))))), S(mark(s(z0))), MARK(s(z0))) MARK(s(length(z0))) -> c57(ACTIVE(s(active(length(mark(z0))))), S(mark(length(z0))), MARK(length(z0))) MARK(s(U21(z0))) -> c57(ACTIVE(s(active(U21(mark(z0))))), S(mark(U21(z0))), MARK(U21(z0))) MARK(s(nil)) -> c57(ACTIVE(s(active(nil))), S(mark(nil)), MARK(nil)) MARK(s(U31(z0, z1, z2, z3))) -> c57(ACTIVE(s(active(U31(mark(z0), z1, z2, z3)))), S(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(s(take(z0, z1))) -> c57(ACTIVE(s(active(take(mark(z0), mark(z1))))), S(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(s(and(z0, z1))) -> c57(ACTIVE(s(active(and(mark(z0), z1)))), S(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(s(isNat(z0))) -> c57(ACTIVE(s(active(isNat(z0)))), S(mark(isNat(z0))), MARK(isNat(z0))) MARK(s(isNatList(z0))) -> c57(ACTIVE(s(active(isNatList(z0)))), S(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(s(isNatIList(z0))) -> c57(ACTIVE(s(active(isNatIList(z0)))), S(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(s(z0)) -> c57(S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(z0)), LENGTH(mark(z0)), MARK(z0)) MARK(length(zeros)) -> c58(ACTIVE(length(active(zeros))), LENGTH(mark(zeros)), MARK(zeros)) MARK(length(cons(z0, z1))) -> c58(ACTIVE(length(active(cons(mark(z0), z1)))), LENGTH(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(length(0)) -> c58(ACTIVE(length(active(0))), LENGTH(mark(0)), MARK(0)) MARK(length(U11(z0, z1))) -> c58(ACTIVE(length(active(U11(mark(z0), z1)))), LENGTH(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(length(tt)) -> c58(ACTIVE(length(active(tt))), LENGTH(mark(tt)), MARK(tt)) MARK(length(s(z0))) -> c58(ACTIVE(length(active(s(mark(z0))))), LENGTH(mark(s(z0))), MARK(s(z0))) MARK(length(length(z0))) -> c58(ACTIVE(length(active(length(mark(z0))))), LENGTH(mark(length(z0))), MARK(length(z0))) MARK(length(U21(z0))) -> c58(ACTIVE(length(active(U21(mark(z0))))), LENGTH(mark(U21(z0))), MARK(U21(z0))) MARK(length(nil)) -> c58(ACTIVE(length(active(nil))), LENGTH(mark(nil)), MARK(nil)) MARK(length(U31(z0, z1, z2, z3))) -> c58(ACTIVE(length(active(U31(mark(z0), z1, z2, z3)))), LENGTH(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(length(take(z0, z1))) -> c58(ACTIVE(length(active(take(mark(z0), mark(z1))))), LENGTH(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(length(and(z0, z1))) -> c58(ACTIVE(length(active(and(mark(z0), z1)))), LENGTH(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(length(isNat(z0))) -> c58(ACTIVE(length(active(isNat(z0)))), LENGTH(mark(isNat(z0))), MARK(isNat(z0))) MARK(length(isNatList(z0))) -> c58(ACTIVE(length(active(isNatList(z0)))), LENGTH(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(length(isNatIList(z0))) -> c58(ACTIVE(length(active(isNatIList(z0)))), LENGTH(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(U21(z0)) -> c59(ACTIVE(U21(z0)), U21'(mark(z0)), MARK(z0)) MARK(U21(zeros)) -> c59(ACTIVE(U21(active(zeros))), U21'(mark(zeros)), MARK(zeros)) MARK(U21(cons(z0, z1))) -> c59(ACTIVE(U21(active(cons(mark(z0), z1)))), U21'(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(U21(0)) -> c59(ACTIVE(U21(active(0))), U21'(mark(0)), MARK(0)) MARK(U21(U11(z0, z1))) -> c59(ACTIVE(U21(active(U11(mark(z0), z1)))), U21'(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(U21(tt)) -> c59(ACTIVE(U21(active(tt))), U21'(mark(tt)), MARK(tt)) MARK(U21(s(z0))) -> c59(ACTIVE(U21(active(s(mark(z0))))), U21'(mark(s(z0))), MARK(s(z0))) MARK(U21(length(z0))) -> c59(ACTIVE(U21(active(length(mark(z0))))), U21'(mark(length(z0))), MARK(length(z0))) MARK(U21(U21(z0))) -> c59(ACTIVE(U21(active(U21(mark(z0))))), U21'(mark(U21(z0))), MARK(U21(z0))) MARK(U21(nil)) -> c59(ACTIVE(U21(active(nil))), U21'(mark(nil)), MARK(nil)) MARK(U21(U31(z0, z1, z2, z3))) -> c59(ACTIVE(U21(active(U31(mark(z0), z1, z2, z3)))), U21'(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(U21(take(z0, z1))) -> c59(ACTIVE(U21(active(take(mark(z0), mark(z1))))), U21'(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(U21(and(z0, z1))) -> c59(ACTIVE(U21(active(and(mark(z0), z1)))), U21'(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(U21(isNat(z0))) -> c59(ACTIVE(U21(active(isNat(z0)))), U21'(mark(isNat(z0))), MARK(isNat(z0))) MARK(U21(isNatList(z0))) -> c59(ACTIVE(U21(active(isNatList(z0)))), U21'(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(U21(isNatIList(z0))) -> c59(ACTIVE(U21(active(isNatIList(z0)))), U21'(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(z0, z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U31(zeros, x1, x2, x3)) -> c61(ACTIVE(U31(active(zeros), x1, x2, x3)), U31'(mark(zeros), x1, x2, x3), MARK(zeros)) MARK(U31(cons(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(cons(mark(z0), z1)), x1, x2, x3)), U31'(mark(cons(z0, z1)), x1, x2, x3), MARK(cons(z0, z1))) MARK(U31(0, x1, x2, x3)) -> c61(ACTIVE(U31(active(0), x1, x2, x3)), U31'(mark(0), x1, x2, x3), MARK(0)) MARK(U31(U11(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(U11(mark(z0), z1)), x1, x2, x3)), U31'(mark(U11(z0, z1)), x1, x2, x3), MARK(U11(z0, z1))) MARK(U31(tt, x1, x2, x3)) -> c61(ACTIVE(U31(active(tt), x1, x2, x3)), U31'(mark(tt), x1, x2, x3), MARK(tt)) MARK(U31(s(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(s(mark(z0))), x1, x2, x3)), U31'(mark(s(z0)), x1, x2, x3), MARK(s(z0))) MARK(U31(length(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(length(mark(z0))), x1, x2, x3)), U31'(mark(length(z0)), x1, x2, x3), MARK(length(z0))) MARK(U31(U21(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(U21(mark(z0))), x1, x2, x3)), U31'(mark(U21(z0)), x1, x2, x3), MARK(U21(z0))) MARK(U31(nil, x1, x2, x3)) -> c61(ACTIVE(U31(active(nil), x1, x2, x3)), U31'(mark(nil), x1, x2, x3), MARK(nil)) MARK(U31(U31(z0, z1, z2, z3), x1, x2, x3)) -> c61(ACTIVE(U31(active(U31(mark(z0), z1, z2, z3)), x1, x2, x3)), U31'(mark(U31(z0, z1, z2, z3)), x1, x2, x3), MARK(U31(z0, z1, z2, z3))) MARK(U31(take(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(take(mark(z0), mark(z1))), x1, x2, x3)), U31'(mark(take(z0, z1)), x1, x2, x3), MARK(take(z0, z1))) MARK(U31(and(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(and(mark(z0), z1)), x1, x2, x3)), U31'(mark(and(z0, z1)), x1, x2, x3), MARK(and(z0, z1))) MARK(U31(isNat(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNat(z0)), x1, x2, x3)), U31'(mark(isNat(z0)), x1, x2, x3), MARK(isNat(z0))) MARK(U31(isNatList(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNatList(z0)), x1, x2, x3)), U31'(mark(isNatList(z0)), x1, x2, x3), MARK(isNatList(z0))) MARK(U31(isNatIList(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNatIList(z0)), x1, x2, x3)), U31'(mark(isNatIList(z0)), x1, x2, x3), MARK(isNatIList(z0))) MARK(U31(x0, x1, x2, x3)) -> c61(U31'(mark(x0), x1, x2, x3)) MARK(take(z0, x1)) -> c62(ACTIVE(take(z0, mark(x1))), TAKE(mark(z0), mark(x1)), MARK(z0), MARK(x1)) MARK(take(x0, z1)) -> c62(ACTIVE(take(mark(x0), z1)), TAKE(mark(x0), mark(z1)), MARK(x0), MARK(z1)) MARK(take(x0, zeros)) -> c62(ACTIVE(take(mark(x0), active(zeros))), TAKE(mark(x0), mark(zeros)), MARK(x0), MARK(zeros)) MARK(take(x0, cons(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(cons(mark(z0), z1)))), TAKE(mark(x0), mark(cons(z0, z1))), MARK(x0), MARK(cons(z0, z1))) MARK(take(x0, 0)) -> c62(ACTIVE(take(mark(x0), active(0))), TAKE(mark(x0), mark(0)), MARK(x0), MARK(0)) MARK(take(x0, U11(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(U11(mark(z0), z1)))), TAKE(mark(x0), mark(U11(z0, z1))), MARK(x0), MARK(U11(z0, z1))) MARK(take(x0, tt)) -> c62(ACTIVE(take(mark(x0), active(tt))), TAKE(mark(x0), mark(tt)), MARK(x0), MARK(tt)) MARK(take(x0, s(z0))) -> c62(ACTIVE(take(mark(x0), active(s(mark(z0))))), TAKE(mark(x0), mark(s(z0))), MARK(x0), MARK(s(z0))) MARK(take(x0, length(z0))) -> c62(ACTIVE(take(mark(x0), active(length(mark(z0))))), TAKE(mark(x0), mark(length(z0))), MARK(x0), MARK(length(z0))) MARK(take(x0, U21(z0))) -> c62(ACTIVE(take(mark(x0), active(U21(mark(z0))))), TAKE(mark(x0), mark(U21(z0))), MARK(x0), MARK(U21(z0))) MARK(take(x0, nil)) -> c62(ACTIVE(take(mark(x0), active(nil))), TAKE(mark(x0), mark(nil)), MARK(x0), MARK(nil)) MARK(take(x0, U31(z0, z1, z2, z3))) -> c62(ACTIVE(take(mark(x0), active(U31(mark(z0), z1, z2, z3)))), TAKE(mark(x0), mark(U31(z0, z1, z2, z3))), MARK(x0), MARK(U31(z0, z1, z2, z3))) MARK(take(x0, take(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(take(mark(z0), mark(z1))))), TAKE(mark(x0), mark(take(z0, z1))), MARK(x0), MARK(take(z0, z1))) MARK(take(x0, and(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(and(mark(z0), z1)))), TAKE(mark(x0), mark(and(z0, z1))), MARK(x0), MARK(and(z0, z1))) MARK(take(x0, isNat(z0))) -> c62(ACTIVE(take(mark(x0), active(isNat(z0)))), TAKE(mark(x0), mark(isNat(z0))), MARK(x0), MARK(isNat(z0))) MARK(take(x0, isNatList(z0))) -> c62(ACTIVE(take(mark(x0), active(isNatList(z0)))), TAKE(mark(x0), mark(isNatList(z0))), MARK(x0), MARK(isNatList(z0))) MARK(take(x0, isNatIList(z0))) -> c62(ACTIVE(take(mark(x0), active(isNatIList(z0)))), TAKE(mark(x0), mark(isNatIList(z0))), MARK(x0), MARK(isNatIList(z0))) MARK(take(zeros, x1)) -> c62(ACTIVE(take(active(zeros), mark(x1))), TAKE(mark(zeros), mark(x1)), MARK(zeros), MARK(x1)) MARK(take(cons(z0, z1), x1)) -> c62(ACTIVE(take(active(cons(mark(z0), z1)), mark(x1))), TAKE(mark(cons(z0, z1)), mark(x1)), MARK(cons(z0, z1)), MARK(x1)) MARK(take(0, x1)) -> c62(ACTIVE(take(active(0), mark(x1))), TAKE(mark(0), mark(x1)), MARK(0), MARK(x1)) MARK(take(U11(z0, z1), x1)) -> c62(ACTIVE(take(active(U11(mark(z0), z1)), mark(x1))), TAKE(mark(U11(z0, z1)), mark(x1)), MARK(U11(z0, z1)), MARK(x1)) MARK(take(tt, x1)) -> c62(ACTIVE(take(active(tt), mark(x1))), TAKE(mark(tt), mark(x1)), MARK(tt), MARK(x1)) MARK(take(s(z0), x1)) -> c62(ACTIVE(take(active(s(mark(z0))), mark(x1))), TAKE(mark(s(z0)), mark(x1)), MARK(s(z0)), MARK(x1)) MARK(take(length(z0), x1)) -> c62(ACTIVE(take(active(length(mark(z0))), mark(x1))), TAKE(mark(length(z0)), mark(x1)), MARK(length(z0)), MARK(x1)) MARK(take(U21(z0), x1)) -> c62(ACTIVE(take(active(U21(mark(z0))), mark(x1))), TAKE(mark(U21(z0)), mark(x1)), MARK(U21(z0)), MARK(x1)) MARK(take(nil, x1)) -> c62(ACTIVE(take(active(nil), mark(x1))), TAKE(mark(nil), mark(x1)), MARK(nil), MARK(x1)) MARK(take(U31(z0, z1, z2, z3), x1)) -> c62(ACTIVE(take(active(U31(mark(z0), z1, z2, z3)), mark(x1))), TAKE(mark(U31(z0, z1, z2, z3)), mark(x1)), MARK(U31(z0, z1, z2, z3)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c62(ACTIVE(take(active(take(mark(z0), mark(z1))), mark(x1))), TAKE(mark(take(z0, z1)), mark(x1)), MARK(take(z0, z1)), MARK(x1)) MARK(take(and(z0, z1), x1)) -> c62(ACTIVE(take(active(and(mark(z0), z1)), mark(x1))), TAKE(mark(and(z0, z1)), mark(x1)), MARK(and(z0, z1)), MARK(x1)) MARK(take(isNat(z0), x1)) -> c62(ACTIVE(take(active(isNat(z0)), mark(x1))), TAKE(mark(isNat(z0)), mark(x1)), MARK(isNat(z0)), MARK(x1)) MARK(take(isNatList(z0), x1)) -> c62(ACTIVE(take(active(isNatList(z0)), mark(x1))), TAKE(mark(isNatList(z0)), mark(x1)), MARK(isNatList(z0)), MARK(x1)) MARK(take(isNatIList(z0), x1)) -> c62(ACTIVE(take(active(isNatIList(z0)), mark(x1))), TAKE(mark(isNatIList(z0)), mark(x1)), MARK(isNatIList(z0)), MARK(x1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(z0, z1)), AND(mark(z0), z1), MARK(z0)) MARK(and(zeros, x1)) -> c63(ACTIVE(and(active(zeros), x1)), AND(mark(zeros), x1), MARK(zeros)) MARK(and(cons(z0, z1), x1)) -> c63(ACTIVE(and(active(cons(mark(z0), z1)), x1)), AND(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(and(0, x1)) -> c63(ACTIVE(and(active(0), x1)), AND(mark(0), x1), MARK(0)) MARK(and(U11(z0, z1), x1)) -> c63(ACTIVE(and(active(U11(mark(z0), z1)), x1)), AND(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(and(tt, x1)) -> c63(ACTIVE(and(active(tt), x1)), AND(mark(tt), x1), MARK(tt)) MARK(and(s(z0), x1)) -> c63(ACTIVE(and(active(s(mark(z0))), x1)), AND(mark(s(z0)), x1), MARK(s(z0))) MARK(and(length(z0), x1)) -> c63(ACTIVE(and(active(length(mark(z0))), x1)), AND(mark(length(z0)), x1), MARK(length(z0))) MARK(and(U21(z0), x1)) -> c63(ACTIVE(and(active(U21(mark(z0))), x1)), AND(mark(U21(z0)), x1), MARK(U21(z0))) MARK(and(nil, x1)) -> c63(ACTIVE(and(active(nil), x1)), AND(mark(nil), x1), MARK(nil)) MARK(and(U31(z0, z1, z2, z3), x1)) -> c63(ACTIVE(and(active(U31(mark(z0), z1, z2, z3)), x1)), AND(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(and(take(z0, z1), x1)) -> c63(ACTIVE(and(active(take(mark(z0), mark(z1))), x1)), AND(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(and(and(z0, z1), x1)) -> c63(ACTIVE(and(active(and(mark(z0), z1)), x1)), AND(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(and(isNat(z0), x1)) -> c63(ACTIVE(and(active(isNat(z0)), x1)), AND(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(and(isNatList(z0), x1)) -> c63(ACTIVE(and(active(isNatList(z0)), x1)), AND(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(and(isNatIList(z0), x1)) -> c63(ACTIVE(and(active(isNatIList(z0)), x1)), AND(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(and(x0, x1)) -> c63(AND(mark(x0), x1)) K tuples:none Defined Rule Symbols: encArg_1, active_1, mark_1, cons_2, U11_2, s_1, length_1, U21_1, U31_4, take_2, and_2, isNat_1, isNatList_1, isNatIList_1 Defined Pair Symbols: ACTIVE_1, MARK_1, CONS_2, U11'_2, S_1, LENGTH_1, U21'_1, U31'_4, TAKE_2, AND_2, ISNAT_1, ISNATLIST_1, ISNATILIST_1, ENCODE_ACTIVE_1, ENCODE_MARK_1, ENCODE_CONS_2, ENCODE_U11_2, ENCODE_S_1, ENCODE_LENGTH_1, ENCODE_U21_1, ENCODE_U31_4, ENCODE_TAKE_2, ENCODE_AND_2, ENCODE_ISNAT_1, ENCODE_ISNATLIST_1, ENCODE_ISNATILIST_1, ENCARG_1 Compound Symbols: c36_1, c37_3, c38_1, c39_1, c40_2, c41_2, c42_2, c43_1, c45_1, c48_1, c52_1, c64_2, c65_2, c66_2, c67_1, c68_1, c69_1, c70_1, c71_1, c72_1, c73_1, c74_1, c75_1, c76_1, c77_1, c78_1, c79_1, c80_1, c81_1, c82_1, c83_1, c84_1, c85_1, c86_1, c87_1, c88_1, c89_1, c90_1, c91_1, c92_1, c93_1, c94_1, c95_1, c96_1, c97_1, c98_1, c99_1, c100_1, c101_1, c102_1, c34_1, c35_2, c44_3, c46_3, c47_3, c49_3, c50_2, c51_4, c54, c56, c60, c_1, c4_2, c4_1, c5_2, c5_1, c6_3, c6_2, c7_3, c7_2, c8_2, c9_2, c10_2, c11_5, c11_4, c12_3, c12_2, c13_3, c13_2, c14_2, c15_2, c16_2, c53_3, c53_1, c53_2, c55_3, c55_1, c57_3, c57_2, c58_3, c59_3, c61_3, c61_1, c62_4, c63_3, c63_1 ---------------------------------------- (113) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace ENCODE_ACTIVE(z0) -> c(ACTIVE(encArg(z0))) by ENCODE_ACTIVE(zeros) -> c(ACTIVE(zeros)) ENCODE_ACTIVE(0) -> c(ACTIVE(0)) ENCODE_ACTIVE(tt) -> c(ACTIVE(tt)) ENCODE_ACTIVE(nil) -> c(ACTIVE(nil)) ENCODE_ACTIVE(cons_active(z0)) -> c(ACTIVE(active(encArg(z0)))) ENCODE_ACTIVE(cons_mark(z0)) -> c(ACTIVE(mark(encArg(z0)))) ENCODE_ACTIVE(cons_cons(z0, z1)) -> c(ACTIVE(cons(encArg(z0), encArg(z1)))) ENCODE_ACTIVE(cons_U11(z0, z1)) -> c(ACTIVE(U11(encArg(z0), encArg(z1)))) ENCODE_ACTIVE(cons_s(z0)) -> c(ACTIVE(s(encArg(z0)))) ENCODE_ACTIVE(cons_length(z0)) -> c(ACTIVE(length(encArg(z0)))) ENCODE_ACTIVE(cons_U21(z0)) -> c(ACTIVE(U21(encArg(z0)))) ENCODE_ACTIVE(cons_U31(z0, z1, z2, z3)) -> c(ACTIVE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)))) ENCODE_ACTIVE(cons_take(z0, z1)) -> c(ACTIVE(take(encArg(z0), encArg(z1)))) ENCODE_ACTIVE(cons_and(z0, z1)) -> c(ACTIVE(and(encArg(z0), encArg(z1)))) ENCODE_ACTIVE(cons_isNat(z0)) -> c(ACTIVE(isNat(encArg(z0)))) ENCODE_ACTIVE(cons_isNatList(z0)) -> c(ACTIVE(isNatList(encArg(z0)))) ENCODE_ACTIVE(cons_isNatIList(z0)) -> c(ACTIVE(isNatIList(encArg(z0)))) ---------------------------------------- (114) Obligation: Complexity Dependency Tuples Problem Rules: encArg(zeros) -> zeros encArg(0) -> 0 encArg(tt) -> tt encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_U11(z0, z1)) -> U11(encArg(z0), encArg(z1)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_length(z0)) -> length(encArg(z0)) encArg(cons_U21(z0)) -> U21(encArg(z0)) encArg(cons_U31(z0, z1, z2, z3)) -> U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_isNat(z0)) -> isNat(encArg(z0)) encArg(cons_isNatList(z0)) -> isNatList(encArg(z0)) encArg(cons_isNatIList(z0)) -> isNatIList(encArg(z0)) active(zeros) -> mark(cons(0, zeros)) active(U11(tt, z0)) -> mark(s(length(z0))) active(U21(tt)) -> mark(nil) active(U31(tt, z0, z1, z2)) -> mark(cons(z2, take(z1, z0))) active(and(tt, z0)) -> mark(z0) active(isNat(0)) -> mark(tt) active(isNat(length(z0))) -> mark(isNatList(z0)) active(isNat(s(z0))) -> mark(isNat(z0)) active(isNatIList(z0)) -> mark(isNatList(z0)) active(isNatIList(zeros)) -> mark(tt) active(isNatIList(cons(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(isNatList(nil)) -> mark(tt) active(isNatList(cons(z0, z1))) -> mark(and(isNat(z0), isNatList(z1))) active(isNatList(take(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(length(nil)) -> mark(0) active(length(cons(z0, z1))) -> mark(U11(and(isNatList(z1), isNat(z0)), z1)) active(take(0, z0)) -> mark(U21(isNatIList(z0))) active(take(s(z0), cons(z1, z2))) -> mark(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)) mark(zeros) -> active(zeros) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(0) -> active(0) mark(U11(z0, z1)) -> active(U11(mark(z0), z1)) mark(tt) -> active(tt) mark(s(z0)) -> active(s(mark(z0))) mark(length(z0)) -> active(length(mark(z0))) mark(U21(z0)) -> active(U21(mark(z0))) mark(nil) -> active(nil) mark(U31(z0, z1, z2, z3)) -> active(U31(mark(z0), z1, z2, z3)) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(isNat(z0)) -> active(isNat(z0)) mark(isNatList(z0)) -> active(isNatList(z0)) mark(isNatIList(z0)) -> active(isNatIList(z0)) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) U11(mark(z0), z1) -> U11(z0, z1) U11(z0, mark(z1)) -> U11(z0, z1) U11(active(z0), z1) -> U11(z0, z1) U11(z0, active(z1)) -> U11(z0, z1) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) length(mark(z0)) -> length(z0) length(active(z0)) -> length(z0) U21(mark(z0)) -> U21(z0) U21(active(z0)) -> U21(z0) U31(mark(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, mark(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, mark(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, mark(z3)) -> U31(z0, z1, z2, z3) U31(active(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, active(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, active(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, active(z3)) -> U31(z0, z1, z2, z3) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) isNat(mark(z0)) -> isNat(z0) isNat(active(z0)) -> isNat(z0) isNatList(mark(z0)) -> isNatList(z0) isNatList(active(z0)) -> isNatList(z0) isNatIList(mark(z0)) -> isNatIList(z0) isNatIList(active(z0)) -> isNatIList(z0) Tuples: ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 ENCODE_MARK(z0) -> c(MARK(encArg(z0))) ENCODE_CONS(z0, z1) -> c(CONS(encArg(z0), encArg(z1))) ENCODE_U11(z0, z1) -> c(U11'(encArg(z0), encArg(z1))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_LENGTH(z0) -> c(LENGTH(encArg(z0))) ENCODE_U21(z0) -> c(U21'(encArg(z0))) ENCODE_U31(z0, z1, z2, z3) -> c(U31'(encArg(z0), encArg(z1), encArg(z2), encArg(z3))) ENCODE_TAKE(z0, z1) -> c(TAKE(encArg(z0), encArg(z1))) ENCODE_AND(z0, z1) -> c(AND(encArg(z0), encArg(z1))) ENCODE_ISNAT(z0) -> c(ISNAT(encArg(z0))) ENCODE_ISNATLIST(z0) -> c(ISNATLIST(encArg(z0))) ENCODE_ISNATILIST(z0) -> c(ISNATILIST(encArg(z0))) ENCARG(cons_active(cons_active(z0))) -> c4(ACTIVE(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_active(cons_mark(z0))) -> c4(ACTIVE(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_active(cons_cons(z0, z1))) -> c4(ACTIVE(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_active(cons_U11(z0, z1))) -> c4(ACTIVE(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_active(cons_s(z0))) -> c4(ACTIVE(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_active(cons_length(z0))) -> c4(ACTIVE(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_active(cons_U21(z0))) -> c4(ACTIVE(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_active(cons_U31(z0, z1, z2, z3))) -> c4(ACTIVE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_active(cons_take(z0, z1))) -> c4(ACTIVE(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_active(cons_and(z0, z1))) -> c4(ACTIVE(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_active(cons_isNat(z0))) -> c4(ACTIVE(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_active(cons_isNatList(z0))) -> c4(ACTIVE(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_active(cons_isNatIList(z0))) -> c4(ACTIVE(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_active(zeros)) -> c4(ACTIVE(zeros)) ENCARG(cons_mark(cons_active(z0))) -> c5(MARK(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_mark(cons_mark(z0))) -> c5(MARK(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_mark(cons_cons(z0, z1))) -> c5(MARK(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_mark(cons_U11(z0, z1))) -> c5(MARK(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_mark(cons_s(z0))) -> c5(MARK(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_mark(cons_length(z0))) -> c5(MARK(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_mark(cons_U21(z0))) -> c5(MARK(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_mark(cons_U31(z0, z1, z2, z3))) -> c5(MARK(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_mark(cons_take(z0, z1))) -> c5(MARK(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(cons_and(z0, z1))) -> c5(MARK(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_mark(cons_isNat(z0))) -> c5(MARK(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_mark(cons_isNatList(z0))) -> c5(MARK(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_mark(cons_isNatIList(z0))) -> c5(MARK(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_mark(zeros)) -> c5(MARK(zeros)) ENCARG(cons_mark(0)) -> c5(MARK(0)) ENCARG(cons_mark(tt)) -> c5(MARK(tt)) ENCARG(cons_mark(nil)) -> c5(MARK(nil)) ENCARG(cons_cons(x0, cons_active(z0))) -> c6(CONS(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_cons(x0, cons_mark(z0))) -> c6(CONS(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_cons(x0, cons_cons(z0, z1))) -> c6(CONS(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_cons(x0, cons_U11(z0, z1))) -> c6(CONS(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_cons(x0, cons_s(z0))) -> c6(CONS(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_cons(x0, cons_length(z0))) -> c6(CONS(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_cons(x0, cons_U21(z0))) -> c6(CONS(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_cons(x0, cons_U31(z0, z1, z2, z3))) -> c6(CONS(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_cons(x0, cons_take(z0, z1))) -> c6(CONS(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_cons(x0, cons_and(z0, z1))) -> c6(CONS(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_cons(x0, cons_isNat(z0))) -> c6(CONS(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_cons(x0, cons_isNatList(z0))) -> c6(CONS(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_cons(x0, cons_isNatIList(z0))) -> c6(CONS(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_cons(cons_active(z0), x1)) -> c6(CONS(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_mark(z0), x1)) -> c6(CONS(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_cons(z0, z1), x1)) -> c6(CONS(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_U11(z0, z1), x1)) -> c6(CONS(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_s(z0), x1)) -> c6(CONS(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_length(z0), x1)) -> c6(CONS(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U21(z0), x1)) -> c6(CONS(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U31(z0, z1, z2, z3), x1)) -> c6(CONS(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_cons(cons_take(z0, z1), x1)) -> c6(CONS(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_and(z0, z1), x1)) -> c6(CONS(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_isNat(z0), x1)) -> c6(CONS(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_isNatList(z0), x1)) -> c6(CONS(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_isNatIList(z0), x1)) -> c6(CONS(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_cons(x0, zeros)) -> c6(CONS(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_cons(x0, 0)) -> c6(CONS(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_cons(x0, tt)) -> c6(CONS(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_cons(x0, nil)) -> c6(CONS(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_cons(zeros, x1)) -> c6(CONS(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(0, x1)) -> c6(CONS(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(tt, x1)) -> c6(CONS(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(nil, x1)) -> c6(CONS(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(x0, cons_active(z0))) -> c7(U11'(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_U11(x0, cons_mark(z0))) -> c7(U11'(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_U11(x0, cons_cons(z0, z1))) -> c7(U11'(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U11(x0, cons_U11(z0, z1))) -> c7(U11'(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U11(x0, cons_s(z0))) -> c7(U11'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_U11(x0, cons_length(z0))) -> c7(U11'(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_U11(x0, cons_U21(z0))) -> c7(U11'(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_U11(x0, cons_U31(z0, z1, z2, z3))) -> c7(U11'(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U11(x0, cons_take(z0, z1))) -> c7(U11'(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_U11(x0, cons_and(z0, z1))) -> c7(U11'(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_U11(x0, cons_isNat(z0))) -> c7(U11'(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_U11(x0, cons_isNatList(z0))) -> c7(U11'(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_U11(x0, cons_isNatIList(z0))) -> c7(U11'(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U11(cons_active(z0), x1)) -> c7(U11'(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_mark(z0), x1)) -> c7(U11'(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_cons(z0, z1), x1)) -> c7(U11'(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_U11(z0, z1), x1)) -> c7(U11'(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_s(z0), x1)) -> c7(U11'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_length(z0), x1)) -> c7(U11'(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_U21(z0), x1)) -> c7(U11'(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_U31(z0, z1, z2, z3), x1)) -> c7(U11'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_U11(cons_take(z0, z1), x1)) -> c7(U11'(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_and(z0, z1), x1)) -> c7(U11'(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_isNat(z0), x1)) -> c7(U11'(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_isNatList(z0), x1)) -> c7(U11'(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_isNatIList(z0), x1)) -> c7(U11'(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_U11(x0, zeros)) -> c7(U11'(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_U11(x0, 0)) -> c7(U11'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_U11(x0, tt)) -> c7(U11'(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_U11(x0, nil)) -> c7(U11'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_U11(zeros, x1)) -> c7(U11'(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(0, x1)) -> c7(U11'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(tt, x1)) -> c7(U11'(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(nil, x1)) -> c7(U11'(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_s(cons_active(z0))) -> c8(S(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_s(cons_mark(z0))) -> c8(S(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_s(cons_cons(z0, z1))) -> c8(S(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_s(cons_U11(z0, z1))) -> c8(S(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_s(cons_s(z0))) -> c8(S(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_length(z0))) -> c8(S(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_s(cons_U21(z0))) -> c8(S(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_s(cons_U31(z0, z1, z2, z3))) -> c8(S(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_s(cons_take(z0, z1))) -> c8(S(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_s(cons_and(z0, z1))) -> c8(S(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_s(cons_isNat(z0))) -> c8(S(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_s(cons_isNatList(z0))) -> c8(S(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_s(cons_isNatIList(z0))) -> c8(S(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_length(cons_active(z0))) -> c9(LENGTH(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_length(cons_mark(z0))) -> c9(LENGTH(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_length(cons_cons(z0, z1))) -> c9(LENGTH(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_length(cons_U11(z0, z1))) -> c9(LENGTH(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_length(cons_s(z0))) -> c9(LENGTH(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_length(cons_length(z0))) -> c9(LENGTH(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_length(cons_U21(z0))) -> c9(LENGTH(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_length(cons_U31(z0, z1, z2, z3))) -> c9(LENGTH(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_length(cons_take(z0, z1))) -> c9(LENGTH(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_length(cons_and(z0, z1))) -> c9(LENGTH(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_length(cons_isNat(z0))) -> c9(LENGTH(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_length(cons_isNatList(z0))) -> c9(LENGTH(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_length(cons_isNatIList(z0))) -> c9(LENGTH(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U21(cons_active(z0))) -> c10(U21'(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_U21(cons_mark(z0))) -> c10(U21'(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_U21(cons_cons(z0, z1))) -> c10(U21'(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U21(cons_U11(z0, z1))) -> c10(U21'(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U21(cons_s(z0))) -> c10(U21'(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_U21(cons_length(z0))) -> c10(U21'(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_U21(cons_U21(z0))) -> c10(U21'(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_U21(cons_U31(z0, z1, z2, z3))) -> c10(U21'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U21(cons_take(z0, z1))) -> c10(U21'(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_U21(cons_and(z0, z1))) -> c10(U21'(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_U21(cons_isNat(z0))) -> c10(U21'(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_U21(cons_isNatList(z0))) -> c10(U21'(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_U21(cons_isNatIList(z0))) -> c10(U21'(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U31(x0, x1, x2, cons_active(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), active(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_active(z0))) ENCARG(cons_U31(x0, x1, x2, cons_mark(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), mark(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_mark(z0))) ENCARG(cons_U31(x0, x1, x2, cons_cons(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_U11(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_s(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), s(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_s(z0))) ENCARG(cons_U31(x0, x1, x2, cons_length(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), length(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_length(z0))) ENCARG(cons_U31(x0, x1, x2, cons_U21(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U21(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U21(z0))) ENCARG(cons_U31(x0, x1, x2, cons_U31(z0, z1, z2, z3))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U31(x0, x1, x2, cons_take(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_take(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_and(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_and(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_isNat(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNat(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNat(z0))) ENCARG(cons_U31(x0, x1, x2, cons_isNatList(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNatList(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNatList(z0))) ENCARG(cons_U31(x0, x1, x2, cons_isNatIList(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U31(x0, x1, cons_active(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), active(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_active(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_mark(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), mark(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_mark(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_cons(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), cons(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_cons(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U11(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), U11(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U11(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_s(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), s(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_s(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_length(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), length(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_length(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U21(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), U21(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U21(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U31(z0, z1, z2, z3), x3)) -> c11(U31'(encArg(x0), encArg(x1), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_take(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), take(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_take(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_and(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), and(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_and(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNat(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNat(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNat(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNatList(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNatList(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNatList(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNatIList(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNatIList(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNatIList(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, cons_active(z0), x2, x3)) -> c11(U31'(encArg(x0), active(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_active(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_mark(z0), x2, x3)) -> c11(U31'(encArg(x0), mark(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_mark(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_cons(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), cons(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_cons(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U11(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), U11(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U11(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_s(z0), x2, x3)) -> c11(U31'(encArg(x0), s(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_s(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_length(z0), x2, x3)) -> c11(U31'(encArg(x0), length(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_length(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U21(z0), x2, x3)) -> c11(U31'(encArg(x0), U21(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U21(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U31(z0, z1, z2, z3), x2, x3)) -> c11(U31'(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_take(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), take(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_take(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_and(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), and(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_and(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNat(z0), x2, x3)) -> c11(U31'(encArg(x0), isNat(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNat(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNatList(z0), x2, x3)) -> c11(U31'(encArg(x0), isNatList(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNatList(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNatIList(z0), x2, x3)) -> c11(U31'(encArg(x0), isNatIList(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNatIList(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_active(z0), x1, x2, x3)) -> c11(U31'(active(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_active(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_mark(z0), x1, x2, x3)) -> c11(U31'(mark(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_mark(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_cons(z0, z1), x1, x2, x3)) -> c11(U31'(cons(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_cons(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U11(z0, z1), x1, x2, x3)) -> c11(U31'(U11(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U11(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_s(z0), x1, x2, x3)) -> c11(U31'(s(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_s(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_length(z0), x1, x2, x3)) -> c11(U31'(length(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_length(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U21(z0), x1, x2, x3)) -> c11(U31'(U21(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U21(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U31(z0, z1, z2, z3), x1, x2, x3)) -> c11(U31'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_take(z0, z1), x1, x2, x3)) -> c11(U31'(take(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_take(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_and(z0, z1), x1, x2, x3)) -> c11(U31'(and(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_and(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNat(z0), x1, x2, x3)) -> c11(U31'(isNat(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNat(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNatList(z0), x1, x2, x3)) -> c11(U31'(isNatList(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNatList(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNatIList(z0), x1, x2, x3)) -> c11(U31'(isNatIList(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNatIList(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, x1, x2, zeros)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), zeros), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, 0)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), 0), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, tt)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), tt), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, nil)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), nil), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, zeros, x3)) -> c11(U31'(encArg(x0), encArg(x1), zeros, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, 0, x3)) -> c11(U31'(encArg(x0), encArg(x1), 0, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, tt, x3)) -> c11(U31'(encArg(x0), encArg(x1), tt, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, nil, x3)) -> c11(U31'(encArg(x0), encArg(x1), nil, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, zeros, x2, x3)) -> c11(U31'(encArg(x0), zeros, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, 0, x2, x3)) -> c11(U31'(encArg(x0), 0, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, tt, x2, x3)) -> c11(U31'(encArg(x0), tt, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, nil, x2, x3)) -> c11(U31'(encArg(x0), nil, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(zeros, x1, x2, x3)) -> c11(U31'(zeros, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(0, x1, x2, x3)) -> c11(U31'(0, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(tt, x1, x2, x3)) -> c11(U31'(tt, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(nil, x1, x2, x3)) -> c11(U31'(nil, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_take(x0, cons_active(z0))) -> c12(TAKE(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_take(x0, cons_mark(z0))) -> c12(TAKE(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_take(x0, cons_cons(z0, z1))) -> c12(TAKE(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_take(x0, cons_U11(z0, z1))) -> c12(TAKE(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_take(x0, cons_s(z0))) -> c12(TAKE(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_take(x0, cons_length(z0))) -> c12(TAKE(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_take(x0, cons_U21(z0))) -> c12(TAKE(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_take(x0, cons_U31(z0, z1, z2, z3))) -> c12(TAKE(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_take(x0, cons_take(z0, z1))) -> c12(TAKE(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_take(x0, cons_and(z0, z1))) -> c12(TAKE(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_take(x0, cons_isNat(z0))) -> c12(TAKE(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_take(x0, cons_isNatList(z0))) -> c12(TAKE(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_take(x0, cons_isNatIList(z0))) -> c12(TAKE(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_take(cons_active(z0), x1)) -> c12(TAKE(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_take(cons_mark(z0), x1)) -> c12(TAKE(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_take(cons_cons(z0, z1), x1)) -> c12(TAKE(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_U11(z0, z1), x1)) -> c12(TAKE(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_s(z0), x1)) -> c12(TAKE(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_take(cons_length(z0), x1)) -> c12(TAKE(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_take(cons_U21(z0), x1)) -> c12(TAKE(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_take(cons_U31(z0, z1, z2, z3), x1)) -> c12(TAKE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_take(cons_take(z0, z1), x1)) -> c12(TAKE(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_and(z0, z1), x1)) -> c12(TAKE(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_isNat(z0), x1)) -> c12(TAKE(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_take(cons_isNatList(z0), x1)) -> c12(TAKE(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_take(cons_isNatIList(z0), x1)) -> c12(TAKE(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_take(x0, zeros)) -> c12(TAKE(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_take(x0, 0)) -> c12(TAKE(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_take(x0, tt)) -> c12(TAKE(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_take(x0, nil)) -> c12(TAKE(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_take(zeros, x1)) -> c12(TAKE(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(0, x1)) -> c12(TAKE(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(tt, x1)) -> c12(TAKE(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(nil, x1)) -> c12(TAKE(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(x0, cons_active(z0))) -> c13(AND(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_and(x0, cons_mark(z0))) -> c13(AND(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_and(x0, cons_cons(z0, z1))) -> c13(AND(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_and(x0, cons_U11(z0, z1))) -> c13(AND(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_and(x0, cons_s(z0))) -> c13(AND(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_and(x0, cons_length(z0))) -> c13(AND(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_and(x0, cons_U21(z0))) -> c13(AND(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_and(x0, cons_U31(z0, z1, z2, z3))) -> c13(AND(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_and(x0, cons_take(z0, z1))) -> c13(AND(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_and(x0, cons_and(z0, z1))) -> c13(AND(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_and(x0, cons_isNat(z0))) -> c13(AND(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_and(x0, cons_isNatList(z0))) -> c13(AND(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_and(x0, cons_isNatIList(z0))) -> c13(AND(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_and(cons_active(z0), x1)) -> c13(AND(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_and(cons_mark(z0), x1)) -> c13(AND(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_and(cons_cons(z0, z1), x1)) -> c13(AND(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_U11(z0, z1), x1)) -> c13(AND(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_s(z0), x1)) -> c13(AND(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_and(cons_length(z0), x1)) -> c13(AND(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_and(cons_U21(z0), x1)) -> c13(AND(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_and(cons_U31(z0, z1, z2, z3), x1)) -> c13(AND(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_and(cons_take(z0, z1), x1)) -> c13(AND(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_and(z0, z1), x1)) -> c13(AND(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_isNat(z0), x1)) -> c13(AND(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_and(cons_isNatList(z0), x1)) -> c13(AND(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_and(cons_isNatIList(z0), x1)) -> c13(AND(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_and(x0, zeros)) -> c13(AND(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_and(x0, 0)) -> c13(AND(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_and(x0, tt)) -> c13(AND(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_and(x0, nil)) -> c13(AND(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_and(zeros, x1)) -> c13(AND(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(0, x1)) -> c13(AND(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(tt, x1)) -> c13(AND(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(nil, x1)) -> c13(AND(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_isNat(cons_active(z0))) -> c14(ISNAT(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_isNat(cons_mark(z0))) -> c14(ISNAT(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_isNat(cons_cons(z0, z1))) -> c14(ISNAT(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_isNat(cons_U11(z0, z1))) -> c14(ISNAT(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_isNat(cons_s(z0))) -> c14(ISNAT(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_isNat(cons_length(z0))) -> c14(ISNAT(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_isNat(cons_U21(z0))) -> c14(ISNAT(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_isNat(cons_U31(z0, z1, z2, z3))) -> c14(ISNAT(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_isNat(cons_take(z0, z1))) -> c14(ISNAT(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_isNat(cons_and(z0, z1))) -> c14(ISNAT(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_isNat(cons_isNat(z0))) -> c14(ISNAT(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_isNat(cons_isNatList(z0))) -> c14(ISNAT(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_isNat(cons_isNatIList(z0))) -> c14(ISNAT(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_isNatList(cons_active(z0))) -> c15(ISNATLIST(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_isNatList(cons_mark(z0))) -> c15(ISNATLIST(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_isNatList(cons_cons(z0, z1))) -> c15(ISNATLIST(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_isNatList(cons_U11(z0, z1))) -> c15(ISNATLIST(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_isNatList(cons_s(z0))) -> c15(ISNATLIST(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_isNatList(cons_length(z0))) -> c15(ISNATLIST(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_isNatList(cons_U21(z0))) -> c15(ISNATLIST(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_isNatList(cons_U31(z0, z1, z2, z3))) -> c15(ISNATLIST(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_isNatList(cons_take(z0, z1))) -> c15(ISNATLIST(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_isNatList(cons_and(z0, z1))) -> c15(ISNATLIST(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_isNatList(cons_isNat(z0))) -> c15(ISNATLIST(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_isNatList(cons_isNatList(z0))) -> c15(ISNATLIST(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_isNatList(cons_isNatIList(z0))) -> c15(ISNATLIST(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_isNatIList(cons_active(z0))) -> c16(ISNATILIST(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_isNatIList(cons_mark(z0))) -> c16(ISNATILIST(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_isNatIList(cons_cons(z0, z1))) -> c16(ISNATILIST(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_isNatIList(cons_U11(z0, z1))) -> c16(ISNATILIST(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_isNatIList(cons_s(z0))) -> c16(ISNATILIST(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_isNatIList(cons_length(z0))) -> c16(ISNATILIST(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_isNatIList(cons_U21(z0))) -> c16(ISNATILIST(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_isNatIList(cons_U31(z0, z1, z2, z3))) -> c16(ISNATILIST(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_isNatIList(cons_take(z0, z1))) -> c16(ISNATILIST(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_isNatIList(cons_and(z0, z1))) -> c16(ISNATILIST(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_isNatIList(cons_isNat(z0))) -> c16(ISNATILIST(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_isNatIList(cons_isNatList(z0))) -> c16(ISNATILIST(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_isNatIList(cons_isNatIList(z0))) -> c16(ISNATILIST(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) MARK(cons(zeros, x1)) -> c53(ACTIVE(cons(active(zeros), x1)), CONS(mark(zeros), x1), MARK(zeros)) MARK(cons(cons(z0, z1), x1)) -> c53(ACTIVE(cons(active(cons(mark(z0), z1)), x1)), CONS(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(cons(0, x1)) -> c53(ACTIVE(cons(active(0), x1)), CONS(mark(0), x1), MARK(0)) MARK(cons(U11(z0, z1), x1)) -> c53(ACTIVE(cons(active(U11(mark(z0), z1)), x1)), CONS(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(cons(tt, x1)) -> c53(ACTIVE(cons(active(tt), x1)), CONS(mark(tt), x1), MARK(tt)) MARK(cons(s(z0), x1)) -> c53(ACTIVE(cons(active(s(mark(z0))), x1)), CONS(mark(s(z0)), x1), MARK(s(z0))) MARK(cons(length(z0), x1)) -> c53(ACTIVE(cons(active(length(mark(z0))), x1)), CONS(mark(length(z0)), x1), MARK(length(z0))) MARK(cons(U21(z0), x1)) -> c53(ACTIVE(cons(active(U21(mark(z0))), x1)), CONS(mark(U21(z0)), x1), MARK(U21(z0))) MARK(cons(nil, x1)) -> c53(ACTIVE(cons(active(nil), x1)), CONS(mark(nil), x1), MARK(nil)) MARK(cons(U31(z0, z1, z2, z3), x1)) -> c53(ACTIVE(cons(active(U31(mark(z0), z1, z2, z3)), x1)), CONS(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(cons(take(z0, z1), x1)) -> c53(ACTIVE(cons(active(take(mark(z0), mark(z1))), x1)), CONS(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(cons(and(z0, z1), x1)) -> c53(ACTIVE(cons(active(and(mark(z0), z1)), x1)), CONS(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(cons(isNat(z0), x1)) -> c53(ACTIVE(cons(active(isNat(z0)), x1)), CONS(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(cons(isNatList(z0), x1)) -> c53(ACTIVE(cons(active(isNatList(z0)), x1)), CONS(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(cons(isNatIList(z0), x1)) -> c53(ACTIVE(cons(active(isNatIList(z0)), x1)), CONS(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(cons(x0, x1)) -> c53(CONS(mark(x0), x1)) MARK(cons(z0, z1)) -> c53(CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(z0, z1)), U11'(mark(z0), z1), MARK(z0)) MARK(U11(zeros, x1)) -> c55(ACTIVE(U11(active(zeros), x1)), U11'(mark(zeros), x1), MARK(zeros)) MARK(U11(cons(z0, z1), x1)) -> c55(ACTIVE(U11(active(cons(mark(z0), z1)), x1)), U11'(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(U11(0, x1)) -> c55(ACTIVE(U11(active(0), x1)), U11'(mark(0), x1), MARK(0)) MARK(U11(U11(z0, z1), x1)) -> c55(ACTIVE(U11(active(U11(mark(z0), z1)), x1)), U11'(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(U11(tt, x1)) -> c55(ACTIVE(U11(active(tt), x1)), U11'(mark(tt), x1), MARK(tt)) MARK(U11(s(z0), x1)) -> c55(ACTIVE(U11(active(s(mark(z0))), x1)), U11'(mark(s(z0)), x1), MARK(s(z0))) MARK(U11(length(z0), x1)) -> c55(ACTIVE(U11(active(length(mark(z0))), x1)), U11'(mark(length(z0)), x1), MARK(length(z0))) MARK(U11(U21(z0), x1)) -> c55(ACTIVE(U11(active(U21(mark(z0))), x1)), U11'(mark(U21(z0)), x1), MARK(U21(z0))) MARK(U11(nil, x1)) -> c55(ACTIVE(U11(active(nil), x1)), U11'(mark(nil), x1), MARK(nil)) MARK(U11(U31(z0, z1, z2, z3), x1)) -> c55(ACTIVE(U11(active(U31(mark(z0), z1, z2, z3)), x1)), U11'(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(U11(take(z0, z1), x1)) -> c55(ACTIVE(U11(active(take(mark(z0), mark(z1))), x1)), U11'(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(U11(and(z0, z1), x1)) -> c55(ACTIVE(U11(active(and(mark(z0), z1)), x1)), U11'(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(U11(isNat(z0), x1)) -> c55(ACTIVE(U11(active(isNat(z0)), x1)), U11'(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(U11(isNatList(z0), x1)) -> c55(ACTIVE(U11(active(isNatList(z0)), x1)), U11'(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(U11(isNatIList(z0), x1)) -> c55(ACTIVE(U11(active(isNatIList(z0)), x1)), U11'(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(U11(x0, x1)) -> c55(U11'(mark(x0), x1)) MARK(s(zeros)) -> c57(ACTIVE(s(active(zeros))), S(mark(zeros)), MARK(zeros)) MARK(s(cons(z0, z1))) -> c57(ACTIVE(s(active(cons(mark(z0), z1)))), S(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(s(0)) -> c57(ACTIVE(s(active(0))), S(mark(0)), MARK(0)) MARK(s(U11(z0, z1))) -> c57(ACTIVE(s(active(U11(mark(z0), z1)))), S(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(s(tt)) -> c57(ACTIVE(s(active(tt))), S(mark(tt)), MARK(tt)) MARK(s(s(z0))) -> c57(ACTIVE(s(active(s(mark(z0))))), S(mark(s(z0))), MARK(s(z0))) MARK(s(length(z0))) -> c57(ACTIVE(s(active(length(mark(z0))))), S(mark(length(z0))), MARK(length(z0))) MARK(s(U21(z0))) -> c57(ACTIVE(s(active(U21(mark(z0))))), S(mark(U21(z0))), MARK(U21(z0))) MARK(s(nil)) -> c57(ACTIVE(s(active(nil))), S(mark(nil)), MARK(nil)) MARK(s(U31(z0, z1, z2, z3))) -> c57(ACTIVE(s(active(U31(mark(z0), z1, z2, z3)))), S(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(s(take(z0, z1))) -> c57(ACTIVE(s(active(take(mark(z0), mark(z1))))), S(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(s(and(z0, z1))) -> c57(ACTIVE(s(active(and(mark(z0), z1)))), S(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(s(isNat(z0))) -> c57(ACTIVE(s(active(isNat(z0)))), S(mark(isNat(z0))), MARK(isNat(z0))) MARK(s(isNatList(z0))) -> c57(ACTIVE(s(active(isNatList(z0)))), S(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(s(isNatIList(z0))) -> c57(ACTIVE(s(active(isNatIList(z0)))), S(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(s(z0)) -> c57(S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(z0)), LENGTH(mark(z0)), MARK(z0)) MARK(length(zeros)) -> c58(ACTIVE(length(active(zeros))), LENGTH(mark(zeros)), MARK(zeros)) MARK(length(cons(z0, z1))) -> c58(ACTIVE(length(active(cons(mark(z0), z1)))), LENGTH(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(length(0)) -> c58(ACTIVE(length(active(0))), LENGTH(mark(0)), MARK(0)) MARK(length(U11(z0, z1))) -> c58(ACTIVE(length(active(U11(mark(z0), z1)))), LENGTH(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(length(tt)) -> c58(ACTIVE(length(active(tt))), LENGTH(mark(tt)), MARK(tt)) MARK(length(s(z0))) -> c58(ACTIVE(length(active(s(mark(z0))))), LENGTH(mark(s(z0))), MARK(s(z0))) MARK(length(length(z0))) -> c58(ACTIVE(length(active(length(mark(z0))))), LENGTH(mark(length(z0))), MARK(length(z0))) MARK(length(U21(z0))) -> c58(ACTIVE(length(active(U21(mark(z0))))), LENGTH(mark(U21(z0))), MARK(U21(z0))) MARK(length(nil)) -> c58(ACTIVE(length(active(nil))), LENGTH(mark(nil)), MARK(nil)) MARK(length(U31(z0, z1, z2, z3))) -> c58(ACTIVE(length(active(U31(mark(z0), z1, z2, z3)))), LENGTH(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(length(take(z0, z1))) -> c58(ACTIVE(length(active(take(mark(z0), mark(z1))))), LENGTH(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(length(and(z0, z1))) -> c58(ACTIVE(length(active(and(mark(z0), z1)))), LENGTH(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(length(isNat(z0))) -> c58(ACTIVE(length(active(isNat(z0)))), LENGTH(mark(isNat(z0))), MARK(isNat(z0))) MARK(length(isNatList(z0))) -> c58(ACTIVE(length(active(isNatList(z0)))), LENGTH(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(length(isNatIList(z0))) -> c58(ACTIVE(length(active(isNatIList(z0)))), LENGTH(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(U21(z0)) -> c59(ACTIVE(U21(z0)), U21'(mark(z0)), MARK(z0)) MARK(U21(zeros)) -> c59(ACTIVE(U21(active(zeros))), U21'(mark(zeros)), MARK(zeros)) MARK(U21(cons(z0, z1))) -> c59(ACTIVE(U21(active(cons(mark(z0), z1)))), U21'(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(U21(0)) -> c59(ACTIVE(U21(active(0))), U21'(mark(0)), MARK(0)) MARK(U21(U11(z0, z1))) -> c59(ACTIVE(U21(active(U11(mark(z0), z1)))), U21'(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(U21(tt)) -> c59(ACTIVE(U21(active(tt))), U21'(mark(tt)), MARK(tt)) MARK(U21(s(z0))) -> c59(ACTIVE(U21(active(s(mark(z0))))), U21'(mark(s(z0))), MARK(s(z0))) MARK(U21(length(z0))) -> c59(ACTIVE(U21(active(length(mark(z0))))), U21'(mark(length(z0))), MARK(length(z0))) MARK(U21(U21(z0))) -> c59(ACTIVE(U21(active(U21(mark(z0))))), U21'(mark(U21(z0))), MARK(U21(z0))) MARK(U21(nil)) -> c59(ACTIVE(U21(active(nil))), U21'(mark(nil)), MARK(nil)) MARK(U21(U31(z0, z1, z2, z3))) -> c59(ACTIVE(U21(active(U31(mark(z0), z1, z2, z3)))), U21'(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(U21(take(z0, z1))) -> c59(ACTIVE(U21(active(take(mark(z0), mark(z1))))), U21'(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(U21(and(z0, z1))) -> c59(ACTIVE(U21(active(and(mark(z0), z1)))), U21'(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(U21(isNat(z0))) -> c59(ACTIVE(U21(active(isNat(z0)))), U21'(mark(isNat(z0))), MARK(isNat(z0))) MARK(U21(isNatList(z0))) -> c59(ACTIVE(U21(active(isNatList(z0)))), U21'(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(U21(isNatIList(z0))) -> c59(ACTIVE(U21(active(isNatIList(z0)))), U21'(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(z0, z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U31(zeros, x1, x2, x3)) -> c61(ACTIVE(U31(active(zeros), x1, x2, x3)), U31'(mark(zeros), x1, x2, x3), MARK(zeros)) MARK(U31(cons(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(cons(mark(z0), z1)), x1, x2, x3)), U31'(mark(cons(z0, z1)), x1, x2, x3), MARK(cons(z0, z1))) MARK(U31(0, x1, x2, x3)) -> c61(ACTIVE(U31(active(0), x1, x2, x3)), U31'(mark(0), x1, x2, x3), MARK(0)) MARK(U31(U11(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(U11(mark(z0), z1)), x1, x2, x3)), U31'(mark(U11(z0, z1)), x1, x2, x3), MARK(U11(z0, z1))) MARK(U31(tt, x1, x2, x3)) -> c61(ACTIVE(U31(active(tt), x1, x2, x3)), U31'(mark(tt), x1, x2, x3), MARK(tt)) MARK(U31(s(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(s(mark(z0))), x1, x2, x3)), U31'(mark(s(z0)), x1, x2, x3), MARK(s(z0))) MARK(U31(length(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(length(mark(z0))), x1, x2, x3)), U31'(mark(length(z0)), x1, x2, x3), MARK(length(z0))) MARK(U31(U21(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(U21(mark(z0))), x1, x2, x3)), U31'(mark(U21(z0)), x1, x2, x3), MARK(U21(z0))) MARK(U31(nil, x1, x2, x3)) -> c61(ACTIVE(U31(active(nil), x1, x2, x3)), U31'(mark(nil), x1, x2, x3), MARK(nil)) MARK(U31(U31(z0, z1, z2, z3), x1, x2, x3)) -> c61(ACTIVE(U31(active(U31(mark(z0), z1, z2, z3)), x1, x2, x3)), U31'(mark(U31(z0, z1, z2, z3)), x1, x2, x3), MARK(U31(z0, z1, z2, z3))) MARK(U31(take(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(take(mark(z0), mark(z1))), x1, x2, x3)), U31'(mark(take(z0, z1)), x1, x2, x3), MARK(take(z0, z1))) MARK(U31(and(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(and(mark(z0), z1)), x1, x2, x3)), U31'(mark(and(z0, z1)), x1, x2, x3), MARK(and(z0, z1))) MARK(U31(isNat(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNat(z0)), x1, x2, x3)), U31'(mark(isNat(z0)), x1, x2, x3), MARK(isNat(z0))) MARK(U31(isNatList(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNatList(z0)), x1, x2, x3)), U31'(mark(isNatList(z0)), x1, x2, x3), MARK(isNatList(z0))) MARK(U31(isNatIList(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNatIList(z0)), x1, x2, x3)), U31'(mark(isNatIList(z0)), x1, x2, x3), MARK(isNatIList(z0))) MARK(U31(x0, x1, x2, x3)) -> c61(U31'(mark(x0), x1, x2, x3)) MARK(take(z0, x1)) -> c62(ACTIVE(take(z0, mark(x1))), TAKE(mark(z0), mark(x1)), MARK(z0), MARK(x1)) MARK(take(x0, z1)) -> c62(ACTIVE(take(mark(x0), z1)), TAKE(mark(x0), mark(z1)), MARK(x0), MARK(z1)) MARK(take(x0, zeros)) -> c62(ACTIVE(take(mark(x0), active(zeros))), TAKE(mark(x0), mark(zeros)), MARK(x0), MARK(zeros)) MARK(take(x0, cons(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(cons(mark(z0), z1)))), TAKE(mark(x0), mark(cons(z0, z1))), MARK(x0), MARK(cons(z0, z1))) MARK(take(x0, 0)) -> c62(ACTIVE(take(mark(x0), active(0))), TAKE(mark(x0), mark(0)), MARK(x0), MARK(0)) MARK(take(x0, U11(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(U11(mark(z0), z1)))), TAKE(mark(x0), mark(U11(z0, z1))), MARK(x0), MARK(U11(z0, z1))) MARK(take(x0, tt)) -> c62(ACTIVE(take(mark(x0), active(tt))), TAKE(mark(x0), mark(tt)), MARK(x0), MARK(tt)) MARK(take(x0, s(z0))) -> c62(ACTIVE(take(mark(x0), active(s(mark(z0))))), TAKE(mark(x0), mark(s(z0))), MARK(x0), MARK(s(z0))) MARK(take(x0, length(z0))) -> c62(ACTIVE(take(mark(x0), active(length(mark(z0))))), TAKE(mark(x0), mark(length(z0))), MARK(x0), MARK(length(z0))) MARK(take(x0, U21(z0))) -> c62(ACTIVE(take(mark(x0), active(U21(mark(z0))))), TAKE(mark(x0), mark(U21(z0))), MARK(x0), MARK(U21(z0))) MARK(take(x0, nil)) -> c62(ACTIVE(take(mark(x0), active(nil))), TAKE(mark(x0), mark(nil)), MARK(x0), MARK(nil)) MARK(take(x0, U31(z0, z1, z2, z3))) -> c62(ACTIVE(take(mark(x0), active(U31(mark(z0), z1, z2, z3)))), TAKE(mark(x0), mark(U31(z0, z1, z2, z3))), MARK(x0), MARK(U31(z0, z1, z2, z3))) MARK(take(x0, take(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(take(mark(z0), mark(z1))))), TAKE(mark(x0), mark(take(z0, z1))), MARK(x0), MARK(take(z0, z1))) MARK(take(x0, and(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(and(mark(z0), z1)))), TAKE(mark(x0), mark(and(z0, z1))), MARK(x0), MARK(and(z0, z1))) MARK(take(x0, isNat(z0))) -> c62(ACTIVE(take(mark(x0), active(isNat(z0)))), TAKE(mark(x0), mark(isNat(z0))), MARK(x0), MARK(isNat(z0))) MARK(take(x0, isNatList(z0))) -> c62(ACTIVE(take(mark(x0), active(isNatList(z0)))), TAKE(mark(x0), mark(isNatList(z0))), MARK(x0), MARK(isNatList(z0))) MARK(take(x0, isNatIList(z0))) -> c62(ACTIVE(take(mark(x0), active(isNatIList(z0)))), TAKE(mark(x0), mark(isNatIList(z0))), MARK(x0), MARK(isNatIList(z0))) MARK(take(zeros, x1)) -> c62(ACTIVE(take(active(zeros), mark(x1))), TAKE(mark(zeros), mark(x1)), MARK(zeros), MARK(x1)) MARK(take(cons(z0, z1), x1)) -> c62(ACTIVE(take(active(cons(mark(z0), z1)), mark(x1))), TAKE(mark(cons(z0, z1)), mark(x1)), MARK(cons(z0, z1)), MARK(x1)) MARK(take(0, x1)) -> c62(ACTIVE(take(active(0), mark(x1))), TAKE(mark(0), mark(x1)), MARK(0), MARK(x1)) MARK(take(U11(z0, z1), x1)) -> c62(ACTIVE(take(active(U11(mark(z0), z1)), mark(x1))), TAKE(mark(U11(z0, z1)), mark(x1)), MARK(U11(z0, z1)), MARK(x1)) MARK(take(tt, x1)) -> c62(ACTIVE(take(active(tt), mark(x1))), TAKE(mark(tt), mark(x1)), MARK(tt), MARK(x1)) MARK(take(s(z0), x1)) -> c62(ACTIVE(take(active(s(mark(z0))), mark(x1))), TAKE(mark(s(z0)), mark(x1)), MARK(s(z0)), MARK(x1)) MARK(take(length(z0), x1)) -> c62(ACTIVE(take(active(length(mark(z0))), mark(x1))), TAKE(mark(length(z0)), mark(x1)), MARK(length(z0)), MARK(x1)) MARK(take(U21(z0), x1)) -> c62(ACTIVE(take(active(U21(mark(z0))), mark(x1))), TAKE(mark(U21(z0)), mark(x1)), MARK(U21(z0)), MARK(x1)) MARK(take(nil, x1)) -> c62(ACTIVE(take(active(nil), mark(x1))), TAKE(mark(nil), mark(x1)), MARK(nil), MARK(x1)) MARK(take(U31(z0, z1, z2, z3), x1)) -> c62(ACTIVE(take(active(U31(mark(z0), z1, z2, z3)), mark(x1))), TAKE(mark(U31(z0, z1, z2, z3)), mark(x1)), MARK(U31(z0, z1, z2, z3)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c62(ACTIVE(take(active(take(mark(z0), mark(z1))), mark(x1))), TAKE(mark(take(z0, z1)), mark(x1)), MARK(take(z0, z1)), MARK(x1)) MARK(take(and(z0, z1), x1)) -> c62(ACTIVE(take(active(and(mark(z0), z1)), mark(x1))), TAKE(mark(and(z0, z1)), mark(x1)), MARK(and(z0, z1)), MARK(x1)) MARK(take(isNat(z0), x1)) -> c62(ACTIVE(take(active(isNat(z0)), mark(x1))), TAKE(mark(isNat(z0)), mark(x1)), MARK(isNat(z0)), MARK(x1)) MARK(take(isNatList(z0), x1)) -> c62(ACTIVE(take(active(isNatList(z0)), mark(x1))), TAKE(mark(isNatList(z0)), mark(x1)), MARK(isNatList(z0)), MARK(x1)) MARK(take(isNatIList(z0), x1)) -> c62(ACTIVE(take(active(isNatIList(z0)), mark(x1))), TAKE(mark(isNatIList(z0)), mark(x1)), MARK(isNatIList(z0)), MARK(x1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(z0, z1)), AND(mark(z0), z1), MARK(z0)) MARK(and(zeros, x1)) -> c63(ACTIVE(and(active(zeros), x1)), AND(mark(zeros), x1), MARK(zeros)) MARK(and(cons(z0, z1), x1)) -> c63(ACTIVE(and(active(cons(mark(z0), z1)), x1)), AND(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(and(0, x1)) -> c63(ACTIVE(and(active(0), x1)), AND(mark(0), x1), MARK(0)) MARK(and(U11(z0, z1), x1)) -> c63(ACTIVE(and(active(U11(mark(z0), z1)), x1)), AND(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(and(tt, x1)) -> c63(ACTIVE(and(active(tt), x1)), AND(mark(tt), x1), MARK(tt)) MARK(and(s(z0), x1)) -> c63(ACTIVE(and(active(s(mark(z0))), x1)), AND(mark(s(z0)), x1), MARK(s(z0))) MARK(and(length(z0), x1)) -> c63(ACTIVE(and(active(length(mark(z0))), x1)), AND(mark(length(z0)), x1), MARK(length(z0))) MARK(and(U21(z0), x1)) -> c63(ACTIVE(and(active(U21(mark(z0))), x1)), AND(mark(U21(z0)), x1), MARK(U21(z0))) MARK(and(nil, x1)) -> c63(ACTIVE(and(active(nil), x1)), AND(mark(nil), x1), MARK(nil)) MARK(and(U31(z0, z1, z2, z3), x1)) -> c63(ACTIVE(and(active(U31(mark(z0), z1, z2, z3)), x1)), AND(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(and(take(z0, z1), x1)) -> c63(ACTIVE(and(active(take(mark(z0), mark(z1))), x1)), AND(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(and(and(z0, z1), x1)) -> c63(ACTIVE(and(active(and(mark(z0), z1)), x1)), AND(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(and(isNat(z0), x1)) -> c63(ACTIVE(and(active(isNat(z0)), x1)), AND(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(and(isNatList(z0), x1)) -> c63(ACTIVE(and(active(isNatList(z0)), x1)), AND(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(and(isNatIList(z0), x1)) -> c63(ACTIVE(and(active(isNatIList(z0)), x1)), AND(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(and(x0, x1)) -> c63(AND(mark(x0), x1)) ENCODE_ACTIVE(zeros) -> c(ACTIVE(zeros)) ENCODE_ACTIVE(0) -> c(ACTIVE(0)) ENCODE_ACTIVE(tt) -> c(ACTIVE(tt)) ENCODE_ACTIVE(nil) -> c(ACTIVE(nil)) ENCODE_ACTIVE(cons_active(z0)) -> c(ACTIVE(active(encArg(z0)))) ENCODE_ACTIVE(cons_mark(z0)) -> c(ACTIVE(mark(encArg(z0)))) ENCODE_ACTIVE(cons_cons(z0, z1)) -> c(ACTIVE(cons(encArg(z0), encArg(z1)))) ENCODE_ACTIVE(cons_U11(z0, z1)) -> c(ACTIVE(U11(encArg(z0), encArg(z1)))) ENCODE_ACTIVE(cons_s(z0)) -> c(ACTIVE(s(encArg(z0)))) ENCODE_ACTIVE(cons_length(z0)) -> c(ACTIVE(length(encArg(z0)))) ENCODE_ACTIVE(cons_U21(z0)) -> c(ACTIVE(U21(encArg(z0)))) ENCODE_ACTIVE(cons_U31(z0, z1, z2, z3)) -> c(ACTIVE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)))) ENCODE_ACTIVE(cons_take(z0, z1)) -> c(ACTIVE(take(encArg(z0), encArg(z1)))) ENCODE_ACTIVE(cons_and(z0, z1)) -> c(ACTIVE(and(encArg(z0), encArg(z1)))) ENCODE_ACTIVE(cons_isNat(z0)) -> c(ACTIVE(isNat(encArg(z0)))) ENCODE_ACTIVE(cons_isNatList(z0)) -> c(ACTIVE(isNatList(encArg(z0)))) ENCODE_ACTIVE(cons_isNatIList(z0)) -> c(ACTIVE(isNatIList(encArg(z0)))) S tuples: ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 MARK(cons(zeros, x1)) -> c53(ACTIVE(cons(active(zeros), x1)), CONS(mark(zeros), x1), MARK(zeros)) MARK(cons(cons(z0, z1), x1)) -> c53(ACTIVE(cons(active(cons(mark(z0), z1)), x1)), CONS(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(cons(0, x1)) -> c53(ACTIVE(cons(active(0), x1)), CONS(mark(0), x1), MARK(0)) MARK(cons(U11(z0, z1), x1)) -> c53(ACTIVE(cons(active(U11(mark(z0), z1)), x1)), CONS(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(cons(tt, x1)) -> c53(ACTIVE(cons(active(tt), x1)), CONS(mark(tt), x1), MARK(tt)) MARK(cons(s(z0), x1)) -> c53(ACTIVE(cons(active(s(mark(z0))), x1)), CONS(mark(s(z0)), x1), MARK(s(z0))) MARK(cons(length(z0), x1)) -> c53(ACTIVE(cons(active(length(mark(z0))), x1)), CONS(mark(length(z0)), x1), MARK(length(z0))) MARK(cons(U21(z0), x1)) -> c53(ACTIVE(cons(active(U21(mark(z0))), x1)), CONS(mark(U21(z0)), x1), MARK(U21(z0))) MARK(cons(nil, x1)) -> c53(ACTIVE(cons(active(nil), x1)), CONS(mark(nil), x1), MARK(nil)) MARK(cons(U31(z0, z1, z2, z3), x1)) -> c53(ACTIVE(cons(active(U31(mark(z0), z1, z2, z3)), x1)), CONS(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(cons(take(z0, z1), x1)) -> c53(ACTIVE(cons(active(take(mark(z0), mark(z1))), x1)), CONS(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(cons(and(z0, z1), x1)) -> c53(ACTIVE(cons(active(and(mark(z0), z1)), x1)), CONS(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(cons(isNat(z0), x1)) -> c53(ACTIVE(cons(active(isNat(z0)), x1)), CONS(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(cons(isNatList(z0), x1)) -> c53(ACTIVE(cons(active(isNatList(z0)), x1)), CONS(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(cons(isNatIList(z0), x1)) -> c53(ACTIVE(cons(active(isNatIList(z0)), x1)), CONS(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(cons(x0, x1)) -> c53(CONS(mark(x0), x1)) MARK(cons(z0, z1)) -> c53(CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(z0, z1)), U11'(mark(z0), z1), MARK(z0)) MARK(U11(zeros, x1)) -> c55(ACTIVE(U11(active(zeros), x1)), U11'(mark(zeros), x1), MARK(zeros)) MARK(U11(cons(z0, z1), x1)) -> c55(ACTIVE(U11(active(cons(mark(z0), z1)), x1)), U11'(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(U11(0, x1)) -> c55(ACTIVE(U11(active(0), x1)), U11'(mark(0), x1), MARK(0)) MARK(U11(U11(z0, z1), x1)) -> c55(ACTIVE(U11(active(U11(mark(z0), z1)), x1)), U11'(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(U11(tt, x1)) -> c55(ACTIVE(U11(active(tt), x1)), U11'(mark(tt), x1), MARK(tt)) MARK(U11(s(z0), x1)) -> c55(ACTIVE(U11(active(s(mark(z0))), x1)), U11'(mark(s(z0)), x1), MARK(s(z0))) MARK(U11(length(z0), x1)) -> c55(ACTIVE(U11(active(length(mark(z0))), x1)), U11'(mark(length(z0)), x1), MARK(length(z0))) MARK(U11(U21(z0), x1)) -> c55(ACTIVE(U11(active(U21(mark(z0))), x1)), U11'(mark(U21(z0)), x1), MARK(U21(z0))) MARK(U11(nil, x1)) -> c55(ACTIVE(U11(active(nil), x1)), U11'(mark(nil), x1), MARK(nil)) MARK(U11(U31(z0, z1, z2, z3), x1)) -> c55(ACTIVE(U11(active(U31(mark(z0), z1, z2, z3)), x1)), U11'(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(U11(take(z0, z1), x1)) -> c55(ACTIVE(U11(active(take(mark(z0), mark(z1))), x1)), U11'(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(U11(and(z0, z1), x1)) -> c55(ACTIVE(U11(active(and(mark(z0), z1)), x1)), U11'(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(U11(isNat(z0), x1)) -> c55(ACTIVE(U11(active(isNat(z0)), x1)), U11'(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(U11(isNatList(z0), x1)) -> c55(ACTIVE(U11(active(isNatList(z0)), x1)), U11'(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(U11(isNatIList(z0), x1)) -> c55(ACTIVE(U11(active(isNatIList(z0)), x1)), U11'(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(U11(x0, x1)) -> c55(U11'(mark(x0), x1)) MARK(s(zeros)) -> c57(ACTIVE(s(active(zeros))), S(mark(zeros)), MARK(zeros)) MARK(s(cons(z0, z1))) -> c57(ACTIVE(s(active(cons(mark(z0), z1)))), S(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(s(0)) -> c57(ACTIVE(s(active(0))), S(mark(0)), MARK(0)) MARK(s(U11(z0, z1))) -> c57(ACTIVE(s(active(U11(mark(z0), z1)))), S(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(s(tt)) -> c57(ACTIVE(s(active(tt))), S(mark(tt)), MARK(tt)) MARK(s(s(z0))) -> c57(ACTIVE(s(active(s(mark(z0))))), S(mark(s(z0))), MARK(s(z0))) MARK(s(length(z0))) -> c57(ACTIVE(s(active(length(mark(z0))))), S(mark(length(z0))), MARK(length(z0))) MARK(s(U21(z0))) -> c57(ACTIVE(s(active(U21(mark(z0))))), S(mark(U21(z0))), MARK(U21(z0))) MARK(s(nil)) -> c57(ACTIVE(s(active(nil))), S(mark(nil)), MARK(nil)) MARK(s(U31(z0, z1, z2, z3))) -> c57(ACTIVE(s(active(U31(mark(z0), z1, z2, z3)))), S(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(s(take(z0, z1))) -> c57(ACTIVE(s(active(take(mark(z0), mark(z1))))), S(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(s(and(z0, z1))) -> c57(ACTIVE(s(active(and(mark(z0), z1)))), S(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(s(isNat(z0))) -> c57(ACTIVE(s(active(isNat(z0)))), S(mark(isNat(z0))), MARK(isNat(z0))) MARK(s(isNatList(z0))) -> c57(ACTIVE(s(active(isNatList(z0)))), S(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(s(isNatIList(z0))) -> c57(ACTIVE(s(active(isNatIList(z0)))), S(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(s(z0)) -> c57(S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(z0)), LENGTH(mark(z0)), MARK(z0)) MARK(length(zeros)) -> c58(ACTIVE(length(active(zeros))), LENGTH(mark(zeros)), MARK(zeros)) MARK(length(cons(z0, z1))) -> c58(ACTIVE(length(active(cons(mark(z0), z1)))), LENGTH(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(length(0)) -> c58(ACTIVE(length(active(0))), LENGTH(mark(0)), MARK(0)) MARK(length(U11(z0, z1))) -> c58(ACTIVE(length(active(U11(mark(z0), z1)))), LENGTH(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(length(tt)) -> c58(ACTIVE(length(active(tt))), LENGTH(mark(tt)), MARK(tt)) MARK(length(s(z0))) -> c58(ACTIVE(length(active(s(mark(z0))))), LENGTH(mark(s(z0))), MARK(s(z0))) MARK(length(length(z0))) -> c58(ACTIVE(length(active(length(mark(z0))))), LENGTH(mark(length(z0))), MARK(length(z0))) MARK(length(U21(z0))) -> c58(ACTIVE(length(active(U21(mark(z0))))), LENGTH(mark(U21(z0))), MARK(U21(z0))) MARK(length(nil)) -> c58(ACTIVE(length(active(nil))), LENGTH(mark(nil)), MARK(nil)) MARK(length(U31(z0, z1, z2, z3))) -> c58(ACTIVE(length(active(U31(mark(z0), z1, z2, z3)))), LENGTH(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(length(take(z0, z1))) -> c58(ACTIVE(length(active(take(mark(z0), mark(z1))))), LENGTH(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(length(and(z0, z1))) -> c58(ACTIVE(length(active(and(mark(z0), z1)))), LENGTH(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(length(isNat(z0))) -> c58(ACTIVE(length(active(isNat(z0)))), LENGTH(mark(isNat(z0))), MARK(isNat(z0))) MARK(length(isNatList(z0))) -> c58(ACTIVE(length(active(isNatList(z0)))), LENGTH(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(length(isNatIList(z0))) -> c58(ACTIVE(length(active(isNatIList(z0)))), LENGTH(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(U21(z0)) -> c59(ACTIVE(U21(z0)), U21'(mark(z0)), MARK(z0)) MARK(U21(zeros)) -> c59(ACTIVE(U21(active(zeros))), U21'(mark(zeros)), MARK(zeros)) MARK(U21(cons(z0, z1))) -> c59(ACTIVE(U21(active(cons(mark(z0), z1)))), U21'(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(U21(0)) -> c59(ACTIVE(U21(active(0))), U21'(mark(0)), MARK(0)) MARK(U21(U11(z0, z1))) -> c59(ACTIVE(U21(active(U11(mark(z0), z1)))), U21'(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(U21(tt)) -> c59(ACTIVE(U21(active(tt))), U21'(mark(tt)), MARK(tt)) MARK(U21(s(z0))) -> c59(ACTIVE(U21(active(s(mark(z0))))), U21'(mark(s(z0))), MARK(s(z0))) MARK(U21(length(z0))) -> c59(ACTIVE(U21(active(length(mark(z0))))), U21'(mark(length(z0))), MARK(length(z0))) MARK(U21(U21(z0))) -> c59(ACTIVE(U21(active(U21(mark(z0))))), U21'(mark(U21(z0))), MARK(U21(z0))) MARK(U21(nil)) -> c59(ACTIVE(U21(active(nil))), U21'(mark(nil)), MARK(nil)) MARK(U21(U31(z0, z1, z2, z3))) -> c59(ACTIVE(U21(active(U31(mark(z0), z1, z2, z3)))), U21'(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(U21(take(z0, z1))) -> c59(ACTIVE(U21(active(take(mark(z0), mark(z1))))), U21'(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(U21(and(z0, z1))) -> c59(ACTIVE(U21(active(and(mark(z0), z1)))), U21'(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(U21(isNat(z0))) -> c59(ACTIVE(U21(active(isNat(z0)))), U21'(mark(isNat(z0))), MARK(isNat(z0))) MARK(U21(isNatList(z0))) -> c59(ACTIVE(U21(active(isNatList(z0)))), U21'(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(U21(isNatIList(z0))) -> c59(ACTIVE(U21(active(isNatIList(z0)))), U21'(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(z0, z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U31(zeros, x1, x2, x3)) -> c61(ACTIVE(U31(active(zeros), x1, x2, x3)), U31'(mark(zeros), x1, x2, x3), MARK(zeros)) MARK(U31(cons(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(cons(mark(z0), z1)), x1, x2, x3)), U31'(mark(cons(z0, z1)), x1, x2, x3), MARK(cons(z0, z1))) MARK(U31(0, x1, x2, x3)) -> c61(ACTIVE(U31(active(0), x1, x2, x3)), U31'(mark(0), x1, x2, x3), MARK(0)) MARK(U31(U11(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(U11(mark(z0), z1)), x1, x2, x3)), U31'(mark(U11(z0, z1)), x1, x2, x3), MARK(U11(z0, z1))) MARK(U31(tt, x1, x2, x3)) -> c61(ACTIVE(U31(active(tt), x1, x2, x3)), U31'(mark(tt), x1, x2, x3), MARK(tt)) MARK(U31(s(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(s(mark(z0))), x1, x2, x3)), U31'(mark(s(z0)), x1, x2, x3), MARK(s(z0))) MARK(U31(length(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(length(mark(z0))), x1, x2, x3)), U31'(mark(length(z0)), x1, x2, x3), MARK(length(z0))) MARK(U31(U21(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(U21(mark(z0))), x1, x2, x3)), U31'(mark(U21(z0)), x1, x2, x3), MARK(U21(z0))) MARK(U31(nil, x1, x2, x3)) -> c61(ACTIVE(U31(active(nil), x1, x2, x3)), U31'(mark(nil), x1, x2, x3), MARK(nil)) MARK(U31(U31(z0, z1, z2, z3), x1, x2, x3)) -> c61(ACTIVE(U31(active(U31(mark(z0), z1, z2, z3)), x1, x2, x3)), U31'(mark(U31(z0, z1, z2, z3)), x1, x2, x3), MARK(U31(z0, z1, z2, z3))) MARK(U31(take(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(take(mark(z0), mark(z1))), x1, x2, x3)), U31'(mark(take(z0, z1)), x1, x2, x3), MARK(take(z0, z1))) MARK(U31(and(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(and(mark(z0), z1)), x1, x2, x3)), U31'(mark(and(z0, z1)), x1, x2, x3), MARK(and(z0, z1))) MARK(U31(isNat(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNat(z0)), x1, x2, x3)), U31'(mark(isNat(z0)), x1, x2, x3), MARK(isNat(z0))) MARK(U31(isNatList(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNatList(z0)), x1, x2, x3)), U31'(mark(isNatList(z0)), x1, x2, x3), MARK(isNatList(z0))) MARK(U31(isNatIList(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNatIList(z0)), x1, x2, x3)), U31'(mark(isNatIList(z0)), x1, x2, x3), MARK(isNatIList(z0))) MARK(U31(x0, x1, x2, x3)) -> c61(U31'(mark(x0), x1, x2, x3)) MARK(take(z0, x1)) -> c62(ACTIVE(take(z0, mark(x1))), TAKE(mark(z0), mark(x1)), MARK(z0), MARK(x1)) MARK(take(x0, z1)) -> c62(ACTIVE(take(mark(x0), z1)), TAKE(mark(x0), mark(z1)), MARK(x0), MARK(z1)) MARK(take(x0, zeros)) -> c62(ACTIVE(take(mark(x0), active(zeros))), TAKE(mark(x0), mark(zeros)), MARK(x0), MARK(zeros)) MARK(take(x0, cons(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(cons(mark(z0), z1)))), TAKE(mark(x0), mark(cons(z0, z1))), MARK(x0), MARK(cons(z0, z1))) MARK(take(x0, 0)) -> c62(ACTIVE(take(mark(x0), active(0))), TAKE(mark(x0), mark(0)), MARK(x0), MARK(0)) MARK(take(x0, U11(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(U11(mark(z0), z1)))), TAKE(mark(x0), mark(U11(z0, z1))), MARK(x0), MARK(U11(z0, z1))) MARK(take(x0, tt)) -> c62(ACTIVE(take(mark(x0), active(tt))), TAKE(mark(x0), mark(tt)), MARK(x0), MARK(tt)) MARK(take(x0, s(z0))) -> c62(ACTIVE(take(mark(x0), active(s(mark(z0))))), TAKE(mark(x0), mark(s(z0))), MARK(x0), MARK(s(z0))) MARK(take(x0, length(z0))) -> c62(ACTIVE(take(mark(x0), active(length(mark(z0))))), TAKE(mark(x0), mark(length(z0))), MARK(x0), MARK(length(z0))) MARK(take(x0, U21(z0))) -> c62(ACTIVE(take(mark(x0), active(U21(mark(z0))))), TAKE(mark(x0), mark(U21(z0))), MARK(x0), MARK(U21(z0))) MARK(take(x0, nil)) -> c62(ACTIVE(take(mark(x0), active(nil))), TAKE(mark(x0), mark(nil)), MARK(x0), MARK(nil)) MARK(take(x0, U31(z0, z1, z2, z3))) -> c62(ACTIVE(take(mark(x0), active(U31(mark(z0), z1, z2, z3)))), TAKE(mark(x0), mark(U31(z0, z1, z2, z3))), MARK(x0), MARK(U31(z0, z1, z2, z3))) MARK(take(x0, take(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(take(mark(z0), mark(z1))))), TAKE(mark(x0), mark(take(z0, z1))), MARK(x0), MARK(take(z0, z1))) MARK(take(x0, and(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(and(mark(z0), z1)))), TAKE(mark(x0), mark(and(z0, z1))), MARK(x0), MARK(and(z0, z1))) MARK(take(x0, isNat(z0))) -> c62(ACTIVE(take(mark(x0), active(isNat(z0)))), TAKE(mark(x0), mark(isNat(z0))), MARK(x0), MARK(isNat(z0))) MARK(take(x0, isNatList(z0))) -> c62(ACTIVE(take(mark(x0), active(isNatList(z0)))), TAKE(mark(x0), mark(isNatList(z0))), MARK(x0), MARK(isNatList(z0))) MARK(take(x0, isNatIList(z0))) -> c62(ACTIVE(take(mark(x0), active(isNatIList(z0)))), TAKE(mark(x0), mark(isNatIList(z0))), MARK(x0), MARK(isNatIList(z0))) MARK(take(zeros, x1)) -> c62(ACTIVE(take(active(zeros), mark(x1))), TAKE(mark(zeros), mark(x1)), MARK(zeros), MARK(x1)) MARK(take(cons(z0, z1), x1)) -> c62(ACTIVE(take(active(cons(mark(z0), z1)), mark(x1))), TAKE(mark(cons(z0, z1)), mark(x1)), MARK(cons(z0, z1)), MARK(x1)) MARK(take(0, x1)) -> c62(ACTIVE(take(active(0), mark(x1))), TAKE(mark(0), mark(x1)), MARK(0), MARK(x1)) MARK(take(U11(z0, z1), x1)) -> c62(ACTIVE(take(active(U11(mark(z0), z1)), mark(x1))), TAKE(mark(U11(z0, z1)), mark(x1)), MARK(U11(z0, z1)), MARK(x1)) MARK(take(tt, x1)) -> c62(ACTIVE(take(active(tt), mark(x1))), TAKE(mark(tt), mark(x1)), MARK(tt), MARK(x1)) MARK(take(s(z0), x1)) -> c62(ACTIVE(take(active(s(mark(z0))), mark(x1))), TAKE(mark(s(z0)), mark(x1)), MARK(s(z0)), MARK(x1)) MARK(take(length(z0), x1)) -> c62(ACTIVE(take(active(length(mark(z0))), mark(x1))), TAKE(mark(length(z0)), mark(x1)), MARK(length(z0)), MARK(x1)) MARK(take(U21(z0), x1)) -> c62(ACTIVE(take(active(U21(mark(z0))), mark(x1))), TAKE(mark(U21(z0)), mark(x1)), MARK(U21(z0)), MARK(x1)) MARK(take(nil, x1)) -> c62(ACTIVE(take(active(nil), mark(x1))), TAKE(mark(nil), mark(x1)), MARK(nil), MARK(x1)) MARK(take(U31(z0, z1, z2, z3), x1)) -> c62(ACTIVE(take(active(U31(mark(z0), z1, z2, z3)), mark(x1))), TAKE(mark(U31(z0, z1, z2, z3)), mark(x1)), MARK(U31(z0, z1, z2, z3)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c62(ACTIVE(take(active(take(mark(z0), mark(z1))), mark(x1))), TAKE(mark(take(z0, z1)), mark(x1)), MARK(take(z0, z1)), MARK(x1)) MARK(take(and(z0, z1), x1)) -> c62(ACTIVE(take(active(and(mark(z0), z1)), mark(x1))), TAKE(mark(and(z0, z1)), mark(x1)), MARK(and(z0, z1)), MARK(x1)) MARK(take(isNat(z0), x1)) -> c62(ACTIVE(take(active(isNat(z0)), mark(x1))), TAKE(mark(isNat(z0)), mark(x1)), MARK(isNat(z0)), MARK(x1)) MARK(take(isNatList(z0), x1)) -> c62(ACTIVE(take(active(isNatList(z0)), mark(x1))), TAKE(mark(isNatList(z0)), mark(x1)), MARK(isNatList(z0)), MARK(x1)) MARK(take(isNatIList(z0), x1)) -> c62(ACTIVE(take(active(isNatIList(z0)), mark(x1))), TAKE(mark(isNatIList(z0)), mark(x1)), MARK(isNatIList(z0)), MARK(x1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(z0, z1)), AND(mark(z0), z1), MARK(z0)) MARK(and(zeros, x1)) -> c63(ACTIVE(and(active(zeros), x1)), AND(mark(zeros), x1), MARK(zeros)) MARK(and(cons(z0, z1), x1)) -> c63(ACTIVE(and(active(cons(mark(z0), z1)), x1)), AND(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(and(0, x1)) -> c63(ACTIVE(and(active(0), x1)), AND(mark(0), x1), MARK(0)) MARK(and(U11(z0, z1), x1)) -> c63(ACTIVE(and(active(U11(mark(z0), z1)), x1)), AND(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(and(tt, x1)) -> c63(ACTIVE(and(active(tt), x1)), AND(mark(tt), x1), MARK(tt)) MARK(and(s(z0), x1)) -> c63(ACTIVE(and(active(s(mark(z0))), x1)), AND(mark(s(z0)), x1), MARK(s(z0))) MARK(and(length(z0), x1)) -> c63(ACTIVE(and(active(length(mark(z0))), x1)), AND(mark(length(z0)), x1), MARK(length(z0))) MARK(and(U21(z0), x1)) -> c63(ACTIVE(and(active(U21(mark(z0))), x1)), AND(mark(U21(z0)), x1), MARK(U21(z0))) MARK(and(nil, x1)) -> c63(ACTIVE(and(active(nil), x1)), AND(mark(nil), x1), MARK(nil)) MARK(and(U31(z0, z1, z2, z3), x1)) -> c63(ACTIVE(and(active(U31(mark(z0), z1, z2, z3)), x1)), AND(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(and(take(z0, z1), x1)) -> c63(ACTIVE(and(active(take(mark(z0), mark(z1))), x1)), AND(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(and(and(z0, z1), x1)) -> c63(ACTIVE(and(active(and(mark(z0), z1)), x1)), AND(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(and(isNat(z0), x1)) -> c63(ACTIVE(and(active(isNat(z0)), x1)), AND(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(and(isNatList(z0), x1)) -> c63(ACTIVE(and(active(isNatList(z0)), x1)), AND(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(and(isNatIList(z0), x1)) -> c63(ACTIVE(and(active(isNatIList(z0)), x1)), AND(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(and(x0, x1)) -> c63(AND(mark(x0), x1)) K tuples:none Defined Rule Symbols: encArg_1, active_1, mark_1, cons_2, U11_2, s_1, length_1, U21_1, U31_4, take_2, and_2, isNat_1, isNatList_1, isNatIList_1 Defined Pair Symbols: ACTIVE_1, MARK_1, CONS_2, U11'_2, S_1, LENGTH_1, U21'_1, U31'_4, TAKE_2, AND_2, ISNAT_1, ISNATLIST_1, ISNATILIST_1, ENCODE_MARK_1, ENCODE_CONS_2, ENCODE_U11_2, ENCODE_S_1, ENCODE_LENGTH_1, ENCODE_U21_1, ENCODE_U31_4, ENCODE_TAKE_2, ENCODE_AND_2, ENCODE_ISNAT_1, ENCODE_ISNATLIST_1, ENCODE_ISNATILIST_1, ENCARG_1, ENCODE_ACTIVE_1 Compound Symbols: c36_1, c37_3, c38_1, c39_1, c40_2, c41_2, c42_2, c43_1, c45_1, c48_1, c52_1, c64_2, c65_2, c66_2, c67_1, c68_1, c69_1, c70_1, c71_1, c72_1, c73_1, c74_1, c75_1, c76_1, c77_1, c78_1, c79_1, c80_1, c81_1, c82_1, c83_1, c84_1, c85_1, c86_1, c87_1, c88_1, c89_1, c90_1, c91_1, c92_1, c93_1, c94_1, c95_1, c96_1, c97_1, c98_1, c99_1, c100_1, c101_1, c102_1, c34_1, c35_2, c44_3, c46_3, c47_3, c49_3, c50_2, c51_4, c54, c56, c60, c_1, c4_2, c4_1, c5_2, c5_1, c6_3, c6_2, c7_3, c7_2, c8_2, c9_2, c10_2, c11_5, c11_4, c12_3, c12_2, c13_3, c13_2, c14_2, c15_2, c16_2, c53_3, c53_1, c53_2, c55_3, c55_1, c57_3, c57_2, c58_3, c59_3, c61_3, c61_1, c62_4, c63_3, c63_1 ---------------------------------------- (115) CdtLeafRemovalProof (ComplexityIfPolyImplication) Removed 1 leading nodes: ENCODE_ACTIVE(zeros) -> c(ACTIVE(zeros)) Removed 3 trailing nodes: ENCODE_ACTIVE(0) -> c(ACTIVE(0)) ENCODE_ACTIVE(nil) -> c(ACTIVE(nil)) ENCODE_ACTIVE(tt) -> c(ACTIVE(tt)) ---------------------------------------- (116) Obligation: Complexity Dependency Tuples Problem Rules: encArg(zeros) -> zeros encArg(0) -> 0 encArg(tt) -> tt encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_U11(z0, z1)) -> U11(encArg(z0), encArg(z1)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_length(z0)) -> length(encArg(z0)) encArg(cons_U21(z0)) -> U21(encArg(z0)) encArg(cons_U31(z0, z1, z2, z3)) -> U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_isNat(z0)) -> isNat(encArg(z0)) encArg(cons_isNatList(z0)) -> isNatList(encArg(z0)) encArg(cons_isNatIList(z0)) -> isNatIList(encArg(z0)) active(zeros) -> mark(cons(0, zeros)) active(U11(tt, z0)) -> mark(s(length(z0))) active(U21(tt)) -> mark(nil) active(U31(tt, z0, z1, z2)) -> mark(cons(z2, take(z1, z0))) active(and(tt, z0)) -> mark(z0) active(isNat(0)) -> mark(tt) active(isNat(length(z0))) -> mark(isNatList(z0)) active(isNat(s(z0))) -> mark(isNat(z0)) active(isNatIList(z0)) -> mark(isNatList(z0)) active(isNatIList(zeros)) -> mark(tt) active(isNatIList(cons(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(isNatList(nil)) -> mark(tt) active(isNatList(cons(z0, z1))) -> mark(and(isNat(z0), isNatList(z1))) active(isNatList(take(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(length(nil)) -> mark(0) active(length(cons(z0, z1))) -> mark(U11(and(isNatList(z1), isNat(z0)), z1)) active(take(0, z0)) -> mark(U21(isNatIList(z0))) active(take(s(z0), cons(z1, z2))) -> mark(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)) mark(zeros) -> active(zeros) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(0) -> active(0) mark(U11(z0, z1)) -> active(U11(mark(z0), z1)) mark(tt) -> active(tt) mark(s(z0)) -> active(s(mark(z0))) mark(length(z0)) -> active(length(mark(z0))) mark(U21(z0)) -> active(U21(mark(z0))) mark(nil) -> active(nil) mark(U31(z0, z1, z2, z3)) -> active(U31(mark(z0), z1, z2, z3)) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(isNat(z0)) -> active(isNat(z0)) mark(isNatList(z0)) -> active(isNatList(z0)) mark(isNatIList(z0)) -> active(isNatIList(z0)) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) U11(mark(z0), z1) -> U11(z0, z1) U11(z0, mark(z1)) -> U11(z0, z1) U11(active(z0), z1) -> U11(z0, z1) U11(z0, active(z1)) -> U11(z0, z1) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) length(mark(z0)) -> length(z0) length(active(z0)) -> length(z0) U21(mark(z0)) -> U21(z0) U21(active(z0)) -> U21(z0) U31(mark(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, mark(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, mark(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, mark(z3)) -> U31(z0, z1, z2, z3) U31(active(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, active(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, active(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, active(z3)) -> U31(z0, z1, z2, z3) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) isNat(mark(z0)) -> isNat(z0) isNat(active(z0)) -> isNat(z0) isNatList(mark(z0)) -> isNatList(z0) isNatList(active(z0)) -> isNatList(z0) isNatIList(mark(z0)) -> isNatIList(z0) isNatIList(active(z0)) -> isNatIList(z0) Tuples: ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 ENCODE_MARK(z0) -> c(MARK(encArg(z0))) ENCODE_CONS(z0, z1) -> c(CONS(encArg(z0), encArg(z1))) ENCODE_U11(z0, z1) -> c(U11'(encArg(z0), encArg(z1))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_LENGTH(z0) -> c(LENGTH(encArg(z0))) ENCODE_U21(z0) -> c(U21'(encArg(z0))) ENCODE_U31(z0, z1, z2, z3) -> c(U31'(encArg(z0), encArg(z1), encArg(z2), encArg(z3))) ENCODE_TAKE(z0, z1) -> c(TAKE(encArg(z0), encArg(z1))) ENCODE_AND(z0, z1) -> c(AND(encArg(z0), encArg(z1))) ENCODE_ISNAT(z0) -> c(ISNAT(encArg(z0))) ENCODE_ISNATLIST(z0) -> c(ISNATLIST(encArg(z0))) ENCODE_ISNATILIST(z0) -> c(ISNATILIST(encArg(z0))) ENCARG(cons_active(cons_active(z0))) -> c4(ACTIVE(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_active(cons_mark(z0))) -> c4(ACTIVE(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_active(cons_cons(z0, z1))) -> c4(ACTIVE(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_active(cons_U11(z0, z1))) -> c4(ACTIVE(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_active(cons_s(z0))) -> c4(ACTIVE(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_active(cons_length(z0))) -> c4(ACTIVE(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_active(cons_U21(z0))) -> c4(ACTIVE(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_active(cons_U31(z0, z1, z2, z3))) -> c4(ACTIVE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_active(cons_take(z0, z1))) -> c4(ACTIVE(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_active(cons_and(z0, z1))) -> c4(ACTIVE(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_active(cons_isNat(z0))) -> c4(ACTIVE(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_active(cons_isNatList(z0))) -> c4(ACTIVE(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_active(cons_isNatIList(z0))) -> c4(ACTIVE(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_active(zeros)) -> c4(ACTIVE(zeros)) ENCARG(cons_mark(cons_active(z0))) -> c5(MARK(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_mark(cons_mark(z0))) -> c5(MARK(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_mark(cons_cons(z0, z1))) -> c5(MARK(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_mark(cons_U11(z0, z1))) -> c5(MARK(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_mark(cons_s(z0))) -> c5(MARK(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_mark(cons_length(z0))) -> c5(MARK(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_mark(cons_U21(z0))) -> c5(MARK(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_mark(cons_U31(z0, z1, z2, z3))) -> c5(MARK(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_mark(cons_take(z0, z1))) -> c5(MARK(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(cons_and(z0, z1))) -> c5(MARK(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_mark(cons_isNat(z0))) -> c5(MARK(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_mark(cons_isNatList(z0))) -> c5(MARK(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_mark(cons_isNatIList(z0))) -> c5(MARK(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_mark(zeros)) -> c5(MARK(zeros)) ENCARG(cons_mark(0)) -> c5(MARK(0)) ENCARG(cons_mark(tt)) -> c5(MARK(tt)) ENCARG(cons_mark(nil)) -> c5(MARK(nil)) ENCARG(cons_cons(x0, cons_active(z0))) -> c6(CONS(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_cons(x0, cons_mark(z0))) -> c6(CONS(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_cons(x0, cons_cons(z0, z1))) -> c6(CONS(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_cons(x0, cons_U11(z0, z1))) -> c6(CONS(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_cons(x0, cons_s(z0))) -> c6(CONS(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_cons(x0, cons_length(z0))) -> c6(CONS(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_cons(x0, cons_U21(z0))) -> c6(CONS(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_cons(x0, cons_U31(z0, z1, z2, z3))) -> c6(CONS(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_cons(x0, cons_take(z0, z1))) -> c6(CONS(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_cons(x0, cons_and(z0, z1))) -> c6(CONS(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_cons(x0, cons_isNat(z0))) -> c6(CONS(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_cons(x0, cons_isNatList(z0))) -> c6(CONS(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_cons(x0, cons_isNatIList(z0))) -> c6(CONS(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_cons(cons_active(z0), x1)) -> c6(CONS(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_mark(z0), x1)) -> c6(CONS(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_cons(z0, z1), x1)) -> c6(CONS(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_U11(z0, z1), x1)) -> c6(CONS(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_s(z0), x1)) -> c6(CONS(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_length(z0), x1)) -> c6(CONS(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U21(z0), x1)) -> c6(CONS(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U31(z0, z1, z2, z3), x1)) -> c6(CONS(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_cons(cons_take(z0, z1), x1)) -> c6(CONS(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_and(z0, z1), x1)) -> c6(CONS(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_isNat(z0), x1)) -> c6(CONS(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_isNatList(z0), x1)) -> c6(CONS(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_isNatIList(z0), x1)) -> c6(CONS(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_cons(x0, zeros)) -> c6(CONS(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_cons(x0, 0)) -> c6(CONS(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_cons(x0, tt)) -> c6(CONS(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_cons(x0, nil)) -> c6(CONS(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_cons(zeros, x1)) -> c6(CONS(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(0, x1)) -> c6(CONS(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(tt, x1)) -> c6(CONS(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(nil, x1)) -> c6(CONS(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(x0, cons_active(z0))) -> c7(U11'(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_U11(x0, cons_mark(z0))) -> c7(U11'(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_U11(x0, cons_cons(z0, z1))) -> c7(U11'(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U11(x0, cons_U11(z0, z1))) -> c7(U11'(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U11(x0, cons_s(z0))) -> c7(U11'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_U11(x0, cons_length(z0))) -> c7(U11'(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_U11(x0, cons_U21(z0))) -> c7(U11'(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_U11(x0, cons_U31(z0, z1, z2, z3))) -> c7(U11'(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U11(x0, cons_take(z0, z1))) -> c7(U11'(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_U11(x0, cons_and(z0, z1))) -> c7(U11'(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_U11(x0, cons_isNat(z0))) -> c7(U11'(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_U11(x0, cons_isNatList(z0))) -> c7(U11'(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_U11(x0, cons_isNatIList(z0))) -> c7(U11'(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U11(cons_active(z0), x1)) -> c7(U11'(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_mark(z0), x1)) -> c7(U11'(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_cons(z0, z1), x1)) -> c7(U11'(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_U11(z0, z1), x1)) -> c7(U11'(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_s(z0), x1)) -> c7(U11'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_length(z0), x1)) -> c7(U11'(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_U21(z0), x1)) -> c7(U11'(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_U31(z0, z1, z2, z3), x1)) -> c7(U11'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_U11(cons_take(z0, z1), x1)) -> c7(U11'(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_and(z0, z1), x1)) -> c7(U11'(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_isNat(z0), x1)) -> c7(U11'(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_isNatList(z0), x1)) -> c7(U11'(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_isNatIList(z0), x1)) -> c7(U11'(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_U11(x0, zeros)) -> c7(U11'(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_U11(x0, 0)) -> c7(U11'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_U11(x0, tt)) -> c7(U11'(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_U11(x0, nil)) -> c7(U11'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_U11(zeros, x1)) -> c7(U11'(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(0, x1)) -> c7(U11'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(tt, x1)) -> c7(U11'(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(nil, x1)) -> c7(U11'(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_s(cons_active(z0))) -> c8(S(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_s(cons_mark(z0))) -> c8(S(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_s(cons_cons(z0, z1))) -> c8(S(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_s(cons_U11(z0, z1))) -> c8(S(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_s(cons_s(z0))) -> c8(S(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_length(z0))) -> c8(S(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_s(cons_U21(z0))) -> c8(S(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_s(cons_U31(z0, z1, z2, z3))) -> c8(S(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_s(cons_take(z0, z1))) -> c8(S(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_s(cons_and(z0, z1))) -> c8(S(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_s(cons_isNat(z0))) -> c8(S(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_s(cons_isNatList(z0))) -> c8(S(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_s(cons_isNatIList(z0))) -> c8(S(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_length(cons_active(z0))) -> c9(LENGTH(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_length(cons_mark(z0))) -> c9(LENGTH(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_length(cons_cons(z0, z1))) -> c9(LENGTH(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_length(cons_U11(z0, z1))) -> c9(LENGTH(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_length(cons_s(z0))) -> c9(LENGTH(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_length(cons_length(z0))) -> c9(LENGTH(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_length(cons_U21(z0))) -> c9(LENGTH(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_length(cons_U31(z0, z1, z2, z3))) -> c9(LENGTH(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_length(cons_take(z0, z1))) -> c9(LENGTH(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_length(cons_and(z0, z1))) -> c9(LENGTH(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_length(cons_isNat(z0))) -> c9(LENGTH(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_length(cons_isNatList(z0))) -> c9(LENGTH(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_length(cons_isNatIList(z0))) -> c9(LENGTH(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U21(cons_active(z0))) -> c10(U21'(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_U21(cons_mark(z0))) -> c10(U21'(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_U21(cons_cons(z0, z1))) -> c10(U21'(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U21(cons_U11(z0, z1))) -> c10(U21'(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U21(cons_s(z0))) -> c10(U21'(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_U21(cons_length(z0))) -> c10(U21'(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_U21(cons_U21(z0))) -> c10(U21'(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_U21(cons_U31(z0, z1, z2, z3))) -> c10(U21'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U21(cons_take(z0, z1))) -> c10(U21'(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_U21(cons_and(z0, z1))) -> c10(U21'(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_U21(cons_isNat(z0))) -> c10(U21'(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_U21(cons_isNatList(z0))) -> c10(U21'(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_U21(cons_isNatIList(z0))) -> c10(U21'(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U31(x0, x1, x2, cons_active(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), active(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_active(z0))) ENCARG(cons_U31(x0, x1, x2, cons_mark(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), mark(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_mark(z0))) ENCARG(cons_U31(x0, x1, x2, cons_cons(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_U11(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_s(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), s(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_s(z0))) ENCARG(cons_U31(x0, x1, x2, cons_length(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), length(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_length(z0))) ENCARG(cons_U31(x0, x1, x2, cons_U21(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U21(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U21(z0))) ENCARG(cons_U31(x0, x1, x2, cons_U31(z0, z1, z2, z3))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U31(x0, x1, x2, cons_take(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_take(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_and(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_and(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_isNat(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNat(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNat(z0))) ENCARG(cons_U31(x0, x1, x2, cons_isNatList(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNatList(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNatList(z0))) ENCARG(cons_U31(x0, x1, x2, cons_isNatIList(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U31(x0, x1, cons_active(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), active(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_active(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_mark(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), mark(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_mark(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_cons(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), cons(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_cons(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U11(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), U11(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U11(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_s(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), s(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_s(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_length(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), length(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_length(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U21(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), U21(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U21(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U31(z0, z1, z2, z3), x3)) -> c11(U31'(encArg(x0), encArg(x1), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_take(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), take(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_take(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_and(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), and(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_and(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNat(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNat(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNat(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNatList(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNatList(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNatList(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNatIList(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNatIList(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNatIList(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, cons_active(z0), x2, x3)) -> c11(U31'(encArg(x0), active(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_active(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_mark(z0), x2, x3)) -> c11(U31'(encArg(x0), mark(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_mark(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_cons(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), cons(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_cons(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U11(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), U11(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U11(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_s(z0), x2, x3)) -> c11(U31'(encArg(x0), s(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_s(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_length(z0), x2, x3)) -> c11(U31'(encArg(x0), length(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_length(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U21(z0), x2, x3)) -> c11(U31'(encArg(x0), U21(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U21(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U31(z0, z1, z2, z3), x2, x3)) -> c11(U31'(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_take(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), take(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_take(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_and(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), and(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_and(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNat(z0), x2, x3)) -> c11(U31'(encArg(x0), isNat(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNat(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNatList(z0), x2, x3)) -> c11(U31'(encArg(x0), isNatList(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNatList(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNatIList(z0), x2, x3)) -> c11(U31'(encArg(x0), isNatIList(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNatIList(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_active(z0), x1, x2, x3)) -> c11(U31'(active(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_active(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_mark(z0), x1, x2, x3)) -> c11(U31'(mark(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_mark(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_cons(z0, z1), x1, x2, x3)) -> c11(U31'(cons(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_cons(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U11(z0, z1), x1, x2, x3)) -> c11(U31'(U11(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U11(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_s(z0), x1, x2, x3)) -> c11(U31'(s(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_s(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_length(z0), x1, x2, x3)) -> c11(U31'(length(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_length(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U21(z0), x1, x2, x3)) -> c11(U31'(U21(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U21(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U31(z0, z1, z2, z3), x1, x2, x3)) -> c11(U31'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_take(z0, z1), x1, x2, x3)) -> c11(U31'(take(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_take(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_and(z0, z1), x1, x2, x3)) -> c11(U31'(and(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_and(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNat(z0), x1, x2, x3)) -> c11(U31'(isNat(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNat(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNatList(z0), x1, x2, x3)) -> c11(U31'(isNatList(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNatList(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNatIList(z0), x1, x2, x3)) -> c11(U31'(isNatIList(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNatIList(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, x1, x2, zeros)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), zeros), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, 0)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), 0), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, tt)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), tt), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, nil)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), nil), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, zeros, x3)) -> c11(U31'(encArg(x0), encArg(x1), zeros, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, 0, x3)) -> c11(U31'(encArg(x0), encArg(x1), 0, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, tt, x3)) -> c11(U31'(encArg(x0), encArg(x1), tt, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, nil, x3)) -> c11(U31'(encArg(x0), encArg(x1), nil, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, zeros, x2, x3)) -> c11(U31'(encArg(x0), zeros, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, 0, x2, x3)) -> c11(U31'(encArg(x0), 0, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, tt, x2, x3)) -> c11(U31'(encArg(x0), tt, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, nil, x2, x3)) -> c11(U31'(encArg(x0), nil, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(zeros, x1, x2, x3)) -> c11(U31'(zeros, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(0, x1, x2, x3)) -> c11(U31'(0, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(tt, x1, x2, x3)) -> c11(U31'(tt, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(nil, x1, x2, x3)) -> c11(U31'(nil, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_take(x0, cons_active(z0))) -> c12(TAKE(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_take(x0, cons_mark(z0))) -> c12(TAKE(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_take(x0, cons_cons(z0, z1))) -> c12(TAKE(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_take(x0, cons_U11(z0, z1))) -> c12(TAKE(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_take(x0, cons_s(z0))) -> c12(TAKE(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_take(x0, cons_length(z0))) -> c12(TAKE(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_take(x0, cons_U21(z0))) -> c12(TAKE(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_take(x0, cons_U31(z0, z1, z2, z3))) -> c12(TAKE(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_take(x0, cons_take(z0, z1))) -> c12(TAKE(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_take(x0, cons_and(z0, z1))) -> c12(TAKE(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_take(x0, cons_isNat(z0))) -> c12(TAKE(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_take(x0, cons_isNatList(z0))) -> c12(TAKE(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_take(x0, cons_isNatIList(z0))) -> c12(TAKE(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_take(cons_active(z0), x1)) -> c12(TAKE(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_take(cons_mark(z0), x1)) -> c12(TAKE(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_take(cons_cons(z0, z1), x1)) -> c12(TAKE(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_U11(z0, z1), x1)) -> c12(TAKE(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_s(z0), x1)) -> c12(TAKE(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_take(cons_length(z0), x1)) -> c12(TAKE(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_take(cons_U21(z0), x1)) -> c12(TAKE(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_take(cons_U31(z0, z1, z2, z3), x1)) -> c12(TAKE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_take(cons_take(z0, z1), x1)) -> c12(TAKE(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_and(z0, z1), x1)) -> c12(TAKE(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_isNat(z0), x1)) -> c12(TAKE(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_take(cons_isNatList(z0), x1)) -> c12(TAKE(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_take(cons_isNatIList(z0), x1)) -> c12(TAKE(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_take(x0, zeros)) -> c12(TAKE(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_take(x0, 0)) -> c12(TAKE(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_take(x0, tt)) -> c12(TAKE(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_take(x0, nil)) -> c12(TAKE(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_take(zeros, x1)) -> c12(TAKE(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(0, x1)) -> c12(TAKE(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(tt, x1)) -> c12(TAKE(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(nil, x1)) -> c12(TAKE(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(x0, cons_active(z0))) -> c13(AND(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_and(x0, cons_mark(z0))) -> c13(AND(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_and(x0, cons_cons(z0, z1))) -> c13(AND(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_and(x0, cons_U11(z0, z1))) -> c13(AND(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_and(x0, cons_s(z0))) -> c13(AND(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_and(x0, cons_length(z0))) -> c13(AND(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_and(x0, cons_U21(z0))) -> c13(AND(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_and(x0, cons_U31(z0, z1, z2, z3))) -> c13(AND(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_and(x0, cons_take(z0, z1))) -> c13(AND(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_and(x0, cons_and(z0, z1))) -> c13(AND(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_and(x0, cons_isNat(z0))) -> c13(AND(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_and(x0, cons_isNatList(z0))) -> c13(AND(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_and(x0, cons_isNatIList(z0))) -> c13(AND(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_and(cons_active(z0), x1)) -> c13(AND(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_and(cons_mark(z0), x1)) -> c13(AND(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_and(cons_cons(z0, z1), x1)) -> c13(AND(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_U11(z0, z1), x1)) -> c13(AND(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_s(z0), x1)) -> c13(AND(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_and(cons_length(z0), x1)) -> c13(AND(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_and(cons_U21(z0), x1)) -> c13(AND(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_and(cons_U31(z0, z1, z2, z3), x1)) -> c13(AND(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_and(cons_take(z0, z1), x1)) -> c13(AND(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_and(z0, z1), x1)) -> c13(AND(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_isNat(z0), x1)) -> c13(AND(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_and(cons_isNatList(z0), x1)) -> c13(AND(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_and(cons_isNatIList(z0), x1)) -> c13(AND(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_and(x0, zeros)) -> c13(AND(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_and(x0, 0)) -> c13(AND(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_and(x0, tt)) -> c13(AND(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_and(x0, nil)) -> c13(AND(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_and(zeros, x1)) -> c13(AND(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(0, x1)) -> c13(AND(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(tt, x1)) -> c13(AND(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(nil, x1)) -> c13(AND(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_isNat(cons_active(z0))) -> c14(ISNAT(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_isNat(cons_mark(z0))) -> c14(ISNAT(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_isNat(cons_cons(z0, z1))) -> c14(ISNAT(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_isNat(cons_U11(z0, z1))) -> c14(ISNAT(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_isNat(cons_s(z0))) -> c14(ISNAT(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_isNat(cons_length(z0))) -> c14(ISNAT(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_isNat(cons_U21(z0))) -> c14(ISNAT(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_isNat(cons_U31(z0, z1, z2, z3))) -> c14(ISNAT(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_isNat(cons_take(z0, z1))) -> c14(ISNAT(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_isNat(cons_and(z0, z1))) -> c14(ISNAT(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_isNat(cons_isNat(z0))) -> c14(ISNAT(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_isNat(cons_isNatList(z0))) -> c14(ISNAT(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_isNat(cons_isNatIList(z0))) -> c14(ISNAT(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_isNatList(cons_active(z0))) -> c15(ISNATLIST(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_isNatList(cons_mark(z0))) -> c15(ISNATLIST(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_isNatList(cons_cons(z0, z1))) -> c15(ISNATLIST(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_isNatList(cons_U11(z0, z1))) -> c15(ISNATLIST(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_isNatList(cons_s(z0))) -> c15(ISNATLIST(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_isNatList(cons_length(z0))) -> c15(ISNATLIST(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_isNatList(cons_U21(z0))) -> c15(ISNATLIST(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_isNatList(cons_U31(z0, z1, z2, z3))) -> c15(ISNATLIST(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_isNatList(cons_take(z0, z1))) -> c15(ISNATLIST(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_isNatList(cons_and(z0, z1))) -> c15(ISNATLIST(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_isNatList(cons_isNat(z0))) -> c15(ISNATLIST(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_isNatList(cons_isNatList(z0))) -> c15(ISNATLIST(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_isNatList(cons_isNatIList(z0))) -> c15(ISNATLIST(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_isNatIList(cons_active(z0))) -> c16(ISNATILIST(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_isNatIList(cons_mark(z0))) -> c16(ISNATILIST(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_isNatIList(cons_cons(z0, z1))) -> c16(ISNATILIST(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_isNatIList(cons_U11(z0, z1))) -> c16(ISNATILIST(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_isNatIList(cons_s(z0))) -> c16(ISNATILIST(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_isNatIList(cons_length(z0))) -> c16(ISNATILIST(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_isNatIList(cons_U21(z0))) -> c16(ISNATILIST(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_isNatIList(cons_U31(z0, z1, z2, z3))) -> c16(ISNATILIST(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_isNatIList(cons_take(z0, z1))) -> c16(ISNATILIST(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_isNatIList(cons_and(z0, z1))) -> c16(ISNATILIST(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_isNatIList(cons_isNat(z0))) -> c16(ISNATILIST(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_isNatIList(cons_isNatList(z0))) -> c16(ISNATILIST(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_isNatIList(cons_isNatIList(z0))) -> c16(ISNATILIST(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) MARK(cons(zeros, x1)) -> c53(ACTIVE(cons(active(zeros), x1)), CONS(mark(zeros), x1), MARK(zeros)) MARK(cons(cons(z0, z1), x1)) -> c53(ACTIVE(cons(active(cons(mark(z0), z1)), x1)), CONS(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(cons(0, x1)) -> c53(ACTIVE(cons(active(0), x1)), CONS(mark(0), x1), MARK(0)) MARK(cons(U11(z0, z1), x1)) -> c53(ACTIVE(cons(active(U11(mark(z0), z1)), x1)), CONS(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(cons(tt, x1)) -> c53(ACTIVE(cons(active(tt), x1)), CONS(mark(tt), x1), MARK(tt)) MARK(cons(s(z0), x1)) -> c53(ACTIVE(cons(active(s(mark(z0))), x1)), CONS(mark(s(z0)), x1), MARK(s(z0))) MARK(cons(length(z0), x1)) -> c53(ACTIVE(cons(active(length(mark(z0))), x1)), CONS(mark(length(z0)), x1), MARK(length(z0))) MARK(cons(U21(z0), x1)) -> c53(ACTIVE(cons(active(U21(mark(z0))), x1)), CONS(mark(U21(z0)), x1), MARK(U21(z0))) MARK(cons(nil, x1)) -> c53(ACTIVE(cons(active(nil), x1)), CONS(mark(nil), x1), MARK(nil)) MARK(cons(U31(z0, z1, z2, z3), x1)) -> c53(ACTIVE(cons(active(U31(mark(z0), z1, z2, z3)), x1)), CONS(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(cons(take(z0, z1), x1)) -> c53(ACTIVE(cons(active(take(mark(z0), mark(z1))), x1)), CONS(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(cons(and(z0, z1), x1)) -> c53(ACTIVE(cons(active(and(mark(z0), z1)), x1)), CONS(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(cons(isNat(z0), x1)) -> c53(ACTIVE(cons(active(isNat(z0)), x1)), CONS(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(cons(isNatList(z0), x1)) -> c53(ACTIVE(cons(active(isNatList(z0)), x1)), CONS(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(cons(isNatIList(z0), x1)) -> c53(ACTIVE(cons(active(isNatIList(z0)), x1)), CONS(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(cons(x0, x1)) -> c53(CONS(mark(x0), x1)) MARK(cons(z0, z1)) -> c53(CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(z0, z1)), U11'(mark(z0), z1), MARK(z0)) MARK(U11(zeros, x1)) -> c55(ACTIVE(U11(active(zeros), x1)), U11'(mark(zeros), x1), MARK(zeros)) MARK(U11(cons(z0, z1), x1)) -> c55(ACTIVE(U11(active(cons(mark(z0), z1)), x1)), U11'(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(U11(0, x1)) -> c55(ACTIVE(U11(active(0), x1)), U11'(mark(0), x1), MARK(0)) MARK(U11(U11(z0, z1), x1)) -> c55(ACTIVE(U11(active(U11(mark(z0), z1)), x1)), U11'(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(U11(tt, x1)) -> c55(ACTIVE(U11(active(tt), x1)), U11'(mark(tt), x1), MARK(tt)) MARK(U11(s(z0), x1)) -> c55(ACTIVE(U11(active(s(mark(z0))), x1)), U11'(mark(s(z0)), x1), MARK(s(z0))) MARK(U11(length(z0), x1)) -> c55(ACTIVE(U11(active(length(mark(z0))), x1)), U11'(mark(length(z0)), x1), MARK(length(z0))) MARK(U11(U21(z0), x1)) -> c55(ACTIVE(U11(active(U21(mark(z0))), x1)), U11'(mark(U21(z0)), x1), MARK(U21(z0))) MARK(U11(nil, x1)) -> c55(ACTIVE(U11(active(nil), x1)), U11'(mark(nil), x1), MARK(nil)) MARK(U11(U31(z0, z1, z2, z3), x1)) -> c55(ACTIVE(U11(active(U31(mark(z0), z1, z2, z3)), x1)), U11'(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(U11(take(z0, z1), x1)) -> c55(ACTIVE(U11(active(take(mark(z0), mark(z1))), x1)), U11'(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(U11(and(z0, z1), x1)) -> c55(ACTIVE(U11(active(and(mark(z0), z1)), x1)), U11'(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(U11(isNat(z0), x1)) -> c55(ACTIVE(U11(active(isNat(z0)), x1)), U11'(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(U11(isNatList(z0), x1)) -> c55(ACTIVE(U11(active(isNatList(z0)), x1)), U11'(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(U11(isNatIList(z0), x1)) -> c55(ACTIVE(U11(active(isNatIList(z0)), x1)), U11'(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(U11(x0, x1)) -> c55(U11'(mark(x0), x1)) MARK(s(zeros)) -> c57(ACTIVE(s(active(zeros))), S(mark(zeros)), MARK(zeros)) MARK(s(cons(z0, z1))) -> c57(ACTIVE(s(active(cons(mark(z0), z1)))), S(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(s(0)) -> c57(ACTIVE(s(active(0))), S(mark(0)), MARK(0)) MARK(s(U11(z0, z1))) -> c57(ACTIVE(s(active(U11(mark(z0), z1)))), S(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(s(tt)) -> c57(ACTIVE(s(active(tt))), S(mark(tt)), MARK(tt)) MARK(s(s(z0))) -> c57(ACTIVE(s(active(s(mark(z0))))), S(mark(s(z0))), MARK(s(z0))) MARK(s(length(z0))) -> c57(ACTIVE(s(active(length(mark(z0))))), S(mark(length(z0))), MARK(length(z0))) MARK(s(U21(z0))) -> c57(ACTIVE(s(active(U21(mark(z0))))), S(mark(U21(z0))), MARK(U21(z0))) MARK(s(nil)) -> c57(ACTIVE(s(active(nil))), S(mark(nil)), MARK(nil)) MARK(s(U31(z0, z1, z2, z3))) -> c57(ACTIVE(s(active(U31(mark(z0), z1, z2, z3)))), S(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(s(take(z0, z1))) -> c57(ACTIVE(s(active(take(mark(z0), mark(z1))))), S(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(s(and(z0, z1))) -> c57(ACTIVE(s(active(and(mark(z0), z1)))), S(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(s(isNat(z0))) -> c57(ACTIVE(s(active(isNat(z0)))), S(mark(isNat(z0))), MARK(isNat(z0))) MARK(s(isNatList(z0))) -> c57(ACTIVE(s(active(isNatList(z0)))), S(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(s(isNatIList(z0))) -> c57(ACTIVE(s(active(isNatIList(z0)))), S(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(s(z0)) -> c57(S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(z0)), LENGTH(mark(z0)), MARK(z0)) MARK(length(zeros)) -> c58(ACTIVE(length(active(zeros))), LENGTH(mark(zeros)), MARK(zeros)) MARK(length(cons(z0, z1))) -> c58(ACTIVE(length(active(cons(mark(z0), z1)))), LENGTH(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(length(0)) -> c58(ACTIVE(length(active(0))), LENGTH(mark(0)), MARK(0)) MARK(length(U11(z0, z1))) -> c58(ACTIVE(length(active(U11(mark(z0), z1)))), LENGTH(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(length(tt)) -> c58(ACTIVE(length(active(tt))), LENGTH(mark(tt)), MARK(tt)) MARK(length(s(z0))) -> c58(ACTIVE(length(active(s(mark(z0))))), LENGTH(mark(s(z0))), MARK(s(z0))) MARK(length(length(z0))) -> c58(ACTIVE(length(active(length(mark(z0))))), LENGTH(mark(length(z0))), MARK(length(z0))) MARK(length(U21(z0))) -> c58(ACTIVE(length(active(U21(mark(z0))))), LENGTH(mark(U21(z0))), MARK(U21(z0))) MARK(length(nil)) -> c58(ACTIVE(length(active(nil))), LENGTH(mark(nil)), MARK(nil)) MARK(length(U31(z0, z1, z2, z3))) -> c58(ACTIVE(length(active(U31(mark(z0), z1, z2, z3)))), LENGTH(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(length(take(z0, z1))) -> c58(ACTIVE(length(active(take(mark(z0), mark(z1))))), LENGTH(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(length(and(z0, z1))) -> c58(ACTIVE(length(active(and(mark(z0), z1)))), LENGTH(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(length(isNat(z0))) -> c58(ACTIVE(length(active(isNat(z0)))), LENGTH(mark(isNat(z0))), MARK(isNat(z0))) MARK(length(isNatList(z0))) -> c58(ACTIVE(length(active(isNatList(z0)))), LENGTH(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(length(isNatIList(z0))) -> c58(ACTIVE(length(active(isNatIList(z0)))), LENGTH(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(U21(z0)) -> c59(ACTIVE(U21(z0)), U21'(mark(z0)), MARK(z0)) MARK(U21(zeros)) -> c59(ACTIVE(U21(active(zeros))), U21'(mark(zeros)), MARK(zeros)) MARK(U21(cons(z0, z1))) -> c59(ACTIVE(U21(active(cons(mark(z0), z1)))), U21'(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(U21(0)) -> c59(ACTIVE(U21(active(0))), U21'(mark(0)), MARK(0)) MARK(U21(U11(z0, z1))) -> c59(ACTIVE(U21(active(U11(mark(z0), z1)))), U21'(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(U21(tt)) -> c59(ACTIVE(U21(active(tt))), U21'(mark(tt)), MARK(tt)) MARK(U21(s(z0))) -> c59(ACTIVE(U21(active(s(mark(z0))))), U21'(mark(s(z0))), MARK(s(z0))) MARK(U21(length(z0))) -> c59(ACTIVE(U21(active(length(mark(z0))))), U21'(mark(length(z0))), MARK(length(z0))) MARK(U21(U21(z0))) -> c59(ACTIVE(U21(active(U21(mark(z0))))), U21'(mark(U21(z0))), MARK(U21(z0))) MARK(U21(nil)) -> c59(ACTIVE(U21(active(nil))), U21'(mark(nil)), MARK(nil)) MARK(U21(U31(z0, z1, z2, z3))) -> c59(ACTIVE(U21(active(U31(mark(z0), z1, z2, z3)))), U21'(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(U21(take(z0, z1))) -> c59(ACTIVE(U21(active(take(mark(z0), mark(z1))))), U21'(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(U21(and(z0, z1))) -> c59(ACTIVE(U21(active(and(mark(z0), z1)))), U21'(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(U21(isNat(z0))) -> c59(ACTIVE(U21(active(isNat(z0)))), U21'(mark(isNat(z0))), MARK(isNat(z0))) MARK(U21(isNatList(z0))) -> c59(ACTIVE(U21(active(isNatList(z0)))), U21'(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(U21(isNatIList(z0))) -> c59(ACTIVE(U21(active(isNatIList(z0)))), U21'(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(z0, z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U31(zeros, x1, x2, x3)) -> c61(ACTIVE(U31(active(zeros), x1, x2, x3)), U31'(mark(zeros), x1, x2, x3), MARK(zeros)) MARK(U31(cons(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(cons(mark(z0), z1)), x1, x2, x3)), U31'(mark(cons(z0, z1)), x1, x2, x3), MARK(cons(z0, z1))) MARK(U31(0, x1, x2, x3)) -> c61(ACTIVE(U31(active(0), x1, x2, x3)), U31'(mark(0), x1, x2, x3), MARK(0)) MARK(U31(U11(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(U11(mark(z0), z1)), x1, x2, x3)), U31'(mark(U11(z0, z1)), x1, x2, x3), MARK(U11(z0, z1))) MARK(U31(tt, x1, x2, x3)) -> c61(ACTIVE(U31(active(tt), x1, x2, x3)), U31'(mark(tt), x1, x2, x3), MARK(tt)) MARK(U31(s(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(s(mark(z0))), x1, x2, x3)), U31'(mark(s(z0)), x1, x2, x3), MARK(s(z0))) MARK(U31(length(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(length(mark(z0))), x1, x2, x3)), U31'(mark(length(z0)), x1, x2, x3), MARK(length(z0))) MARK(U31(U21(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(U21(mark(z0))), x1, x2, x3)), U31'(mark(U21(z0)), x1, x2, x3), MARK(U21(z0))) MARK(U31(nil, x1, x2, x3)) -> c61(ACTIVE(U31(active(nil), x1, x2, x3)), U31'(mark(nil), x1, x2, x3), MARK(nil)) MARK(U31(U31(z0, z1, z2, z3), x1, x2, x3)) -> c61(ACTIVE(U31(active(U31(mark(z0), z1, z2, z3)), x1, x2, x3)), U31'(mark(U31(z0, z1, z2, z3)), x1, x2, x3), MARK(U31(z0, z1, z2, z3))) MARK(U31(take(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(take(mark(z0), mark(z1))), x1, x2, x3)), U31'(mark(take(z0, z1)), x1, x2, x3), MARK(take(z0, z1))) MARK(U31(and(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(and(mark(z0), z1)), x1, x2, x3)), U31'(mark(and(z0, z1)), x1, x2, x3), MARK(and(z0, z1))) MARK(U31(isNat(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNat(z0)), x1, x2, x3)), U31'(mark(isNat(z0)), x1, x2, x3), MARK(isNat(z0))) MARK(U31(isNatList(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNatList(z0)), x1, x2, x3)), U31'(mark(isNatList(z0)), x1, x2, x3), MARK(isNatList(z0))) MARK(U31(isNatIList(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNatIList(z0)), x1, x2, x3)), U31'(mark(isNatIList(z0)), x1, x2, x3), MARK(isNatIList(z0))) MARK(U31(x0, x1, x2, x3)) -> c61(U31'(mark(x0), x1, x2, x3)) MARK(take(z0, x1)) -> c62(ACTIVE(take(z0, mark(x1))), TAKE(mark(z0), mark(x1)), MARK(z0), MARK(x1)) MARK(take(x0, z1)) -> c62(ACTIVE(take(mark(x0), z1)), TAKE(mark(x0), mark(z1)), MARK(x0), MARK(z1)) MARK(take(x0, zeros)) -> c62(ACTIVE(take(mark(x0), active(zeros))), TAKE(mark(x0), mark(zeros)), MARK(x0), MARK(zeros)) MARK(take(x0, cons(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(cons(mark(z0), z1)))), TAKE(mark(x0), mark(cons(z0, z1))), MARK(x0), MARK(cons(z0, z1))) MARK(take(x0, 0)) -> c62(ACTIVE(take(mark(x0), active(0))), TAKE(mark(x0), mark(0)), MARK(x0), MARK(0)) MARK(take(x0, U11(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(U11(mark(z0), z1)))), TAKE(mark(x0), mark(U11(z0, z1))), MARK(x0), MARK(U11(z0, z1))) MARK(take(x0, tt)) -> c62(ACTIVE(take(mark(x0), active(tt))), TAKE(mark(x0), mark(tt)), MARK(x0), MARK(tt)) MARK(take(x0, s(z0))) -> c62(ACTIVE(take(mark(x0), active(s(mark(z0))))), TAKE(mark(x0), mark(s(z0))), MARK(x0), MARK(s(z0))) MARK(take(x0, length(z0))) -> c62(ACTIVE(take(mark(x0), active(length(mark(z0))))), TAKE(mark(x0), mark(length(z0))), MARK(x0), MARK(length(z0))) MARK(take(x0, U21(z0))) -> c62(ACTIVE(take(mark(x0), active(U21(mark(z0))))), TAKE(mark(x0), mark(U21(z0))), MARK(x0), MARK(U21(z0))) MARK(take(x0, nil)) -> c62(ACTIVE(take(mark(x0), active(nil))), TAKE(mark(x0), mark(nil)), MARK(x0), MARK(nil)) MARK(take(x0, U31(z0, z1, z2, z3))) -> c62(ACTIVE(take(mark(x0), active(U31(mark(z0), z1, z2, z3)))), TAKE(mark(x0), mark(U31(z0, z1, z2, z3))), MARK(x0), MARK(U31(z0, z1, z2, z3))) MARK(take(x0, take(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(take(mark(z0), mark(z1))))), TAKE(mark(x0), mark(take(z0, z1))), MARK(x0), MARK(take(z0, z1))) MARK(take(x0, and(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(and(mark(z0), z1)))), TAKE(mark(x0), mark(and(z0, z1))), MARK(x0), MARK(and(z0, z1))) MARK(take(x0, isNat(z0))) -> c62(ACTIVE(take(mark(x0), active(isNat(z0)))), TAKE(mark(x0), mark(isNat(z0))), MARK(x0), MARK(isNat(z0))) MARK(take(x0, isNatList(z0))) -> c62(ACTIVE(take(mark(x0), active(isNatList(z0)))), TAKE(mark(x0), mark(isNatList(z0))), MARK(x0), MARK(isNatList(z0))) MARK(take(x0, isNatIList(z0))) -> c62(ACTIVE(take(mark(x0), active(isNatIList(z0)))), TAKE(mark(x0), mark(isNatIList(z0))), MARK(x0), MARK(isNatIList(z0))) MARK(take(zeros, x1)) -> c62(ACTIVE(take(active(zeros), mark(x1))), TAKE(mark(zeros), mark(x1)), MARK(zeros), MARK(x1)) MARK(take(cons(z0, z1), x1)) -> c62(ACTIVE(take(active(cons(mark(z0), z1)), mark(x1))), TAKE(mark(cons(z0, z1)), mark(x1)), MARK(cons(z0, z1)), MARK(x1)) MARK(take(0, x1)) -> c62(ACTIVE(take(active(0), mark(x1))), TAKE(mark(0), mark(x1)), MARK(0), MARK(x1)) MARK(take(U11(z0, z1), x1)) -> c62(ACTIVE(take(active(U11(mark(z0), z1)), mark(x1))), TAKE(mark(U11(z0, z1)), mark(x1)), MARK(U11(z0, z1)), MARK(x1)) MARK(take(tt, x1)) -> c62(ACTIVE(take(active(tt), mark(x1))), TAKE(mark(tt), mark(x1)), MARK(tt), MARK(x1)) MARK(take(s(z0), x1)) -> c62(ACTIVE(take(active(s(mark(z0))), mark(x1))), TAKE(mark(s(z0)), mark(x1)), MARK(s(z0)), MARK(x1)) MARK(take(length(z0), x1)) -> c62(ACTIVE(take(active(length(mark(z0))), mark(x1))), TAKE(mark(length(z0)), mark(x1)), MARK(length(z0)), MARK(x1)) MARK(take(U21(z0), x1)) -> c62(ACTIVE(take(active(U21(mark(z0))), mark(x1))), TAKE(mark(U21(z0)), mark(x1)), MARK(U21(z0)), MARK(x1)) MARK(take(nil, x1)) -> c62(ACTIVE(take(active(nil), mark(x1))), TAKE(mark(nil), mark(x1)), MARK(nil), MARK(x1)) MARK(take(U31(z0, z1, z2, z3), x1)) -> c62(ACTIVE(take(active(U31(mark(z0), z1, z2, z3)), mark(x1))), TAKE(mark(U31(z0, z1, z2, z3)), mark(x1)), MARK(U31(z0, z1, z2, z3)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c62(ACTIVE(take(active(take(mark(z0), mark(z1))), mark(x1))), TAKE(mark(take(z0, z1)), mark(x1)), MARK(take(z0, z1)), MARK(x1)) MARK(take(and(z0, z1), x1)) -> c62(ACTIVE(take(active(and(mark(z0), z1)), mark(x1))), TAKE(mark(and(z0, z1)), mark(x1)), MARK(and(z0, z1)), MARK(x1)) MARK(take(isNat(z0), x1)) -> c62(ACTIVE(take(active(isNat(z0)), mark(x1))), TAKE(mark(isNat(z0)), mark(x1)), MARK(isNat(z0)), MARK(x1)) MARK(take(isNatList(z0), x1)) -> c62(ACTIVE(take(active(isNatList(z0)), mark(x1))), TAKE(mark(isNatList(z0)), mark(x1)), MARK(isNatList(z0)), MARK(x1)) MARK(take(isNatIList(z0), x1)) -> c62(ACTIVE(take(active(isNatIList(z0)), mark(x1))), TAKE(mark(isNatIList(z0)), mark(x1)), MARK(isNatIList(z0)), MARK(x1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(z0, z1)), AND(mark(z0), z1), MARK(z0)) MARK(and(zeros, x1)) -> c63(ACTIVE(and(active(zeros), x1)), AND(mark(zeros), x1), MARK(zeros)) MARK(and(cons(z0, z1), x1)) -> c63(ACTIVE(and(active(cons(mark(z0), z1)), x1)), AND(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(and(0, x1)) -> c63(ACTIVE(and(active(0), x1)), AND(mark(0), x1), MARK(0)) MARK(and(U11(z0, z1), x1)) -> c63(ACTIVE(and(active(U11(mark(z0), z1)), x1)), AND(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(and(tt, x1)) -> c63(ACTIVE(and(active(tt), x1)), AND(mark(tt), x1), MARK(tt)) MARK(and(s(z0), x1)) -> c63(ACTIVE(and(active(s(mark(z0))), x1)), AND(mark(s(z0)), x1), MARK(s(z0))) MARK(and(length(z0), x1)) -> c63(ACTIVE(and(active(length(mark(z0))), x1)), AND(mark(length(z0)), x1), MARK(length(z0))) MARK(and(U21(z0), x1)) -> c63(ACTIVE(and(active(U21(mark(z0))), x1)), AND(mark(U21(z0)), x1), MARK(U21(z0))) MARK(and(nil, x1)) -> c63(ACTIVE(and(active(nil), x1)), AND(mark(nil), x1), MARK(nil)) MARK(and(U31(z0, z1, z2, z3), x1)) -> c63(ACTIVE(and(active(U31(mark(z0), z1, z2, z3)), x1)), AND(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(and(take(z0, z1), x1)) -> c63(ACTIVE(and(active(take(mark(z0), mark(z1))), x1)), AND(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(and(and(z0, z1), x1)) -> c63(ACTIVE(and(active(and(mark(z0), z1)), x1)), AND(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(and(isNat(z0), x1)) -> c63(ACTIVE(and(active(isNat(z0)), x1)), AND(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(and(isNatList(z0), x1)) -> c63(ACTIVE(and(active(isNatList(z0)), x1)), AND(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(and(isNatIList(z0), x1)) -> c63(ACTIVE(and(active(isNatIList(z0)), x1)), AND(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(and(x0, x1)) -> c63(AND(mark(x0), x1)) ENCODE_ACTIVE(cons_active(z0)) -> c(ACTIVE(active(encArg(z0)))) ENCODE_ACTIVE(cons_mark(z0)) -> c(ACTIVE(mark(encArg(z0)))) ENCODE_ACTIVE(cons_cons(z0, z1)) -> c(ACTIVE(cons(encArg(z0), encArg(z1)))) ENCODE_ACTIVE(cons_U11(z0, z1)) -> c(ACTIVE(U11(encArg(z0), encArg(z1)))) ENCODE_ACTIVE(cons_s(z0)) -> c(ACTIVE(s(encArg(z0)))) ENCODE_ACTIVE(cons_length(z0)) -> c(ACTIVE(length(encArg(z0)))) ENCODE_ACTIVE(cons_U21(z0)) -> c(ACTIVE(U21(encArg(z0)))) ENCODE_ACTIVE(cons_U31(z0, z1, z2, z3)) -> c(ACTIVE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)))) ENCODE_ACTIVE(cons_take(z0, z1)) -> c(ACTIVE(take(encArg(z0), encArg(z1)))) ENCODE_ACTIVE(cons_and(z0, z1)) -> c(ACTIVE(and(encArg(z0), encArg(z1)))) ENCODE_ACTIVE(cons_isNat(z0)) -> c(ACTIVE(isNat(encArg(z0)))) ENCODE_ACTIVE(cons_isNatList(z0)) -> c(ACTIVE(isNatList(encArg(z0)))) ENCODE_ACTIVE(cons_isNatIList(z0)) -> c(ACTIVE(isNatIList(encArg(z0)))) S tuples: ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 MARK(cons(zeros, x1)) -> c53(ACTIVE(cons(active(zeros), x1)), CONS(mark(zeros), x1), MARK(zeros)) MARK(cons(cons(z0, z1), x1)) -> c53(ACTIVE(cons(active(cons(mark(z0), z1)), x1)), CONS(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(cons(0, x1)) -> c53(ACTIVE(cons(active(0), x1)), CONS(mark(0), x1), MARK(0)) MARK(cons(U11(z0, z1), x1)) -> c53(ACTIVE(cons(active(U11(mark(z0), z1)), x1)), CONS(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(cons(tt, x1)) -> c53(ACTIVE(cons(active(tt), x1)), CONS(mark(tt), x1), MARK(tt)) MARK(cons(s(z0), x1)) -> c53(ACTIVE(cons(active(s(mark(z0))), x1)), CONS(mark(s(z0)), x1), MARK(s(z0))) MARK(cons(length(z0), x1)) -> c53(ACTIVE(cons(active(length(mark(z0))), x1)), CONS(mark(length(z0)), x1), MARK(length(z0))) MARK(cons(U21(z0), x1)) -> c53(ACTIVE(cons(active(U21(mark(z0))), x1)), CONS(mark(U21(z0)), x1), MARK(U21(z0))) MARK(cons(nil, x1)) -> c53(ACTIVE(cons(active(nil), x1)), CONS(mark(nil), x1), MARK(nil)) MARK(cons(U31(z0, z1, z2, z3), x1)) -> c53(ACTIVE(cons(active(U31(mark(z0), z1, z2, z3)), x1)), CONS(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(cons(take(z0, z1), x1)) -> c53(ACTIVE(cons(active(take(mark(z0), mark(z1))), x1)), CONS(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(cons(and(z0, z1), x1)) -> c53(ACTIVE(cons(active(and(mark(z0), z1)), x1)), CONS(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(cons(isNat(z0), x1)) -> c53(ACTIVE(cons(active(isNat(z0)), x1)), CONS(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(cons(isNatList(z0), x1)) -> c53(ACTIVE(cons(active(isNatList(z0)), x1)), CONS(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(cons(isNatIList(z0), x1)) -> c53(ACTIVE(cons(active(isNatIList(z0)), x1)), CONS(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(cons(x0, x1)) -> c53(CONS(mark(x0), x1)) MARK(cons(z0, z1)) -> c53(CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(z0, z1)), U11'(mark(z0), z1), MARK(z0)) MARK(U11(zeros, x1)) -> c55(ACTIVE(U11(active(zeros), x1)), U11'(mark(zeros), x1), MARK(zeros)) MARK(U11(cons(z0, z1), x1)) -> c55(ACTIVE(U11(active(cons(mark(z0), z1)), x1)), U11'(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(U11(0, x1)) -> c55(ACTIVE(U11(active(0), x1)), U11'(mark(0), x1), MARK(0)) MARK(U11(U11(z0, z1), x1)) -> c55(ACTIVE(U11(active(U11(mark(z0), z1)), x1)), U11'(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(U11(tt, x1)) -> c55(ACTIVE(U11(active(tt), x1)), U11'(mark(tt), x1), MARK(tt)) MARK(U11(s(z0), x1)) -> c55(ACTIVE(U11(active(s(mark(z0))), x1)), U11'(mark(s(z0)), x1), MARK(s(z0))) MARK(U11(length(z0), x1)) -> c55(ACTIVE(U11(active(length(mark(z0))), x1)), U11'(mark(length(z0)), x1), MARK(length(z0))) MARK(U11(U21(z0), x1)) -> c55(ACTIVE(U11(active(U21(mark(z0))), x1)), U11'(mark(U21(z0)), x1), MARK(U21(z0))) MARK(U11(nil, x1)) -> c55(ACTIVE(U11(active(nil), x1)), U11'(mark(nil), x1), MARK(nil)) MARK(U11(U31(z0, z1, z2, z3), x1)) -> c55(ACTIVE(U11(active(U31(mark(z0), z1, z2, z3)), x1)), U11'(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(U11(take(z0, z1), x1)) -> c55(ACTIVE(U11(active(take(mark(z0), mark(z1))), x1)), U11'(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(U11(and(z0, z1), x1)) -> c55(ACTIVE(U11(active(and(mark(z0), z1)), x1)), U11'(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(U11(isNat(z0), x1)) -> c55(ACTIVE(U11(active(isNat(z0)), x1)), U11'(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(U11(isNatList(z0), x1)) -> c55(ACTIVE(U11(active(isNatList(z0)), x1)), U11'(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(U11(isNatIList(z0), x1)) -> c55(ACTIVE(U11(active(isNatIList(z0)), x1)), U11'(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(U11(x0, x1)) -> c55(U11'(mark(x0), x1)) MARK(s(zeros)) -> c57(ACTIVE(s(active(zeros))), S(mark(zeros)), MARK(zeros)) MARK(s(cons(z0, z1))) -> c57(ACTIVE(s(active(cons(mark(z0), z1)))), S(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(s(0)) -> c57(ACTIVE(s(active(0))), S(mark(0)), MARK(0)) MARK(s(U11(z0, z1))) -> c57(ACTIVE(s(active(U11(mark(z0), z1)))), S(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(s(tt)) -> c57(ACTIVE(s(active(tt))), S(mark(tt)), MARK(tt)) MARK(s(s(z0))) -> c57(ACTIVE(s(active(s(mark(z0))))), S(mark(s(z0))), MARK(s(z0))) MARK(s(length(z0))) -> c57(ACTIVE(s(active(length(mark(z0))))), S(mark(length(z0))), MARK(length(z0))) MARK(s(U21(z0))) -> c57(ACTIVE(s(active(U21(mark(z0))))), S(mark(U21(z0))), MARK(U21(z0))) MARK(s(nil)) -> c57(ACTIVE(s(active(nil))), S(mark(nil)), MARK(nil)) MARK(s(U31(z0, z1, z2, z3))) -> c57(ACTIVE(s(active(U31(mark(z0), z1, z2, z3)))), S(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(s(take(z0, z1))) -> c57(ACTIVE(s(active(take(mark(z0), mark(z1))))), S(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(s(and(z0, z1))) -> c57(ACTIVE(s(active(and(mark(z0), z1)))), S(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(s(isNat(z0))) -> c57(ACTIVE(s(active(isNat(z0)))), S(mark(isNat(z0))), MARK(isNat(z0))) MARK(s(isNatList(z0))) -> c57(ACTIVE(s(active(isNatList(z0)))), S(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(s(isNatIList(z0))) -> c57(ACTIVE(s(active(isNatIList(z0)))), S(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(s(z0)) -> c57(S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(z0)), LENGTH(mark(z0)), MARK(z0)) MARK(length(zeros)) -> c58(ACTIVE(length(active(zeros))), LENGTH(mark(zeros)), MARK(zeros)) MARK(length(cons(z0, z1))) -> c58(ACTIVE(length(active(cons(mark(z0), z1)))), LENGTH(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(length(0)) -> c58(ACTIVE(length(active(0))), LENGTH(mark(0)), MARK(0)) MARK(length(U11(z0, z1))) -> c58(ACTIVE(length(active(U11(mark(z0), z1)))), LENGTH(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(length(tt)) -> c58(ACTIVE(length(active(tt))), LENGTH(mark(tt)), MARK(tt)) MARK(length(s(z0))) -> c58(ACTIVE(length(active(s(mark(z0))))), LENGTH(mark(s(z0))), MARK(s(z0))) MARK(length(length(z0))) -> c58(ACTIVE(length(active(length(mark(z0))))), LENGTH(mark(length(z0))), MARK(length(z0))) MARK(length(U21(z0))) -> c58(ACTIVE(length(active(U21(mark(z0))))), LENGTH(mark(U21(z0))), MARK(U21(z0))) MARK(length(nil)) -> c58(ACTIVE(length(active(nil))), LENGTH(mark(nil)), MARK(nil)) MARK(length(U31(z0, z1, z2, z3))) -> c58(ACTIVE(length(active(U31(mark(z0), z1, z2, z3)))), LENGTH(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(length(take(z0, z1))) -> c58(ACTIVE(length(active(take(mark(z0), mark(z1))))), LENGTH(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(length(and(z0, z1))) -> c58(ACTIVE(length(active(and(mark(z0), z1)))), LENGTH(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(length(isNat(z0))) -> c58(ACTIVE(length(active(isNat(z0)))), LENGTH(mark(isNat(z0))), MARK(isNat(z0))) MARK(length(isNatList(z0))) -> c58(ACTIVE(length(active(isNatList(z0)))), LENGTH(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(length(isNatIList(z0))) -> c58(ACTIVE(length(active(isNatIList(z0)))), LENGTH(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(U21(z0)) -> c59(ACTIVE(U21(z0)), U21'(mark(z0)), MARK(z0)) MARK(U21(zeros)) -> c59(ACTIVE(U21(active(zeros))), U21'(mark(zeros)), MARK(zeros)) MARK(U21(cons(z0, z1))) -> c59(ACTIVE(U21(active(cons(mark(z0), z1)))), U21'(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(U21(0)) -> c59(ACTIVE(U21(active(0))), U21'(mark(0)), MARK(0)) MARK(U21(U11(z0, z1))) -> c59(ACTIVE(U21(active(U11(mark(z0), z1)))), U21'(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(U21(tt)) -> c59(ACTIVE(U21(active(tt))), U21'(mark(tt)), MARK(tt)) MARK(U21(s(z0))) -> c59(ACTIVE(U21(active(s(mark(z0))))), U21'(mark(s(z0))), MARK(s(z0))) MARK(U21(length(z0))) -> c59(ACTIVE(U21(active(length(mark(z0))))), U21'(mark(length(z0))), MARK(length(z0))) MARK(U21(U21(z0))) -> c59(ACTIVE(U21(active(U21(mark(z0))))), U21'(mark(U21(z0))), MARK(U21(z0))) MARK(U21(nil)) -> c59(ACTIVE(U21(active(nil))), U21'(mark(nil)), MARK(nil)) MARK(U21(U31(z0, z1, z2, z3))) -> c59(ACTIVE(U21(active(U31(mark(z0), z1, z2, z3)))), U21'(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(U21(take(z0, z1))) -> c59(ACTIVE(U21(active(take(mark(z0), mark(z1))))), U21'(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(U21(and(z0, z1))) -> c59(ACTIVE(U21(active(and(mark(z0), z1)))), U21'(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(U21(isNat(z0))) -> c59(ACTIVE(U21(active(isNat(z0)))), U21'(mark(isNat(z0))), MARK(isNat(z0))) MARK(U21(isNatList(z0))) -> c59(ACTIVE(U21(active(isNatList(z0)))), U21'(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(U21(isNatIList(z0))) -> c59(ACTIVE(U21(active(isNatIList(z0)))), U21'(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(z0, z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U31(zeros, x1, x2, x3)) -> c61(ACTIVE(U31(active(zeros), x1, x2, x3)), U31'(mark(zeros), x1, x2, x3), MARK(zeros)) MARK(U31(cons(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(cons(mark(z0), z1)), x1, x2, x3)), U31'(mark(cons(z0, z1)), x1, x2, x3), MARK(cons(z0, z1))) MARK(U31(0, x1, x2, x3)) -> c61(ACTIVE(U31(active(0), x1, x2, x3)), U31'(mark(0), x1, x2, x3), MARK(0)) MARK(U31(U11(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(U11(mark(z0), z1)), x1, x2, x3)), U31'(mark(U11(z0, z1)), x1, x2, x3), MARK(U11(z0, z1))) MARK(U31(tt, x1, x2, x3)) -> c61(ACTIVE(U31(active(tt), x1, x2, x3)), U31'(mark(tt), x1, x2, x3), MARK(tt)) MARK(U31(s(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(s(mark(z0))), x1, x2, x3)), U31'(mark(s(z0)), x1, x2, x3), MARK(s(z0))) MARK(U31(length(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(length(mark(z0))), x1, x2, x3)), U31'(mark(length(z0)), x1, x2, x3), MARK(length(z0))) MARK(U31(U21(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(U21(mark(z0))), x1, x2, x3)), U31'(mark(U21(z0)), x1, x2, x3), MARK(U21(z0))) MARK(U31(nil, x1, x2, x3)) -> c61(ACTIVE(U31(active(nil), x1, x2, x3)), U31'(mark(nil), x1, x2, x3), MARK(nil)) MARK(U31(U31(z0, z1, z2, z3), x1, x2, x3)) -> c61(ACTIVE(U31(active(U31(mark(z0), z1, z2, z3)), x1, x2, x3)), U31'(mark(U31(z0, z1, z2, z3)), x1, x2, x3), MARK(U31(z0, z1, z2, z3))) MARK(U31(take(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(take(mark(z0), mark(z1))), x1, x2, x3)), U31'(mark(take(z0, z1)), x1, x2, x3), MARK(take(z0, z1))) MARK(U31(and(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(and(mark(z0), z1)), x1, x2, x3)), U31'(mark(and(z0, z1)), x1, x2, x3), MARK(and(z0, z1))) MARK(U31(isNat(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNat(z0)), x1, x2, x3)), U31'(mark(isNat(z0)), x1, x2, x3), MARK(isNat(z0))) MARK(U31(isNatList(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNatList(z0)), x1, x2, x3)), U31'(mark(isNatList(z0)), x1, x2, x3), MARK(isNatList(z0))) MARK(U31(isNatIList(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNatIList(z0)), x1, x2, x3)), U31'(mark(isNatIList(z0)), x1, x2, x3), MARK(isNatIList(z0))) MARK(U31(x0, x1, x2, x3)) -> c61(U31'(mark(x0), x1, x2, x3)) MARK(take(z0, x1)) -> c62(ACTIVE(take(z0, mark(x1))), TAKE(mark(z0), mark(x1)), MARK(z0), MARK(x1)) MARK(take(x0, z1)) -> c62(ACTIVE(take(mark(x0), z1)), TAKE(mark(x0), mark(z1)), MARK(x0), MARK(z1)) MARK(take(x0, zeros)) -> c62(ACTIVE(take(mark(x0), active(zeros))), TAKE(mark(x0), mark(zeros)), MARK(x0), MARK(zeros)) MARK(take(x0, cons(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(cons(mark(z0), z1)))), TAKE(mark(x0), mark(cons(z0, z1))), MARK(x0), MARK(cons(z0, z1))) MARK(take(x0, 0)) -> c62(ACTIVE(take(mark(x0), active(0))), TAKE(mark(x0), mark(0)), MARK(x0), MARK(0)) MARK(take(x0, U11(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(U11(mark(z0), z1)))), TAKE(mark(x0), mark(U11(z0, z1))), MARK(x0), MARK(U11(z0, z1))) MARK(take(x0, tt)) -> c62(ACTIVE(take(mark(x0), active(tt))), TAKE(mark(x0), mark(tt)), MARK(x0), MARK(tt)) MARK(take(x0, s(z0))) -> c62(ACTIVE(take(mark(x0), active(s(mark(z0))))), TAKE(mark(x0), mark(s(z0))), MARK(x0), MARK(s(z0))) MARK(take(x0, length(z0))) -> c62(ACTIVE(take(mark(x0), active(length(mark(z0))))), TAKE(mark(x0), mark(length(z0))), MARK(x0), MARK(length(z0))) MARK(take(x0, U21(z0))) -> c62(ACTIVE(take(mark(x0), active(U21(mark(z0))))), TAKE(mark(x0), mark(U21(z0))), MARK(x0), MARK(U21(z0))) MARK(take(x0, nil)) -> c62(ACTIVE(take(mark(x0), active(nil))), TAKE(mark(x0), mark(nil)), MARK(x0), MARK(nil)) MARK(take(x0, U31(z0, z1, z2, z3))) -> c62(ACTIVE(take(mark(x0), active(U31(mark(z0), z1, z2, z3)))), TAKE(mark(x0), mark(U31(z0, z1, z2, z3))), MARK(x0), MARK(U31(z0, z1, z2, z3))) MARK(take(x0, take(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(take(mark(z0), mark(z1))))), TAKE(mark(x0), mark(take(z0, z1))), MARK(x0), MARK(take(z0, z1))) MARK(take(x0, and(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(and(mark(z0), z1)))), TAKE(mark(x0), mark(and(z0, z1))), MARK(x0), MARK(and(z0, z1))) MARK(take(x0, isNat(z0))) -> c62(ACTIVE(take(mark(x0), active(isNat(z0)))), TAKE(mark(x0), mark(isNat(z0))), MARK(x0), MARK(isNat(z0))) MARK(take(x0, isNatList(z0))) -> c62(ACTIVE(take(mark(x0), active(isNatList(z0)))), TAKE(mark(x0), mark(isNatList(z0))), MARK(x0), MARK(isNatList(z0))) MARK(take(x0, isNatIList(z0))) -> c62(ACTIVE(take(mark(x0), active(isNatIList(z0)))), TAKE(mark(x0), mark(isNatIList(z0))), MARK(x0), MARK(isNatIList(z0))) MARK(take(zeros, x1)) -> c62(ACTIVE(take(active(zeros), mark(x1))), TAKE(mark(zeros), mark(x1)), MARK(zeros), MARK(x1)) MARK(take(cons(z0, z1), x1)) -> c62(ACTIVE(take(active(cons(mark(z0), z1)), mark(x1))), TAKE(mark(cons(z0, z1)), mark(x1)), MARK(cons(z0, z1)), MARK(x1)) MARK(take(0, x1)) -> c62(ACTIVE(take(active(0), mark(x1))), TAKE(mark(0), mark(x1)), MARK(0), MARK(x1)) MARK(take(U11(z0, z1), x1)) -> c62(ACTIVE(take(active(U11(mark(z0), z1)), mark(x1))), TAKE(mark(U11(z0, z1)), mark(x1)), MARK(U11(z0, z1)), MARK(x1)) MARK(take(tt, x1)) -> c62(ACTIVE(take(active(tt), mark(x1))), TAKE(mark(tt), mark(x1)), MARK(tt), MARK(x1)) MARK(take(s(z0), x1)) -> c62(ACTIVE(take(active(s(mark(z0))), mark(x1))), TAKE(mark(s(z0)), mark(x1)), MARK(s(z0)), MARK(x1)) MARK(take(length(z0), x1)) -> c62(ACTIVE(take(active(length(mark(z0))), mark(x1))), TAKE(mark(length(z0)), mark(x1)), MARK(length(z0)), MARK(x1)) MARK(take(U21(z0), x1)) -> c62(ACTIVE(take(active(U21(mark(z0))), mark(x1))), TAKE(mark(U21(z0)), mark(x1)), MARK(U21(z0)), MARK(x1)) MARK(take(nil, x1)) -> c62(ACTIVE(take(active(nil), mark(x1))), TAKE(mark(nil), mark(x1)), MARK(nil), MARK(x1)) MARK(take(U31(z0, z1, z2, z3), x1)) -> c62(ACTIVE(take(active(U31(mark(z0), z1, z2, z3)), mark(x1))), TAKE(mark(U31(z0, z1, z2, z3)), mark(x1)), MARK(U31(z0, z1, z2, z3)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c62(ACTIVE(take(active(take(mark(z0), mark(z1))), mark(x1))), TAKE(mark(take(z0, z1)), mark(x1)), MARK(take(z0, z1)), MARK(x1)) MARK(take(and(z0, z1), x1)) -> c62(ACTIVE(take(active(and(mark(z0), z1)), mark(x1))), TAKE(mark(and(z0, z1)), mark(x1)), MARK(and(z0, z1)), MARK(x1)) MARK(take(isNat(z0), x1)) -> c62(ACTIVE(take(active(isNat(z0)), mark(x1))), TAKE(mark(isNat(z0)), mark(x1)), MARK(isNat(z0)), MARK(x1)) MARK(take(isNatList(z0), x1)) -> c62(ACTIVE(take(active(isNatList(z0)), mark(x1))), TAKE(mark(isNatList(z0)), mark(x1)), MARK(isNatList(z0)), MARK(x1)) MARK(take(isNatIList(z0), x1)) -> c62(ACTIVE(take(active(isNatIList(z0)), mark(x1))), TAKE(mark(isNatIList(z0)), mark(x1)), MARK(isNatIList(z0)), MARK(x1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(z0, z1)), AND(mark(z0), z1), MARK(z0)) MARK(and(zeros, x1)) -> c63(ACTIVE(and(active(zeros), x1)), AND(mark(zeros), x1), MARK(zeros)) MARK(and(cons(z0, z1), x1)) -> c63(ACTIVE(and(active(cons(mark(z0), z1)), x1)), AND(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(and(0, x1)) -> c63(ACTIVE(and(active(0), x1)), AND(mark(0), x1), MARK(0)) MARK(and(U11(z0, z1), x1)) -> c63(ACTIVE(and(active(U11(mark(z0), z1)), x1)), AND(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(and(tt, x1)) -> c63(ACTIVE(and(active(tt), x1)), AND(mark(tt), x1), MARK(tt)) MARK(and(s(z0), x1)) -> c63(ACTIVE(and(active(s(mark(z0))), x1)), AND(mark(s(z0)), x1), MARK(s(z0))) MARK(and(length(z0), x1)) -> c63(ACTIVE(and(active(length(mark(z0))), x1)), AND(mark(length(z0)), x1), MARK(length(z0))) MARK(and(U21(z0), x1)) -> c63(ACTIVE(and(active(U21(mark(z0))), x1)), AND(mark(U21(z0)), x1), MARK(U21(z0))) MARK(and(nil, x1)) -> c63(ACTIVE(and(active(nil), x1)), AND(mark(nil), x1), MARK(nil)) MARK(and(U31(z0, z1, z2, z3), x1)) -> c63(ACTIVE(and(active(U31(mark(z0), z1, z2, z3)), x1)), AND(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(and(take(z0, z1), x1)) -> c63(ACTIVE(and(active(take(mark(z0), mark(z1))), x1)), AND(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(and(and(z0, z1), x1)) -> c63(ACTIVE(and(active(and(mark(z0), z1)), x1)), AND(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(and(isNat(z0), x1)) -> c63(ACTIVE(and(active(isNat(z0)), x1)), AND(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(and(isNatList(z0), x1)) -> c63(ACTIVE(and(active(isNatList(z0)), x1)), AND(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(and(isNatIList(z0), x1)) -> c63(ACTIVE(and(active(isNatIList(z0)), x1)), AND(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(and(x0, x1)) -> c63(AND(mark(x0), x1)) K tuples:none Defined Rule Symbols: encArg_1, active_1, mark_1, cons_2, U11_2, s_1, length_1, U21_1, U31_4, take_2, and_2, isNat_1, isNatList_1, isNatIList_1 Defined Pair Symbols: ACTIVE_1, MARK_1, CONS_2, U11'_2, S_1, LENGTH_1, U21'_1, U31'_4, TAKE_2, AND_2, ISNAT_1, ISNATLIST_1, ISNATILIST_1, ENCODE_MARK_1, ENCODE_CONS_2, ENCODE_U11_2, ENCODE_S_1, ENCODE_LENGTH_1, ENCODE_U21_1, ENCODE_U31_4, ENCODE_TAKE_2, ENCODE_AND_2, ENCODE_ISNAT_1, ENCODE_ISNATLIST_1, ENCODE_ISNATILIST_1, ENCARG_1, ENCODE_ACTIVE_1 Compound Symbols: c36_1, c37_3, c38_1, c39_1, c40_2, c41_2, c42_2, c43_1, c45_1, c48_1, c52_1, c64_2, c65_2, c66_2, c67_1, c68_1, c69_1, c70_1, c71_1, c72_1, c73_1, c74_1, c75_1, c76_1, c77_1, c78_1, c79_1, c80_1, c81_1, c82_1, c83_1, c84_1, c85_1, c86_1, c87_1, c88_1, c89_1, c90_1, c91_1, c92_1, c93_1, c94_1, c95_1, c96_1, c97_1, c98_1, c99_1, c100_1, c101_1, c102_1, c34_1, c35_2, c44_3, c46_3, c47_3, c49_3, c50_2, c51_4, c54, c56, c60, c_1, c4_2, c4_1, c5_2, c5_1, c6_3, c6_2, c7_3, c7_2, c8_2, c9_2, c10_2, c11_5, c11_4, c12_3, c12_2, c13_3, c13_2, c14_2, c15_2, c16_2, c53_3, c53_1, c53_2, c55_3, c55_1, c57_3, c57_2, c58_3, c59_3, c61_3, c61_1, c62_4, c63_3, c63_1 ---------------------------------------- (117) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace ENCODE_MARK(z0) -> c(MARK(encArg(z0))) by ENCODE_MARK(zeros) -> c(MARK(zeros)) ENCODE_MARK(0) -> c(MARK(0)) ENCODE_MARK(tt) -> c(MARK(tt)) ENCODE_MARK(nil) -> c(MARK(nil)) ENCODE_MARK(cons_active(z0)) -> c(MARK(active(encArg(z0)))) ENCODE_MARK(cons_mark(z0)) -> c(MARK(mark(encArg(z0)))) ENCODE_MARK(cons_cons(z0, z1)) -> c(MARK(cons(encArg(z0), encArg(z1)))) ENCODE_MARK(cons_U11(z0, z1)) -> c(MARK(U11(encArg(z0), encArg(z1)))) ENCODE_MARK(cons_s(z0)) -> c(MARK(s(encArg(z0)))) ENCODE_MARK(cons_length(z0)) -> c(MARK(length(encArg(z0)))) ENCODE_MARK(cons_U21(z0)) -> c(MARK(U21(encArg(z0)))) ENCODE_MARK(cons_U31(z0, z1, z2, z3)) -> c(MARK(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)))) ENCODE_MARK(cons_take(z0, z1)) -> c(MARK(take(encArg(z0), encArg(z1)))) ENCODE_MARK(cons_and(z0, z1)) -> c(MARK(and(encArg(z0), encArg(z1)))) ENCODE_MARK(cons_isNat(z0)) -> c(MARK(isNat(encArg(z0)))) ENCODE_MARK(cons_isNatList(z0)) -> c(MARK(isNatList(encArg(z0)))) ENCODE_MARK(cons_isNatIList(z0)) -> c(MARK(isNatIList(encArg(z0)))) ---------------------------------------- (118) Obligation: Complexity Dependency Tuples Problem Rules: encArg(zeros) -> zeros encArg(0) -> 0 encArg(tt) -> tt encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_U11(z0, z1)) -> U11(encArg(z0), encArg(z1)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_length(z0)) -> length(encArg(z0)) encArg(cons_U21(z0)) -> U21(encArg(z0)) encArg(cons_U31(z0, z1, z2, z3)) -> U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_isNat(z0)) -> isNat(encArg(z0)) encArg(cons_isNatList(z0)) -> isNatList(encArg(z0)) encArg(cons_isNatIList(z0)) -> isNatIList(encArg(z0)) active(zeros) -> mark(cons(0, zeros)) active(U11(tt, z0)) -> mark(s(length(z0))) active(U21(tt)) -> mark(nil) active(U31(tt, z0, z1, z2)) -> mark(cons(z2, take(z1, z0))) active(and(tt, z0)) -> mark(z0) active(isNat(0)) -> mark(tt) active(isNat(length(z0))) -> mark(isNatList(z0)) active(isNat(s(z0))) -> mark(isNat(z0)) active(isNatIList(z0)) -> mark(isNatList(z0)) active(isNatIList(zeros)) -> mark(tt) active(isNatIList(cons(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(isNatList(nil)) -> mark(tt) active(isNatList(cons(z0, z1))) -> mark(and(isNat(z0), isNatList(z1))) active(isNatList(take(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(length(nil)) -> mark(0) active(length(cons(z0, z1))) -> mark(U11(and(isNatList(z1), isNat(z0)), z1)) active(take(0, z0)) -> mark(U21(isNatIList(z0))) active(take(s(z0), cons(z1, z2))) -> mark(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)) mark(zeros) -> active(zeros) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(0) -> active(0) mark(U11(z0, z1)) -> active(U11(mark(z0), z1)) mark(tt) -> active(tt) mark(s(z0)) -> active(s(mark(z0))) mark(length(z0)) -> active(length(mark(z0))) mark(U21(z0)) -> active(U21(mark(z0))) mark(nil) -> active(nil) mark(U31(z0, z1, z2, z3)) -> active(U31(mark(z0), z1, z2, z3)) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(isNat(z0)) -> active(isNat(z0)) mark(isNatList(z0)) -> active(isNatList(z0)) mark(isNatIList(z0)) -> active(isNatIList(z0)) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) U11(mark(z0), z1) -> U11(z0, z1) U11(z0, mark(z1)) -> U11(z0, z1) U11(active(z0), z1) -> U11(z0, z1) U11(z0, active(z1)) -> U11(z0, z1) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) length(mark(z0)) -> length(z0) length(active(z0)) -> length(z0) U21(mark(z0)) -> U21(z0) U21(active(z0)) -> U21(z0) U31(mark(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, mark(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, mark(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, mark(z3)) -> U31(z0, z1, z2, z3) U31(active(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, active(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, active(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, active(z3)) -> U31(z0, z1, z2, z3) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) isNat(mark(z0)) -> isNat(z0) isNat(active(z0)) -> isNat(z0) isNatList(mark(z0)) -> isNatList(z0) isNatList(active(z0)) -> isNatList(z0) isNatIList(mark(z0)) -> isNatIList(z0) isNatIList(active(z0)) -> isNatIList(z0) Tuples: ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 ENCODE_CONS(z0, z1) -> c(CONS(encArg(z0), encArg(z1))) ENCODE_U11(z0, z1) -> c(U11'(encArg(z0), encArg(z1))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_LENGTH(z0) -> c(LENGTH(encArg(z0))) ENCODE_U21(z0) -> c(U21'(encArg(z0))) ENCODE_U31(z0, z1, z2, z3) -> c(U31'(encArg(z0), encArg(z1), encArg(z2), encArg(z3))) ENCODE_TAKE(z0, z1) -> c(TAKE(encArg(z0), encArg(z1))) ENCODE_AND(z0, z1) -> c(AND(encArg(z0), encArg(z1))) ENCODE_ISNAT(z0) -> c(ISNAT(encArg(z0))) ENCODE_ISNATLIST(z0) -> c(ISNATLIST(encArg(z0))) ENCODE_ISNATILIST(z0) -> c(ISNATILIST(encArg(z0))) ENCARG(cons_active(cons_active(z0))) -> c4(ACTIVE(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_active(cons_mark(z0))) -> c4(ACTIVE(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_active(cons_cons(z0, z1))) -> c4(ACTIVE(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_active(cons_U11(z0, z1))) -> c4(ACTIVE(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_active(cons_s(z0))) -> c4(ACTIVE(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_active(cons_length(z0))) -> c4(ACTIVE(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_active(cons_U21(z0))) -> c4(ACTIVE(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_active(cons_U31(z0, z1, z2, z3))) -> c4(ACTIVE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_active(cons_take(z0, z1))) -> c4(ACTIVE(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_active(cons_and(z0, z1))) -> c4(ACTIVE(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_active(cons_isNat(z0))) -> c4(ACTIVE(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_active(cons_isNatList(z0))) -> c4(ACTIVE(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_active(cons_isNatIList(z0))) -> c4(ACTIVE(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_active(zeros)) -> c4(ACTIVE(zeros)) ENCARG(cons_mark(cons_active(z0))) -> c5(MARK(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_mark(cons_mark(z0))) -> c5(MARK(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_mark(cons_cons(z0, z1))) -> c5(MARK(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_mark(cons_U11(z0, z1))) -> c5(MARK(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_mark(cons_s(z0))) -> c5(MARK(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_mark(cons_length(z0))) -> c5(MARK(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_mark(cons_U21(z0))) -> c5(MARK(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_mark(cons_U31(z0, z1, z2, z3))) -> c5(MARK(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_mark(cons_take(z0, z1))) -> c5(MARK(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(cons_and(z0, z1))) -> c5(MARK(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_mark(cons_isNat(z0))) -> c5(MARK(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_mark(cons_isNatList(z0))) -> c5(MARK(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_mark(cons_isNatIList(z0))) -> c5(MARK(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_mark(zeros)) -> c5(MARK(zeros)) ENCARG(cons_mark(0)) -> c5(MARK(0)) ENCARG(cons_mark(tt)) -> c5(MARK(tt)) ENCARG(cons_mark(nil)) -> c5(MARK(nil)) ENCARG(cons_cons(x0, cons_active(z0))) -> c6(CONS(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_cons(x0, cons_mark(z0))) -> c6(CONS(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_cons(x0, cons_cons(z0, z1))) -> c6(CONS(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_cons(x0, cons_U11(z0, z1))) -> c6(CONS(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_cons(x0, cons_s(z0))) -> c6(CONS(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_cons(x0, cons_length(z0))) -> c6(CONS(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_cons(x0, cons_U21(z0))) -> c6(CONS(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_cons(x0, cons_U31(z0, z1, z2, z3))) -> c6(CONS(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_cons(x0, cons_take(z0, z1))) -> c6(CONS(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_cons(x0, cons_and(z0, z1))) -> c6(CONS(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_cons(x0, cons_isNat(z0))) -> c6(CONS(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_cons(x0, cons_isNatList(z0))) -> c6(CONS(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_cons(x0, cons_isNatIList(z0))) -> c6(CONS(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_cons(cons_active(z0), x1)) -> c6(CONS(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_mark(z0), x1)) -> c6(CONS(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_cons(z0, z1), x1)) -> c6(CONS(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_U11(z0, z1), x1)) -> c6(CONS(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_s(z0), x1)) -> c6(CONS(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_length(z0), x1)) -> c6(CONS(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U21(z0), x1)) -> c6(CONS(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U31(z0, z1, z2, z3), x1)) -> c6(CONS(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_cons(cons_take(z0, z1), x1)) -> c6(CONS(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_and(z0, z1), x1)) -> c6(CONS(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_isNat(z0), x1)) -> c6(CONS(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_isNatList(z0), x1)) -> c6(CONS(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_isNatIList(z0), x1)) -> c6(CONS(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_cons(x0, zeros)) -> c6(CONS(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_cons(x0, 0)) -> c6(CONS(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_cons(x0, tt)) -> c6(CONS(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_cons(x0, nil)) -> c6(CONS(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_cons(zeros, x1)) -> c6(CONS(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(0, x1)) -> c6(CONS(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(tt, x1)) -> c6(CONS(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(nil, x1)) -> c6(CONS(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(x0, cons_active(z0))) -> c7(U11'(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_U11(x0, cons_mark(z0))) -> c7(U11'(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_U11(x0, cons_cons(z0, z1))) -> c7(U11'(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U11(x0, cons_U11(z0, z1))) -> c7(U11'(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U11(x0, cons_s(z0))) -> c7(U11'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_U11(x0, cons_length(z0))) -> c7(U11'(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_U11(x0, cons_U21(z0))) -> c7(U11'(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_U11(x0, cons_U31(z0, z1, z2, z3))) -> c7(U11'(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U11(x0, cons_take(z0, z1))) -> c7(U11'(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_U11(x0, cons_and(z0, z1))) -> c7(U11'(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_U11(x0, cons_isNat(z0))) -> c7(U11'(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_U11(x0, cons_isNatList(z0))) -> c7(U11'(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_U11(x0, cons_isNatIList(z0))) -> c7(U11'(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U11(cons_active(z0), x1)) -> c7(U11'(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_mark(z0), x1)) -> c7(U11'(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_cons(z0, z1), x1)) -> c7(U11'(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_U11(z0, z1), x1)) -> c7(U11'(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_s(z0), x1)) -> c7(U11'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_length(z0), x1)) -> c7(U11'(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_U21(z0), x1)) -> c7(U11'(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_U31(z0, z1, z2, z3), x1)) -> c7(U11'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_U11(cons_take(z0, z1), x1)) -> c7(U11'(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_and(z0, z1), x1)) -> c7(U11'(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_isNat(z0), x1)) -> c7(U11'(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_isNatList(z0), x1)) -> c7(U11'(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_isNatIList(z0), x1)) -> c7(U11'(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_U11(x0, zeros)) -> c7(U11'(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_U11(x0, 0)) -> c7(U11'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_U11(x0, tt)) -> c7(U11'(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_U11(x0, nil)) -> c7(U11'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_U11(zeros, x1)) -> c7(U11'(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(0, x1)) -> c7(U11'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(tt, x1)) -> c7(U11'(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(nil, x1)) -> c7(U11'(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_s(cons_active(z0))) -> c8(S(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_s(cons_mark(z0))) -> c8(S(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_s(cons_cons(z0, z1))) -> c8(S(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_s(cons_U11(z0, z1))) -> c8(S(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_s(cons_s(z0))) -> c8(S(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_length(z0))) -> c8(S(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_s(cons_U21(z0))) -> c8(S(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_s(cons_U31(z0, z1, z2, z3))) -> c8(S(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_s(cons_take(z0, z1))) -> c8(S(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_s(cons_and(z0, z1))) -> c8(S(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_s(cons_isNat(z0))) -> c8(S(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_s(cons_isNatList(z0))) -> c8(S(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_s(cons_isNatIList(z0))) -> c8(S(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_length(cons_active(z0))) -> c9(LENGTH(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_length(cons_mark(z0))) -> c9(LENGTH(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_length(cons_cons(z0, z1))) -> c9(LENGTH(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_length(cons_U11(z0, z1))) -> c9(LENGTH(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_length(cons_s(z0))) -> c9(LENGTH(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_length(cons_length(z0))) -> c9(LENGTH(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_length(cons_U21(z0))) -> c9(LENGTH(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_length(cons_U31(z0, z1, z2, z3))) -> c9(LENGTH(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_length(cons_take(z0, z1))) -> c9(LENGTH(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_length(cons_and(z0, z1))) -> c9(LENGTH(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_length(cons_isNat(z0))) -> c9(LENGTH(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_length(cons_isNatList(z0))) -> c9(LENGTH(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_length(cons_isNatIList(z0))) -> c9(LENGTH(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U21(cons_active(z0))) -> c10(U21'(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_U21(cons_mark(z0))) -> c10(U21'(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_U21(cons_cons(z0, z1))) -> c10(U21'(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U21(cons_U11(z0, z1))) -> c10(U21'(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U21(cons_s(z0))) -> c10(U21'(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_U21(cons_length(z0))) -> c10(U21'(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_U21(cons_U21(z0))) -> c10(U21'(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_U21(cons_U31(z0, z1, z2, z3))) -> c10(U21'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U21(cons_take(z0, z1))) -> c10(U21'(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_U21(cons_and(z0, z1))) -> c10(U21'(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_U21(cons_isNat(z0))) -> c10(U21'(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_U21(cons_isNatList(z0))) -> c10(U21'(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_U21(cons_isNatIList(z0))) -> c10(U21'(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U31(x0, x1, x2, cons_active(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), active(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_active(z0))) ENCARG(cons_U31(x0, x1, x2, cons_mark(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), mark(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_mark(z0))) ENCARG(cons_U31(x0, x1, x2, cons_cons(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_U11(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_s(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), s(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_s(z0))) ENCARG(cons_U31(x0, x1, x2, cons_length(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), length(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_length(z0))) ENCARG(cons_U31(x0, x1, x2, cons_U21(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U21(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U21(z0))) ENCARG(cons_U31(x0, x1, x2, cons_U31(z0, z1, z2, z3))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U31(x0, x1, x2, cons_take(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_take(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_and(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_and(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_isNat(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNat(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNat(z0))) ENCARG(cons_U31(x0, x1, x2, cons_isNatList(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNatList(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNatList(z0))) ENCARG(cons_U31(x0, x1, x2, cons_isNatIList(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U31(x0, x1, cons_active(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), active(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_active(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_mark(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), mark(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_mark(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_cons(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), cons(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_cons(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U11(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), U11(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U11(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_s(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), s(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_s(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_length(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), length(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_length(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U21(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), U21(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U21(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U31(z0, z1, z2, z3), x3)) -> c11(U31'(encArg(x0), encArg(x1), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_take(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), take(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_take(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_and(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), and(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_and(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNat(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNat(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNat(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNatList(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNatList(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNatList(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNatIList(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNatIList(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNatIList(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, cons_active(z0), x2, x3)) -> c11(U31'(encArg(x0), active(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_active(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_mark(z0), x2, x3)) -> c11(U31'(encArg(x0), mark(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_mark(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_cons(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), cons(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_cons(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U11(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), U11(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U11(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_s(z0), x2, x3)) -> c11(U31'(encArg(x0), s(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_s(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_length(z0), x2, x3)) -> c11(U31'(encArg(x0), length(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_length(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U21(z0), x2, x3)) -> c11(U31'(encArg(x0), U21(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U21(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U31(z0, z1, z2, z3), x2, x3)) -> c11(U31'(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_take(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), take(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_take(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_and(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), and(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_and(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNat(z0), x2, x3)) -> c11(U31'(encArg(x0), isNat(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNat(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNatList(z0), x2, x3)) -> c11(U31'(encArg(x0), isNatList(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNatList(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNatIList(z0), x2, x3)) -> c11(U31'(encArg(x0), isNatIList(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNatIList(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_active(z0), x1, x2, x3)) -> c11(U31'(active(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_active(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_mark(z0), x1, x2, x3)) -> c11(U31'(mark(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_mark(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_cons(z0, z1), x1, x2, x3)) -> c11(U31'(cons(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_cons(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U11(z0, z1), x1, x2, x3)) -> c11(U31'(U11(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U11(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_s(z0), x1, x2, x3)) -> c11(U31'(s(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_s(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_length(z0), x1, x2, x3)) -> c11(U31'(length(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_length(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U21(z0), x1, x2, x3)) -> c11(U31'(U21(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U21(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U31(z0, z1, z2, z3), x1, x2, x3)) -> c11(U31'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_take(z0, z1), x1, x2, x3)) -> c11(U31'(take(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_take(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_and(z0, z1), x1, x2, x3)) -> c11(U31'(and(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_and(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNat(z0), x1, x2, x3)) -> c11(U31'(isNat(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNat(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNatList(z0), x1, x2, x3)) -> c11(U31'(isNatList(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNatList(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNatIList(z0), x1, x2, x3)) -> c11(U31'(isNatIList(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNatIList(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, x1, x2, zeros)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), zeros), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, 0)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), 0), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, tt)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), tt), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, nil)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), nil), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, zeros, x3)) -> c11(U31'(encArg(x0), encArg(x1), zeros, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, 0, x3)) -> c11(U31'(encArg(x0), encArg(x1), 0, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, tt, x3)) -> c11(U31'(encArg(x0), encArg(x1), tt, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, nil, x3)) -> c11(U31'(encArg(x0), encArg(x1), nil, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, zeros, x2, x3)) -> c11(U31'(encArg(x0), zeros, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, 0, x2, x3)) -> c11(U31'(encArg(x0), 0, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, tt, x2, x3)) -> c11(U31'(encArg(x0), tt, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, nil, x2, x3)) -> c11(U31'(encArg(x0), nil, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(zeros, x1, x2, x3)) -> c11(U31'(zeros, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(0, x1, x2, x3)) -> c11(U31'(0, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(tt, x1, x2, x3)) -> c11(U31'(tt, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(nil, x1, x2, x3)) -> c11(U31'(nil, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_take(x0, cons_active(z0))) -> c12(TAKE(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_take(x0, cons_mark(z0))) -> c12(TAKE(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_take(x0, cons_cons(z0, z1))) -> c12(TAKE(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_take(x0, cons_U11(z0, z1))) -> c12(TAKE(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_take(x0, cons_s(z0))) -> c12(TAKE(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_take(x0, cons_length(z0))) -> c12(TAKE(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_take(x0, cons_U21(z0))) -> c12(TAKE(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_take(x0, cons_U31(z0, z1, z2, z3))) -> c12(TAKE(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_take(x0, cons_take(z0, z1))) -> c12(TAKE(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_take(x0, cons_and(z0, z1))) -> c12(TAKE(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_take(x0, cons_isNat(z0))) -> c12(TAKE(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_take(x0, cons_isNatList(z0))) -> c12(TAKE(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_take(x0, cons_isNatIList(z0))) -> c12(TAKE(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_take(cons_active(z0), x1)) -> c12(TAKE(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_take(cons_mark(z0), x1)) -> c12(TAKE(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_take(cons_cons(z0, z1), x1)) -> c12(TAKE(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_U11(z0, z1), x1)) -> c12(TAKE(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_s(z0), x1)) -> c12(TAKE(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_take(cons_length(z0), x1)) -> c12(TAKE(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_take(cons_U21(z0), x1)) -> c12(TAKE(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_take(cons_U31(z0, z1, z2, z3), x1)) -> c12(TAKE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_take(cons_take(z0, z1), x1)) -> c12(TAKE(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_and(z0, z1), x1)) -> c12(TAKE(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_isNat(z0), x1)) -> c12(TAKE(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_take(cons_isNatList(z0), x1)) -> c12(TAKE(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_take(cons_isNatIList(z0), x1)) -> c12(TAKE(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_take(x0, zeros)) -> c12(TAKE(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_take(x0, 0)) -> c12(TAKE(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_take(x0, tt)) -> c12(TAKE(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_take(x0, nil)) -> c12(TAKE(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_take(zeros, x1)) -> c12(TAKE(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(0, x1)) -> c12(TAKE(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(tt, x1)) -> c12(TAKE(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(nil, x1)) -> c12(TAKE(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(x0, cons_active(z0))) -> c13(AND(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_and(x0, cons_mark(z0))) -> c13(AND(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_and(x0, cons_cons(z0, z1))) -> c13(AND(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_and(x0, cons_U11(z0, z1))) -> c13(AND(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_and(x0, cons_s(z0))) -> c13(AND(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_and(x0, cons_length(z0))) -> c13(AND(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_and(x0, cons_U21(z0))) -> c13(AND(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_and(x0, cons_U31(z0, z1, z2, z3))) -> c13(AND(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_and(x0, cons_take(z0, z1))) -> c13(AND(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_and(x0, cons_and(z0, z1))) -> c13(AND(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_and(x0, cons_isNat(z0))) -> c13(AND(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_and(x0, cons_isNatList(z0))) -> c13(AND(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_and(x0, cons_isNatIList(z0))) -> c13(AND(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_and(cons_active(z0), x1)) -> c13(AND(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_and(cons_mark(z0), x1)) -> c13(AND(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_and(cons_cons(z0, z1), x1)) -> c13(AND(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_U11(z0, z1), x1)) -> c13(AND(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_s(z0), x1)) -> c13(AND(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_and(cons_length(z0), x1)) -> c13(AND(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_and(cons_U21(z0), x1)) -> c13(AND(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_and(cons_U31(z0, z1, z2, z3), x1)) -> c13(AND(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_and(cons_take(z0, z1), x1)) -> c13(AND(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_and(z0, z1), x1)) -> c13(AND(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_isNat(z0), x1)) -> c13(AND(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_and(cons_isNatList(z0), x1)) -> c13(AND(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_and(cons_isNatIList(z0), x1)) -> c13(AND(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_and(x0, zeros)) -> c13(AND(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_and(x0, 0)) -> c13(AND(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_and(x0, tt)) -> c13(AND(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_and(x0, nil)) -> c13(AND(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_and(zeros, x1)) -> c13(AND(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(0, x1)) -> c13(AND(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(tt, x1)) -> c13(AND(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(nil, x1)) -> c13(AND(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_isNat(cons_active(z0))) -> c14(ISNAT(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_isNat(cons_mark(z0))) -> c14(ISNAT(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_isNat(cons_cons(z0, z1))) -> c14(ISNAT(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_isNat(cons_U11(z0, z1))) -> c14(ISNAT(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_isNat(cons_s(z0))) -> c14(ISNAT(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_isNat(cons_length(z0))) -> c14(ISNAT(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_isNat(cons_U21(z0))) -> c14(ISNAT(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_isNat(cons_U31(z0, z1, z2, z3))) -> c14(ISNAT(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_isNat(cons_take(z0, z1))) -> c14(ISNAT(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_isNat(cons_and(z0, z1))) -> c14(ISNAT(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_isNat(cons_isNat(z0))) -> c14(ISNAT(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_isNat(cons_isNatList(z0))) -> c14(ISNAT(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_isNat(cons_isNatIList(z0))) -> c14(ISNAT(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_isNatList(cons_active(z0))) -> c15(ISNATLIST(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_isNatList(cons_mark(z0))) -> c15(ISNATLIST(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_isNatList(cons_cons(z0, z1))) -> c15(ISNATLIST(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_isNatList(cons_U11(z0, z1))) -> c15(ISNATLIST(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_isNatList(cons_s(z0))) -> c15(ISNATLIST(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_isNatList(cons_length(z0))) -> c15(ISNATLIST(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_isNatList(cons_U21(z0))) -> c15(ISNATLIST(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_isNatList(cons_U31(z0, z1, z2, z3))) -> c15(ISNATLIST(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_isNatList(cons_take(z0, z1))) -> c15(ISNATLIST(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_isNatList(cons_and(z0, z1))) -> c15(ISNATLIST(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_isNatList(cons_isNat(z0))) -> c15(ISNATLIST(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_isNatList(cons_isNatList(z0))) -> c15(ISNATLIST(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_isNatList(cons_isNatIList(z0))) -> c15(ISNATLIST(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_isNatIList(cons_active(z0))) -> c16(ISNATILIST(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_isNatIList(cons_mark(z0))) -> c16(ISNATILIST(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_isNatIList(cons_cons(z0, z1))) -> c16(ISNATILIST(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_isNatIList(cons_U11(z0, z1))) -> c16(ISNATILIST(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_isNatIList(cons_s(z0))) -> c16(ISNATILIST(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_isNatIList(cons_length(z0))) -> c16(ISNATILIST(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_isNatIList(cons_U21(z0))) -> c16(ISNATILIST(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_isNatIList(cons_U31(z0, z1, z2, z3))) -> c16(ISNATILIST(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_isNatIList(cons_take(z0, z1))) -> c16(ISNATILIST(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_isNatIList(cons_and(z0, z1))) -> c16(ISNATILIST(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_isNatIList(cons_isNat(z0))) -> c16(ISNATILIST(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_isNatIList(cons_isNatList(z0))) -> c16(ISNATILIST(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_isNatIList(cons_isNatIList(z0))) -> c16(ISNATILIST(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) MARK(cons(zeros, x1)) -> c53(ACTIVE(cons(active(zeros), x1)), CONS(mark(zeros), x1), MARK(zeros)) MARK(cons(cons(z0, z1), x1)) -> c53(ACTIVE(cons(active(cons(mark(z0), z1)), x1)), CONS(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(cons(0, x1)) -> c53(ACTIVE(cons(active(0), x1)), CONS(mark(0), x1), MARK(0)) MARK(cons(U11(z0, z1), x1)) -> c53(ACTIVE(cons(active(U11(mark(z0), z1)), x1)), CONS(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(cons(tt, x1)) -> c53(ACTIVE(cons(active(tt), x1)), CONS(mark(tt), x1), MARK(tt)) MARK(cons(s(z0), x1)) -> c53(ACTIVE(cons(active(s(mark(z0))), x1)), CONS(mark(s(z0)), x1), MARK(s(z0))) MARK(cons(length(z0), x1)) -> c53(ACTIVE(cons(active(length(mark(z0))), x1)), CONS(mark(length(z0)), x1), MARK(length(z0))) MARK(cons(U21(z0), x1)) -> c53(ACTIVE(cons(active(U21(mark(z0))), x1)), CONS(mark(U21(z0)), x1), MARK(U21(z0))) MARK(cons(nil, x1)) -> c53(ACTIVE(cons(active(nil), x1)), CONS(mark(nil), x1), MARK(nil)) MARK(cons(U31(z0, z1, z2, z3), x1)) -> c53(ACTIVE(cons(active(U31(mark(z0), z1, z2, z3)), x1)), CONS(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(cons(take(z0, z1), x1)) -> c53(ACTIVE(cons(active(take(mark(z0), mark(z1))), x1)), CONS(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(cons(and(z0, z1), x1)) -> c53(ACTIVE(cons(active(and(mark(z0), z1)), x1)), CONS(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(cons(isNat(z0), x1)) -> c53(ACTIVE(cons(active(isNat(z0)), x1)), CONS(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(cons(isNatList(z0), x1)) -> c53(ACTIVE(cons(active(isNatList(z0)), x1)), CONS(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(cons(isNatIList(z0), x1)) -> c53(ACTIVE(cons(active(isNatIList(z0)), x1)), CONS(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(cons(x0, x1)) -> c53(CONS(mark(x0), x1)) MARK(cons(z0, z1)) -> c53(CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(z0, z1)), U11'(mark(z0), z1), MARK(z0)) MARK(U11(zeros, x1)) -> c55(ACTIVE(U11(active(zeros), x1)), U11'(mark(zeros), x1), MARK(zeros)) MARK(U11(cons(z0, z1), x1)) -> c55(ACTIVE(U11(active(cons(mark(z0), z1)), x1)), U11'(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(U11(0, x1)) -> c55(ACTIVE(U11(active(0), x1)), U11'(mark(0), x1), MARK(0)) MARK(U11(U11(z0, z1), x1)) -> c55(ACTIVE(U11(active(U11(mark(z0), z1)), x1)), U11'(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(U11(tt, x1)) -> c55(ACTIVE(U11(active(tt), x1)), U11'(mark(tt), x1), MARK(tt)) MARK(U11(s(z0), x1)) -> c55(ACTIVE(U11(active(s(mark(z0))), x1)), U11'(mark(s(z0)), x1), MARK(s(z0))) MARK(U11(length(z0), x1)) -> c55(ACTIVE(U11(active(length(mark(z0))), x1)), U11'(mark(length(z0)), x1), MARK(length(z0))) MARK(U11(U21(z0), x1)) -> c55(ACTIVE(U11(active(U21(mark(z0))), x1)), U11'(mark(U21(z0)), x1), MARK(U21(z0))) MARK(U11(nil, x1)) -> c55(ACTIVE(U11(active(nil), x1)), U11'(mark(nil), x1), MARK(nil)) MARK(U11(U31(z0, z1, z2, z3), x1)) -> c55(ACTIVE(U11(active(U31(mark(z0), z1, z2, z3)), x1)), U11'(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(U11(take(z0, z1), x1)) -> c55(ACTIVE(U11(active(take(mark(z0), mark(z1))), x1)), U11'(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(U11(and(z0, z1), x1)) -> c55(ACTIVE(U11(active(and(mark(z0), z1)), x1)), U11'(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(U11(isNat(z0), x1)) -> c55(ACTIVE(U11(active(isNat(z0)), x1)), U11'(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(U11(isNatList(z0), x1)) -> c55(ACTIVE(U11(active(isNatList(z0)), x1)), U11'(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(U11(isNatIList(z0), x1)) -> c55(ACTIVE(U11(active(isNatIList(z0)), x1)), U11'(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(U11(x0, x1)) -> c55(U11'(mark(x0), x1)) MARK(s(zeros)) -> c57(ACTIVE(s(active(zeros))), S(mark(zeros)), MARK(zeros)) MARK(s(cons(z0, z1))) -> c57(ACTIVE(s(active(cons(mark(z0), z1)))), S(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(s(0)) -> c57(ACTIVE(s(active(0))), S(mark(0)), MARK(0)) MARK(s(U11(z0, z1))) -> c57(ACTIVE(s(active(U11(mark(z0), z1)))), S(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(s(tt)) -> c57(ACTIVE(s(active(tt))), S(mark(tt)), MARK(tt)) MARK(s(s(z0))) -> c57(ACTIVE(s(active(s(mark(z0))))), S(mark(s(z0))), MARK(s(z0))) MARK(s(length(z0))) -> c57(ACTIVE(s(active(length(mark(z0))))), S(mark(length(z0))), MARK(length(z0))) MARK(s(U21(z0))) -> c57(ACTIVE(s(active(U21(mark(z0))))), S(mark(U21(z0))), MARK(U21(z0))) MARK(s(nil)) -> c57(ACTIVE(s(active(nil))), S(mark(nil)), MARK(nil)) MARK(s(U31(z0, z1, z2, z3))) -> c57(ACTIVE(s(active(U31(mark(z0), z1, z2, z3)))), S(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(s(take(z0, z1))) -> c57(ACTIVE(s(active(take(mark(z0), mark(z1))))), S(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(s(and(z0, z1))) -> c57(ACTIVE(s(active(and(mark(z0), z1)))), S(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(s(isNat(z0))) -> c57(ACTIVE(s(active(isNat(z0)))), S(mark(isNat(z0))), MARK(isNat(z0))) MARK(s(isNatList(z0))) -> c57(ACTIVE(s(active(isNatList(z0)))), S(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(s(isNatIList(z0))) -> c57(ACTIVE(s(active(isNatIList(z0)))), S(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(s(z0)) -> c57(S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(z0)), LENGTH(mark(z0)), MARK(z0)) MARK(length(zeros)) -> c58(ACTIVE(length(active(zeros))), LENGTH(mark(zeros)), MARK(zeros)) MARK(length(cons(z0, z1))) -> c58(ACTIVE(length(active(cons(mark(z0), z1)))), LENGTH(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(length(0)) -> c58(ACTIVE(length(active(0))), LENGTH(mark(0)), MARK(0)) MARK(length(U11(z0, z1))) -> c58(ACTIVE(length(active(U11(mark(z0), z1)))), LENGTH(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(length(tt)) -> c58(ACTIVE(length(active(tt))), LENGTH(mark(tt)), MARK(tt)) MARK(length(s(z0))) -> c58(ACTIVE(length(active(s(mark(z0))))), LENGTH(mark(s(z0))), MARK(s(z0))) MARK(length(length(z0))) -> c58(ACTIVE(length(active(length(mark(z0))))), LENGTH(mark(length(z0))), MARK(length(z0))) MARK(length(U21(z0))) -> c58(ACTIVE(length(active(U21(mark(z0))))), LENGTH(mark(U21(z0))), MARK(U21(z0))) MARK(length(nil)) -> c58(ACTIVE(length(active(nil))), LENGTH(mark(nil)), MARK(nil)) MARK(length(U31(z0, z1, z2, z3))) -> c58(ACTIVE(length(active(U31(mark(z0), z1, z2, z3)))), LENGTH(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(length(take(z0, z1))) -> c58(ACTIVE(length(active(take(mark(z0), mark(z1))))), LENGTH(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(length(and(z0, z1))) -> c58(ACTIVE(length(active(and(mark(z0), z1)))), LENGTH(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(length(isNat(z0))) -> c58(ACTIVE(length(active(isNat(z0)))), LENGTH(mark(isNat(z0))), MARK(isNat(z0))) MARK(length(isNatList(z0))) -> c58(ACTIVE(length(active(isNatList(z0)))), LENGTH(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(length(isNatIList(z0))) -> c58(ACTIVE(length(active(isNatIList(z0)))), LENGTH(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(U21(z0)) -> c59(ACTIVE(U21(z0)), U21'(mark(z0)), MARK(z0)) MARK(U21(zeros)) -> c59(ACTIVE(U21(active(zeros))), U21'(mark(zeros)), MARK(zeros)) MARK(U21(cons(z0, z1))) -> c59(ACTIVE(U21(active(cons(mark(z0), z1)))), U21'(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(U21(0)) -> c59(ACTIVE(U21(active(0))), U21'(mark(0)), MARK(0)) MARK(U21(U11(z0, z1))) -> c59(ACTIVE(U21(active(U11(mark(z0), z1)))), U21'(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(U21(tt)) -> c59(ACTIVE(U21(active(tt))), U21'(mark(tt)), MARK(tt)) MARK(U21(s(z0))) -> c59(ACTIVE(U21(active(s(mark(z0))))), U21'(mark(s(z0))), MARK(s(z0))) MARK(U21(length(z0))) -> c59(ACTIVE(U21(active(length(mark(z0))))), U21'(mark(length(z0))), MARK(length(z0))) MARK(U21(U21(z0))) -> c59(ACTIVE(U21(active(U21(mark(z0))))), U21'(mark(U21(z0))), MARK(U21(z0))) MARK(U21(nil)) -> c59(ACTIVE(U21(active(nil))), U21'(mark(nil)), MARK(nil)) MARK(U21(U31(z0, z1, z2, z3))) -> c59(ACTIVE(U21(active(U31(mark(z0), z1, z2, z3)))), U21'(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(U21(take(z0, z1))) -> c59(ACTIVE(U21(active(take(mark(z0), mark(z1))))), U21'(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(U21(and(z0, z1))) -> c59(ACTIVE(U21(active(and(mark(z0), z1)))), U21'(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(U21(isNat(z0))) -> c59(ACTIVE(U21(active(isNat(z0)))), U21'(mark(isNat(z0))), MARK(isNat(z0))) MARK(U21(isNatList(z0))) -> c59(ACTIVE(U21(active(isNatList(z0)))), U21'(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(U21(isNatIList(z0))) -> c59(ACTIVE(U21(active(isNatIList(z0)))), U21'(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(z0, z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U31(zeros, x1, x2, x3)) -> c61(ACTIVE(U31(active(zeros), x1, x2, x3)), U31'(mark(zeros), x1, x2, x3), MARK(zeros)) MARK(U31(cons(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(cons(mark(z0), z1)), x1, x2, x3)), U31'(mark(cons(z0, z1)), x1, x2, x3), MARK(cons(z0, z1))) MARK(U31(0, x1, x2, x3)) -> c61(ACTIVE(U31(active(0), x1, x2, x3)), U31'(mark(0), x1, x2, x3), MARK(0)) MARK(U31(U11(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(U11(mark(z0), z1)), x1, x2, x3)), U31'(mark(U11(z0, z1)), x1, x2, x3), MARK(U11(z0, z1))) MARK(U31(tt, x1, x2, x3)) -> c61(ACTIVE(U31(active(tt), x1, x2, x3)), U31'(mark(tt), x1, x2, x3), MARK(tt)) MARK(U31(s(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(s(mark(z0))), x1, x2, x3)), U31'(mark(s(z0)), x1, x2, x3), MARK(s(z0))) MARK(U31(length(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(length(mark(z0))), x1, x2, x3)), U31'(mark(length(z0)), x1, x2, x3), MARK(length(z0))) MARK(U31(U21(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(U21(mark(z0))), x1, x2, x3)), U31'(mark(U21(z0)), x1, x2, x3), MARK(U21(z0))) MARK(U31(nil, x1, x2, x3)) -> c61(ACTIVE(U31(active(nil), x1, x2, x3)), U31'(mark(nil), x1, x2, x3), MARK(nil)) MARK(U31(U31(z0, z1, z2, z3), x1, x2, x3)) -> c61(ACTIVE(U31(active(U31(mark(z0), z1, z2, z3)), x1, x2, x3)), U31'(mark(U31(z0, z1, z2, z3)), x1, x2, x3), MARK(U31(z0, z1, z2, z3))) MARK(U31(take(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(take(mark(z0), mark(z1))), x1, x2, x3)), U31'(mark(take(z0, z1)), x1, x2, x3), MARK(take(z0, z1))) MARK(U31(and(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(and(mark(z0), z1)), x1, x2, x3)), U31'(mark(and(z0, z1)), x1, x2, x3), MARK(and(z0, z1))) MARK(U31(isNat(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNat(z0)), x1, x2, x3)), U31'(mark(isNat(z0)), x1, x2, x3), MARK(isNat(z0))) MARK(U31(isNatList(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNatList(z0)), x1, x2, x3)), U31'(mark(isNatList(z0)), x1, x2, x3), MARK(isNatList(z0))) MARK(U31(isNatIList(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNatIList(z0)), x1, x2, x3)), U31'(mark(isNatIList(z0)), x1, x2, x3), MARK(isNatIList(z0))) MARK(U31(x0, x1, x2, x3)) -> c61(U31'(mark(x0), x1, x2, x3)) MARK(take(z0, x1)) -> c62(ACTIVE(take(z0, mark(x1))), TAKE(mark(z0), mark(x1)), MARK(z0), MARK(x1)) MARK(take(x0, z1)) -> c62(ACTIVE(take(mark(x0), z1)), TAKE(mark(x0), mark(z1)), MARK(x0), MARK(z1)) MARK(take(x0, zeros)) -> c62(ACTIVE(take(mark(x0), active(zeros))), TAKE(mark(x0), mark(zeros)), MARK(x0), MARK(zeros)) MARK(take(x0, cons(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(cons(mark(z0), z1)))), TAKE(mark(x0), mark(cons(z0, z1))), MARK(x0), MARK(cons(z0, z1))) MARK(take(x0, 0)) -> c62(ACTIVE(take(mark(x0), active(0))), TAKE(mark(x0), mark(0)), MARK(x0), MARK(0)) MARK(take(x0, U11(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(U11(mark(z0), z1)))), TAKE(mark(x0), mark(U11(z0, z1))), MARK(x0), MARK(U11(z0, z1))) MARK(take(x0, tt)) -> c62(ACTIVE(take(mark(x0), active(tt))), TAKE(mark(x0), mark(tt)), MARK(x0), MARK(tt)) MARK(take(x0, s(z0))) -> c62(ACTIVE(take(mark(x0), active(s(mark(z0))))), TAKE(mark(x0), mark(s(z0))), MARK(x0), MARK(s(z0))) MARK(take(x0, length(z0))) -> c62(ACTIVE(take(mark(x0), active(length(mark(z0))))), TAKE(mark(x0), mark(length(z0))), MARK(x0), MARK(length(z0))) MARK(take(x0, U21(z0))) -> c62(ACTIVE(take(mark(x0), active(U21(mark(z0))))), TAKE(mark(x0), mark(U21(z0))), MARK(x0), MARK(U21(z0))) MARK(take(x0, nil)) -> c62(ACTIVE(take(mark(x0), active(nil))), TAKE(mark(x0), mark(nil)), MARK(x0), MARK(nil)) MARK(take(x0, U31(z0, z1, z2, z3))) -> c62(ACTIVE(take(mark(x0), active(U31(mark(z0), z1, z2, z3)))), TAKE(mark(x0), mark(U31(z0, z1, z2, z3))), MARK(x0), MARK(U31(z0, z1, z2, z3))) MARK(take(x0, take(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(take(mark(z0), mark(z1))))), TAKE(mark(x0), mark(take(z0, z1))), MARK(x0), MARK(take(z0, z1))) MARK(take(x0, and(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(and(mark(z0), z1)))), TAKE(mark(x0), mark(and(z0, z1))), MARK(x0), MARK(and(z0, z1))) MARK(take(x0, isNat(z0))) -> c62(ACTIVE(take(mark(x0), active(isNat(z0)))), TAKE(mark(x0), mark(isNat(z0))), MARK(x0), MARK(isNat(z0))) MARK(take(x0, isNatList(z0))) -> c62(ACTIVE(take(mark(x0), active(isNatList(z0)))), TAKE(mark(x0), mark(isNatList(z0))), MARK(x0), MARK(isNatList(z0))) MARK(take(x0, isNatIList(z0))) -> c62(ACTIVE(take(mark(x0), active(isNatIList(z0)))), TAKE(mark(x0), mark(isNatIList(z0))), MARK(x0), MARK(isNatIList(z0))) MARK(take(zeros, x1)) -> c62(ACTIVE(take(active(zeros), mark(x1))), TAKE(mark(zeros), mark(x1)), MARK(zeros), MARK(x1)) MARK(take(cons(z0, z1), x1)) -> c62(ACTIVE(take(active(cons(mark(z0), z1)), mark(x1))), TAKE(mark(cons(z0, z1)), mark(x1)), MARK(cons(z0, z1)), MARK(x1)) MARK(take(0, x1)) -> c62(ACTIVE(take(active(0), mark(x1))), TAKE(mark(0), mark(x1)), MARK(0), MARK(x1)) MARK(take(U11(z0, z1), x1)) -> c62(ACTIVE(take(active(U11(mark(z0), z1)), mark(x1))), TAKE(mark(U11(z0, z1)), mark(x1)), MARK(U11(z0, z1)), MARK(x1)) MARK(take(tt, x1)) -> c62(ACTIVE(take(active(tt), mark(x1))), TAKE(mark(tt), mark(x1)), MARK(tt), MARK(x1)) MARK(take(s(z0), x1)) -> c62(ACTIVE(take(active(s(mark(z0))), mark(x1))), TAKE(mark(s(z0)), mark(x1)), MARK(s(z0)), MARK(x1)) MARK(take(length(z0), x1)) -> c62(ACTIVE(take(active(length(mark(z0))), mark(x1))), TAKE(mark(length(z0)), mark(x1)), MARK(length(z0)), MARK(x1)) MARK(take(U21(z0), x1)) -> c62(ACTIVE(take(active(U21(mark(z0))), mark(x1))), TAKE(mark(U21(z0)), mark(x1)), MARK(U21(z0)), MARK(x1)) MARK(take(nil, x1)) -> c62(ACTIVE(take(active(nil), mark(x1))), TAKE(mark(nil), mark(x1)), MARK(nil), MARK(x1)) MARK(take(U31(z0, z1, z2, z3), x1)) -> c62(ACTIVE(take(active(U31(mark(z0), z1, z2, z3)), mark(x1))), TAKE(mark(U31(z0, z1, z2, z3)), mark(x1)), MARK(U31(z0, z1, z2, z3)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c62(ACTIVE(take(active(take(mark(z0), mark(z1))), mark(x1))), TAKE(mark(take(z0, z1)), mark(x1)), MARK(take(z0, z1)), MARK(x1)) MARK(take(and(z0, z1), x1)) -> c62(ACTIVE(take(active(and(mark(z0), z1)), mark(x1))), TAKE(mark(and(z0, z1)), mark(x1)), MARK(and(z0, z1)), MARK(x1)) MARK(take(isNat(z0), x1)) -> c62(ACTIVE(take(active(isNat(z0)), mark(x1))), TAKE(mark(isNat(z0)), mark(x1)), MARK(isNat(z0)), MARK(x1)) MARK(take(isNatList(z0), x1)) -> c62(ACTIVE(take(active(isNatList(z0)), mark(x1))), TAKE(mark(isNatList(z0)), mark(x1)), MARK(isNatList(z0)), MARK(x1)) MARK(take(isNatIList(z0), x1)) -> c62(ACTIVE(take(active(isNatIList(z0)), mark(x1))), TAKE(mark(isNatIList(z0)), mark(x1)), MARK(isNatIList(z0)), MARK(x1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(z0, z1)), AND(mark(z0), z1), MARK(z0)) MARK(and(zeros, x1)) -> c63(ACTIVE(and(active(zeros), x1)), AND(mark(zeros), x1), MARK(zeros)) MARK(and(cons(z0, z1), x1)) -> c63(ACTIVE(and(active(cons(mark(z0), z1)), x1)), AND(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(and(0, x1)) -> c63(ACTIVE(and(active(0), x1)), AND(mark(0), x1), MARK(0)) MARK(and(U11(z0, z1), x1)) -> c63(ACTIVE(and(active(U11(mark(z0), z1)), x1)), AND(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(and(tt, x1)) -> c63(ACTIVE(and(active(tt), x1)), AND(mark(tt), x1), MARK(tt)) MARK(and(s(z0), x1)) -> c63(ACTIVE(and(active(s(mark(z0))), x1)), AND(mark(s(z0)), x1), MARK(s(z0))) MARK(and(length(z0), x1)) -> c63(ACTIVE(and(active(length(mark(z0))), x1)), AND(mark(length(z0)), x1), MARK(length(z0))) MARK(and(U21(z0), x1)) -> c63(ACTIVE(and(active(U21(mark(z0))), x1)), AND(mark(U21(z0)), x1), MARK(U21(z0))) MARK(and(nil, x1)) -> c63(ACTIVE(and(active(nil), x1)), AND(mark(nil), x1), MARK(nil)) MARK(and(U31(z0, z1, z2, z3), x1)) -> c63(ACTIVE(and(active(U31(mark(z0), z1, z2, z3)), x1)), AND(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(and(take(z0, z1), x1)) -> c63(ACTIVE(and(active(take(mark(z0), mark(z1))), x1)), AND(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(and(and(z0, z1), x1)) -> c63(ACTIVE(and(active(and(mark(z0), z1)), x1)), AND(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(and(isNat(z0), x1)) -> c63(ACTIVE(and(active(isNat(z0)), x1)), AND(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(and(isNatList(z0), x1)) -> c63(ACTIVE(and(active(isNatList(z0)), x1)), AND(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(and(isNatIList(z0), x1)) -> c63(ACTIVE(and(active(isNatIList(z0)), x1)), AND(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(and(x0, x1)) -> c63(AND(mark(x0), x1)) ENCODE_ACTIVE(cons_active(z0)) -> c(ACTIVE(active(encArg(z0)))) ENCODE_ACTIVE(cons_mark(z0)) -> c(ACTIVE(mark(encArg(z0)))) ENCODE_ACTIVE(cons_cons(z0, z1)) -> c(ACTIVE(cons(encArg(z0), encArg(z1)))) ENCODE_ACTIVE(cons_U11(z0, z1)) -> c(ACTIVE(U11(encArg(z0), encArg(z1)))) ENCODE_ACTIVE(cons_s(z0)) -> c(ACTIVE(s(encArg(z0)))) ENCODE_ACTIVE(cons_length(z0)) -> c(ACTIVE(length(encArg(z0)))) ENCODE_ACTIVE(cons_U21(z0)) -> c(ACTIVE(U21(encArg(z0)))) ENCODE_ACTIVE(cons_U31(z0, z1, z2, z3)) -> c(ACTIVE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)))) ENCODE_ACTIVE(cons_take(z0, z1)) -> c(ACTIVE(take(encArg(z0), encArg(z1)))) ENCODE_ACTIVE(cons_and(z0, z1)) -> c(ACTIVE(and(encArg(z0), encArg(z1)))) ENCODE_ACTIVE(cons_isNat(z0)) -> c(ACTIVE(isNat(encArg(z0)))) ENCODE_ACTIVE(cons_isNatList(z0)) -> c(ACTIVE(isNatList(encArg(z0)))) ENCODE_ACTIVE(cons_isNatIList(z0)) -> c(ACTIVE(isNatIList(encArg(z0)))) ENCODE_MARK(zeros) -> c(MARK(zeros)) ENCODE_MARK(0) -> c(MARK(0)) ENCODE_MARK(tt) -> c(MARK(tt)) ENCODE_MARK(nil) -> c(MARK(nil)) ENCODE_MARK(cons_active(z0)) -> c(MARK(active(encArg(z0)))) ENCODE_MARK(cons_mark(z0)) -> c(MARK(mark(encArg(z0)))) ENCODE_MARK(cons_cons(z0, z1)) -> c(MARK(cons(encArg(z0), encArg(z1)))) ENCODE_MARK(cons_U11(z0, z1)) -> c(MARK(U11(encArg(z0), encArg(z1)))) ENCODE_MARK(cons_s(z0)) -> c(MARK(s(encArg(z0)))) ENCODE_MARK(cons_length(z0)) -> c(MARK(length(encArg(z0)))) ENCODE_MARK(cons_U21(z0)) -> c(MARK(U21(encArg(z0)))) ENCODE_MARK(cons_U31(z0, z1, z2, z3)) -> c(MARK(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)))) ENCODE_MARK(cons_take(z0, z1)) -> c(MARK(take(encArg(z0), encArg(z1)))) ENCODE_MARK(cons_and(z0, z1)) -> c(MARK(and(encArg(z0), encArg(z1)))) ENCODE_MARK(cons_isNat(z0)) -> c(MARK(isNat(encArg(z0)))) ENCODE_MARK(cons_isNatList(z0)) -> c(MARK(isNatList(encArg(z0)))) ENCODE_MARK(cons_isNatIList(z0)) -> c(MARK(isNatIList(encArg(z0)))) S tuples: ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 MARK(cons(zeros, x1)) -> c53(ACTIVE(cons(active(zeros), x1)), CONS(mark(zeros), x1), MARK(zeros)) MARK(cons(cons(z0, z1), x1)) -> c53(ACTIVE(cons(active(cons(mark(z0), z1)), x1)), CONS(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(cons(0, x1)) -> c53(ACTIVE(cons(active(0), x1)), CONS(mark(0), x1), MARK(0)) MARK(cons(U11(z0, z1), x1)) -> c53(ACTIVE(cons(active(U11(mark(z0), z1)), x1)), CONS(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(cons(tt, x1)) -> c53(ACTIVE(cons(active(tt), x1)), CONS(mark(tt), x1), MARK(tt)) MARK(cons(s(z0), x1)) -> c53(ACTIVE(cons(active(s(mark(z0))), x1)), CONS(mark(s(z0)), x1), MARK(s(z0))) MARK(cons(length(z0), x1)) -> c53(ACTIVE(cons(active(length(mark(z0))), x1)), CONS(mark(length(z0)), x1), MARK(length(z0))) MARK(cons(U21(z0), x1)) -> c53(ACTIVE(cons(active(U21(mark(z0))), x1)), CONS(mark(U21(z0)), x1), MARK(U21(z0))) MARK(cons(nil, x1)) -> c53(ACTIVE(cons(active(nil), x1)), CONS(mark(nil), x1), MARK(nil)) MARK(cons(U31(z0, z1, z2, z3), x1)) -> c53(ACTIVE(cons(active(U31(mark(z0), z1, z2, z3)), x1)), CONS(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(cons(take(z0, z1), x1)) -> c53(ACTIVE(cons(active(take(mark(z0), mark(z1))), x1)), CONS(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(cons(and(z0, z1), x1)) -> c53(ACTIVE(cons(active(and(mark(z0), z1)), x1)), CONS(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(cons(isNat(z0), x1)) -> c53(ACTIVE(cons(active(isNat(z0)), x1)), CONS(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(cons(isNatList(z0), x1)) -> c53(ACTIVE(cons(active(isNatList(z0)), x1)), CONS(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(cons(isNatIList(z0), x1)) -> c53(ACTIVE(cons(active(isNatIList(z0)), x1)), CONS(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(cons(x0, x1)) -> c53(CONS(mark(x0), x1)) MARK(cons(z0, z1)) -> c53(CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(z0, z1)), U11'(mark(z0), z1), MARK(z0)) MARK(U11(zeros, x1)) -> c55(ACTIVE(U11(active(zeros), x1)), U11'(mark(zeros), x1), MARK(zeros)) MARK(U11(cons(z0, z1), x1)) -> c55(ACTIVE(U11(active(cons(mark(z0), z1)), x1)), U11'(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(U11(0, x1)) -> c55(ACTIVE(U11(active(0), x1)), U11'(mark(0), x1), MARK(0)) MARK(U11(U11(z0, z1), x1)) -> c55(ACTIVE(U11(active(U11(mark(z0), z1)), x1)), U11'(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(U11(tt, x1)) -> c55(ACTIVE(U11(active(tt), x1)), U11'(mark(tt), x1), MARK(tt)) MARK(U11(s(z0), x1)) -> c55(ACTIVE(U11(active(s(mark(z0))), x1)), U11'(mark(s(z0)), x1), MARK(s(z0))) MARK(U11(length(z0), x1)) -> c55(ACTIVE(U11(active(length(mark(z0))), x1)), U11'(mark(length(z0)), x1), MARK(length(z0))) MARK(U11(U21(z0), x1)) -> c55(ACTIVE(U11(active(U21(mark(z0))), x1)), U11'(mark(U21(z0)), x1), MARK(U21(z0))) MARK(U11(nil, x1)) -> c55(ACTIVE(U11(active(nil), x1)), U11'(mark(nil), x1), MARK(nil)) MARK(U11(U31(z0, z1, z2, z3), x1)) -> c55(ACTIVE(U11(active(U31(mark(z0), z1, z2, z3)), x1)), U11'(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(U11(take(z0, z1), x1)) -> c55(ACTIVE(U11(active(take(mark(z0), mark(z1))), x1)), U11'(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(U11(and(z0, z1), x1)) -> c55(ACTIVE(U11(active(and(mark(z0), z1)), x1)), U11'(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(U11(isNat(z0), x1)) -> c55(ACTIVE(U11(active(isNat(z0)), x1)), U11'(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(U11(isNatList(z0), x1)) -> c55(ACTIVE(U11(active(isNatList(z0)), x1)), U11'(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(U11(isNatIList(z0), x1)) -> c55(ACTIVE(U11(active(isNatIList(z0)), x1)), U11'(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(U11(x0, x1)) -> c55(U11'(mark(x0), x1)) MARK(s(zeros)) -> c57(ACTIVE(s(active(zeros))), S(mark(zeros)), MARK(zeros)) MARK(s(cons(z0, z1))) -> c57(ACTIVE(s(active(cons(mark(z0), z1)))), S(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(s(0)) -> c57(ACTIVE(s(active(0))), S(mark(0)), MARK(0)) MARK(s(U11(z0, z1))) -> c57(ACTIVE(s(active(U11(mark(z0), z1)))), S(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(s(tt)) -> c57(ACTIVE(s(active(tt))), S(mark(tt)), MARK(tt)) MARK(s(s(z0))) -> c57(ACTIVE(s(active(s(mark(z0))))), S(mark(s(z0))), MARK(s(z0))) MARK(s(length(z0))) -> c57(ACTIVE(s(active(length(mark(z0))))), S(mark(length(z0))), MARK(length(z0))) MARK(s(U21(z0))) -> c57(ACTIVE(s(active(U21(mark(z0))))), S(mark(U21(z0))), MARK(U21(z0))) MARK(s(nil)) -> c57(ACTIVE(s(active(nil))), S(mark(nil)), MARK(nil)) MARK(s(U31(z0, z1, z2, z3))) -> c57(ACTIVE(s(active(U31(mark(z0), z1, z2, z3)))), S(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(s(take(z0, z1))) -> c57(ACTIVE(s(active(take(mark(z0), mark(z1))))), S(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(s(and(z0, z1))) -> c57(ACTIVE(s(active(and(mark(z0), z1)))), S(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(s(isNat(z0))) -> c57(ACTIVE(s(active(isNat(z0)))), S(mark(isNat(z0))), MARK(isNat(z0))) MARK(s(isNatList(z0))) -> c57(ACTIVE(s(active(isNatList(z0)))), S(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(s(isNatIList(z0))) -> c57(ACTIVE(s(active(isNatIList(z0)))), S(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(s(z0)) -> c57(S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(z0)), LENGTH(mark(z0)), MARK(z0)) MARK(length(zeros)) -> c58(ACTIVE(length(active(zeros))), LENGTH(mark(zeros)), MARK(zeros)) MARK(length(cons(z0, z1))) -> c58(ACTIVE(length(active(cons(mark(z0), z1)))), LENGTH(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(length(0)) -> c58(ACTIVE(length(active(0))), LENGTH(mark(0)), MARK(0)) MARK(length(U11(z0, z1))) -> c58(ACTIVE(length(active(U11(mark(z0), z1)))), LENGTH(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(length(tt)) -> c58(ACTIVE(length(active(tt))), LENGTH(mark(tt)), MARK(tt)) MARK(length(s(z0))) -> c58(ACTIVE(length(active(s(mark(z0))))), LENGTH(mark(s(z0))), MARK(s(z0))) MARK(length(length(z0))) -> c58(ACTIVE(length(active(length(mark(z0))))), LENGTH(mark(length(z0))), MARK(length(z0))) MARK(length(U21(z0))) -> c58(ACTIVE(length(active(U21(mark(z0))))), LENGTH(mark(U21(z0))), MARK(U21(z0))) MARK(length(nil)) -> c58(ACTIVE(length(active(nil))), LENGTH(mark(nil)), MARK(nil)) MARK(length(U31(z0, z1, z2, z3))) -> c58(ACTIVE(length(active(U31(mark(z0), z1, z2, z3)))), LENGTH(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(length(take(z0, z1))) -> c58(ACTIVE(length(active(take(mark(z0), mark(z1))))), LENGTH(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(length(and(z0, z1))) -> c58(ACTIVE(length(active(and(mark(z0), z1)))), LENGTH(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(length(isNat(z0))) -> c58(ACTIVE(length(active(isNat(z0)))), LENGTH(mark(isNat(z0))), MARK(isNat(z0))) MARK(length(isNatList(z0))) -> c58(ACTIVE(length(active(isNatList(z0)))), LENGTH(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(length(isNatIList(z0))) -> c58(ACTIVE(length(active(isNatIList(z0)))), LENGTH(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(U21(z0)) -> c59(ACTIVE(U21(z0)), U21'(mark(z0)), MARK(z0)) MARK(U21(zeros)) -> c59(ACTIVE(U21(active(zeros))), U21'(mark(zeros)), MARK(zeros)) MARK(U21(cons(z0, z1))) -> c59(ACTIVE(U21(active(cons(mark(z0), z1)))), U21'(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(U21(0)) -> c59(ACTIVE(U21(active(0))), U21'(mark(0)), MARK(0)) MARK(U21(U11(z0, z1))) -> c59(ACTIVE(U21(active(U11(mark(z0), z1)))), U21'(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(U21(tt)) -> c59(ACTIVE(U21(active(tt))), U21'(mark(tt)), MARK(tt)) MARK(U21(s(z0))) -> c59(ACTIVE(U21(active(s(mark(z0))))), U21'(mark(s(z0))), MARK(s(z0))) MARK(U21(length(z0))) -> c59(ACTIVE(U21(active(length(mark(z0))))), U21'(mark(length(z0))), MARK(length(z0))) MARK(U21(U21(z0))) -> c59(ACTIVE(U21(active(U21(mark(z0))))), U21'(mark(U21(z0))), MARK(U21(z0))) MARK(U21(nil)) -> c59(ACTIVE(U21(active(nil))), U21'(mark(nil)), MARK(nil)) MARK(U21(U31(z0, z1, z2, z3))) -> c59(ACTIVE(U21(active(U31(mark(z0), z1, z2, z3)))), U21'(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(U21(take(z0, z1))) -> c59(ACTIVE(U21(active(take(mark(z0), mark(z1))))), U21'(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(U21(and(z0, z1))) -> c59(ACTIVE(U21(active(and(mark(z0), z1)))), U21'(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(U21(isNat(z0))) -> c59(ACTIVE(U21(active(isNat(z0)))), U21'(mark(isNat(z0))), MARK(isNat(z0))) MARK(U21(isNatList(z0))) -> c59(ACTIVE(U21(active(isNatList(z0)))), U21'(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(U21(isNatIList(z0))) -> c59(ACTIVE(U21(active(isNatIList(z0)))), U21'(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(z0, z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U31(zeros, x1, x2, x3)) -> c61(ACTIVE(U31(active(zeros), x1, x2, x3)), U31'(mark(zeros), x1, x2, x3), MARK(zeros)) MARK(U31(cons(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(cons(mark(z0), z1)), x1, x2, x3)), U31'(mark(cons(z0, z1)), x1, x2, x3), MARK(cons(z0, z1))) MARK(U31(0, x1, x2, x3)) -> c61(ACTIVE(U31(active(0), x1, x2, x3)), U31'(mark(0), x1, x2, x3), MARK(0)) MARK(U31(U11(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(U11(mark(z0), z1)), x1, x2, x3)), U31'(mark(U11(z0, z1)), x1, x2, x3), MARK(U11(z0, z1))) MARK(U31(tt, x1, x2, x3)) -> c61(ACTIVE(U31(active(tt), x1, x2, x3)), U31'(mark(tt), x1, x2, x3), MARK(tt)) MARK(U31(s(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(s(mark(z0))), x1, x2, x3)), U31'(mark(s(z0)), x1, x2, x3), MARK(s(z0))) MARK(U31(length(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(length(mark(z0))), x1, x2, x3)), U31'(mark(length(z0)), x1, x2, x3), MARK(length(z0))) MARK(U31(U21(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(U21(mark(z0))), x1, x2, x3)), U31'(mark(U21(z0)), x1, x2, x3), MARK(U21(z0))) MARK(U31(nil, x1, x2, x3)) -> c61(ACTIVE(U31(active(nil), x1, x2, x3)), U31'(mark(nil), x1, x2, x3), MARK(nil)) MARK(U31(U31(z0, z1, z2, z3), x1, x2, x3)) -> c61(ACTIVE(U31(active(U31(mark(z0), z1, z2, z3)), x1, x2, x3)), U31'(mark(U31(z0, z1, z2, z3)), x1, x2, x3), MARK(U31(z0, z1, z2, z3))) MARK(U31(take(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(take(mark(z0), mark(z1))), x1, x2, x3)), U31'(mark(take(z0, z1)), x1, x2, x3), MARK(take(z0, z1))) MARK(U31(and(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(and(mark(z0), z1)), x1, x2, x3)), U31'(mark(and(z0, z1)), x1, x2, x3), MARK(and(z0, z1))) MARK(U31(isNat(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNat(z0)), x1, x2, x3)), U31'(mark(isNat(z0)), x1, x2, x3), MARK(isNat(z0))) MARK(U31(isNatList(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNatList(z0)), x1, x2, x3)), U31'(mark(isNatList(z0)), x1, x2, x3), MARK(isNatList(z0))) MARK(U31(isNatIList(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNatIList(z0)), x1, x2, x3)), U31'(mark(isNatIList(z0)), x1, x2, x3), MARK(isNatIList(z0))) MARK(U31(x0, x1, x2, x3)) -> c61(U31'(mark(x0), x1, x2, x3)) MARK(take(z0, x1)) -> c62(ACTIVE(take(z0, mark(x1))), TAKE(mark(z0), mark(x1)), MARK(z0), MARK(x1)) MARK(take(x0, z1)) -> c62(ACTIVE(take(mark(x0), z1)), TAKE(mark(x0), mark(z1)), MARK(x0), MARK(z1)) MARK(take(x0, zeros)) -> c62(ACTIVE(take(mark(x0), active(zeros))), TAKE(mark(x0), mark(zeros)), MARK(x0), MARK(zeros)) MARK(take(x0, cons(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(cons(mark(z0), z1)))), TAKE(mark(x0), mark(cons(z0, z1))), MARK(x0), MARK(cons(z0, z1))) MARK(take(x0, 0)) -> c62(ACTIVE(take(mark(x0), active(0))), TAKE(mark(x0), mark(0)), MARK(x0), MARK(0)) MARK(take(x0, U11(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(U11(mark(z0), z1)))), TAKE(mark(x0), mark(U11(z0, z1))), MARK(x0), MARK(U11(z0, z1))) MARK(take(x0, tt)) -> c62(ACTIVE(take(mark(x0), active(tt))), TAKE(mark(x0), mark(tt)), MARK(x0), MARK(tt)) MARK(take(x0, s(z0))) -> c62(ACTIVE(take(mark(x0), active(s(mark(z0))))), TAKE(mark(x0), mark(s(z0))), MARK(x0), MARK(s(z0))) MARK(take(x0, length(z0))) -> c62(ACTIVE(take(mark(x0), active(length(mark(z0))))), TAKE(mark(x0), mark(length(z0))), MARK(x0), MARK(length(z0))) MARK(take(x0, U21(z0))) -> c62(ACTIVE(take(mark(x0), active(U21(mark(z0))))), TAKE(mark(x0), mark(U21(z0))), MARK(x0), MARK(U21(z0))) MARK(take(x0, nil)) -> c62(ACTIVE(take(mark(x0), active(nil))), TAKE(mark(x0), mark(nil)), MARK(x0), MARK(nil)) MARK(take(x0, U31(z0, z1, z2, z3))) -> c62(ACTIVE(take(mark(x0), active(U31(mark(z0), z1, z2, z3)))), TAKE(mark(x0), mark(U31(z0, z1, z2, z3))), MARK(x0), MARK(U31(z0, z1, z2, z3))) MARK(take(x0, take(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(take(mark(z0), mark(z1))))), TAKE(mark(x0), mark(take(z0, z1))), MARK(x0), MARK(take(z0, z1))) MARK(take(x0, and(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(and(mark(z0), z1)))), TAKE(mark(x0), mark(and(z0, z1))), MARK(x0), MARK(and(z0, z1))) MARK(take(x0, isNat(z0))) -> c62(ACTIVE(take(mark(x0), active(isNat(z0)))), TAKE(mark(x0), mark(isNat(z0))), MARK(x0), MARK(isNat(z0))) MARK(take(x0, isNatList(z0))) -> c62(ACTIVE(take(mark(x0), active(isNatList(z0)))), TAKE(mark(x0), mark(isNatList(z0))), MARK(x0), MARK(isNatList(z0))) MARK(take(x0, isNatIList(z0))) -> c62(ACTIVE(take(mark(x0), active(isNatIList(z0)))), TAKE(mark(x0), mark(isNatIList(z0))), MARK(x0), MARK(isNatIList(z0))) MARK(take(zeros, x1)) -> c62(ACTIVE(take(active(zeros), mark(x1))), TAKE(mark(zeros), mark(x1)), MARK(zeros), MARK(x1)) MARK(take(cons(z0, z1), x1)) -> c62(ACTIVE(take(active(cons(mark(z0), z1)), mark(x1))), TAKE(mark(cons(z0, z1)), mark(x1)), MARK(cons(z0, z1)), MARK(x1)) MARK(take(0, x1)) -> c62(ACTIVE(take(active(0), mark(x1))), TAKE(mark(0), mark(x1)), MARK(0), MARK(x1)) MARK(take(U11(z0, z1), x1)) -> c62(ACTIVE(take(active(U11(mark(z0), z1)), mark(x1))), TAKE(mark(U11(z0, z1)), mark(x1)), MARK(U11(z0, z1)), MARK(x1)) MARK(take(tt, x1)) -> c62(ACTIVE(take(active(tt), mark(x1))), TAKE(mark(tt), mark(x1)), MARK(tt), MARK(x1)) MARK(take(s(z0), x1)) -> c62(ACTIVE(take(active(s(mark(z0))), mark(x1))), TAKE(mark(s(z0)), mark(x1)), MARK(s(z0)), MARK(x1)) MARK(take(length(z0), x1)) -> c62(ACTIVE(take(active(length(mark(z0))), mark(x1))), TAKE(mark(length(z0)), mark(x1)), MARK(length(z0)), MARK(x1)) MARK(take(U21(z0), x1)) -> c62(ACTIVE(take(active(U21(mark(z0))), mark(x1))), TAKE(mark(U21(z0)), mark(x1)), MARK(U21(z0)), MARK(x1)) MARK(take(nil, x1)) -> c62(ACTIVE(take(active(nil), mark(x1))), TAKE(mark(nil), mark(x1)), MARK(nil), MARK(x1)) MARK(take(U31(z0, z1, z2, z3), x1)) -> c62(ACTIVE(take(active(U31(mark(z0), z1, z2, z3)), mark(x1))), TAKE(mark(U31(z0, z1, z2, z3)), mark(x1)), MARK(U31(z0, z1, z2, z3)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c62(ACTIVE(take(active(take(mark(z0), mark(z1))), mark(x1))), TAKE(mark(take(z0, z1)), mark(x1)), MARK(take(z0, z1)), MARK(x1)) MARK(take(and(z0, z1), x1)) -> c62(ACTIVE(take(active(and(mark(z0), z1)), mark(x1))), TAKE(mark(and(z0, z1)), mark(x1)), MARK(and(z0, z1)), MARK(x1)) MARK(take(isNat(z0), x1)) -> c62(ACTIVE(take(active(isNat(z0)), mark(x1))), TAKE(mark(isNat(z0)), mark(x1)), MARK(isNat(z0)), MARK(x1)) MARK(take(isNatList(z0), x1)) -> c62(ACTIVE(take(active(isNatList(z0)), mark(x1))), TAKE(mark(isNatList(z0)), mark(x1)), MARK(isNatList(z0)), MARK(x1)) MARK(take(isNatIList(z0), x1)) -> c62(ACTIVE(take(active(isNatIList(z0)), mark(x1))), TAKE(mark(isNatIList(z0)), mark(x1)), MARK(isNatIList(z0)), MARK(x1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(z0, z1)), AND(mark(z0), z1), MARK(z0)) MARK(and(zeros, x1)) -> c63(ACTIVE(and(active(zeros), x1)), AND(mark(zeros), x1), MARK(zeros)) MARK(and(cons(z0, z1), x1)) -> c63(ACTIVE(and(active(cons(mark(z0), z1)), x1)), AND(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(and(0, x1)) -> c63(ACTIVE(and(active(0), x1)), AND(mark(0), x1), MARK(0)) MARK(and(U11(z0, z1), x1)) -> c63(ACTIVE(and(active(U11(mark(z0), z1)), x1)), AND(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(and(tt, x1)) -> c63(ACTIVE(and(active(tt), x1)), AND(mark(tt), x1), MARK(tt)) MARK(and(s(z0), x1)) -> c63(ACTIVE(and(active(s(mark(z0))), x1)), AND(mark(s(z0)), x1), MARK(s(z0))) MARK(and(length(z0), x1)) -> c63(ACTIVE(and(active(length(mark(z0))), x1)), AND(mark(length(z0)), x1), MARK(length(z0))) MARK(and(U21(z0), x1)) -> c63(ACTIVE(and(active(U21(mark(z0))), x1)), AND(mark(U21(z0)), x1), MARK(U21(z0))) MARK(and(nil, x1)) -> c63(ACTIVE(and(active(nil), x1)), AND(mark(nil), x1), MARK(nil)) MARK(and(U31(z0, z1, z2, z3), x1)) -> c63(ACTIVE(and(active(U31(mark(z0), z1, z2, z3)), x1)), AND(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(and(take(z0, z1), x1)) -> c63(ACTIVE(and(active(take(mark(z0), mark(z1))), x1)), AND(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(and(and(z0, z1), x1)) -> c63(ACTIVE(and(active(and(mark(z0), z1)), x1)), AND(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(and(isNat(z0), x1)) -> c63(ACTIVE(and(active(isNat(z0)), x1)), AND(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(and(isNatList(z0), x1)) -> c63(ACTIVE(and(active(isNatList(z0)), x1)), AND(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(and(isNatIList(z0), x1)) -> c63(ACTIVE(and(active(isNatIList(z0)), x1)), AND(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(and(x0, x1)) -> c63(AND(mark(x0), x1)) K tuples:none Defined Rule Symbols: encArg_1, active_1, mark_1, cons_2, U11_2, s_1, length_1, U21_1, U31_4, take_2, and_2, isNat_1, isNatList_1, isNatIList_1 Defined Pair Symbols: ACTIVE_1, MARK_1, CONS_2, U11'_2, S_1, LENGTH_1, U21'_1, U31'_4, TAKE_2, AND_2, ISNAT_1, ISNATLIST_1, ISNATILIST_1, ENCODE_CONS_2, ENCODE_U11_2, ENCODE_S_1, ENCODE_LENGTH_1, ENCODE_U21_1, ENCODE_U31_4, ENCODE_TAKE_2, ENCODE_AND_2, ENCODE_ISNAT_1, ENCODE_ISNATLIST_1, ENCODE_ISNATILIST_1, ENCARG_1, ENCODE_ACTIVE_1, ENCODE_MARK_1 Compound Symbols: c36_1, c37_3, c38_1, c39_1, c40_2, c41_2, c42_2, c43_1, c45_1, c48_1, c52_1, c64_2, c65_2, c66_2, c67_1, c68_1, c69_1, c70_1, c71_1, c72_1, c73_1, c74_1, c75_1, c76_1, c77_1, c78_1, c79_1, c80_1, c81_1, c82_1, c83_1, c84_1, c85_1, c86_1, c87_1, c88_1, c89_1, c90_1, c91_1, c92_1, c93_1, c94_1, c95_1, c96_1, c97_1, c98_1, c99_1, c100_1, c101_1, c102_1, c34_1, c35_2, c44_3, c46_3, c47_3, c49_3, c50_2, c51_4, c54, c56, c60, c_1, c4_2, c4_1, c5_2, c5_1, c6_3, c6_2, c7_3, c7_2, c8_2, c9_2, c10_2, c11_5, c11_4, c12_3, c12_2, c13_3, c13_2, c14_2, c15_2, c16_2, c53_3, c53_1, c53_2, c55_3, c55_1, c57_3, c57_2, c58_3, c59_3, c61_3, c61_1, c62_4, c63_3, c63_1 ---------------------------------------- (119) CdtLeafRemovalProof (ComplexityIfPolyImplication) Removed 4 leading nodes: ENCODE_MARK(zeros) -> c(MARK(zeros)) ENCODE_MARK(0) -> c(MARK(0)) ENCODE_MARK(tt) -> c(MARK(tt)) ENCODE_MARK(nil) -> c(MARK(nil)) ---------------------------------------- (120) Obligation: Complexity Dependency Tuples Problem Rules: encArg(zeros) -> zeros encArg(0) -> 0 encArg(tt) -> tt encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_U11(z0, z1)) -> U11(encArg(z0), encArg(z1)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_length(z0)) -> length(encArg(z0)) encArg(cons_U21(z0)) -> U21(encArg(z0)) encArg(cons_U31(z0, z1, z2, z3)) -> U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_isNat(z0)) -> isNat(encArg(z0)) encArg(cons_isNatList(z0)) -> isNatList(encArg(z0)) encArg(cons_isNatIList(z0)) -> isNatIList(encArg(z0)) active(zeros) -> mark(cons(0, zeros)) active(U11(tt, z0)) -> mark(s(length(z0))) active(U21(tt)) -> mark(nil) active(U31(tt, z0, z1, z2)) -> mark(cons(z2, take(z1, z0))) active(and(tt, z0)) -> mark(z0) active(isNat(0)) -> mark(tt) active(isNat(length(z0))) -> mark(isNatList(z0)) active(isNat(s(z0))) -> mark(isNat(z0)) active(isNatIList(z0)) -> mark(isNatList(z0)) active(isNatIList(zeros)) -> mark(tt) active(isNatIList(cons(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(isNatList(nil)) -> mark(tt) active(isNatList(cons(z0, z1))) -> mark(and(isNat(z0), isNatList(z1))) active(isNatList(take(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(length(nil)) -> mark(0) active(length(cons(z0, z1))) -> mark(U11(and(isNatList(z1), isNat(z0)), z1)) active(take(0, z0)) -> mark(U21(isNatIList(z0))) active(take(s(z0), cons(z1, z2))) -> mark(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)) mark(zeros) -> active(zeros) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(0) -> active(0) mark(U11(z0, z1)) -> active(U11(mark(z0), z1)) mark(tt) -> active(tt) mark(s(z0)) -> active(s(mark(z0))) mark(length(z0)) -> active(length(mark(z0))) mark(U21(z0)) -> active(U21(mark(z0))) mark(nil) -> active(nil) mark(U31(z0, z1, z2, z3)) -> active(U31(mark(z0), z1, z2, z3)) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(isNat(z0)) -> active(isNat(z0)) mark(isNatList(z0)) -> active(isNatList(z0)) mark(isNatIList(z0)) -> active(isNatIList(z0)) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) U11(mark(z0), z1) -> U11(z0, z1) U11(z0, mark(z1)) -> U11(z0, z1) U11(active(z0), z1) -> U11(z0, z1) U11(z0, active(z1)) -> U11(z0, z1) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) length(mark(z0)) -> length(z0) length(active(z0)) -> length(z0) U21(mark(z0)) -> U21(z0) U21(active(z0)) -> U21(z0) U31(mark(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, mark(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, mark(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, mark(z3)) -> U31(z0, z1, z2, z3) U31(active(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, active(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, active(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, active(z3)) -> U31(z0, z1, z2, z3) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) isNat(mark(z0)) -> isNat(z0) isNat(active(z0)) -> isNat(z0) isNatList(mark(z0)) -> isNatList(z0) isNatList(active(z0)) -> isNatList(z0) isNatIList(mark(z0)) -> isNatIList(z0) isNatIList(active(z0)) -> isNatIList(z0) Tuples: ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 ENCODE_CONS(z0, z1) -> c(CONS(encArg(z0), encArg(z1))) ENCODE_U11(z0, z1) -> c(U11'(encArg(z0), encArg(z1))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_LENGTH(z0) -> c(LENGTH(encArg(z0))) ENCODE_U21(z0) -> c(U21'(encArg(z0))) ENCODE_U31(z0, z1, z2, z3) -> c(U31'(encArg(z0), encArg(z1), encArg(z2), encArg(z3))) ENCODE_TAKE(z0, z1) -> c(TAKE(encArg(z0), encArg(z1))) ENCODE_AND(z0, z1) -> c(AND(encArg(z0), encArg(z1))) ENCODE_ISNAT(z0) -> c(ISNAT(encArg(z0))) ENCODE_ISNATLIST(z0) -> c(ISNATLIST(encArg(z0))) ENCODE_ISNATILIST(z0) -> c(ISNATILIST(encArg(z0))) ENCARG(cons_active(cons_active(z0))) -> c4(ACTIVE(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_active(cons_mark(z0))) -> c4(ACTIVE(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_active(cons_cons(z0, z1))) -> c4(ACTIVE(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_active(cons_U11(z0, z1))) -> c4(ACTIVE(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_active(cons_s(z0))) -> c4(ACTIVE(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_active(cons_length(z0))) -> c4(ACTIVE(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_active(cons_U21(z0))) -> c4(ACTIVE(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_active(cons_U31(z0, z1, z2, z3))) -> c4(ACTIVE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_active(cons_take(z0, z1))) -> c4(ACTIVE(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_active(cons_and(z0, z1))) -> c4(ACTIVE(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_active(cons_isNat(z0))) -> c4(ACTIVE(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_active(cons_isNatList(z0))) -> c4(ACTIVE(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_active(cons_isNatIList(z0))) -> c4(ACTIVE(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_active(zeros)) -> c4(ACTIVE(zeros)) ENCARG(cons_mark(cons_active(z0))) -> c5(MARK(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_mark(cons_mark(z0))) -> c5(MARK(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_mark(cons_cons(z0, z1))) -> c5(MARK(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_mark(cons_U11(z0, z1))) -> c5(MARK(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_mark(cons_s(z0))) -> c5(MARK(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_mark(cons_length(z0))) -> c5(MARK(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_mark(cons_U21(z0))) -> c5(MARK(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_mark(cons_U31(z0, z1, z2, z3))) -> c5(MARK(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_mark(cons_take(z0, z1))) -> c5(MARK(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(cons_and(z0, z1))) -> c5(MARK(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_mark(cons_isNat(z0))) -> c5(MARK(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_mark(cons_isNatList(z0))) -> c5(MARK(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_mark(cons_isNatIList(z0))) -> c5(MARK(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_mark(zeros)) -> c5(MARK(zeros)) ENCARG(cons_mark(0)) -> c5(MARK(0)) ENCARG(cons_mark(tt)) -> c5(MARK(tt)) ENCARG(cons_mark(nil)) -> c5(MARK(nil)) ENCARG(cons_cons(x0, cons_active(z0))) -> c6(CONS(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_cons(x0, cons_mark(z0))) -> c6(CONS(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_cons(x0, cons_cons(z0, z1))) -> c6(CONS(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_cons(x0, cons_U11(z0, z1))) -> c6(CONS(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_cons(x0, cons_s(z0))) -> c6(CONS(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_cons(x0, cons_length(z0))) -> c6(CONS(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_cons(x0, cons_U21(z0))) -> c6(CONS(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_cons(x0, cons_U31(z0, z1, z2, z3))) -> c6(CONS(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_cons(x0, cons_take(z0, z1))) -> c6(CONS(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_cons(x0, cons_and(z0, z1))) -> c6(CONS(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_cons(x0, cons_isNat(z0))) -> c6(CONS(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_cons(x0, cons_isNatList(z0))) -> c6(CONS(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_cons(x0, cons_isNatIList(z0))) -> c6(CONS(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_cons(cons_active(z0), x1)) -> c6(CONS(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_mark(z0), x1)) -> c6(CONS(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_cons(z0, z1), x1)) -> c6(CONS(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_U11(z0, z1), x1)) -> c6(CONS(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_s(z0), x1)) -> c6(CONS(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_length(z0), x1)) -> c6(CONS(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U21(z0), x1)) -> c6(CONS(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U31(z0, z1, z2, z3), x1)) -> c6(CONS(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_cons(cons_take(z0, z1), x1)) -> c6(CONS(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_and(z0, z1), x1)) -> c6(CONS(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_isNat(z0), x1)) -> c6(CONS(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_isNatList(z0), x1)) -> c6(CONS(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_isNatIList(z0), x1)) -> c6(CONS(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_cons(x0, zeros)) -> c6(CONS(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_cons(x0, 0)) -> c6(CONS(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_cons(x0, tt)) -> c6(CONS(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_cons(x0, nil)) -> c6(CONS(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_cons(zeros, x1)) -> c6(CONS(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(0, x1)) -> c6(CONS(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(tt, x1)) -> c6(CONS(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(nil, x1)) -> c6(CONS(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(x0, cons_active(z0))) -> c7(U11'(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_U11(x0, cons_mark(z0))) -> c7(U11'(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_U11(x0, cons_cons(z0, z1))) -> c7(U11'(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U11(x0, cons_U11(z0, z1))) -> c7(U11'(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U11(x0, cons_s(z0))) -> c7(U11'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_U11(x0, cons_length(z0))) -> c7(U11'(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_U11(x0, cons_U21(z0))) -> c7(U11'(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_U11(x0, cons_U31(z0, z1, z2, z3))) -> c7(U11'(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U11(x0, cons_take(z0, z1))) -> c7(U11'(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_U11(x0, cons_and(z0, z1))) -> c7(U11'(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_U11(x0, cons_isNat(z0))) -> c7(U11'(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_U11(x0, cons_isNatList(z0))) -> c7(U11'(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_U11(x0, cons_isNatIList(z0))) -> c7(U11'(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U11(cons_active(z0), x1)) -> c7(U11'(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_mark(z0), x1)) -> c7(U11'(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_cons(z0, z1), x1)) -> c7(U11'(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_U11(z0, z1), x1)) -> c7(U11'(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_s(z0), x1)) -> c7(U11'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_length(z0), x1)) -> c7(U11'(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_U21(z0), x1)) -> c7(U11'(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_U31(z0, z1, z2, z3), x1)) -> c7(U11'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_U11(cons_take(z0, z1), x1)) -> c7(U11'(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_and(z0, z1), x1)) -> c7(U11'(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_isNat(z0), x1)) -> c7(U11'(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_isNatList(z0), x1)) -> c7(U11'(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_isNatIList(z0), x1)) -> c7(U11'(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_U11(x0, zeros)) -> c7(U11'(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_U11(x0, 0)) -> c7(U11'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_U11(x0, tt)) -> c7(U11'(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_U11(x0, nil)) -> c7(U11'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_U11(zeros, x1)) -> c7(U11'(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(0, x1)) -> c7(U11'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(tt, x1)) -> c7(U11'(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(nil, x1)) -> c7(U11'(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_s(cons_active(z0))) -> c8(S(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_s(cons_mark(z0))) -> c8(S(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_s(cons_cons(z0, z1))) -> c8(S(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_s(cons_U11(z0, z1))) -> c8(S(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_s(cons_s(z0))) -> c8(S(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_length(z0))) -> c8(S(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_s(cons_U21(z0))) -> c8(S(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_s(cons_U31(z0, z1, z2, z3))) -> c8(S(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_s(cons_take(z0, z1))) -> c8(S(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_s(cons_and(z0, z1))) -> c8(S(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_s(cons_isNat(z0))) -> c8(S(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_s(cons_isNatList(z0))) -> c8(S(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_s(cons_isNatIList(z0))) -> c8(S(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_length(cons_active(z0))) -> c9(LENGTH(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_length(cons_mark(z0))) -> c9(LENGTH(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_length(cons_cons(z0, z1))) -> c9(LENGTH(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_length(cons_U11(z0, z1))) -> c9(LENGTH(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_length(cons_s(z0))) -> c9(LENGTH(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_length(cons_length(z0))) -> c9(LENGTH(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_length(cons_U21(z0))) -> c9(LENGTH(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_length(cons_U31(z0, z1, z2, z3))) -> c9(LENGTH(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_length(cons_take(z0, z1))) -> c9(LENGTH(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_length(cons_and(z0, z1))) -> c9(LENGTH(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_length(cons_isNat(z0))) -> c9(LENGTH(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_length(cons_isNatList(z0))) -> c9(LENGTH(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_length(cons_isNatIList(z0))) -> c9(LENGTH(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U21(cons_active(z0))) -> c10(U21'(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_U21(cons_mark(z0))) -> c10(U21'(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_U21(cons_cons(z0, z1))) -> c10(U21'(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U21(cons_U11(z0, z1))) -> c10(U21'(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U21(cons_s(z0))) -> c10(U21'(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_U21(cons_length(z0))) -> c10(U21'(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_U21(cons_U21(z0))) -> c10(U21'(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_U21(cons_U31(z0, z1, z2, z3))) -> c10(U21'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U21(cons_take(z0, z1))) -> c10(U21'(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_U21(cons_and(z0, z1))) -> c10(U21'(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_U21(cons_isNat(z0))) -> c10(U21'(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_U21(cons_isNatList(z0))) -> c10(U21'(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_U21(cons_isNatIList(z0))) -> c10(U21'(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U31(x0, x1, x2, cons_active(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), active(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_active(z0))) ENCARG(cons_U31(x0, x1, x2, cons_mark(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), mark(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_mark(z0))) ENCARG(cons_U31(x0, x1, x2, cons_cons(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_U11(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_s(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), s(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_s(z0))) ENCARG(cons_U31(x0, x1, x2, cons_length(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), length(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_length(z0))) ENCARG(cons_U31(x0, x1, x2, cons_U21(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U21(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U21(z0))) ENCARG(cons_U31(x0, x1, x2, cons_U31(z0, z1, z2, z3))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U31(x0, x1, x2, cons_take(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_take(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_and(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_and(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_isNat(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNat(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNat(z0))) ENCARG(cons_U31(x0, x1, x2, cons_isNatList(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNatList(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNatList(z0))) ENCARG(cons_U31(x0, x1, x2, cons_isNatIList(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U31(x0, x1, cons_active(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), active(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_active(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_mark(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), mark(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_mark(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_cons(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), cons(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_cons(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U11(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), U11(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U11(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_s(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), s(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_s(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_length(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), length(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_length(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U21(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), U21(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U21(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U31(z0, z1, z2, z3), x3)) -> c11(U31'(encArg(x0), encArg(x1), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_take(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), take(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_take(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_and(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), and(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_and(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNat(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNat(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNat(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNatList(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNatList(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNatList(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNatIList(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNatIList(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNatIList(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, cons_active(z0), x2, x3)) -> c11(U31'(encArg(x0), active(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_active(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_mark(z0), x2, x3)) -> c11(U31'(encArg(x0), mark(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_mark(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_cons(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), cons(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_cons(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U11(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), U11(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U11(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_s(z0), x2, x3)) -> c11(U31'(encArg(x0), s(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_s(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_length(z0), x2, x3)) -> c11(U31'(encArg(x0), length(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_length(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U21(z0), x2, x3)) -> c11(U31'(encArg(x0), U21(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U21(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U31(z0, z1, z2, z3), x2, x3)) -> c11(U31'(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_take(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), take(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_take(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_and(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), and(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_and(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNat(z0), x2, x3)) -> c11(U31'(encArg(x0), isNat(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNat(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNatList(z0), x2, x3)) -> c11(U31'(encArg(x0), isNatList(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNatList(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNatIList(z0), x2, x3)) -> c11(U31'(encArg(x0), isNatIList(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNatIList(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_active(z0), x1, x2, x3)) -> c11(U31'(active(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_active(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_mark(z0), x1, x2, x3)) -> c11(U31'(mark(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_mark(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_cons(z0, z1), x1, x2, x3)) -> c11(U31'(cons(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_cons(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U11(z0, z1), x1, x2, x3)) -> c11(U31'(U11(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U11(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_s(z0), x1, x2, x3)) -> c11(U31'(s(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_s(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_length(z0), x1, x2, x3)) -> c11(U31'(length(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_length(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U21(z0), x1, x2, x3)) -> c11(U31'(U21(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U21(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U31(z0, z1, z2, z3), x1, x2, x3)) -> c11(U31'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_take(z0, z1), x1, x2, x3)) -> c11(U31'(take(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_take(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_and(z0, z1), x1, x2, x3)) -> c11(U31'(and(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_and(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNat(z0), x1, x2, x3)) -> c11(U31'(isNat(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNat(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNatList(z0), x1, x2, x3)) -> c11(U31'(isNatList(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNatList(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNatIList(z0), x1, x2, x3)) -> c11(U31'(isNatIList(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNatIList(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, x1, x2, zeros)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), zeros), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, 0)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), 0), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, tt)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), tt), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, nil)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), nil), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, zeros, x3)) -> c11(U31'(encArg(x0), encArg(x1), zeros, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, 0, x3)) -> c11(U31'(encArg(x0), encArg(x1), 0, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, tt, x3)) -> c11(U31'(encArg(x0), encArg(x1), tt, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, nil, x3)) -> c11(U31'(encArg(x0), encArg(x1), nil, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, zeros, x2, x3)) -> c11(U31'(encArg(x0), zeros, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, 0, x2, x3)) -> c11(U31'(encArg(x0), 0, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, tt, x2, x3)) -> c11(U31'(encArg(x0), tt, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, nil, x2, x3)) -> c11(U31'(encArg(x0), nil, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(zeros, x1, x2, x3)) -> c11(U31'(zeros, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(0, x1, x2, x3)) -> c11(U31'(0, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(tt, x1, x2, x3)) -> c11(U31'(tt, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(nil, x1, x2, x3)) -> c11(U31'(nil, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_take(x0, cons_active(z0))) -> c12(TAKE(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_take(x0, cons_mark(z0))) -> c12(TAKE(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_take(x0, cons_cons(z0, z1))) -> c12(TAKE(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_take(x0, cons_U11(z0, z1))) -> c12(TAKE(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_take(x0, cons_s(z0))) -> c12(TAKE(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_take(x0, cons_length(z0))) -> c12(TAKE(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_take(x0, cons_U21(z0))) -> c12(TAKE(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_take(x0, cons_U31(z0, z1, z2, z3))) -> c12(TAKE(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_take(x0, cons_take(z0, z1))) -> c12(TAKE(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_take(x0, cons_and(z0, z1))) -> c12(TAKE(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_take(x0, cons_isNat(z0))) -> c12(TAKE(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_take(x0, cons_isNatList(z0))) -> c12(TAKE(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_take(x0, cons_isNatIList(z0))) -> c12(TAKE(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_take(cons_active(z0), x1)) -> c12(TAKE(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_take(cons_mark(z0), x1)) -> c12(TAKE(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_take(cons_cons(z0, z1), x1)) -> c12(TAKE(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_U11(z0, z1), x1)) -> c12(TAKE(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_s(z0), x1)) -> c12(TAKE(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_take(cons_length(z0), x1)) -> c12(TAKE(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_take(cons_U21(z0), x1)) -> c12(TAKE(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_take(cons_U31(z0, z1, z2, z3), x1)) -> c12(TAKE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_take(cons_take(z0, z1), x1)) -> c12(TAKE(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_and(z0, z1), x1)) -> c12(TAKE(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_isNat(z0), x1)) -> c12(TAKE(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_take(cons_isNatList(z0), x1)) -> c12(TAKE(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_take(cons_isNatIList(z0), x1)) -> c12(TAKE(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_take(x0, zeros)) -> c12(TAKE(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_take(x0, 0)) -> c12(TAKE(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_take(x0, tt)) -> c12(TAKE(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_take(x0, nil)) -> c12(TAKE(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_take(zeros, x1)) -> c12(TAKE(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(0, x1)) -> c12(TAKE(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(tt, x1)) -> c12(TAKE(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(nil, x1)) -> c12(TAKE(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(x0, cons_active(z0))) -> c13(AND(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_and(x0, cons_mark(z0))) -> c13(AND(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_and(x0, cons_cons(z0, z1))) -> c13(AND(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_and(x0, cons_U11(z0, z1))) -> c13(AND(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_and(x0, cons_s(z0))) -> c13(AND(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_and(x0, cons_length(z0))) -> c13(AND(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_and(x0, cons_U21(z0))) -> c13(AND(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_and(x0, cons_U31(z0, z1, z2, z3))) -> c13(AND(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_and(x0, cons_take(z0, z1))) -> c13(AND(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_and(x0, cons_and(z0, z1))) -> c13(AND(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_and(x0, cons_isNat(z0))) -> c13(AND(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_and(x0, cons_isNatList(z0))) -> c13(AND(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_and(x0, cons_isNatIList(z0))) -> c13(AND(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_and(cons_active(z0), x1)) -> c13(AND(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_and(cons_mark(z0), x1)) -> c13(AND(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_and(cons_cons(z0, z1), x1)) -> c13(AND(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_U11(z0, z1), x1)) -> c13(AND(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_s(z0), x1)) -> c13(AND(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_and(cons_length(z0), x1)) -> c13(AND(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_and(cons_U21(z0), x1)) -> c13(AND(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_and(cons_U31(z0, z1, z2, z3), x1)) -> c13(AND(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_and(cons_take(z0, z1), x1)) -> c13(AND(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_and(z0, z1), x1)) -> c13(AND(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_isNat(z0), x1)) -> c13(AND(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_and(cons_isNatList(z0), x1)) -> c13(AND(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_and(cons_isNatIList(z0), x1)) -> c13(AND(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_and(x0, zeros)) -> c13(AND(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_and(x0, 0)) -> c13(AND(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_and(x0, tt)) -> c13(AND(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_and(x0, nil)) -> c13(AND(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_and(zeros, x1)) -> c13(AND(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(0, x1)) -> c13(AND(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(tt, x1)) -> c13(AND(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(nil, x1)) -> c13(AND(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_isNat(cons_active(z0))) -> c14(ISNAT(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_isNat(cons_mark(z0))) -> c14(ISNAT(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_isNat(cons_cons(z0, z1))) -> c14(ISNAT(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_isNat(cons_U11(z0, z1))) -> c14(ISNAT(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_isNat(cons_s(z0))) -> c14(ISNAT(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_isNat(cons_length(z0))) -> c14(ISNAT(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_isNat(cons_U21(z0))) -> c14(ISNAT(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_isNat(cons_U31(z0, z1, z2, z3))) -> c14(ISNAT(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_isNat(cons_take(z0, z1))) -> c14(ISNAT(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_isNat(cons_and(z0, z1))) -> c14(ISNAT(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_isNat(cons_isNat(z0))) -> c14(ISNAT(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_isNat(cons_isNatList(z0))) -> c14(ISNAT(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_isNat(cons_isNatIList(z0))) -> c14(ISNAT(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_isNatList(cons_active(z0))) -> c15(ISNATLIST(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_isNatList(cons_mark(z0))) -> c15(ISNATLIST(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_isNatList(cons_cons(z0, z1))) -> c15(ISNATLIST(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_isNatList(cons_U11(z0, z1))) -> c15(ISNATLIST(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_isNatList(cons_s(z0))) -> c15(ISNATLIST(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_isNatList(cons_length(z0))) -> c15(ISNATLIST(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_isNatList(cons_U21(z0))) -> c15(ISNATLIST(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_isNatList(cons_U31(z0, z1, z2, z3))) -> c15(ISNATLIST(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_isNatList(cons_take(z0, z1))) -> c15(ISNATLIST(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_isNatList(cons_and(z0, z1))) -> c15(ISNATLIST(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_isNatList(cons_isNat(z0))) -> c15(ISNATLIST(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_isNatList(cons_isNatList(z0))) -> c15(ISNATLIST(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_isNatList(cons_isNatIList(z0))) -> c15(ISNATLIST(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_isNatIList(cons_active(z0))) -> c16(ISNATILIST(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_isNatIList(cons_mark(z0))) -> c16(ISNATILIST(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_isNatIList(cons_cons(z0, z1))) -> c16(ISNATILIST(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_isNatIList(cons_U11(z0, z1))) -> c16(ISNATILIST(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_isNatIList(cons_s(z0))) -> c16(ISNATILIST(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_isNatIList(cons_length(z0))) -> c16(ISNATILIST(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_isNatIList(cons_U21(z0))) -> c16(ISNATILIST(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_isNatIList(cons_U31(z0, z1, z2, z3))) -> c16(ISNATILIST(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_isNatIList(cons_take(z0, z1))) -> c16(ISNATILIST(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_isNatIList(cons_and(z0, z1))) -> c16(ISNATILIST(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_isNatIList(cons_isNat(z0))) -> c16(ISNATILIST(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_isNatIList(cons_isNatList(z0))) -> c16(ISNATILIST(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_isNatIList(cons_isNatIList(z0))) -> c16(ISNATILIST(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) MARK(cons(zeros, x1)) -> c53(ACTIVE(cons(active(zeros), x1)), CONS(mark(zeros), x1), MARK(zeros)) MARK(cons(cons(z0, z1), x1)) -> c53(ACTIVE(cons(active(cons(mark(z0), z1)), x1)), CONS(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(cons(0, x1)) -> c53(ACTIVE(cons(active(0), x1)), CONS(mark(0), x1), MARK(0)) MARK(cons(U11(z0, z1), x1)) -> c53(ACTIVE(cons(active(U11(mark(z0), z1)), x1)), CONS(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(cons(tt, x1)) -> c53(ACTIVE(cons(active(tt), x1)), CONS(mark(tt), x1), MARK(tt)) MARK(cons(s(z0), x1)) -> c53(ACTIVE(cons(active(s(mark(z0))), x1)), CONS(mark(s(z0)), x1), MARK(s(z0))) MARK(cons(length(z0), x1)) -> c53(ACTIVE(cons(active(length(mark(z0))), x1)), CONS(mark(length(z0)), x1), MARK(length(z0))) MARK(cons(U21(z0), x1)) -> c53(ACTIVE(cons(active(U21(mark(z0))), x1)), CONS(mark(U21(z0)), x1), MARK(U21(z0))) MARK(cons(nil, x1)) -> c53(ACTIVE(cons(active(nil), x1)), CONS(mark(nil), x1), MARK(nil)) MARK(cons(U31(z0, z1, z2, z3), x1)) -> c53(ACTIVE(cons(active(U31(mark(z0), z1, z2, z3)), x1)), CONS(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(cons(take(z0, z1), x1)) -> c53(ACTIVE(cons(active(take(mark(z0), mark(z1))), x1)), CONS(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(cons(and(z0, z1), x1)) -> c53(ACTIVE(cons(active(and(mark(z0), z1)), x1)), CONS(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(cons(isNat(z0), x1)) -> c53(ACTIVE(cons(active(isNat(z0)), x1)), CONS(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(cons(isNatList(z0), x1)) -> c53(ACTIVE(cons(active(isNatList(z0)), x1)), CONS(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(cons(isNatIList(z0), x1)) -> c53(ACTIVE(cons(active(isNatIList(z0)), x1)), CONS(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(cons(x0, x1)) -> c53(CONS(mark(x0), x1)) MARK(cons(z0, z1)) -> c53(CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(z0, z1)), U11'(mark(z0), z1), MARK(z0)) MARK(U11(zeros, x1)) -> c55(ACTIVE(U11(active(zeros), x1)), U11'(mark(zeros), x1), MARK(zeros)) MARK(U11(cons(z0, z1), x1)) -> c55(ACTIVE(U11(active(cons(mark(z0), z1)), x1)), U11'(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(U11(0, x1)) -> c55(ACTIVE(U11(active(0), x1)), U11'(mark(0), x1), MARK(0)) MARK(U11(U11(z0, z1), x1)) -> c55(ACTIVE(U11(active(U11(mark(z0), z1)), x1)), U11'(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(U11(tt, x1)) -> c55(ACTIVE(U11(active(tt), x1)), U11'(mark(tt), x1), MARK(tt)) MARK(U11(s(z0), x1)) -> c55(ACTIVE(U11(active(s(mark(z0))), x1)), U11'(mark(s(z0)), x1), MARK(s(z0))) MARK(U11(length(z0), x1)) -> c55(ACTIVE(U11(active(length(mark(z0))), x1)), U11'(mark(length(z0)), x1), MARK(length(z0))) MARK(U11(U21(z0), x1)) -> c55(ACTIVE(U11(active(U21(mark(z0))), x1)), U11'(mark(U21(z0)), x1), MARK(U21(z0))) MARK(U11(nil, x1)) -> c55(ACTIVE(U11(active(nil), x1)), U11'(mark(nil), x1), MARK(nil)) MARK(U11(U31(z0, z1, z2, z3), x1)) -> c55(ACTIVE(U11(active(U31(mark(z0), z1, z2, z3)), x1)), U11'(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(U11(take(z0, z1), x1)) -> c55(ACTIVE(U11(active(take(mark(z0), mark(z1))), x1)), U11'(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(U11(and(z0, z1), x1)) -> c55(ACTIVE(U11(active(and(mark(z0), z1)), x1)), U11'(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(U11(isNat(z0), x1)) -> c55(ACTIVE(U11(active(isNat(z0)), x1)), U11'(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(U11(isNatList(z0), x1)) -> c55(ACTIVE(U11(active(isNatList(z0)), x1)), U11'(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(U11(isNatIList(z0), x1)) -> c55(ACTIVE(U11(active(isNatIList(z0)), x1)), U11'(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(U11(x0, x1)) -> c55(U11'(mark(x0), x1)) MARK(s(zeros)) -> c57(ACTIVE(s(active(zeros))), S(mark(zeros)), MARK(zeros)) MARK(s(cons(z0, z1))) -> c57(ACTIVE(s(active(cons(mark(z0), z1)))), S(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(s(0)) -> c57(ACTIVE(s(active(0))), S(mark(0)), MARK(0)) MARK(s(U11(z0, z1))) -> c57(ACTIVE(s(active(U11(mark(z0), z1)))), S(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(s(tt)) -> c57(ACTIVE(s(active(tt))), S(mark(tt)), MARK(tt)) MARK(s(s(z0))) -> c57(ACTIVE(s(active(s(mark(z0))))), S(mark(s(z0))), MARK(s(z0))) MARK(s(length(z0))) -> c57(ACTIVE(s(active(length(mark(z0))))), S(mark(length(z0))), MARK(length(z0))) MARK(s(U21(z0))) -> c57(ACTIVE(s(active(U21(mark(z0))))), S(mark(U21(z0))), MARK(U21(z0))) MARK(s(nil)) -> c57(ACTIVE(s(active(nil))), S(mark(nil)), MARK(nil)) MARK(s(U31(z0, z1, z2, z3))) -> c57(ACTIVE(s(active(U31(mark(z0), z1, z2, z3)))), S(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(s(take(z0, z1))) -> c57(ACTIVE(s(active(take(mark(z0), mark(z1))))), S(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(s(and(z0, z1))) -> c57(ACTIVE(s(active(and(mark(z0), z1)))), S(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(s(isNat(z0))) -> c57(ACTIVE(s(active(isNat(z0)))), S(mark(isNat(z0))), MARK(isNat(z0))) MARK(s(isNatList(z0))) -> c57(ACTIVE(s(active(isNatList(z0)))), S(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(s(isNatIList(z0))) -> c57(ACTIVE(s(active(isNatIList(z0)))), S(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(s(z0)) -> c57(S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(z0)), LENGTH(mark(z0)), MARK(z0)) MARK(length(zeros)) -> c58(ACTIVE(length(active(zeros))), LENGTH(mark(zeros)), MARK(zeros)) MARK(length(cons(z0, z1))) -> c58(ACTIVE(length(active(cons(mark(z0), z1)))), LENGTH(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(length(0)) -> c58(ACTIVE(length(active(0))), LENGTH(mark(0)), MARK(0)) MARK(length(U11(z0, z1))) -> c58(ACTIVE(length(active(U11(mark(z0), z1)))), LENGTH(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(length(tt)) -> c58(ACTIVE(length(active(tt))), LENGTH(mark(tt)), MARK(tt)) MARK(length(s(z0))) -> c58(ACTIVE(length(active(s(mark(z0))))), LENGTH(mark(s(z0))), MARK(s(z0))) MARK(length(length(z0))) -> c58(ACTIVE(length(active(length(mark(z0))))), LENGTH(mark(length(z0))), MARK(length(z0))) MARK(length(U21(z0))) -> c58(ACTIVE(length(active(U21(mark(z0))))), LENGTH(mark(U21(z0))), MARK(U21(z0))) MARK(length(nil)) -> c58(ACTIVE(length(active(nil))), LENGTH(mark(nil)), MARK(nil)) MARK(length(U31(z0, z1, z2, z3))) -> c58(ACTIVE(length(active(U31(mark(z0), z1, z2, z3)))), LENGTH(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(length(take(z0, z1))) -> c58(ACTIVE(length(active(take(mark(z0), mark(z1))))), LENGTH(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(length(and(z0, z1))) -> c58(ACTIVE(length(active(and(mark(z0), z1)))), LENGTH(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(length(isNat(z0))) -> c58(ACTIVE(length(active(isNat(z0)))), LENGTH(mark(isNat(z0))), MARK(isNat(z0))) MARK(length(isNatList(z0))) -> c58(ACTIVE(length(active(isNatList(z0)))), LENGTH(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(length(isNatIList(z0))) -> c58(ACTIVE(length(active(isNatIList(z0)))), LENGTH(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(U21(z0)) -> c59(ACTIVE(U21(z0)), U21'(mark(z0)), MARK(z0)) MARK(U21(zeros)) -> c59(ACTIVE(U21(active(zeros))), U21'(mark(zeros)), MARK(zeros)) MARK(U21(cons(z0, z1))) -> c59(ACTIVE(U21(active(cons(mark(z0), z1)))), U21'(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(U21(0)) -> c59(ACTIVE(U21(active(0))), U21'(mark(0)), MARK(0)) MARK(U21(U11(z0, z1))) -> c59(ACTIVE(U21(active(U11(mark(z0), z1)))), U21'(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(U21(tt)) -> c59(ACTIVE(U21(active(tt))), U21'(mark(tt)), MARK(tt)) MARK(U21(s(z0))) -> c59(ACTIVE(U21(active(s(mark(z0))))), U21'(mark(s(z0))), MARK(s(z0))) MARK(U21(length(z0))) -> c59(ACTIVE(U21(active(length(mark(z0))))), U21'(mark(length(z0))), MARK(length(z0))) MARK(U21(U21(z0))) -> c59(ACTIVE(U21(active(U21(mark(z0))))), U21'(mark(U21(z0))), MARK(U21(z0))) MARK(U21(nil)) -> c59(ACTIVE(U21(active(nil))), U21'(mark(nil)), MARK(nil)) MARK(U21(U31(z0, z1, z2, z3))) -> c59(ACTIVE(U21(active(U31(mark(z0), z1, z2, z3)))), U21'(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(U21(take(z0, z1))) -> c59(ACTIVE(U21(active(take(mark(z0), mark(z1))))), U21'(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(U21(and(z0, z1))) -> c59(ACTIVE(U21(active(and(mark(z0), z1)))), U21'(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(U21(isNat(z0))) -> c59(ACTIVE(U21(active(isNat(z0)))), U21'(mark(isNat(z0))), MARK(isNat(z0))) MARK(U21(isNatList(z0))) -> c59(ACTIVE(U21(active(isNatList(z0)))), U21'(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(U21(isNatIList(z0))) -> c59(ACTIVE(U21(active(isNatIList(z0)))), U21'(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(z0, z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U31(zeros, x1, x2, x3)) -> c61(ACTIVE(U31(active(zeros), x1, x2, x3)), U31'(mark(zeros), x1, x2, x3), MARK(zeros)) MARK(U31(cons(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(cons(mark(z0), z1)), x1, x2, x3)), U31'(mark(cons(z0, z1)), x1, x2, x3), MARK(cons(z0, z1))) MARK(U31(0, x1, x2, x3)) -> c61(ACTIVE(U31(active(0), x1, x2, x3)), U31'(mark(0), x1, x2, x3), MARK(0)) MARK(U31(U11(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(U11(mark(z0), z1)), x1, x2, x3)), U31'(mark(U11(z0, z1)), x1, x2, x3), MARK(U11(z0, z1))) MARK(U31(tt, x1, x2, x3)) -> c61(ACTIVE(U31(active(tt), x1, x2, x3)), U31'(mark(tt), x1, x2, x3), MARK(tt)) MARK(U31(s(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(s(mark(z0))), x1, x2, x3)), U31'(mark(s(z0)), x1, x2, x3), MARK(s(z0))) MARK(U31(length(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(length(mark(z0))), x1, x2, x3)), U31'(mark(length(z0)), x1, x2, x3), MARK(length(z0))) MARK(U31(U21(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(U21(mark(z0))), x1, x2, x3)), U31'(mark(U21(z0)), x1, x2, x3), MARK(U21(z0))) MARK(U31(nil, x1, x2, x3)) -> c61(ACTIVE(U31(active(nil), x1, x2, x3)), U31'(mark(nil), x1, x2, x3), MARK(nil)) MARK(U31(U31(z0, z1, z2, z3), x1, x2, x3)) -> c61(ACTIVE(U31(active(U31(mark(z0), z1, z2, z3)), x1, x2, x3)), U31'(mark(U31(z0, z1, z2, z3)), x1, x2, x3), MARK(U31(z0, z1, z2, z3))) MARK(U31(take(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(take(mark(z0), mark(z1))), x1, x2, x3)), U31'(mark(take(z0, z1)), x1, x2, x3), MARK(take(z0, z1))) MARK(U31(and(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(and(mark(z0), z1)), x1, x2, x3)), U31'(mark(and(z0, z1)), x1, x2, x3), MARK(and(z0, z1))) MARK(U31(isNat(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNat(z0)), x1, x2, x3)), U31'(mark(isNat(z0)), x1, x2, x3), MARK(isNat(z0))) MARK(U31(isNatList(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNatList(z0)), x1, x2, x3)), U31'(mark(isNatList(z0)), x1, x2, x3), MARK(isNatList(z0))) MARK(U31(isNatIList(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNatIList(z0)), x1, x2, x3)), U31'(mark(isNatIList(z0)), x1, x2, x3), MARK(isNatIList(z0))) MARK(U31(x0, x1, x2, x3)) -> c61(U31'(mark(x0), x1, x2, x3)) MARK(take(z0, x1)) -> c62(ACTIVE(take(z0, mark(x1))), TAKE(mark(z0), mark(x1)), MARK(z0), MARK(x1)) MARK(take(x0, z1)) -> c62(ACTIVE(take(mark(x0), z1)), TAKE(mark(x0), mark(z1)), MARK(x0), MARK(z1)) MARK(take(x0, zeros)) -> c62(ACTIVE(take(mark(x0), active(zeros))), TAKE(mark(x0), mark(zeros)), MARK(x0), MARK(zeros)) MARK(take(x0, cons(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(cons(mark(z0), z1)))), TAKE(mark(x0), mark(cons(z0, z1))), MARK(x0), MARK(cons(z0, z1))) MARK(take(x0, 0)) -> c62(ACTIVE(take(mark(x0), active(0))), TAKE(mark(x0), mark(0)), MARK(x0), MARK(0)) MARK(take(x0, U11(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(U11(mark(z0), z1)))), TAKE(mark(x0), mark(U11(z0, z1))), MARK(x0), MARK(U11(z0, z1))) MARK(take(x0, tt)) -> c62(ACTIVE(take(mark(x0), active(tt))), TAKE(mark(x0), mark(tt)), MARK(x0), MARK(tt)) MARK(take(x0, s(z0))) -> c62(ACTIVE(take(mark(x0), active(s(mark(z0))))), TAKE(mark(x0), mark(s(z0))), MARK(x0), MARK(s(z0))) MARK(take(x0, length(z0))) -> c62(ACTIVE(take(mark(x0), active(length(mark(z0))))), TAKE(mark(x0), mark(length(z0))), MARK(x0), MARK(length(z0))) MARK(take(x0, U21(z0))) -> c62(ACTIVE(take(mark(x0), active(U21(mark(z0))))), TAKE(mark(x0), mark(U21(z0))), MARK(x0), MARK(U21(z0))) MARK(take(x0, nil)) -> c62(ACTIVE(take(mark(x0), active(nil))), TAKE(mark(x0), mark(nil)), MARK(x0), MARK(nil)) MARK(take(x0, U31(z0, z1, z2, z3))) -> c62(ACTIVE(take(mark(x0), active(U31(mark(z0), z1, z2, z3)))), TAKE(mark(x0), mark(U31(z0, z1, z2, z3))), MARK(x0), MARK(U31(z0, z1, z2, z3))) MARK(take(x0, take(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(take(mark(z0), mark(z1))))), TAKE(mark(x0), mark(take(z0, z1))), MARK(x0), MARK(take(z0, z1))) MARK(take(x0, and(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(and(mark(z0), z1)))), TAKE(mark(x0), mark(and(z0, z1))), MARK(x0), MARK(and(z0, z1))) MARK(take(x0, isNat(z0))) -> c62(ACTIVE(take(mark(x0), active(isNat(z0)))), TAKE(mark(x0), mark(isNat(z0))), MARK(x0), MARK(isNat(z0))) MARK(take(x0, isNatList(z0))) -> c62(ACTIVE(take(mark(x0), active(isNatList(z0)))), TAKE(mark(x0), mark(isNatList(z0))), MARK(x0), MARK(isNatList(z0))) MARK(take(x0, isNatIList(z0))) -> c62(ACTIVE(take(mark(x0), active(isNatIList(z0)))), TAKE(mark(x0), mark(isNatIList(z0))), MARK(x0), MARK(isNatIList(z0))) MARK(take(zeros, x1)) -> c62(ACTIVE(take(active(zeros), mark(x1))), TAKE(mark(zeros), mark(x1)), MARK(zeros), MARK(x1)) MARK(take(cons(z0, z1), x1)) -> c62(ACTIVE(take(active(cons(mark(z0), z1)), mark(x1))), TAKE(mark(cons(z0, z1)), mark(x1)), MARK(cons(z0, z1)), MARK(x1)) MARK(take(0, x1)) -> c62(ACTIVE(take(active(0), mark(x1))), TAKE(mark(0), mark(x1)), MARK(0), MARK(x1)) MARK(take(U11(z0, z1), x1)) -> c62(ACTIVE(take(active(U11(mark(z0), z1)), mark(x1))), TAKE(mark(U11(z0, z1)), mark(x1)), MARK(U11(z0, z1)), MARK(x1)) MARK(take(tt, x1)) -> c62(ACTIVE(take(active(tt), mark(x1))), TAKE(mark(tt), mark(x1)), MARK(tt), MARK(x1)) MARK(take(s(z0), x1)) -> c62(ACTIVE(take(active(s(mark(z0))), mark(x1))), TAKE(mark(s(z0)), mark(x1)), MARK(s(z0)), MARK(x1)) MARK(take(length(z0), x1)) -> c62(ACTIVE(take(active(length(mark(z0))), mark(x1))), TAKE(mark(length(z0)), mark(x1)), MARK(length(z0)), MARK(x1)) MARK(take(U21(z0), x1)) -> c62(ACTIVE(take(active(U21(mark(z0))), mark(x1))), TAKE(mark(U21(z0)), mark(x1)), MARK(U21(z0)), MARK(x1)) MARK(take(nil, x1)) -> c62(ACTIVE(take(active(nil), mark(x1))), TAKE(mark(nil), mark(x1)), MARK(nil), MARK(x1)) MARK(take(U31(z0, z1, z2, z3), x1)) -> c62(ACTIVE(take(active(U31(mark(z0), z1, z2, z3)), mark(x1))), TAKE(mark(U31(z0, z1, z2, z3)), mark(x1)), MARK(U31(z0, z1, z2, z3)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c62(ACTIVE(take(active(take(mark(z0), mark(z1))), mark(x1))), TAKE(mark(take(z0, z1)), mark(x1)), MARK(take(z0, z1)), MARK(x1)) MARK(take(and(z0, z1), x1)) -> c62(ACTIVE(take(active(and(mark(z0), z1)), mark(x1))), TAKE(mark(and(z0, z1)), mark(x1)), MARK(and(z0, z1)), MARK(x1)) MARK(take(isNat(z0), x1)) -> c62(ACTIVE(take(active(isNat(z0)), mark(x1))), TAKE(mark(isNat(z0)), mark(x1)), MARK(isNat(z0)), MARK(x1)) MARK(take(isNatList(z0), x1)) -> c62(ACTIVE(take(active(isNatList(z0)), mark(x1))), TAKE(mark(isNatList(z0)), mark(x1)), MARK(isNatList(z0)), MARK(x1)) MARK(take(isNatIList(z0), x1)) -> c62(ACTIVE(take(active(isNatIList(z0)), mark(x1))), TAKE(mark(isNatIList(z0)), mark(x1)), MARK(isNatIList(z0)), MARK(x1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(z0, z1)), AND(mark(z0), z1), MARK(z0)) MARK(and(zeros, x1)) -> c63(ACTIVE(and(active(zeros), x1)), AND(mark(zeros), x1), MARK(zeros)) MARK(and(cons(z0, z1), x1)) -> c63(ACTIVE(and(active(cons(mark(z0), z1)), x1)), AND(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(and(0, x1)) -> c63(ACTIVE(and(active(0), x1)), AND(mark(0), x1), MARK(0)) MARK(and(U11(z0, z1), x1)) -> c63(ACTIVE(and(active(U11(mark(z0), z1)), x1)), AND(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(and(tt, x1)) -> c63(ACTIVE(and(active(tt), x1)), AND(mark(tt), x1), MARK(tt)) MARK(and(s(z0), x1)) -> c63(ACTIVE(and(active(s(mark(z0))), x1)), AND(mark(s(z0)), x1), MARK(s(z0))) MARK(and(length(z0), x1)) -> c63(ACTIVE(and(active(length(mark(z0))), x1)), AND(mark(length(z0)), x1), MARK(length(z0))) MARK(and(U21(z0), x1)) -> c63(ACTIVE(and(active(U21(mark(z0))), x1)), AND(mark(U21(z0)), x1), MARK(U21(z0))) MARK(and(nil, x1)) -> c63(ACTIVE(and(active(nil), x1)), AND(mark(nil), x1), MARK(nil)) MARK(and(U31(z0, z1, z2, z3), x1)) -> c63(ACTIVE(and(active(U31(mark(z0), z1, z2, z3)), x1)), AND(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(and(take(z0, z1), x1)) -> c63(ACTIVE(and(active(take(mark(z0), mark(z1))), x1)), AND(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(and(and(z0, z1), x1)) -> c63(ACTIVE(and(active(and(mark(z0), z1)), x1)), AND(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(and(isNat(z0), x1)) -> c63(ACTIVE(and(active(isNat(z0)), x1)), AND(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(and(isNatList(z0), x1)) -> c63(ACTIVE(and(active(isNatList(z0)), x1)), AND(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(and(isNatIList(z0), x1)) -> c63(ACTIVE(and(active(isNatIList(z0)), x1)), AND(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(and(x0, x1)) -> c63(AND(mark(x0), x1)) ENCODE_ACTIVE(cons_active(z0)) -> c(ACTIVE(active(encArg(z0)))) ENCODE_ACTIVE(cons_mark(z0)) -> c(ACTIVE(mark(encArg(z0)))) ENCODE_ACTIVE(cons_cons(z0, z1)) -> c(ACTIVE(cons(encArg(z0), encArg(z1)))) ENCODE_ACTIVE(cons_U11(z0, z1)) -> c(ACTIVE(U11(encArg(z0), encArg(z1)))) ENCODE_ACTIVE(cons_s(z0)) -> c(ACTIVE(s(encArg(z0)))) ENCODE_ACTIVE(cons_length(z0)) -> c(ACTIVE(length(encArg(z0)))) ENCODE_ACTIVE(cons_U21(z0)) -> c(ACTIVE(U21(encArg(z0)))) ENCODE_ACTIVE(cons_U31(z0, z1, z2, z3)) -> c(ACTIVE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)))) ENCODE_ACTIVE(cons_take(z0, z1)) -> c(ACTIVE(take(encArg(z0), encArg(z1)))) ENCODE_ACTIVE(cons_and(z0, z1)) -> c(ACTIVE(and(encArg(z0), encArg(z1)))) ENCODE_ACTIVE(cons_isNat(z0)) -> c(ACTIVE(isNat(encArg(z0)))) ENCODE_ACTIVE(cons_isNatList(z0)) -> c(ACTIVE(isNatList(encArg(z0)))) ENCODE_ACTIVE(cons_isNatIList(z0)) -> c(ACTIVE(isNatIList(encArg(z0)))) ENCODE_MARK(cons_active(z0)) -> c(MARK(active(encArg(z0)))) ENCODE_MARK(cons_mark(z0)) -> c(MARK(mark(encArg(z0)))) ENCODE_MARK(cons_cons(z0, z1)) -> c(MARK(cons(encArg(z0), encArg(z1)))) ENCODE_MARK(cons_U11(z0, z1)) -> c(MARK(U11(encArg(z0), encArg(z1)))) ENCODE_MARK(cons_s(z0)) -> c(MARK(s(encArg(z0)))) ENCODE_MARK(cons_length(z0)) -> c(MARK(length(encArg(z0)))) ENCODE_MARK(cons_U21(z0)) -> c(MARK(U21(encArg(z0)))) ENCODE_MARK(cons_U31(z0, z1, z2, z3)) -> c(MARK(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)))) ENCODE_MARK(cons_take(z0, z1)) -> c(MARK(take(encArg(z0), encArg(z1)))) ENCODE_MARK(cons_and(z0, z1)) -> c(MARK(and(encArg(z0), encArg(z1)))) ENCODE_MARK(cons_isNat(z0)) -> c(MARK(isNat(encArg(z0)))) ENCODE_MARK(cons_isNatList(z0)) -> c(MARK(isNatList(encArg(z0)))) ENCODE_MARK(cons_isNatIList(z0)) -> c(MARK(isNatIList(encArg(z0)))) S tuples: ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 MARK(cons(zeros, x1)) -> c53(ACTIVE(cons(active(zeros), x1)), CONS(mark(zeros), x1), MARK(zeros)) MARK(cons(cons(z0, z1), x1)) -> c53(ACTIVE(cons(active(cons(mark(z0), z1)), x1)), CONS(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(cons(0, x1)) -> c53(ACTIVE(cons(active(0), x1)), CONS(mark(0), x1), MARK(0)) MARK(cons(U11(z0, z1), x1)) -> c53(ACTIVE(cons(active(U11(mark(z0), z1)), x1)), CONS(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(cons(tt, x1)) -> c53(ACTIVE(cons(active(tt), x1)), CONS(mark(tt), x1), MARK(tt)) MARK(cons(s(z0), x1)) -> c53(ACTIVE(cons(active(s(mark(z0))), x1)), CONS(mark(s(z0)), x1), MARK(s(z0))) MARK(cons(length(z0), x1)) -> c53(ACTIVE(cons(active(length(mark(z0))), x1)), CONS(mark(length(z0)), x1), MARK(length(z0))) MARK(cons(U21(z0), x1)) -> c53(ACTIVE(cons(active(U21(mark(z0))), x1)), CONS(mark(U21(z0)), x1), MARK(U21(z0))) MARK(cons(nil, x1)) -> c53(ACTIVE(cons(active(nil), x1)), CONS(mark(nil), x1), MARK(nil)) MARK(cons(U31(z0, z1, z2, z3), x1)) -> c53(ACTIVE(cons(active(U31(mark(z0), z1, z2, z3)), x1)), CONS(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(cons(take(z0, z1), x1)) -> c53(ACTIVE(cons(active(take(mark(z0), mark(z1))), x1)), CONS(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(cons(and(z0, z1), x1)) -> c53(ACTIVE(cons(active(and(mark(z0), z1)), x1)), CONS(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(cons(isNat(z0), x1)) -> c53(ACTIVE(cons(active(isNat(z0)), x1)), CONS(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(cons(isNatList(z0), x1)) -> c53(ACTIVE(cons(active(isNatList(z0)), x1)), CONS(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(cons(isNatIList(z0), x1)) -> c53(ACTIVE(cons(active(isNatIList(z0)), x1)), CONS(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(cons(x0, x1)) -> c53(CONS(mark(x0), x1)) MARK(cons(z0, z1)) -> c53(CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(z0, z1)), U11'(mark(z0), z1), MARK(z0)) MARK(U11(zeros, x1)) -> c55(ACTIVE(U11(active(zeros), x1)), U11'(mark(zeros), x1), MARK(zeros)) MARK(U11(cons(z0, z1), x1)) -> c55(ACTIVE(U11(active(cons(mark(z0), z1)), x1)), U11'(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(U11(0, x1)) -> c55(ACTIVE(U11(active(0), x1)), U11'(mark(0), x1), MARK(0)) MARK(U11(U11(z0, z1), x1)) -> c55(ACTIVE(U11(active(U11(mark(z0), z1)), x1)), U11'(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(U11(tt, x1)) -> c55(ACTIVE(U11(active(tt), x1)), U11'(mark(tt), x1), MARK(tt)) MARK(U11(s(z0), x1)) -> c55(ACTIVE(U11(active(s(mark(z0))), x1)), U11'(mark(s(z0)), x1), MARK(s(z0))) MARK(U11(length(z0), x1)) -> c55(ACTIVE(U11(active(length(mark(z0))), x1)), U11'(mark(length(z0)), x1), MARK(length(z0))) MARK(U11(U21(z0), x1)) -> c55(ACTIVE(U11(active(U21(mark(z0))), x1)), U11'(mark(U21(z0)), x1), MARK(U21(z0))) MARK(U11(nil, x1)) -> c55(ACTIVE(U11(active(nil), x1)), U11'(mark(nil), x1), MARK(nil)) MARK(U11(U31(z0, z1, z2, z3), x1)) -> c55(ACTIVE(U11(active(U31(mark(z0), z1, z2, z3)), x1)), U11'(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(U11(take(z0, z1), x1)) -> c55(ACTIVE(U11(active(take(mark(z0), mark(z1))), x1)), U11'(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(U11(and(z0, z1), x1)) -> c55(ACTIVE(U11(active(and(mark(z0), z1)), x1)), U11'(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(U11(isNat(z0), x1)) -> c55(ACTIVE(U11(active(isNat(z0)), x1)), U11'(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(U11(isNatList(z0), x1)) -> c55(ACTIVE(U11(active(isNatList(z0)), x1)), U11'(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(U11(isNatIList(z0), x1)) -> c55(ACTIVE(U11(active(isNatIList(z0)), x1)), U11'(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(U11(x0, x1)) -> c55(U11'(mark(x0), x1)) MARK(s(zeros)) -> c57(ACTIVE(s(active(zeros))), S(mark(zeros)), MARK(zeros)) MARK(s(cons(z0, z1))) -> c57(ACTIVE(s(active(cons(mark(z0), z1)))), S(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(s(0)) -> c57(ACTIVE(s(active(0))), S(mark(0)), MARK(0)) MARK(s(U11(z0, z1))) -> c57(ACTIVE(s(active(U11(mark(z0), z1)))), S(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(s(tt)) -> c57(ACTIVE(s(active(tt))), S(mark(tt)), MARK(tt)) MARK(s(s(z0))) -> c57(ACTIVE(s(active(s(mark(z0))))), S(mark(s(z0))), MARK(s(z0))) MARK(s(length(z0))) -> c57(ACTIVE(s(active(length(mark(z0))))), S(mark(length(z0))), MARK(length(z0))) MARK(s(U21(z0))) -> c57(ACTIVE(s(active(U21(mark(z0))))), S(mark(U21(z0))), MARK(U21(z0))) MARK(s(nil)) -> c57(ACTIVE(s(active(nil))), S(mark(nil)), MARK(nil)) MARK(s(U31(z0, z1, z2, z3))) -> c57(ACTIVE(s(active(U31(mark(z0), z1, z2, z3)))), S(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(s(take(z0, z1))) -> c57(ACTIVE(s(active(take(mark(z0), mark(z1))))), S(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(s(and(z0, z1))) -> c57(ACTIVE(s(active(and(mark(z0), z1)))), S(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(s(isNat(z0))) -> c57(ACTIVE(s(active(isNat(z0)))), S(mark(isNat(z0))), MARK(isNat(z0))) MARK(s(isNatList(z0))) -> c57(ACTIVE(s(active(isNatList(z0)))), S(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(s(isNatIList(z0))) -> c57(ACTIVE(s(active(isNatIList(z0)))), S(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(s(z0)) -> c57(S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(z0)), LENGTH(mark(z0)), MARK(z0)) MARK(length(zeros)) -> c58(ACTIVE(length(active(zeros))), LENGTH(mark(zeros)), MARK(zeros)) MARK(length(cons(z0, z1))) -> c58(ACTIVE(length(active(cons(mark(z0), z1)))), LENGTH(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(length(0)) -> c58(ACTIVE(length(active(0))), LENGTH(mark(0)), MARK(0)) MARK(length(U11(z0, z1))) -> c58(ACTIVE(length(active(U11(mark(z0), z1)))), LENGTH(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(length(tt)) -> c58(ACTIVE(length(active(tt))), LENGTH(mark(tt)), MARK(tt)) MARK(length(s(z0))) -> c58(ACTIVE(length(active(s(mark(z0))))), LENGTH(mark(s(z0))), MARK(s(z0))) MARK(length(length(z0))) -> c58(ACTIVE(length(active(length(mark(z0))))), LENGTH(mark(length(z0))), MARK(length(z0))) MARK(length(U21(z0))) -> c58(ACTIVE(length(active(U21(mark(z0))))), LENGTH(mark(U21(z0))), MARK(U21(z0))) MARK(length(nil)) -> c58(ACTIVE(length(active(nil))), LENGTH(mark(nil)), MARK(nil)) MARK(length(U31(z0, z1, z2, z3))) -> c58(ACTIVE(length(active(U31(mark(z0), z1, z2, z3)))), LENGTH(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(length(take(z0, z1))) -> c58(ACTIVE(length(active(take(mark(z0), mark(z1))))), LENGTH(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(length(and(z0, z1))) -> c58(ACTIVE(length(active(and(mark(z0), z1)))), LENGTH(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(length(isNat(z0))) -> c58(ACTIVE(length(active(isNat(z0)))), LENGTH(mark(isNat(z0))), MARK(isNat(z0))) MARK(length(isNatList(z0))) -> c58(ACTIVE(length(active(isNatList(z0)))), LENGTH(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(length(isNatIList(z0))) -> c58(ACTIVE(length(active(isNatIList(z0)))), LENGTH(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(U21(z0)) -> c59(ACTIVE(U21(z0)), U21'(mark(z0)), MARK(z0)) MARK(U21(zeros)) -> c59(ACTIVE(U21(active(zeros))), U21'(mark(zeros)), MARK(zeros)) MARK(U21(cons(z0, z1))) -> c59(ACTIVE(U21(active(cons(mark(z0), z1)))), U21'(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(U21(0)) -> c59(ACTIVE(U21(active(0))), U21'(mark(0)), MARK(0)) MARK(U21(U11(z0, z1))) -> c59(ACTIVE(U21(active(U11(mark(z0), z1)))), U21'(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(U21(tt)) -> c59(ACTIVE(U21(active(tt))), U21'(mark(tt)), MARK(tt)) MARK(U21(s(z0))) -> c59(ACTIVE(U21(active(s(mark(z0))))), U21'(mark(s(z0))), MARK(s(z0))) MARK(U21(length(z0))) -> c59(ACTIVE(U21(active(length(mark(z0))))), U21'(mark(length(z0))), MARK(length(z0))) MARK(U21(U21(z0))) -> c59(ACTIVE(U21(active(U21(mark(z0))))), U21'(mark(U21(z0))), MARK(U21(z0))) MARK(U21(nil)) -> c59(ACTIVE(U21(active(nil))), U21'(mark(nil)), MARK(nil)) MARK(U21(U31(z0, z1, z2, z3))) -> c59(ACTIVE(U21(active(U31(mark(z0), z1, z2, z3)))), U21'(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(U21(take(z0, z1))) -> c59(ACTIVE(U21(active(take(mark(z0), mark(z1))))), U21'(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(U21(and(z0, z1))) -> c59(ACTIVE(U21(active(and(mark(z0), z1)))), U21'(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(U21(isNat(z0))) -> c59(ACTIVE(U21(active(isNat(z0)))), U21'(mark(isNat(z0))), MARK(isNat(z0))) MARK(U21(isNatList(z0))) -> c59(ACTIVE(U21(active(isNatList(z0)))), U21'(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(U21(isNatIList(z0))) -> c59(ACTIVE(U21(active(isNatIList(z0)))), U21'(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(z0, z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U31(zeros, x1, x2, x3)) -> c61(ACTIVE(U31(active(zeros), x1, x2, x3)), U31'(mark(zeros), x1, x2, x3), MARK(zeros)) MARK(U31(cons(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(cons(mark(z0), z1)), x1, x2, x3)), U31'(mark(cons(z0, z1)), x1, x2, x3), MARK(cons(z0, z1))) MARK(U31(0, x1, x2, x3)) -> c61(ACTIVE(U31(active(0), x1, x2, x3)), U31'(mark(0), x1, x2, x3), MARK(0)) MARK(U31(U11(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(U11(mark(z0), z1)), x1, x2, x3)), U31'(mark(U11(z0, z1)), x1, x2, x3), MARK(U11(z0, z1))) MARK(U31(tt, x1, x2, x3)) -> c61(ACTIVE(U31(active(tt), x1, x2, x3)), U31'(mark(tt), x1, x2, x3), MARK(tt)) MARK(U31(s(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(s(mark(z0))), x1, x2, x3)), U31'(mark(s(z0)), x1, x2, x3), MARK(s(z0))) MARK(U31(length(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(length(mark(z0))), x1, x2, x3)), U31'(mark(length(z0)), x1, x2, x3), MARK(length(z0))) MARK(U31(U21(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(U21(mark(z0))), x1, x2, x3)), U31'(mark(U21(z0)), x1, x2, x3), MARK(U21(z0))) MARK(U31(nil, x1, x2, x3)) -> c61(ACTIVE(U31(active(nil), x1, x2, x3)), U31'(mark(nil), x1, x2, x3), MARK(nil)) MARK(U31(U31(z0, z1, z2, z3), x1, x2, x3)) -> c61(ACTIVE(U31(active(U31(mark(z0), z1, z2, z3)), x1, x2, x3)), U31'(mark(U31(z0, z1, z2, z3)), x1, x2, x3), MARK(U31(z0, z1, z2, z3))) MARK(U31(take(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(take(mark(z0), mark(z1))), x1, x2, x3)), U31'(mark(take(z0, z1)), x1, x2, x3), MARK(take(z0, z1))) MARK(U31(and(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(and(mark(z0), z1)), x1, x2, x3)), U31'(mark(and(z0, z1)), x1, x2, x3), MARK(and(z0, z1))) MARK(U31(isNat(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNat(z0)), x1, x2, x3)), U31'(mark(isNat(z0)), x1, x2, x3), MARK(isNat(z0))) MARK(U31(isNatList(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNatList(z0)), x1, x2, x3)), U31'(mark(isNatList(z0)), x1, x2, x3), MARK(isNatList(z0))) MARK(U31(isNatIList(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNatIList(z0)), x1, x2, x3)), U31'(mark(isNatIList(z0)), x1, x2, x3), MARK(isNatIList(z0))) MARK(U31(x0, x1, x2, x3)) -> c61(U31'(mark(x0), x1, x2, x3)) MARK(take(z0, x1)) -> c62(ACTIVE(take(z0, mark(x1))), TAKE(mark(z0), mark(x1)), MARK(z0), MARK(x1)) MARK(take(x0, z1)) -> c62(ACTIVE(take(mark(x0), z1)), TAKE(mark(x0), mark(z1)), MARK(x0), MARK(z1)) MARK(take(x0, zeros)) -> c62(ACTIVE(take(mark(x0), active(zeros))), TAKE(mark(x0), mark(zeros)), MARK(x0), MARK(zeros)) MARK(take(x0, cons(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(cons(mark(z0), z1)))), TAKE(mark(x0), mark(cons(z0, z1))), MARK(x0), MARK(cons(z0, z1))) MARK(take(x0, 0)) -> c62(ACTIVE(take(mark(x0), active(0))), TAKE(mark(x0), mark(0)), MARK(x0), MARK(0)) MARK(take(x0, U11(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(U11(mark(z0), z1)))), TAKE(mark(x0), mark(U11(z0, z1))), MARK(x0), MARK(U11(z0, z1))) MARK(take(x0, tt)) -> c62(ACTIVE(take(mark(x0), active(tt))), TAKE(mark(x0), mark(tt)), MARK(x0), MARK(tt)) MARK(take(x0, s(z0))) -> c62(ACTIVE(take(mark(x0), active(s(mark(z0))))), TAKE(mark(x0), mark(s(z0))), MARK(x0), MARK(s(z0))) MARK(take(x0, length(z0))) -> c62(ACTIVE(take(mark(x0), active(length(mark(z0))))), TAKE(mark(x0), mark(length(z0))), MARK(x0), MARK(length(z0))) MARK(take(x0, U21(z0))) -> c62(ACTIVE(take(mark(x0), active(U21(mark(z0))))), TAKE(mark(x0), mark(U21(z0))), MARK(x0), MARK(U21(z0))) MARK(take(x0, nil)) -> c62(ACTIVE(take(mark(x0), active(nil))), TAKE(mark(x0), mark(nil)), MARK(x0), MARK(nil)) MARK(take(x0, U31(z0, z1, z2, z3))) -> c62(ACTIVE(take(mark(x0), active(U31(mark(z0), z1, z2, z3)))), TAKE(mark(x0), mark(U31(z0, z1, z2, z3))), MARK(x0), MARK(U31(z0, z1, z2, z3))) MARK(take(x0, take(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(take(mark(z0), mark(z1))))), TAKE(mark(x0), mark(take(z0, z1))), MARK(x0), MARK(take(z0, z1))) MARK(take(x0, and(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(and(mark(z0), z1)))), TAKE(mark(x0), mark(and(z0, z1))), MARK(x0), MARK(and(z0, z1))) MARK(take(x0, isNat(z0))) -> c62(ACTIVE(take(mark(x0), active(isNat(z0)))), TAKE(mark(x0), mark(isNat(z0))), MARK(x0), MARK(isNat(z0))) MARK(take(x0, isNatList(z0))) -> c62(ACTIVE(take(mark(x0), active(isNatList(z0)))), TAKE(mark(x0), mark(isNatList(z0))), MARK(x0), MARK(isNatList(z0))) MARK(take(x0, isNatIList(z0))) -> c62(ACTIVE(take(mark(x0), active(isNatIList(z0)))), TAKE(mark(x0), mark(isNatIList(z0))), MARK(x0), MARK(isNatIList(z0))) MARK(take(zeros, x1)) -> c62(ACTIVE(take(active(zeros), mark(x1))), TAKE(mark(zeros), mark(x1)), MARK(zeros), MARK(x1)) MARK(take(cons(z0, z1), x1)) -> c62(ACTIVE(take(active(cons(mark(z0), z1)), mark(x1))), TAKE(mark(cons(z0, z1)), mark(x1)), MARK(cons(z0, z1)), MARK(x1)) MARK(take(0, x1)) -> c62(ACTIVE(take(active(0), mark(x1))), TAKE(mark(0), mark(x1)), MARK(0), MARK(x1)) MARK(take(U11(z0, z1), x1)) -> c62(ACTIVE(take(active(U11(mark(z0), z1)), mark(x1))), TAKE(mark(U11(z0, z1)), mark(x1)), MARK(U11(z0, z1)), MARK(x1)) MARK(take(tt, x1)) -> c62(ACTIVE(take(active(tt), mark(x1))), TAKE(mark(tt), mark(x1)), MARK(tt), MARK(x1)) MARK(take(s(z0), x1)) -> c62(ACTIVE(take(active(s(mark(z0))), mark(x1))), TAKE(mark(s(z0)), mark(x1)), MARK(s(z0)), MARK(x1)) MARK(take(length(z0), x1)) -> c62(ACTIVE(take(active(length(mark(z0))), mark(x1))), TAKE(mark(length(z0)), mark(x1)), MARK(length(z0)), MARK(x1)) MARK(take(U21(z0), x1)) -> c62(ACTIVE(take(active(U21(mark(z0))), mark(x1))), TAKE(mark(U21(z0)), mark(x1)), MARK(U21(z0)), MARK(x1)) MARK(take(nil, x1)) -> c62(ACTIVE(take(active(nil), mark(x1))), TAKE(mark(nil), mark(x1)), MARK(nil), MARK(x1)) MARK(take(U31(z0, z1, z2, z3), x1)) -> c62(ACTIVE(take(active(U31(mark(z0), z1, z2, z3)), mark(x1))), TAKE(mark(U31(z0, z1, z2, z3)), mark(x1)), MARK(U31(z0, z1, z2, z3)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c62(ACTIVE(take(active(take(mark(z0), mark(z1))), mark(x1))), TAKE(mark(take(z0, z1)), mark(x1)), MARK(take(z0, z1)), MARK(x1)) MARK(take(and(z0, z1), x1)) -> c62(ACTIVE(take(active(and(mark(z0), z1)), mark(x1))), TAKE(mark(and(z0, z1)), mark(x1)), MARK(and(z0, z1)), MARK(x1)) MARK(take(isNat(z0), x1)) -> c62(ACTIVE(take(active(isNat(z0)), mark(x1))), TAKE(mark(isNat(z0)), mark(x1)), MARK(isNat(z0)), MARK(x1)) MARK(take(isNatList(z0), x1)) -> c62(ACTIVE(take(active(isNatList(z0)), mark(x1))), TAKE(mark(isNatList(z0)), mark(x1)), MARK(isNatList(z0)), MARK(x1)) MARK(take(isNatIList(z0), x1)) -> c62(ACTIVE(take(active(isNatIList(z0)), mark(x1))), TAKE(mark(isNatIList(z0)), mark(x1)), MARK(isNatIList(z0)), MARK(x1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(z0, z1)), AND(mark(z0), z1), MARK(z0)) MARK(and(zeros, x1)) -> c63(ACTIVE(and(active(zeros), x1)), AND(mark(zeros), x1), MARK(zeros)) MARK(and(cons(z0, z1), x1)) -> c63(ACTIVE(and(active(cons(mark(z0), z1)), x1)), AND(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(and(0, x1)) -> c63(ACTIVE(and(active(0), x1)), AND(mark(0), x1), MARK(0)) MARK(and(U11(z0, z1), x1)) -> c63(ACTIVE(and(active(U11(mark(z0), z1)), x1)), AND(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(and(tt, x1)) -> c63(ACTIVE(and(active(tt), x1)), AND(mark(tt), x1), MARK(tt)) MARK(and(s(z0), x1)) -> c63(ACTIVE(and(active(s(mark(z0))), x1)), AND(mark(s(z0)), x1), MARK(s(z0))) MARK(and(length(z0), x1)) -> c63(ACTIVE(and(active(length(mark(z0))), x1)), AND(mark(length(z0)), x1), MARK(length(z0))) MARK(and(U21(z0), x1)) -> c63(ACTIVE(and(active(U21(mark(z0))), x1)), AND(mark(U21(z0)), x1), MARK(U21(z0))) MARK(and(nil, x1)) -> c63(ACTIVE(and(active(nil), x1)), AND(mark(nil), x1), MARK(nil)) MARK(and(U31(z0, z1, z2, z3), x1)) -> c63(ACTIVE(and(active(U31(mark(z0), z1, z2, z3)), x1)), AND(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(and(take(z0, z1), x1)) -> c63(ACTIVE(and(active(take(mark(z0), mark(z1))), x1)), AND(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(and(and(z0, z1), x1)) -> c63(ACTIVE(and(active(and(mark(z0), z1)), x1)), AND(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(and(isNat(z0), x1)) -> c63(ACTIVE(and(active(isNat(z0)), x1)), AND(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(and(isNatList(z0), x1)) -> c63(ACTIVE(and(active(isNatList(z0)), x1)), AND(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(and(isNatIList(z0), x1)) -> c63(ACTIVE(and(active(isNatIList(z0)), x1)), AND(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(and(x0, x1)) -> c63(AND(mark(x0), x1)) K tuples:none Defined Rule Symbols: encArg_1, active_1, mark_1, cons_2, U11_2, s_1, length_1, U21_1, U31_4, take_2, and_2, isNat_1, isNatList_1, isNatIList_1 Defined Pair Symbols: ACTIVE_1, MARK_1, CONS_2, U11'_2, S_1, LENGTH_1, U21'_1, U31'_4, TAKE_2, AND_2, ISNAT_1, ISNATLIST_1, ISNATILIST_1, ENCODE_CONS_2, ENCODE_U11_2, ENCODE_S_1, ENCODE_LENGTH_1, ENCODE_U21_1, ENCODE_U31_4, ENCODE_TAKE_2, ENCODE_AND_2, ENCODE_ISNAT_1, ENCODE_ISNATLIST_1, ENCODE_ISNATILIST_1, ENCARG_1, ENCODE_ACTIVE_1, ENCODE_MARK_1 Compound Symbols: c36_1, c37_3, c38_1, c39_1, c40_2, c41_2, c42_2, c43_1, c45_1, c48_1, c52_1, c64_2, c65_2, c66_2, c67_1, c68_1, c69_1, c70_1, c71_1, c72_1, c73_1, c74_1, c75_1, c76_1, c77_1, c78_1, c79_1, c80_1, c81_1, c82_1, c83_1, c84_1, c85_1, c86_1, c87_1, c88_1, c89_1, c90_1, c91_1, c92_1, c93_1, c94_1, c95_1, c96_1, c97_1, c98_1, c99_1, c100_1, c101_1, c102_1, c34_1, c35_2, c44_3, c46_3, c47_3, c49_3, c50_2, c51_4, c54, c56, c60, c_1, c4_2, c4_1, c5_2, c5_1, c6_3, c6_2, c7_3, c7_2, c8_2, c9_2, c10_2, c11_5, c11_4, c12_3, c12_2, c13_3, c13_2, c14_2, c15_2, c16_2, c53_3, c53_1, c53_2, c55_3, c55_1, c57_3, c57_2, c58_3, c59_3, c61_3, c61_1, c62_4, c63_3, c63_1 ---------------------------------------- (121) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace ENCODE_CONS(z0, z1) -> c(CONS(encArg(z0), encArg(z1))) by ENCODE_CONS(x0, zeros) -> c(CONS(encArg(x0), zeros)) ENCODE_CONS(x0, 0) -> c(CONS(encArg(x0), 0)) ENCODE_CONS(x0, tt) -> c(CONS(encArg(x0), tt)) ENCODE_CONS(x0, nil) -> c(CONS(encArg(x0), nil)) ENCODE_CONS(x0, cons_active(z0)) -> c(CONS(encArg(x0), active(encArg(z0)))) ENCODE_CONS(x0, cons_mark(z0)) -> c(CONS(encArg(x0), mark(encArg(z0)))) ENCODE_CONS(x0, cons_cons(z0, z1)) -> c(CONS(encArg(x0), cons(encArg(z0), encArg(z1)))) ENCODE_CONS(x0, cons_U11(z0, z1)) -> c(CONS(encArg(x0), U11(encArg(z0), encArg(z1)))) ENCODE_CONS(x0, cons_s(z0)) -> c(CONS(encArg(x0), s(encArg(z0)))) ENCODE_CONS(x0, cons_length(z0)) -> c(CONS(encArg(x0), length(encArg(z0)))) ENCODE_CONS(x0, cons_U21(z0)) -> c(CONS(encArg(x0), U21(encArg(z0)))) ENCODE_CONS(x0, cons_U31(z0, z1, z2, z3)) -> c(CONS(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)))) ENCODE_CONS(x0, cons_take(z0, z1)) -> c(CONS(encArg(x0), take(encArg(z0), encArg(z1)))) ENCODE_CONS(x0, cons_and(z0, z1)) -> c(CONS(encArg(x0), and(encArg(z0), encArg(z1)))) ENCODE_CONS(x0, cons_isNat(z0)) -> c(CONS(encArg(x0), isNat(encArg(z0)))) ENCODE_CONS(x0, cons_isNatList(z0)) -> c(CONS(encArg(x0), isNatList(encArg(z0)))) ENCODE_CONS(x0, cons_isNatIList(z0)) -> c(CONS(encArg(x0), isNatIList(encArg(z0)))) ENCODE_CONS(zeros, x1) -> c(CONS(zeros, encArg(x1))) ENCODE_CONS(0, x1) -> c(CONS(0, encArg(x1))) ENCODE_CONS(tt, x1) -> c(CONS(tt, encArg(x1))) ENCODE_CONS(nil, x1) -> c(CONS(nil, encArg(x1))) ENCODE_CONS(cons_active(z0), x1) -> c(CONS(active(encArg(z0)), encArg(x1))) ENCODE_CONS(cons_mark(z0), x1) -> c(CONS(mark(encArg(z0)), encArg(x1))) ENCODE_CONS(cons_cons(z0, z1), x1) -> c(CONS(cons(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_CONS(cons_U11(z0, z1), x1) -> c(CONS(U11(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_CONS(cons_s(z0), x1) -> c(CONS(s(encArg(z0)), encArg(x1))) ENCODE_CONS(cons_length(z0), x1) -> c(CONS(length(encArg(z0)), encArg(x1))) ENCODE_CONS(cons_U21(z0), x1) -> c(CONS(U21(encArg(z0)), encArg(x1))) ENCODE_CONS(cons_U31(z0, z1, z2, z3), x1) -> c(CONS(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1))) ENCODE_CONS(cons_take(z0, z1), x1) -> c(CONS(take(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_CONS(cons_and(z0, z1), x1) -> c(CONS(and(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_CONS(cons_isNat(z0), x1) -> c(CONS(isNat(encArg(z0)), encArg(x1))) ENCODE_CONS(cons_isNatList(z0), x1) -> c(CONS(isNatList(encArg(z0)), encArg(x1))) ENCODE_CONS(cons_isNatIList(z0), x1) -> c(CONS(isNatIList(encArg(z0)), encArg(x1))) ---------------------------------------- (122) Obligation: Complexity Dependency Tuples Problem Rules: encArg(zeros) -> zeros encArg(0) -> 0 encArg(tt) -> tt encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_U11(z0, z1)) -> U11(encArg(z0), encArg(z1)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_length(z0)) -> length(encArg(z0)) encArg(cons_U21(z0)) -> U21(encArg(z0)) encArg(cons_U31(z0, z1, z2, z3)) -> U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_isNat(z0)) -> isNat(encArg(z0)) encArg(cons_isNatList(z0)) -> isNatList(encArg(z0)) encArg(cons_isNatIList(z0)) -> isNatIList(encArg(z0)) active(zeros) -> mark(cons(0, zeros)) active(U11(tt, z0)) -> mark(s(length(z0))) active(U21(tt)) -> mark(nil) active(U31(tt, z0, z1, z2)) -> mark(cons(z2, take(z1, z0))) active(and(tt, z0)) -> mark(z0) active(isNat(0)) -> mark(tt) active(isNat(length(z0))) -> mark(isNatList(z0)) active(isNat(s(z0))) -> mark(isNat(z0)) active(isNatIList(z0)) -> mark(isNatList(z0)) active(isNatIList(zeros)) -> mark(tt) active(isNatIList(cons(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(isNatList(nil)) -> mark(tt) active(isNatList(cons(z0, z1))) -> mark(and(isNat(z0), isNatList(z1))) active(isNatList(take(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(length(nil)) -> mark(0) active(length(cons(z0, z1))) -> mark(U11(and(isNatList(z1), isNat(z0)), z1)) active(take(0, z0)) -> mark(U21(isNatIList(z0))) active(take(s(z0), cons(z1, z2))) -> mark(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)) mark(zeros) -> active(zeros) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(0) -> active(0) mark(U11(z0, z1)) -> active(U11(mark(z0), z1)) mark(tt) -> active(tt) mark(s(z0)) -> active(s(mark(z0))) mark(length(z0)) -> active(length(mark(z0))) mark(U21(z0)) -> active(U21(mark(z0))) mark(nil) -> active(nil) mark(U31(z0, z1, z2, z3)) -> active(U31(mark(z0), z1, z2, z3)) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(isNat(z0)) -> active(isNat(z0)) mark(isNatList(z0)) -> active(isNatList(z0)) mark(isNatIList(z0)) -> active(isNatIList(z0)) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) U11(mark(z0), z1) -> U11(z0, z1) U11(z0, mark(z1)) -> U11(z0, z1) U11(active(z0), z1) -> U11(z0, z1) U11(z0, active(z1)) -> U11(z0, z1) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) length(mark(z0)) -> length(z0) length(active(z0)) -> length(z0) U21(mark(z0)) -> U21(z0) U21(active(z0)) -> U21(z0) U31(mark(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, mark(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, mark(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, mark(z3)) -> U31(z0, z1, z2, z3) U31(active(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, active(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, active(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, active(z3)) -> U31(z0, z1, z2, z3) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) isNat(mark(z0)) -> isNat(z0) isNat(active(z0)) -> isNat(z0) isNatList(mark(z0)) -> isNatList(z0) isNatList(active(z0)) -> isNatList(z0) isNatIList(mark(z0)) -> isNatIList(z0) isNatIList(active(z0)) -> isNatIList(z0) Tuples: ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 ENCODE_U11(z0, z1) -> c(U11'(encArg(z0), encArg(z1))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_LENGTH(z0) -> c(LENGTH(encArg(z0))) ENCODE_U21(z0) -> c(U21'(encArg(z0))) ENCODE_U31(z0, z1, z2, z3) -> c(U31'(encArg(z0), encArg(z1), encArg(z2), encArg(z3))) ENCODE_TAKE(z0, z1) -> c(TAKE(encArg(z0), encArg(z1))) ENCODE_AND(z0, z1) -> c(AND(encArg(z0), encArg(z1))) ENCODE_ISNAT(z0) -> c(ISNAT(encArg(z0))) ENCODE_ISNATLIST(z0) -> c(ISNATLIST(encArg(z0))) ENCODE_ISNATILIST(z0) -> c(ISNATILIST(encArg(z0))) ENCARG(cons_active(cons_active(z0))) -> c4(ACTIVE(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_active(cons_mark(z0))) -> c4(ACTIVE(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_active(cons_cons(z0, z1))) -> c4(ACTIVE(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_active(cons_U11(z0, z1))) -> c4(ACTIVE(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_active(cons_s(z0))) -> c4(ACTIVE(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_active(cons_length(z0))) -> c4(ACTIVE(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_active(cons_U21(z0))) -> c4(ACTIVE(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_active(cons_U31(z0, z1, z2, z3))) -> c4(ACTIVE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_active(cons_take(z0, z1))) -> c4(ACTIVE(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_active(cons_and(z0, z1))) -> c4(ACTIVE(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_active(cons_isNat(z0))) -> c4(ACTIVE(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_active(cons_isNatList(z0))) -> c4(ACTIVE(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_active(cons_isNatIList(z0))) -> c4(ACTIVE(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_active(zeros)) -> c4(ACTIVE(zeros)) ENCARG(cons_mark(cons_active(z0))) -> c5(MARK(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_mark(cons_mark(z0))) -> c5(MARK(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_mark(cons_cons(z0, z1))) -> c5(MARK(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_mark(cons_U11(z0, z1))) -> c5(MARK(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_mark(cons_s(z0))) -> c5(MARK(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_mark(cons_length(z0))) -> c5(MARK(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_mark(cons_U21(z0))) -> c5(MARK(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_mark(cons_U31(z0, z1, z2, z3))) -> c5(MARK(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_mark(cons_take(z0, z1))) -> c5(MARK(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(cons_and(z0, z1))) -> c5(MARK(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_mark(cons_isNat(z0))) -> c5(MARK(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_mark(cons_isNatList(z0))) -> c5(MARK(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_mark(cons_isNatIList(z0))) -> c5(MARK(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_mark(zeros)) -> c5(MARK(zeros)) ENCARG(cons_mark(0)) -> c5(MARK(0)) ENCARG(cons_mark(tt)) -> c5(MARK(tt)) ENCARG(cons_mark(nil)) -> c5(MARK(nil)) ENCARG(cons_cons(x0, cons_active(z0))) -> c6(CONS(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_cons(x0, cons_mark(z0))) -> c6(CONS(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_cons(x0, cons_cons(z0, z1))) -> c6(CONS(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_cons(x0, cons_U11(z0, z1))) -> c6(CONS(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_cons(x0, cons_s(z0))) -> c6(CONS(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_cons(x0, cons_length(z0))) -> c6(CONS(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_cons(x0, cons_U21(z0))) -> c6(CONS(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_cons(x0, cons_U31(z0, z1, z2, z3))) -> c6(CONS(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_cons(x0, cons_take(z0, z1))) -> c6(CONS(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_cons(x0, cons_and(z0, z1))) -> c6(CONS(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_cons(x0, cons_isNat(z0))) -> c6(CONS(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_cons(x0, cons_isNatList(z0))) -> c6(CONS(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_cons(x0, cons_isNatIList(z0))) -> c6(CONS(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_cons(cons_active(z0), x1)) -> c6(CONS(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_mark(z0), x1)) -> c6(CONS(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_cons(z0, z1), x1)) -> c6(CONS(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_U11(z0, z1), x1)) -> c6(CONS(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_s(z0), x1)) -> c6(CONS(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_length(z0), x1)) -> c6(CONS(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U21(z0), x1)) -> c6(CONS(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U31(z0, z1, z2, z3), x1)) -> c6(CONS(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_cons(cons_take(z0, z1), x1)) -> c6(CONS(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_and(z0, z1), x1)) -> c6(CONS(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_isNat(z0), x1)) -> c6(CONS(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_isNatList(z0), x1)) -> c6(CONS(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_isNatIList(z0), x1)) -> c6(CONS(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_cons(x0, zeros)) -> c6(CONS(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_cons(x0, 0)) -> c6(CONS(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_cons(x0, tt)) -> c6(CONS(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_cons(x0, nil)) -> c6(CONS(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_cons(zeros, x1)) -> c6(CONS(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(0, x1)) -> c6(CONS(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(tt, x1)) -> c6(CONS(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(nil, x1)) -> c6(CONS(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(x0, cons_active(z0))) -> c7(U11'(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_U11(x0, cons_mark(z0))) -> c7(U11'(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_U11(x0, cons_cons(z0, z1))) -> c7(U11'(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U11(x0, cons_U11(z0, z1))) -> c7(U11'(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U11(x0, cons_s(z0))) -> c7(U11'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_U11(x0, cons_length(z0))) -> c7(U11'(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_U11(x0, cons_U21(z0))) -> c7(U11'(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_U11(x0, cons_U31(z0, z1, z2, z3))) -> c7(U11'(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U11(x0, cons_take(z0, z1))) -> c7(U11'(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_U11(x0, cons_and(z0, z1))) -> c7(U11'(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_U11(x0, cons_isNat(z0))) -> c7(U11'(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_U11(x0, cons_isNatList(z0))) -> c7(U11'(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_U11(x0, cons_isNatIList(z0))) -> c7(U11'(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U11(cons_active(z0), x1)) -> c7(U11'(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_mark(z0), x1)) -> c7(U11'(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_cons(z0, z1), x1)) -> c7(U11'(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_U11(z0, z1), x1)) -> c7(U11'(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_s(z0), x1)) -> c7(U11'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_length(z0), x1)) -> c7(U11'(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_U21(z0), x1)) -> c7(U11'(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_U31(z0, z1, z2, z3), x1)) -> c7(U11'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_U11(cons_take(z0, z1), x1)) -> c7(U11'(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_and(z0, z1), x1)) -> c7(U11'(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_isNat(z0), x1)) -> c7(U11'(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_isNatList(z0), x1)) -> c7(U11'(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_isNatIList(z0), x1)) -> c7(U11'(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_U11(x0, zeros)) -> c7(U11'(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_U11(x0, 0)) -> c7(U11'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_U11(x0, tt)) -> c7(U11'(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_U11(x0, nil)) -> c7(U11'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_U11(zeros, x1)) -> c7(U11'(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(0, x1)) -> c7(U11'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(tt, x1)) -> c7(U11'(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(nil, x1)) -> c7(U11'(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_s(cons_active(z0))) -> c8(S(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_s(cons_mark(z0))) -> c8(S(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_s(cons_cons(z0, z1))) -> c8(S(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_s(cons_U11(z0, z1))) -> c8(S(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_s(cons_s(z0))) -> c8(S(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_length(z0))) -> c8(S(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_s(cons_U21(z0))) -> c8(S(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_s(cons_U31(z0, z1, z2, z3))) -> c8(S(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_s(cons_take(z0, z1))) -> c8(S(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_s(cons_and(z0, z1))) -> c8(S(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_s(cons_isNat(z0))) -> c8(S(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_s(cons_isNatList(z0))) -> c8(S(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_s(cons_isNatIList(z0))) -> c8(S(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_length(cons_active(z0))) -> c9(LENGTH(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_length(cons_mark(z0))) -> c9(LENGTH(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_length(cons_cons(z0, z1))) -> c9(LENGTH(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_length(cons_U11(z0, z1))) -> c9(LENGTH(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_length(cons_s(z0))) -> c9(LENGTH(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_length(cons_length(z0))) -> c9(LENGTH(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_length(cons_U21(z0))) -> c9(LENGTH(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_length(cons_U31(z0, z1, z2, z3))) -> c9(LENGTH(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_length(cons_take(z0, z1))) -> c9(LENGTH(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_length(cons_and(z0, z1))) -> c9(LENGTH(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_length(cons_isNat(z0))) -> c9(LENGTH(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_length(cons_isNatList(z0))) -> c9(LENGTH(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_length(cons_isNatIList(z0))) -> c9(LENGTH(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U21(cons_active(z0))) -> c10(U21'(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_U21(cons_mark(z0))) -> c10(U21'(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_U21(cons_cons(z0, z1))) -> c10(U21'(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U21(cons_U11(z0, z1))) -> c10(U21'(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U21(cons_s(z0))) -> c10(U21'(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_U21(cons_length(z0))) -> c10(U21'(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_U21(cons_U21(z0))) -> c10(U21'(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_U21(cons_U31(z0, z1, z2, z3))) -> c10(U21'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U21(cons_take(z0, z1))) -> c10(U21'(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_U21(cons_and(z0, z1))) -> c10(U21'(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_U21(cons_isNat(z0))) -> c10(U21'(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_U21(cons_isNatList(z0))) -> c10(U21'(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_U21(cons_isNatIList(z0))) -> c10(U21'(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U31(x0, x1, x2, cons_active(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), active(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_active(z0))) ENCARG(cons_U31(x0, x1, x2, cons_mark(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), mark(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_mark(z0))) ENCARG(cons_U31(x0, x1, x2, cons_cons(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_U11(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_s(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), s(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_s(z0))) ENCARG(cons_U31(x0, x1, x2, cons_length(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), length(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_length(z0))) ENCARG(cons_U31(x0, x1, x2, cons_U21(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U21(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U21(z0))) ENCARG(cons_U31(x0, x1, x2, cons_U31(z0, z1, z2, z3))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U31(x0, x1, x2, cons_take(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_take(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_and(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_and(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_isNat(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNat(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNat(z0))) ENCARG(cons_U31(x0, x1, x2, cons_isNatList(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNatList(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNatList(z0))) ENCARG(cons_U31(x0, x1, x2, cons_isNatIList(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U31(x0, x1, cons_active(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), active(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_active(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_mark(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), mark(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_mark(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_cons(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), cons(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_cons(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U11(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), U11(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U11(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_s(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), s(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_s(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_length(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), length(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_length(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U21(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), U21(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U21(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U31(z0, z1, z2, z3), x3)) -> c11(U31'(encArg(x0), encArg(x1), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_take(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), take(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_take(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_and(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), and(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_and(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNat(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNat(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNat(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNatList(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNatList(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNatList(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNatIList(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNatIList(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNatIList(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, cons_active(z0), x2, x3)) -> c11(U31'(encArg(x0), active(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_active(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_mark(z0), x2, x3)) -> c11(U31'(encArg(x0), mark(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_mark(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_cons(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), cons(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_cons(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U11(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), U11(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U11(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_s(z0), x2, x3)) -> c11(U31'(encArg(x0), s(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_s(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_length(z0), x2, x3)) -> c11(U31'(encArg(x0), length(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_length(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U21(z0), x2, x3)) -> c11(U31'(encArg(x0), U21(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U21(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U31(z0, z1, z2, z3), x2, x3)) -> c11(U31'(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_take(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), take(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_take(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_and(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), and(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_and(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNat(z0), x2, x3)) -> c11(U31'(encArg(x0), isNat(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNat(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNatList(z0), x2, x3)) -> c11(U31'(encArg(x0), isNatList(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNatList(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNatIList(z0), x2, x3)) -> c11(U31'(encArg(x0), isNatIList(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNatIList(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_active(z0), x1, x2, x3)) -> c11(U31'(active(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_active(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_mark(z0), x1, x2, x3)) -> c11(U31'(mark(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_mark(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_cons(z0, z1), x1, x2, x3)) -> c11(U31'(cons(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_cons(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U11(z0, z1), x1, x2, x3)) -> c11(U31'(U11(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U11(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_s(z0), x1, x2, x3)) -> c11(U31'(s(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_s(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_length(z0), x1, x2, x3)) -> c11(U31'(length(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_length(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U21(z0), x1, x2, x3)) -> c11(U31'(U21(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U21(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U31(z0, z1, z2, z3), x1, x2, x3)) -> c11(U31'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_take(z0, z1), x1, x2, x3)) -> c11(U31'(take(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_take(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_and(z0, z1), x1, x2, x3)) -> c11(U31'(and(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_and(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNat(z0), x1, x2, x3)) -> c11(U31'(isNat(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNat(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNatList(z0), x1, x2, x3)) -> c11(U31'(isNatList(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNatList(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNatIList(z0), x1, x2, x3)) -> c11(U31'(isNatIList(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNatIList(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, x1, x2, zeros)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), zeros), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, 0)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), 0), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, tt)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), tt), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, nil)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), nil), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, zeros, x3)) -> c11(U31'(encArg(x0), encArg(x1), zeros, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, 0, x3)) -> c11(U31'(encArg(x0), encArg(x1), 0, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, tt, x3)) -> c11(U31'(encArg(x0), encArg(x1), tt, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, nil, x3)) -> c11(U31'(encArg(x0), encArg(x1), nil, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, zeros, x2, x3)) -> c11(U31'(encArg(x0), zeros, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, 0, x2, x3)) -> c11(U31'(encArg(x0), 0, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, tt, x2, x3)) -> c11(U31'(encArg(x0), tt, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, nil, x2, x3)) -> c11(U31'(encArg(x0), nil, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(zeros, x1, x2, x3)) -> c11(U31'(zeros, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(0, x1, x2, x3)) -> c11(U31'(0, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(tt, x1, x2, x3)) -> c11(U31'(tt, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(nil, x1, x2, x3)) -> c11(U31'(nil, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_take(x0, cons_active(z0))) -> c12(TAKE(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_take(x0, cons_mark(z0))) -> c12(TAKE(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_take(x0, cons_cons(z0, z1))) -> c12(TAKE(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_take(x0, cons_U11(z0, z1))) -> c12(TAKE(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_take(x0, cons_s(z0))) -> c12(TAKE(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_take(x0, cons_length(z0))) -> c12(TAKE(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_take(x0, cons_U21(z0))) -> c12(TAKE(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_take(x0, cons_U31(z0, z1, z2, z3))) -> c12(TAKE(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_take(x0, cons_take(z0, z1))) -> c12(TAKE(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_take(x0, cons_and(z0, z1))) -> c12(TAKE(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_take(x0, cons_isNat(z0))) -> c12(TAKE(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_take(x0, cons_isNatList(z0))) -> c12(TAKE(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_take(x0, cons_isNatIList(z0))) -> c12(TAKE(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_take(cons_active(z0), x1)) -> c12(TAKE(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_take(cons_mark(z0), x1)) -> c12(TAKE(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_take(cons_cons(z0, z1), x1)) -> c12(TAKE(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_U11(z0, z1), x1)) -> c12(TAKE(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_s(z0), x1)) -> c12(TAKE(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_take(cons_length(z0), x1)) -> c12(TAKE(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_take(cons_U21(z0), x1)) -> c12(TAKE(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_take(cons_U31(z0, z1, z2, z3), x1)) -> c12(TAKE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_take(cons_take(z0, z1), x1)) -> c12(TAKE(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_and(z0, z1), x1)) -> c12(TAKE(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_isNat(z0), x1)) -> c12(TAKE(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_take(cons_isNatList(z0), x1)) -> c12(TAKE(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_take(cons_isNatIList(z0), x1)) -> c12(TAKE(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_take(x0, zeros)) -> c12(TAKE(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_take(x0, 0)) -> c12(TAKE(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_take(x0, tt)) -> c12(TAKE(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_take(x0, nil)) -> c12(TAKE(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_take(zeros, x1)) -> c12(TAKE(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(0, x1)) -> c12(TAKE(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(tt, x1)) -> c12(TAKE(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(nil, x1)) -> c12(TAKE(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(x0, cons_active(z0))) -> c13(AND(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_and(x0, cons_mark(z0))) -> c13(AND(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_and(x0, cons_cons(z0, z1))) -> c13(AND(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_and(x0, cons_U11(z0, z1))) -> c13(AND(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_and(x0, cons_s(z0))) -> c13(AND(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_and(x0, cons_length(z0))) -> c13(AND(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_and(x0, cons_U21(z0))) -> c13(AND(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_and(x0, cons_U31(z0, z1, z2, z3))) -> c13(AND(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_and(x0, cons_take(z0, z1))) -> c13(AND(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_and(x0, cons_and(z0, z1))) -> c13(AND(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_and(x0, cons_isNat(z0))) -> c13(AND(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_and(x0, cons_isNatList(z0))) -> c13(AND(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_and(x0, cons_isNatIList(z0))) -> c13(AND(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_and(cons_active(z0), x1)) -> c13(AND(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_and(cons_mark(z0), x1)) -> c13(AND(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_and(cons_cons(z0, z1), x1)) -> c13(AND(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_U11(z0, z1), x1)) -> c13(AND(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_s(z0), x1)) -> c13(AND(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_and(cons_length(z0), x1)) -> c13(AND(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_and(cons_U21(z0), x1)) -> c13(AND(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_and(cons_U31(z0, z1, z2, z3), x1)) -> c13(AND(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_and(cons_take(z0, z1), x1)) -> c13(AND(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_and(z0, z1), x1)) -> c13(AND(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_isNat(z0), x1)) -> c13(AND(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_and(cons_isNatList(z0), x1)) -> c13(AND(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_and(cons_isNatIList(z0), x1)) -> c13(AND(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_and(x0, zeros)) -> c13(AND(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_and(x0, 0)) -> c13(AND(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_and(x0, tt)) -> c13(AND(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_and(x0, nil)) -> c13(AND(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_and(zeros, x1)) -> c13(AND(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(0, x1)) -> c13(AND(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(tt, x1)) -> c13(AND(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(nil, x1)) -> c13(AND(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_isNat(cons_active(z0))) -> c14(ISNAT(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_isNat(cons_mark(z0))) -> c14(ISNAT(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_isNat(cons_cons(z0, z1))) -> c14(ISNAT(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_isNat(cons_U11(z0, z1))) -> c14(ISNAT(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_isNat(cons_s(z0))) -> c14(ISNAT(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_isNat(cons_length(z0))) -> c14(ISNAT(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_isNat(cons_U21(z0))) -> c14(ISNAT(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_isNat(cons_U31(z0, z1, z2, z3))) -> c14(ISNAT(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_isNat(cons_take(z0, z1))) -> c14(ISNAT(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_isNat(cons_and(z0, z1))) -> c14(ISNAT(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_isNat(cons_isNat(z0))) -> c14(ISNAT(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_isNat(cons_isNatList(z0))) -> c14(ISNAT(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_isNat(cons_isNatIList(z0))) -> c14(ISNAT(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_isNatList(cons_active(z0))) -> c15(ISNATLIST(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_isNatList(cons_mark(z0))) -> c15(ISNATLIST(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_isNatList(cons_cons(z0, z1))) -> c15(ISNATLIST(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_isNatList(cons_U11(z0, z1))) -> c15(ISNATLIST(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_isNatList(cons_s(z0))) -> c15(ISNATLIST(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_isNatList(cons_length(z0))) -> c15(ISNATLIST(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_isNatList(cons_U21(z0))) -> c15(ISNATLIST(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_isNatList(cons_U31(z0, z1, z2, z3))) -> c15(ISNATLIST(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_isNatList(cons_take(z0, z1))) -> c15(ISNATLIST(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_isNatList(cons_and(z0, z1))) -> c15(ISNATLIST(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_isNatList(cons_isNat(z0))) -> c15(ISNATLIST(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_isNatList(cons_isNatList(z0))) -> c15(ISNATLIST(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_isNatList(cons_isNatIList(z0))) -> c15(ISNATLIST(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_isNatIList(cons_active(z0))) -> c16(ISNATILIST(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_isNatIList(cons_mark(z0))) -> c16(ISNATILIST(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_isNatIList(cons_cons(z0, z1))) -> c16(ISNATILIST(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_isNatIList(cons_U11(z0, z1))) -> c16(ISNATILIST(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_isNatIList(cons_s(z0))) -> c16(ISNATILIST(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_isNatIList(cons_length(z0))) -> c16(ISNATILIST(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_isNatIList(cons_U21(z0))) -> c16(ISNATILIST(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_isNatIList(cons_U31(z0, z1, z2, z3))) -> c16(ISNATILIST(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_isNatIList(cons_take(z0, z1))) -> c16(ISNATILIST(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_isNatIList(cons_and(z0, z1))) -> c16(ISNATILIST(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_isNatIList(cons_isNat(z0))) -> c16(ISNATILIST(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_isNatIList(cons_isNatList(z0))) -> c16(ISNATILIST(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_isNatIList(cons_isNatIList(z0))) -> c16(ISNATILIST(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) MARK(cons(zeros, x1)) -> c53(ACTIVE(cons(active(zeros), x1)), CONS(mark(zeros), x1), MARK(zeros)) MARK(cons(cons(z0, z1), x1)) -> c53(ACTIVE(cons(active(cons(mark(z0), z1)), x1)), CONS(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(cons(0, x1)) -> c53(ACTIVE(cons(active(0), x1)), CONS(mark(0), x1), MARK(0)) MARK(cons(U11(z0, z1), x1)) -> c53(ACTIVE(cons(active(U11(mark(z0), z1)), x1)), CONS(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(cons(tt, x1)) -> c53(ACTIVE(cons(active(tt), x1)), CONS(mark(tt), x1), MARK(tt)) MARK(cons(s(z0), x1)) -> c53(ACTIVE(cons(active(s(mark(z0))), x1)), CONS(mark(s(z0)), x1), MARK(s(z0))) MARK(cons(length(z0), x1)) -> c53(ACTIVE(cons(active(length(mark(z0))), x1)), CONS(mark(length(z0)), x1), MARK(length(z0))) MARK(cons(U21(z0), x1)) -> c53(ACTIVE(cons(active(U21(mark(z0))), x1)), CONS(mark(U21(z0)), x1), MARK(U21(z0))) MARK(cons(nil, x1)) -> c53(ACTIVE(cons(active(nil), x1)), CONS(mark(nil), x1), MARK(nil)) MARK(cons(U31(z0, z1, z2, z3), x1)) -> c53(ACTIVE(cons(active(U31(mark(z0), z1, z2, z3)), x1)), CONS(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(cons(take(z0, z1), x1)) -> c53(ACTIVE(cons(active(take(mark(z0), mark(z1))), x1)), CONS(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(cons(and(z0, z1), x1)) -> c53(ACTIVE(cons(active(and(mark(z0), z1)), x1)), CONS(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(cons(isNat(z0), x1)) -> c53(ACTIVE(cons(active(isNat(z0)), x1)), CONS(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(cons(isNatList(z0), x1)) -> c53(ACTIVE(cons(active(isNatList(z0)), x1)), CONS(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(cons(isNatIList(z0), x1)) -> c53(ACTIVE(cons(active(isNatIList(z0)), x1)), CONS(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(cons(x0, x1)) -> c53(CONS(mark(x0), x1)) MARK(cons(z0, z1)) -> c53(CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(z0, z1)), U11'(mark(z0), z1), MARK(z0)) MARK(U11(zeros, x1)) -> c55(ACTIVE(U11(active(zeros), x1)), U11'(mark(zeros), x1), MARK(zeros)) MARK(U11(cons(z0, z1), x1)) -> c55(ACTIVE(U11(active(cons(mark(z0), z1)), x1)), U11'(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(U11(0, x1)) -> c55(ACTIVE(U11(active(0), x1)), U11'(mark(0), x1), MARK(0)) MARK(U11(U11(z0, z1), x1)) -> c55(ACTIVE(U11(active(U11(mark(z0), z1)), x1)), U11'(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(U11(tt, x1)) -> c55(ACTIVE(U11(active(tt), x1)), U11'(mark(tt), x1), MARK(tt)) MARK(U11(s(z0), x1)) -> c55(ACTIVE(U11(active(s(mark(z0))), x1)), U11'(mark(s(z0)), x1), MARK(s(z0))) MARK(U11(length(z0), x1)) -> c55(ACTIVE(U11(active(length(mark(z0))), x1)), U11'(mark(length(z0)), x1), MARK(length(z0))) MARK(U11(U21(z0), x1)) -> c55(ACTIVE(U11(active(U21(mark(z0))), x1)), U11'(mark(U21(z0)), x1), MARK(U21(z0))) MARK(U11(nil, x1)) -> c55(ACTIVE(U11(active(nil), x1)), U11'(mark(nil), x1), MARK(nil)) MARK(U11(U31(z0, z1, z2, z3), x1)) -> c55(ACTIVE(U11(active(U31(mark(z0), z1, z2, z3)), x1)), U11'(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(U11(take(z0, z1), x1)) -> c55(ACTIVE(U11(active(take(mark(z0), mark(z1))), x1)), U11'(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(U11(and(z0, z1), x1)) -> c55(ACTIVE(U11(active(and(mark(z0), z1)), x1)), U11'(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(U11(isNat(z0), x1)) -> c55(ACTIVE(U11(active(isNat(z0)), x1)), U11'(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(U11(isNatList(z0), x1)) -> c55(ACTIVE(U11(active(isNatList(z0)), x1)), U11'(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(U11(isNatIList(z0), x1)) -> c55(ACTIVE(U11(active(isNatIList(z0)), x1)), U11'(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(U11(x0, x1)) -> c55(U11'(mark(x0), x1)) MARK(s(zeros)) -> c57(ACTIVE(s(active(zeros))), S(mark(zeros)), MARK(zeros)) MARK(s(cons(z0, z1))) -> c57(ACTIVE(s(active(cons(mark(z0), z1)))), S(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(s(0)) -> c57(ACTIVE(s(active(0))), S(mark(0)), MARK(0)) MARK(s(U11(z0, z1))) -> c57(ACTIVE(s(active(U11(mark(z0), z1)))), S(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(s(tt)) -> c57(ACTIVE(s(active(tt))), S(mark(tt)), MARK(tt)) MARK(s(s(z0))) -> c57(ACTIVE(s(active(s(mark(z0))))), S(mark(s(z0))), MARK(s(z0))) MARK(s(length(z0))) -> c57(ACTIVE(s(active(length(mark(z0))))), S(mark(length(z0))), MARK(length(z0))) MARK(s(U21(z0))) -> c57(ACTIVE(s(active(U21(mark(z0))))), S(mark(U21(z0))), MARK(U21(z0))) MARK(s(nil)) -> c57(ACTIVE(s(active(nil))), S(mark(nil)), MARK(nil)) MARK(s(U31(z0, z1, z2, z3))) -> c57(ACTIVE(s(active(U31(mark(z0), z1, z2, z3)))), S(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(s(take(z0, z1))) -> c57(ACTIVE(s(active(take(mark(z0), mark(z1))))), S(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(s(and(z0, z1))) -> c57(ACTIVE(s(active(and(mark(z0), z1)))), S(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(s(isNat(z0))) -> c57(ACTIVE(s(active(isNat(z0)))), S(mark(isNat(z0))), MARK(isNat(z0))) MARK(s(isNatList(z0))) -> c57(ACTIVE(s(active(isNatList(z0)))), S(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(s(isNatIList(z0))) -> c57(ACTIVE(s(active(isNatIList(z0)))), S(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(s(z0)) -> c57(S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(z0)), LENGTH(mark(z0)), MARK(z0)) MARK(length(zeros)) -> c58(ACTIVE(length(active(zeros))), LENGTH(mark(zeros)), MARK(zeros)) MARK(length(cons(z0, z1))) -> c58(ACTIVE(length(active(cons(mark(z0), z1)))), LENGTH(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(length(0)) -> c58(ACTIVE(length(active(0))), LENGTH(mark(0)), MARK(0)) MARK(length(U11(z0, z1))) -> c58(ACTIVE(length(active(U11(mark(z0), z1)))), LENGTH(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(length(tt)) -> c58(ACTIVE(length(active(tt))), LENGTH(mark(tt)), MARK(tt)) MARK(length(s(z0))) -> c58(ACTIVE(length(active(s(mark(z0))))), LENGTH(mark(s(z0))), MARK(s(z0))) MARK(length(length(z0))) -> c58(ACTIVE(length(active(length(mark(z0))))), LENGTH(mark(length(z0))), MARK(length(z0))) MARK(length(U21(z0))) -> c58(ACTIVE(length(active(U21(mark(z0))))), LENGTH(mark(U21(z0))), MARK(U21(z0))) MARK(length(nil)) -> c58(ACTIVE(length(active(nil))), LENGTH(mark(nil)), MARK(nil)) MARK(length(U31(z0, z1, z2, z3))) -> c58(ACTIVE(length(active(U31(mark(z0), z1, z2, z3)))), LENGTH(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(length(take(z0, z1))) -> c58(ACTIVE(length(active(take(mark(z0), mark(z1))))), LENGTH(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(length(and(z0, z1))) -> c58(ACTIVE(length(active(and(mark(z0), z1)))), LENGTH(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(length(isNat(z0))) -> c58(ACTIVE(length(active(isNat(z0)))), LENGTH(mark(isNat(z0))), MARK(isNat(z0))) MARK(length(isNatList(z0))) -> c58(ACTIVE(length(active(isNatList(z0)))), LENGTH(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(length(isNatIList(z0))) -> c58(ACTIVE(length(active(isNatIList(z0)))), LENGTH(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(U21(z0)) -> c59(ACTIVE(U21(z0)), U21'(mark(z0)), MARK(z0)) MARK(U21(zeros)) -> c59(ACTIVE(U21(active(zeros))), U21'(mark(zeros)), MARK(zeros)) MARK(U21(cons(z0, z1))) -> c59(ACTIVE(U21(active(cons(mark(z0), z1)))), U21'(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(U21(0)) -> c59(ACTIVE(U21(active(0))), U21'(mark(0)), MARK(0)) MARK(U21(U11(z0, z1))) -> c59(ACTIVE(U21(active(U11(mark(z0), z1)))), U21'(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(U21(tt)) -> c59(ACTIVE(U21(active(tt))), U21'(mark(tt)), MARK(tt)) MARK(U21(s(z0))) -> c59(ACTIVE(U21(active(s(mark(z0))))), U21'(mark(s(z0))), MARK(s(z0))) MARK(U21(length(z0))) -> c59(ACTIVE(U21(active(length(mark(z0))))), U21'(mark(length(z0))), MARK(length(z0))) MARK(U21(U21(z0))) -> c59(ACTIVE(U21(active(U21(mark(z0))))), U21'(mark(U21(z0))), MARK(U21(z0))) MARK(U21(nil)) -> c59(ACTIVE(U21(active(nil))), U21'(mark(nil)), MARK(nil)) MARK(U21(U31(z0, z1, z2, z3))) -> c59(ACTIVE(U21(active(U31(mark(z0), z1, z2, z3)))), U21'(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(U21(take(z0, z1))) -> c59(ACTIVE(U21(active(take(mark(z0), mark(z1))))), U21'(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(U21(and(z0, z1))) -> c59(ACTIVE(U21(active(and(mark(z0), z1)))), U21'(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(U21(isNat(z0))) -> c59(ACTIVE(U21(active(isNat(z0)))), U21'(mark(isNat(z0))), MARK(isNat(z0))) MARK(U21(isNatList(z0))) -> c59(ACTIVE(U21(active(isNatList(z0)))), U21'(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(U21(isNatIList(z0))) -> c59(ACTIVE(U21(active(isNatIList(z0)))), U21'(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(z0, z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U31(zeros, x1, x2, x3)) -> c61(ACTIVE(U31(active(zeros), x1, x2, x3)), U31'(mark(zeros), x1, x2, x3), MARK(zeros)) MARK(U31(cons(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(cons(mark(z0), z1)), x1, x2, x3)), U31'(mark(cons(z0, z1)), x1, x2, x3), MARK(cons(z0, z1))) MARK(U31(0, x1, x2, x3)) -> c61(ACTIVE(U31(active(0), x1, x2, x3)), U31'(mark(0), x1, x2, x3), MARK(0)) MARK(U31(U11(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(U11(mark(z0), z1)), x1, x2, x3)), U31'(mark(U11(z0, z1)), x1, x2, x3), MARK(U11(z0, z1))) MARK(U31(tt, x1, x2, x3)) -> c61(ACTIVE(U31(active(tt), x1, x2, x3)), U31'(mark(tt), x1, x2, x3), MARK(tt)) MARK(U31(s(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(s(mark(z0))), x1, x2, x3)), U31'(mark(s(z0)), x1, x2, x3), MARK(s(z0))) MARK(U31(length(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(length(mark(z0))), x1, x2, x3)), U31'(mark(length(z0)), x1, x2, x3), MARK(length(z0))) MARK(U31(U21(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(U21(mark(z0))), x1, x2, x3)), U31'(mark(U21(z0)), x1, x2, x3), MARK(U21(z0))) MARK(U31(nil, x1, x2, x3)) -> c61(ACTIVE(U31(active(nil), x1, x2, x3)), U31'(mark(nil), x1, x2, x3), MARK(nil)) MARK(U31(U31(z0, z1, z2, z3), x1, x2, x3)) -> c61(ACTIVE(U31(active(U31(mark(z0), z1, z2, z3)), x1, x2, x3)), U31'(mark(U31(z0, z1, z2, z3)), x1, x2, x3), MARK(U31(z0, z1, z2, z3))) MARK(U31(take(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(take(mark(z0), mark(z1))), x1, x2, x3)), U31'(mark(take(z0, z1)), x1, x2, x3), MARK(take(z0, z1))) MARK(U31(and(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(and(mark(z0), z1)), x1, x2, x3)), U31'(mark(and(z0, z1)), x1, x2, x3), MARK(and(z0, z1))) MARK(U31(isNat(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNat(z0)), x1, x2, x3)), U31'(mark(isNat(z0)), x1, x2, x3), MARK(isNat(z0))) MARK(U31(isNatList(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNatList(z0)), x1, x2, x3)), U31'(mark(isNatList(z0)), x1, x2, x3), MARK(isNatList(z0))) MARK(U31(isNatIList(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNatIList(z0)), x1, x2, x3)), U31'(mark(isNatIList(z0)), x1, x2, x3), MARK(isNatIList(z0))) MARK(U31(x0, x1, x2, x3)) -> c61(U31'(mark(x0), x1, x2, x3)) MARK(take(z0, x1)) -> c62(ACTIVE(take(z0, mark(x1))), TAKE(mark(z0), mark(x1)), MARK(z0), MARK(x1)) MARK(take(x0, z1)) -> c62(ACTIVE(take(mark(x0), z1)), TAKE(mark(x0), mark(z1)), MARK(x0), MARK(z1)) MARK(take(x0, zeros)) -> c62(ACTIVE(take(mark(x0), active(zeros))), TAKE(mark(x0), mark(zeros)), MARK(x0), MARK(zeros)) MARK(take(x0, cons(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(cons(mark(z0), z1)))), TAKE(mark(x0), mark(cons(z0, z1))), MARK(x0), MARK(cons(z0, z1))) MARK(take(x0, 0)) -> c62(ACTIVE(take(mark(x0), active(0))), TAKE(mark(x0), mark(0)), MARK(x0), MARK(0)) MARK(take(x0, U11(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(U11(mark(z0), z1)))), TAKE(mark(x0), mark(U11(z0, z1))), MARK(x0), MARK(U11(z0, z1))) MARK(take(x0, tt)) -> c62(ACTIVE(take(mark(x0), active(tt))), TAKE(mark(x0), mark(tt)), MARK(x0), MARK(tt)) MARK(take(x0, s(z0))) -> c62(ACTIVE(take(mark(x0), active(s(mark(z0))))), TAKE(mark(x0), mark(s(z0))), MARK(x0), MARK(s(z0))) MARK(take(x0, length(z0))) -> c62(ACTIVE(take(mark(x0), active(length(mark(z0))))), TAKE(mark(x0), mark(length(z0))), MARK(x0), MARK(length(z0))) MARK(take(x0, U21(z0))) -> c62(ACTIVE(take(mark(x0), active(U21(mark(z0))))), TAKE(mark(x0), mark(U21(z0))), MARK(x0), MARK(U21(z0))) MARK(take(x0, nil)) -> c62(ACTIVE(take(mark(x0), active(nil))), TAKE(mark(x0), mark(nil)), MARK(x0), MARK(nil)) MARK(take(x0, U31(z0, z1, z2, z3))) -> c62(ACTIVE(take(mark(x0), active(U31(mark(z0), z1, z2, z3)))), TAKE(mark(x0), mark(U31(z0, z1, z2, z3))), MARK(x0), MARK(U31(z0, z1, z2, z3))) MARK(take(x0, take(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(take(mark(z0), mark(z1))))), TAKE(mark(x0), mark(take(z0, z1))), MARK(x0), MARK(take(z0, z1))) MARK(take(x0, and(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(and(mark(z0), z1)))), TAKE(mark(x0), mark(and(z0, z1))), MARK(x0), MARK(and(z0, z1))) MARK(take(x0, isNat(z0))) -> c62(ACTIVE(take(mark(x0), active(isNat(z0)))), TAKE(mark(x0), mark(isNat(z0))), MARK(x0), MARK(isNat(z0))) MARK(take(x0, isNatList(z0))) -> c62(ACTIVE(take(mark(x0), active(isNatList(z0)))), TAKE(mark(x0), mark(isNatList(z0))), MARK(x0), MARK(isNatList(z0))) MARK(take(x0, isNatIList(z0))) -> c62(ACTIVE(take(mark(x0), active(isNatIList(z0)))), TAKE(mark(x0), mark(isNatIList(z0))), MARK(x0), MARK(isNatIList(z0))) MARK(take(zeros, x1)) -> c62(ACTIVE(take(active(zeros), mark(x1))), TAKE(mark(zeros), mark(x1)), MARK(zeros), MARK(x1)) MARK(take(cons(z0, z1), x1)) -> c62(ACTIVE(take(active(cons(mark(z0), z1)), mark(x1))), TAKE(mark(cons(z0, z1)), mark(x1)), MARK(cons(z0, z1)), MARK(x1)) MARK(take(0, x1)) -> c62(ACTIVE(take(active(0), mark(x1))), TAKE(mark(0), mark(x1)), MARK(0), MARK(x1)) MARK(take(U11(z0, z1), x1)) -> c62(ACTIVE(take(active(U11(mark(z0), z1)), mark(x1))), TAKE(mark(U11(z0, z1)), mark(x1)), MARK(U11(z0, z1)), MARK(x1)) MARK(take(tt, x1)) -> c62(ACTIVE(take(active(tt), mark(x1))), TAKE(mark(tt), mark(x1)), MARK(tt), MARK(x1)) MARK(take(s(z0), x1)) -> c62(ACTIVE(take(active(s(mark(z0))), mark(x1))), TAKE(mark(s(z0)), mark(x1)), MARK(s(z0)), MARK(x1)) MARK(take(length(z0), x1)) -> c62(ACTIVE(take(active(length(mark(z0))), mark(x1))), TAKE(mark(length(z0)), mark(x1)), MARK(length(z0)), MARK(x1)) MARK(take(U21(z0), x1)) -> c62(ACTIVE(take(active(U21(mark(z0))), mark(x1))), TAKE(mark(U21(z0)), mark(x1)), MARK(U21(z0)), MARK(x1)) MARK(take(nil, x1)) -> c62(ACTIVE(take(active(nil), mark(x1))), TAKE(mark(nil), mark(x1)), MARK(nil), MARK(x1)) MARK(take(U31(z0, z1, z2, z3), x1)) -> c62(ACTIVE(take(active(U31(mark(z0), z1, z2, z3)), mark(x1))), TAKE(mark(U31(z0, z1, z2, z3)), mark(x1)), MARK(U31(z0, z1, z2, z3)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c62(ACTIVE(take(active(take(mark(z0), mark(z1))), mark(x1))), TAKE(mark(take(z0, z1)), mark(x1)), MARK(take(z0, z1)), MARK(x1)) MARK(take(and(z0, z1), x1)) -> c62(ACTIVE(take(active(and(mark(z0), z1)), mark(x1))), TAKE(mark(and(z0, z1)), mark(x1)), MARK(and(z0, z1)), MARK(x1)) MARK(take(isNat(z0), x1)) -> c62(ACTIVE(take(active(isNat(z0)), mark(x1))), TAKE(mark(isNat(z0)), mark(x1)), MARK(isNat(z0)), MARK(x1)) MARK(take(isNatList(z0), x1)) -> c62(ACTIVE(take(active(isNatList(z0)), mark(x1))), TAKE(mark(isNatList(z0)), mark(x1)), MARK(isNatList(z0)), MARK(x1)) MARK(take(isNatIList(z0), x1)) -> c62(ACTIVE(take(active(isNatIList(z0)), mark(x1))), TAKE(mark(isNatIList(z0)), mark(x1)), MARK(isNatIList(z0)), MARK(x1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(z0, z1)), AND(mark(z0), z1), MARK(z0)) MARK(and(zeros, x1)) -> c63(ACTIVE(and(active(zeros), x1)), AND(mark(zeros), x1), MARK(zeros)) MARK(and(cons(z0, z1), x1)) -> c63(ACTIVE(and(active(cons(mark(z0), z1)), x1)), AND(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(and(0, x1)) -> c63(ACTIVE(and(active(0), x1)), AND(mark(0), x1), MARK(0)) MARK(and(U11(z0, z1), x1)) -> c63(ACTIVE(and(active(U11(mark(z0), z1)), x1)), AND(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(and(tt, x1)) -> c63(ACTIVE(and(active(tt), x1)), AND(mark(tt), x1), MARK(tt)) MARK(and(s(z0), x1)) -> c63(ACTIVE(and(active(s(mark(z0))), x1)), AND(mark(s(z0)), x1), MARK(s(z0))) MARK(and(length(z0), x1)) -> c63(ACTIVE(and(active(length(mark(z0))), x1)), AND(mark(length(z0)), x1), MARK(length(z0))) MARK(and(U21(z0), x1)) -> c63(ACTIVE(and(active(U21(mark(z0))), x1)), AND(mark(U21(z0)), x1), MARK(U21(z0))) MARK(and(nil, x1)) -> c63(ACTIVE(and(active(nil), x1)), AND(mark(nil), x1), MARK(nil)) MARK(and(U31(z0, z1, z2, z3), x1)) -> c63(ACTIVE(and(active(U31(mark(z0), z1, z2, z3)), x1)), AND(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(and(take(z0, z1), x1)) -> c63(ACTIVE(and(active(take(mark(z0), mark(z1))), x1)), AND(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(and(and(z0, z1), x1)) -> c63(ACTIVE(and(active(and(mark(z0), z1)), x1)), AND(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(and(isNat(z0), x1)) -> c63(ACTIVE(and(active(isNat(z0)), x1)), AND(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(and(isNatList(z0), x1)) -> c63(ACTIVE(and(active(isNatList(z0)), x1)), AND(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(and(isNatIList(z0), x1)) -> c63(ACTIVE(and(active(isNatIList(z0)), x1)), AND(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(and(x0, x1)) -> c63(AND(mark(x0), x1)) ENCODE_ACTIVE(cons_active(z0)) -> c(ACTIVE(active(encArg(z0)))) ENCODE_ACTIVE(cons_mark(z0)) -> c(ACTIVE(mark(encArg(z0)))) ENCODE_ACTIVE(cons_cons(z0, z1)) -> c(ACTIVE(cons(encArg(z0), encArg(z1)))) ENCODE_ACTIVE(cons_U11(z0, z1)) -> c(ACTIVE(U11(encArg(z0), encArg(z1)))) ENCODE_ACTIVE(cons_s(z0)) -> c(ACTIVE(s(encArg(z0)))) ENCODE_ACTIVE(cons_length(z0)) -> c(ACTIVE(length(encArg(z0)))) ENCODE_ACTIVE(cons_U21(z0)) -> c(ACTIVE(U21(encArg(z0)))) ENCODE_ACTIVE(cons_U31(z0, z1, z2, z3)) -> c(ACTIVE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)))) ENCODE_ACTIVE(cons_take(z0, z1)) -> c(ACTIVE(take(encArg(z0), encArg(z1)))) ENCODE_ACTIVE(cons_and(z0, z1)) -> c(ACTIVE(and(encArg(z0), encArg(z1)))) ENCODE_ACTIVE(cons_isNat(z0)) -> c(ACTIVE(isNat(encArg(z0)))) ENCODE_ACTIVE(cons_isNatList(z0)) -> c(ACTIVE(isNatList(encArg(z0)))) ENCODE_ACTIVE(cons_isNatIList(z0)) -> c(ACTIVE(isNatIList(encArg(z0)))) ENCODE_MARK(cons_active(z0)) -> c(MARK(active(encArg(z0)))) ENCODE_MARK(cons_mark(z0)) -> c(MARK(mark(encArg(z0)))) ENCODE_MARK(cons_cons(z0, z1)) -> c(MARK(cons(encArg(z0), encArg(z1)))) ENCODE_MARK(cons_U11(z0, z1)) -> c(MARK(U11(encArg(z0), encArg(z1)))) ENCODE_MARK(cons_s(z0)) -> c(MARK(s(encArg(z0)))) ENCODE_MARK(cons_length(z0)) -> c(MARK(length(encArg(z0)))) ENCODE_MARK(cons_U21(z0)) -> c(MARK(U21(encArg(z0)))) ENCODE_MARK(cons_U31(z0, z1, z2, z3)) -> c(MARK(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)))) ENCODE_MARK(cons_take(z0, z1)) -> c(MARK(take(encArg(z0), encArg(z1)))) ENCODE_MARK(cons_and(z0, z1)) -> c(MARK(and(encArg(z0), encArg(z1)))) ENCODE_MARK(cons_isNat(z0)) -> c(MARK(isNat(encArg(z0)))) ENCODE_MARK(cons_isNatList(z0)) -> c(MARK(isNatList(encArg(z0)))) ENCODE_MARK(cons_isNatIList(z0)) -> c(MARK(isNatIList(encArg(z0)))) ENCODE_CONS(x0, zeros) -> c(CONS(encArg(x0), zeros)) ENCODE_CONS(x0, 0) -> c(CONS(encArg(x0), 0)) ENCODE_CONS(x0, tt) -> c(CONS(encArg(x0), tt)) ENCODE_CONS(x0, nil) -> c(CONS(encArg(x0), nil)) ENCODE_CONS(x0, cons_active(z0)) -> c(CONS(encArg(x0), active(encArg(z0)))) ENCODE_CONS(x0, cons_mark(z0)) -> c(CONS(encArg(x0), mark(encArg(z0)))) ENCODE_CONS(x0, cons_cons(z0, z1)) -> c(CONS(encArg(x0), cons(encArg(z0), encArg(z1)))) ENCODE_CONS(x0, cons_U11(z0, z1)) -> c(CONS(encArg(x0), U11(encArg(z0), encArg(z1)))) ENCODE_CONS(x0, cons_s(z0)) -> c(CONS(encArg(x0), s(encArg(z0)))) ENCODE_CONS(x0, cons_length(z0)) -> c(CONS(encArg(x0), length(encArg(z0)))) ENCODE_CONS(x0, cons_U21(z0)) -> c(CONS(encArg(x0), U21(encArg(z0)))) ENCODE_CONS(x0, cons_U31(z0, z1, z2, z3)) -> c(CONS(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)))) ENCODE_CONS(x0, cons_take(z0, z1)) -> c(CONS(encArg(x0), take(encArg(z0), encArg(z1)))) ENCODE_CONS(x0, cons_and(z0, z1)) -> c(CONS(encArg(x0), and(encArg(z0), encArg(z1)))) ENCODE_CONS(x0, cons_isNat(z0)) -> c(CONS(encArg(x0), isNat(encArg(z0)))) ENCODE_CONS(x0, cons_isNatList(z0)) -> c(CONS(encArg(x0), isNatList(encArg(z0)))) ENCODE_CONS(x0, cons_isNatIList(z0)) -> c(CONS(encArg(x0), isNatIList(encArg(z0)))) ENCODE_CONS(zeros, x1) -> c(CONS(zeros, encArg(x1))) ENCODE_CONS(0, x1) -> c(CONS(0, encArg(x1))) ENCODE_CONS(tt, x1) -> c(CONS(tt, encArg(x1))) ENCODE_CONS(nil, x1) -> c(CONS(nil, encArg(x1))) ENCODE_CONS(cons_active(z0), x1) -> c(CONS(active(encArg(z0)), encArg(x1))) ENCODE_CONS(cons_mark(z0), x1) -> c(CONS(mark(encArg(z0)), encArg(x1))) ENCODE_CONS(cons_cons(z0, z1), x1) -> c(CONS(cons(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_CONS(cons_U11(z0, z1), x1) -> c(CONS(U11(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_CONS(cons_s(z0), x1) -> c(CONS(s(encArg(z0)), encArg(x1))) ENCODE_CONS(cons_length(z0), x1) -> c(CONS(length(encArg(z0)), encArg(x1))) ENCODE_CONS(cons_U21(z0), x1) -> c(CONS(U21(encArg(z0)), encArg(x1))) ENCODE_CONS(cons_U31(z0, z1, z2, z3), x1) -> c(CONS(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1))) ENCODE_CONS(cons_take(z0, z1), x1) -> c(CONS(take(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_CONS(cons_and(z0, z1), x1) -> c(CONS(and(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_CONS(cons_isNat(z0), x1) -> c(CONS(isNat(encArg(z0)), encArg(x1))) ENCODE_CONS(cons_isNatList(z0), x1) -> c(CONS(isNatList(encArg(z0)), encArg(x1))) ENCODE_CONS(cons_isNatIList(z0), x1) -> c(CONS(isNatIList(encArg(z0)), encArg(x1))) S tuples: ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 MARK(cons(zeros, x1)) -> c53(ACTIVE(cons(active(zeros), x1)), CONS(mark(zeros), x1), MARK(zeros)) MARK(cons(cons(z0, z1), x1)) -> c53(ACTIVE(cons(active(cons(mark(z0), z1)), x1)), CONS(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(cons(0, x1)) -> c53(ACTIVE(cons(active(0), x1)), CONS(mark(0), x1), MARK(0)) MARK(cons(U11(z0, z1), x1)) -> c53(ACTIVE(cons(active(U11(mark(z0), z1)), x1)), CONS(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(cons(tt, x1)) -> c53(ACTIVE(cons(active(tt), x1)), CONS(mark(tt), x1), MARK(tt)) MARK(cons(s(z0), x1)) -> c53(ACTIVE(cons(active(s(mark(z0))), x1)), CONS(mark(s(z0)), x1), MARK(s(z0))) MARK(cons(length(z0), x1)) -> c53(ACTIVE(cons(active(length(mark(z0))), x1)), CONS(mark(length(z0)), x1), MARK(length(z0))) MARK(cons(U21(z0), x1)) -> c53(ACTIVE(cons(active(U21(mark(z0))), x1)), CONS(mark(U21(z0)), x1), MARK(U21(z0))) MARK(cons(nil, x1)) -> c53(ACTIVE(cons(active(nil), x1)), CONS(mark(nil), x1), MARK(nil)) MARK(cons(U31(z0, z1, z2, z3), x1)) -> c53(ACTIVE(cons(active(U31(mark(z0), z1, z2, z3)), x1)), CONS(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(cons(take(z0, z1), x1)) -> c53(ACTIVE(cons(active(take(mark(z0), mark(z1))), x1)), CONS(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(cons(and(z0, z1), x1)) -> c53(ACTIVE(cons(active(and(mark(z0), z1)), x1)), CONS(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(cons(isNat(z0), x1)) -> c53(ACTIVE(cons(active(isNat(z0)), x1)), CONS(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(cons(isNatList(z0), x1)) -> c53(ACTIVE(cons(active(isNatList(z0)), x1)), CONS(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(cons(isNatIList(z0), x1)) -> c53(ACTIVE(cons(active(isNatIList(z0)), x1)), CONS(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(cons(x0, x1)) -> c53(CONS(mark(x0), x1)) MARK(cons(z0, z1)) -> c53(CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(z0, z1)), U11'(mark(z0), z1), MARK(z0)) MARK(U11(zeros, x1)) -> c55(ACTIVE(U11(active(zeros), x1)), U11'(mark(zeros), x1), MARK(zeros)) MARK(U11(cons(z0, z1), x1)) -> c55(ACTIVE(U11(active(cons(mark(z0), z1)), x1)), U11'(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(U11(0, x1)) -> c55(ACTIVE(U11(active(0), x1)), U11'(mark(0), x1), MARK(0)) MARK(U11(U11(z0, z1), x1)) -> c55(ACTIVE(U11(active(U11(mark(z0), z1)), x1)), U11'(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(U11(tt, x1)) -> c55(ACTIVE(U11(active(tt), x1)), U11'(mark(tt), x1), MARK(tt)) MARK(U11(s(z0), x1)) -> c55(ACTIVE(U11(active(s(mark(z0))), x1)), U11'(mark(s(z0)), x1), MARK(s(z0))) MARK(U11(length(z0), x1)) -> c55(ACTIVE(U11(active(length(mark(z0))), x1)), U11'(mark(length(z0)), x1), MARK(length(z0))) MARK(U11(U21(z0), x1)) -> c55(ACTIVE(U11(active(U21(mark(z0))), x1)), U11'(mark(U21(z0)), x1), MARK(U21(z0))) MARK(U11(nil, x1)) -> c55(ACTIVE(U11(active(nil), x1)), U11'(mark(nil), x1), MARK(nil)) MARK(U11(U31(z0, z1, z2, z3), x1)) -> c55(ACTIVE(U11(active(U31(mark(z0), z1, z2, z3)), x1)), U11'(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(U11(take(z0, z1), x1)) -> c55(ACTIVE(U11(active(take(mark(z0), mark(z1))), x1)), U11'(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(U11(and(z0, z1), x1)) -> c55(ACTIVE(U11(active(and(mark(z0), z1)), x1)), U11'(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(U11(isNat(z0), x1)) -> c55(ACTIVE(U11(active(isNat(z0)), x1)), U11'(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(U11(isNatList(z0), x1)) -> c55(ACTIVE(U11(active(isNatList(z0)), x1)), U11'(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(U11(isNatIList(z0), x1)) -> c55(ACTIVE(U11(active(isNatIList(z0)), x1)), U11'(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(U11(x0, x1)) -> c55(U11'(mark(x0), x1)) MARK(s(zeros)) -> c57(ACTIVE(s(active(zeros))), S(mark(zeros)), MARK(zeros)) MARK(s(cons(z0, z1))) -> c57(ACTIVE(s(active(cons(mark(z0), z1)))), S(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(s(0)) -> c57(ACTIVE(s(active(0))), S(mark(0)), MARK(0)) MARK(s(U11(z0, z1))) -> c57(ACTIVE(s(active(U11(mark(z0), z1)))), S(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(s(tt)) -> c57(ACTIVE(s(active(tt))), S(mark(tt)), MARK(tt)) MARK(s(s(z0))) -> c57(ACTIVE(s(active(s(mark(z0))))), S(mark(s(z0))), MARK(s(z0))) MARK(s(length(z0))) -> c57(ACTIVE(s(active(length(mark(z0))))), S(mark(length(z0))), MARK(length(z0))) MARK(s(U21(z0))) -> c57(ACTIVE(s(active(U21(mark(z0))))), S(mark(U21(z0))), MARK(U21(z0))) MARK(s(nil)) -> c57(ACTIVE(s(active(nil))), S(mark(nil)), MARK(nil)) MARK(s(U31(z0, z1, z2, z3))) -> c57(ACTIVE(s(active(U31(mark(z0), z1, z2, z3)))), S(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(s(take(z0, z1))) -> c57(ACTIVE(s(active(take(mark(z0), mark(z1))))), S(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(s(and(z0, z1))) -> c57(ACTIVE(s(active(and(mark(z0), z1)))), S(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(s(isNat(z0))) -> c57(ACTIVE(s(active(isNat(z0)))), S(mark(isNat(z0))), MARK(isNat(z0))) MARK(s(isNatList(z0))) -> c57(ACTIVE(s(active(isNatList(z0)))), S(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(s(isNatIList(z0))) -> c57(ACTIVE(s(active(isNatIList(z0)))), S(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(s(z0)) -> c57(S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(z0)), LENGTH(mark(z0)), MARK(z0)) MARK(length(zeros)) -> c58(ACTIVE(length(active(zeros))), LENGTH(mark(zeros)), MARK(zeros)) MARK(length(cons(z0, z1))) -> c58(ACTIVE(length(active(cons(mark(z0), z1)))), LENGTH(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(length(0)) -> c58(ACTIVE(length(active(0))), LENGTH(mark(0)), MARK(0)) MARK(length(U11(z0, z1))) -> c58(ACTIVE(length(active(U11(mark(z0), z1)))), LENGTH(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(length(tt)) -> c58(ACTIVE(length(active(tt))), LENGTH(mark(tt)), MARK(tt)) MARK(length(s(z0))) -> c58(ACTIVE(length(active(s(mark(z0))))), LENGTH(mark(s(z0))), MARK(s(z0))) MARK(length(length(z0))) -> c58(ACTIVE(length(active(length(mark(z0))))), LENGTH(mark(length(z0))), MARK(length(z0))) MARK(length(U21(z0))) -> c58(ACTIVE(length(active(U21(mark(z0))))), LENGTH(mark(U21(z0))), MARK(U21(z0))) MARK(length(nil)) -> c58(ACTIVE(length(active(nil))), LENGTH(mark(nil)), MARK(nil)) MARK(length(U31(z0, z1, z2, z3))) -> c58(ACTIVE(length(active(U31(mark(z0), z1, z2, z3)))), LENGTH(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(length(take(z0, z1))) -> c58(ACTIVE(length(active(take(mark(z0), mark(z1))))), LENGTH(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(length(and(z0, z1))) -> c58(ACTIVE(length(active(and(mark(z0), z1)))), LENGTH(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(length(isNat(z0))) -> c58(ACTIVE(length(active(isNat(z0)))), LENGTH(mark(isNat(z0))), MARK(isNat(z0))) MARK(length(isNatList(z0))) -> c58(ACTIVE(length(active(isNatList(z0)))), LENGTH(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(length(isNatIList(z0))) -> c58(ACTIVE(length(active(isNatIList(z0)))), LENGTH(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(U21(z0)) -> c59(ACTIVE(U21(z0)), U21'(mark(z0)), MARK(z0)) MARK(U21(zeros)) -> c59(ACTIVE(U21(active(zeros))), U21'(mark(zeros)), MARK(zeros)) MARK(U21(cons(z0, z1))) -> c59(ACTIVE(U21(active(cons(mark(z0), z1)))), U21'(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(U21(0)) -> c59(ACTIVE(U21(active(0))), U21'(mark(0)), MARK(0)) MARK(U21(U11(z0, z1))) -> c59(ACTIVE(U21(active(U11(mark(z0), z1)))), U21'(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(U21(tt)) -> c59(ACTIVE(U21(active(tt))), U21'(mark(tt)), MARK(tt)) MARK(U21(s(z0))) -> c59(ACTIVE(U21(active(s(mark(z0))))), U21'(mark(s(z0))), MARK(s(z0))) MARK(U21(length(z0))) -> c59(ACTIVE(U21(active(length(mark(z0))))), U21'(mark(length(z0))), MARK(length(z0))) MARK(U21(U21(z0))) -> c59(ACTIVE(U21(active(U21(mark(z0))))), U21'(mark(U21(z0))), MARK(U21(z0))) MARK(U21(nil)) -> c59(ACTIVE(U21(active(nil))), U21'(mark(nil)), MARK(nil)) MARK(U21(U31(z0, z1, z2, z3))) -> c59(ACTIVE(U21(active(U31(mark(z0), z1, z2, z3)))), U21'(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(U21(take(z0, z1))) -> c59(ACTIVE(U21(active(take(mark(z0), mark(z1))))), U21'(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(U21(and(z0, z1))) -> c59(ACTIVE(U21(active(and(mark(z0), z1)))), U21'(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(U21(isNat(z0))) -> c59(ACTIVE(U21(active(isNat(z0)))), U21'(mark(isNat(z0))), MARK(isNat(z0))) MARK(U21(isNatList(z0))) -> c59(ACTIVE(U21(active(isNatList(z0)))), U21'(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(U21(isNatIList(z0))) -> c59(ACTIVE(U21(active(isNatIList(z0)))), U21'(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(z0, z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U31(zeros, x1, x2, x3)) -> c61(ACTIVE(U31(active(zeros), x1, x2, x3)), U31'(mark(zeros), x1, x2, x3), MARK(zeros)) MARK(U31(cons(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(cons(mark(z0), z1)), x1, x2, x3)), U31'(mark(cons(z0, z1)), x1, x2, x3), MARK(cons(z0, z1))) MARK(U31(0, x1, x2, x3)) -> c61(ACTIVE(U31(active(0), x1, x2, x3)), U31'(mark(0), x1, x2, x3), MARK(0)) MARK(U31(U11(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(U11(mark(z0), z1)), x1, x2, x3)), U31'(mark(U11(z0, z1)), x1, x2, x3), MARK(U11(z0, z1))) MARK(U31(tt, x1, x2, x3)) -> c61(ACTIVE(U31(active(tt), x1, x2, x3)), U31'(mark(tt), x1, x2, x3), MARK(tt)) MARK(U31(s(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(s(mark(z0))), x1, x2, x3)), U31'(mark(s(z0)), x1, x2, x3), MARK(s(z0))) MARK(U31(length(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(length(mark(z0))), x1, x2, x3)), U31'(mark(length(z0)), x1, x2, x3), MARK(length(z0))) MARK(U31(U21(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(U21(mark(z0))), x1, x2, x3)), U31'(mark(U21(z0)), x1, x2, x3), MARK(U21(z0))) MARK(U31(nil, x1, x2, x3)) -> c61(ACTIVE(U31(active(nil), x1, x2, x3)), U31'(mark(nil), x1, x2, x3), MARK(nil)) MARK(U31(U31(z0, z1, z2, z3), x1, x2, x3)) -> c61(ACTIVE(U31(active(U31(mark(z0), z1, z2, z3)), x1, x2, x3)), U31'(mark(U31(z0, z1, z2, z3)), x1, x2, x3), MARK(U31(z0, z1, z2, z3))) MARK(U31(take(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(take(mark(z0), mark(z1))), x1, x2, x3)), U31'(mark(take(z0, z1)), x1, x2, x3), MARK(take(z0, z1))) MARK(U31(and(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(and(mark(z0), z1)), x1, x2, x3)), U31'(mark(and(z0, z1)), x1, x2, x3), MARK(and(z0, z1))) MARK(U31(isNat(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNat(z0)), x1, x2, x3)), U31'(mark(isNat(z0)), x1, x2, x3), MARK(isNat(z0))) MARK(U31(isNatList(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNatList(z0)), x1, x2, x3)), U31'(mark(isNatList(z0)), x1, x2, x3), MARK(isNatList(z0))) MARK(U31(isNatIList(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNatIList(z0)), x1, x2, x3)), U31'(mark(isNatIList(z0)), x1, x2, x3), MARK(isNatIList(z0))) MARK(U31(x0, x1, x2, x3)) -> c61(U31'(mark(x0), x1, x2, x3)) MARK(take(z0, x1)) -> c62(ACTIVE(take(z0, mark(x1))), TAKE(mark(z0), mark(x1)), MARK(z0), MARK(x1)) MARK(take(x0, z1)) -> c62(ACTIVE(take(mark(x0), z1)), TAKE(mark(x0), mark(z1)), MARK(x0), MARK(z1)) MARK(take(x0, zeros)) -> c62(ACTIVE(take(mark(x0), active(zeros))), TAKE(mark(x0), mark(zeros)), MARK(x0), MARK(zeros)) MARK(take(x0, cons(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(cons(mark(z0), z1)))), TAKE(mark(x0), mark(cons(z0, z1))), MARK(x0), MARK(cons(z0, z1))) MARK(take(x0, 0)) -> c62(ACTIVE(take(mark(x0), active(0))), TAKE(mark(x0), mark(0)), MARK(x0), MARK(0)) MARK(take(x0, U11(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(U11(mark(z0), z1)))), TAKE(mark(x0), mark(U11(z0, z1))), MARK(x0), MARK(U11(z0, z1))) MARK(take(x0, tt)) -> c62(ACTIVE(take(mark(x0), active(tt))), TAKE(mark(x0), mark(tt)), MARK(x0), MARK(tt)) MARK(take(x0, s(z0))) -> c62(ACTIVE(take(mark(x0), active(s(mark(z0))))), TAKE(mark(x0), mark(s(z0))), MARK(x0), MARK(s(z0))) MARK(take(x0, length(z0))) -> c62(ACTIVE(take(mark(x0), active(length(mark(z0))))), TAKE(mark(x0), mark(length(z0))), MARK(x0), MARK(length(z0))) MARK(take(x0, U21(z0))) -> c62(ACTIVE(take(mark(x0), active(U21(mark(z0))))), TAKE(mark(x0), mark(U21(z0))), MARK(x0), MARK(U21(z0))) MARK(take(x0, nil)) -> c62(ACTIVE(take(mark(x0), active(nil))), TAKE(mark(x0), mark(nil)), MARK(x0), MARK(nil)) MARK(take(x0, U31(z0, z1, z2, z3))) -> c62(ACTIVE(take(mark(x0), active(U31(mark(z0), z1, z2, z3)))), TAKE(mark(x0), mark(U31(z0, z1, z2, z3))), MARK(x0), MARK(U31(z0, z1, z2, z3))) MARK(take(x0, take(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(take(mark(z0), mark(z1))))), TAKE(mark(x0), mark(take(z0, z1))), MARK(x0), MARK(take(z0, z1))) MARK(take(x0, and(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(and(mark(z0), z1)))), TAKE(mark(x0), mark(and(z0, z1))), MARK(x0), MARK(and(z0, z1))) MARK(take(x0, isNat(z0))) -> c62(ACTIVE(take(mark(x0), active(isNat(z0)))), TAKE(mark(x0), mark(isNat(z0))), MARK(x0), MARK(isNat(z0))) MARK(take(x0, isNatList(z0))) -> c62(ACTIVE(take(mark(x0), active(isNatList(z0)))), TAKE(mark(x0), mark(isNatList(z0))), MARK(x0), MARK(isNatList(z0))) MARK(take(x0, isNatIList(z0))) -> c62(ACTIVE(take(mark(x0), active(isNatIList(z0)))), TAKE(mark(x0), mark(isNatIList(z0))), MARK(x0), MARK(isNatIList(z0))) MARK(take(zeros, x1)) -> c62(ACTIVE(take(active(zeros), mark(x1))), TAKE(mark(zeros), mark(x1)), MARK(zeros), MARK(x1)) MARK(take(cons(z0, z1), x1)) -> c62(ACTIVE(take(active(cons(mark(z0), z1)), mark(x1))), TAKE(mark(cons(z0, z1)), mark(x1)), MARK(cons(z0, z1)), MARK(x1)) MARK(take(0, x1)) -> c62(ACTIVE(take(active(0), mark(x1))), TAKE(mark(0), mark(x1)), MARK(0), MARK(x1)) MARK(take(U11(z0, z1), x1)) -> c62(ACTIVE(take(active(U11(mark(z0), z1)), mark(x1))), TAKE(mark(U11(z0, z1)), mark(x1)), MARK(U11(z0, z1)), MARK(x1)) MARK(take(tt, x1)) -> c62(ACTIVE(take(active(tt), mark(x1))), TAKE(mark(tt), mark(x1)), MARK(tt), MARK(x1)) MARK(take(s(z0), x1)) -> c62(ACTIVE(take(active(s(mark(z0))), mark(x1))), TAKE(mark(s(z0)), mark(x1)), MARK(s(z0)), MARK(x1)) MARK(take(length(z0), x1)) -> c62(ACTIVE(take(active(length(mark(z0))), mark(x1))), TAKE(mark(length(z0)), mark(x1)), MARK(length(z0)), MARK(x1)) MARK(take(U21(z0), x1)) -> c62(ACTIVE(take(active(U21(mark(z0))), mark(x1))), TAKE(mark(U21(z0)), mark(x1)), MARK(U21(z0)), MARK(x1)) MARK(take(nil, x1)) -> c62(ACTIVE(take(active(nil), mark(x1))), TAKE(mark(nil), mark(x1)), MARK(nil), MARK(x1)) MARK(take(U31(z0, z1, z2, z3), x1)) -> c62(ACTIVE(take(active(U31(mark(z0), z1, z2, z3)), mark(x1))), TAKE(mark(U31(z0, z1, z2, z3)), mark(x1)), MARK(U31(z0, z1, z2, z3)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c62(ACTIVE(take(active(take(mark(z0), mark(z1))), mark(x1))), TAKE(mark(take(z0, z1)), mark(x1)), MARK(take(z0, z1)), MARK(x1)) MARK(take(and(z0, z1), x1)) -> c62(ACTIVE(take(active(and(mark(z0), z1)), mark(x1))), TAKE(mark(and(z0, z1)), mark(x1)), MARK(and(z0, z1)), MARK(x1)) MARK(take(isNat(z0), x1)) -> c62(ACTIVE(take(active(isNat(z0)), mark(x1))), TAKE(mark(isNat(z0)), mark(x1)), MARK(isNat(z0)), MARK(x1)) MARK(take(isNatList(z0), x1)) -> c62(ACTIVE(take(active(isNatList(z0)), mark(x1))), TAKE(mark(isNatList(z0)), mark(x1)), MARK(isNatList(z0)), MARK(x1)) MARK(take(isNatIList(z0), x1)) -> c62(ACTIVE(take(active(isNatIList(z0)), mark(x1))), TAKE(mark(isNatIList(z0)), mark(x1)), MARK(isNatIList(z0)), MARK(x1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(z0, z1)), AND(mark(z0), z1), MARK(z0)) MARK(and(zeros, x1)) -> c63(ACTIVE(and(active(zeros), x1)), AND(mark(zeros), x1), MARK(zeros)) MARK(and(cons(z0, z1), x1)) -> c63(ACTIVE(and(active(cons(mark(z0), z1)), x1)), AND(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(and(0, x1)) -> c63(ACTIVE(and(active(0), x1)), AND(mark(0), x1), MARK(0)) MARK(and(U11(z0, z1), x1)) -> c63(ACTIVE(and(active(U11(mark(z0), z1)), x1)), AND(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(and(tt, x1)) -> c63(ACTIVE(and(active(tt), x1)), AND(mark(tt), x1), MARK(tt)) MARK(and(s(z0), x1)) -> c63(ACTIVE(and(active(s(mark(z0))), x1)), AND(mark(s(z0)), x1), MARK(s(z0))) MARK(and(length(z0), x1)) -> c63(ACTIVE(and(active(length(mark(z0))), x1)), AND(mark(length(z0)), x1), MARK(length(z0))) MARK(and(U21(z0), x1)) -> c63(ACTIVE(and(active(U21(mark(z0))), x1)), AND(mark(U21(z0)), x1), MARK(U21(z0))) MARK(and(nil, x1)) -> c63(ACTIVE(and(active(nil), x1)), AND(mark(nil), x1), MARK(nil)) MARK(and(U31(z0, z1, z2, z3), x1)) -> c63(ACTIVE(and(active(U31(mark(z0), z1, z2, z3)), x1)), AND(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(and(take(z0, z1), x1)) -> c63(ACTIVE(and(active(take(mark(z0), mark(z1))), x1)), AND(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(and(and(z0, z1), x1)) -> c63(ACTIVE(and(active(and(mark(z0), z1)), x1)), AND(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(and(isNat(z0), x1)) -> c63(ACTIVE(and(active(isNat(z0)), x1)), AND(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(and(isNatList(z0), x1)) -> c63(ACTIVE(and(active(isNatList(z0)), x1)), AND(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(and(isNatIList(z0), x1)) -> c63(ACTIVE(and(active(isNatIList(z0)), x1)), AND(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(and(x0, x1)) -> c63(AND(mark(x0), x1)) K tuples:none Defined Rule Symbols: encArg_1, active_1, mark_1, cons_2, U11_2, s_1, length_1, U21_1, U31_4, take_2, and_2, isNat_1, isNatList_1, isNatIList_1 Defined Pair Symbols: ACTIVE_1, MARK_1, CONS_2, U11'_2, S_1, LENGTH_1, U21'_1, U31'_4, TAKE_2, AND_2, ISNAT_1, ISNATLIST_1, ISNATILIST_1, ENCODE_U11_2, ENCODE_S_1, ENCODE_LENGTH_1, ENCODE_U21_1, ENCODE_U31_4, ENCODE_TAKE_2, ENCODE_AND_2, ENCODE_ISNAT_1, ENCODE_ISNATLIST_1, ENCODE_ISNATILIST_1, ENCARG_1, ENCODE_ACTIVE_1, ENCODE_MARK_1, ENCODE_CONS_2 Compound Symbols: c36_1, c37_3, c38_1, c39_1, c40_2, c41_2, c42_2, c43_1, c45_1, c48_1, c52_1, c64_2, c65_2, c66_2, c67_1, c68_1, c69_1, c70_1, c71_1, c72_1, c73_1, c74_1, c75_1, c76_1, c77_1, c78_1, c79_1, c80_1, c81_1, c82_1, c83_1, c84_1, c85_1, c86_1, c87_1, c88_1, c89_1, c90_1, c91_1, c92_1, c93_1, c94_1, c95_1, c96_1, c97_1, c98_1, c99_1, c100_1, c101_1, c102_1, c34_1, c35_2, c44_3, c46_3, c47_3, c49_3, c50_2, c51_4, c54, c56, c60, c_1, c4_2, c4_1, c5_2, c5_1, c6_3, c6_2, c7_3, c7_2, c8_2, c9_2, c10_2, c11_5, c11_4, c12_3, c12_2, c13_3, c13_2, c14_2, c15_2, c16_2, c53_3, c53_1, c53_2, c55_3, c55_1, c57_3, c57_2, c58_3, c59_3, c61_3, c61_1, c62_4, c63_3, c63_1 ---------------------------------------- (123) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace ENCODE_U11(z0, z1) -> c(U11'(encArg(z0), encArg(z1))) by ENCODE_U11(x0, zeros) -> c(U11'(encArg(x0), zeros)) ENCODE_U11(x0, 0) -> c(U11'(encArg(x0), 0)) ENCODE_U11(x0, tt) -> c(U11'(encArg(x0), tt)) ENCODE_U11(x0, nil) -> c(U11'(encArg(x0), nil)) ENCODE_U11(x0, cons_active(z0)) -> c(U11'(encArg(x0), active(encArg(z0)))) ENCODE_U11(x0, cons_mark(z0)) -> c(U11'(encArg(x0), mark(encArg(z0)))) ENCODE_U11(x0, cons_cons(z0, z1)) -> c(U11'(encArg(x0), cons(encArg(z0), encArg(z1)))) ENCODE_U11(x0, cons_U11(z0, z1)) -> c(U11'(encArg(x0), U11(encArg(z0), encArg(z1)))) ENCODE_U11(x0, cons_s(z0)) -> c(U11'(encArg(x0), s(encArg(z0)))) ENCODE_U11(x0, cons_length(z0)) -> c(U11'(encArg(x0), length(encArg(z0)))) ENCODE_U11(x0, cons_U21(z0)) -> c(U11'(encArg(x0), U21(encArg(z0)))) ENCODE_U11(x0, cons_U31(z0, z1, z2, z3)) -> c(U11'(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)))) ENCODE_U11(x0, cons_take(z0, z1)) -> c(U11'(encArg(x0), take(encArg(z0), encArg(z1)))) ENCODE_U11(x0, cons_and(z0, z1)) -> c(U11'(encArg(x0), and(encArg(z0), encArg(z1)))) ENCODE_U11(x0, cons_isNat(z0)) -> c(U11'(encArg(x0), isNat(encArg(z0)))) ENCODE_U11(x0, cons_isNatList(z0)) -> c(U11'(encArg(x0), isNatList(encArg(z0)))) ENCODE_U11(x0, cons_isNatIList(z0)) -> c(U11'(encArg(x0), isNatIList(encArg(z0)))) ENCODE_U11(zeros, x1) -> c(U11'(zeros, encArg(x1))) ENCODE_U11(0, x1) -> c(U11'(0, encArg(x1))) ENCODE_U11(tt, x1) -> c(U11'(tt, encArg(x1))) ENCODE_U11(nil, x1) -> c(U11'(nil, encArg(x1))) ENCODE_U11(cons_active(z0), x1) -> c(U11'(active(encArg(z0)), encArg(x1))) ENCODE_U11(cons_mark(z0), x1) -> c(U11'(mark(encArg(z0)), encArg(x1))) ENCODE_U11(cons_cons(z0, z1), x1) -> c(U11'(cons(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_U11(cons_U11(z0, z1), x1) -> c(U11'(U11(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_U11(cons_s(z0), x1) -> c(U11'(s(encArg(z0)), encArg(x1))) ENCODE_U11(cons_length(z0), x1) -> c(U11'(length(encArg(z0)), encArg(x1))) ENCODE_U11(cons_U21(z0), x1) -> c(U11'(U21(encArg(z0)), encArg(x1))) ENCODE_U11(cons_U31(z0, z1, z2, z3), x1) -> c(U11'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1))) ENCODE_U11(cons_take(z0, z1), x1) -> c(U11'(take(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_U11(cons_and(z0, z1), x1) -> c(U11'(and(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_U11(cons_isNat(z0), x1) -> c(U11'(isNat(encArg(z0)), encArg(x1))) ENCODE_U11(cons_isNatList(z0), x1) -> c(U11'(isNatList(encArg(z0)), encArg(x1))) ENCODE_U11(cons_isNatIList(z0), x1) -> c(U11'(isNatIList(encArg(z0)), encArg(x1))) ---------------------------------------- (124) Obligation: Complexity Dependency Tuples Problem Rules: encArg(zeros) -> zeros encArg(0) -> 0 encArg(tt) -> tt encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_U11(z0, z1)) -> U11(encArg(z0), encArg(z1)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_length(z0)) -> length(encArg(z0)) encArg(cons_U21(z0)) -> U21(encArg(z0)) encArg(cons_U31(z0, z1, z2, z3)) -> U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_isNat(z0)) -> isNat(encArg(z0)) encArg(cons_isNatList(z0)) -> isNatList(encArg(z0)) encArg(cons_isNatIList(z0)) -> isNatIList(encArg(z0)) active(zeros) -> mark(cons(0, zeros)) active(U11(tt, z0)) -> mark(s(length(z0))) active(U21(tt)) -> mark(nil) active(U31(tt, z0, z1, z2)) -> mark(cons(z2, take(z1, z0))) active(and(tt, z0)) -> mark(z0) active(isNat(0)) -> mark(tt) active(isNat(length(z0))) -> mark(isNatList(z0)) active(isNat(s(z0))) -> mark(isNat(z0)) active(isNatIList(z0)) -> mark(isNatList(z0)) active(isNatIList(zeros)) -> mark(tt) active(isNatIList(cons(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(isNatList(nil)) -> mark(tt) active(isNatList(cons(z0, z1))) -> mark(and(isNat(z0), isNatList(z1))) active(isNatList(take(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(length(nil)) -> mark(0) active(length(cons(z0, z1))) -> mark(U11(and(isNatList(z1), isNat(z0)), z1)) active(take(0, z0)) -> mark(U21(isNatIList(z0))) active(take(s(z0), cons(z1, z2))) -> mark(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)) mark(zeros) -> active(zeros) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(0) -> active(0) mark(U11(z0, z1)) -> active(U11(mark(z0), z1)) mark(tt) -> active(tt) mark(s(z0)) -> active(s(mark(z0))) mark(length(z0)) -> active(length(mark(z0))) mark(U21(z0)) -> active(U21(mark(z0))) mark(nil) -> active(nil) mark(U31(z0, z1, z2, z3)) -> active(U31(mark(z0), z1, z2, z3)) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(isNat(z0)) -> active(isNat(z0)) mark(isNatList(z0)) -> active(isNatList(z0)) mark(isNatIList(z0)) -> active(isNatIList(z0)) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) U11(mark(z0), z1) -> U11(z0, z1) U11(z0, mark(z1)) -> U11(z0, z1) U11(active(z0), z1) -> U11(z0, z1) U11(z0, active(z1)) -> U11(z0, z1) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) length(mark(z0)) -> length(z0) length(active(z0)) -> length(z0) U21(mark(z0)) -> U21(z0) U21(active(z0)) -> U21(z0) U31(mark(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, mark(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, mark(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, mark(z3)) -> U31(z0, z1, z2, z3) U31(active(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, active(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, active(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, active(z3)) -> U31(z0, z1, z2, z3) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) isNat(mark(z0)) -> isNat(z0) isNat(active(z0)) -> isNat(z0) isNatList(mark(z0)) -> isNatList(z0) isNatList(active(z0)) -> isNatList(z0) isNatIList(mark(z0)) -> isNatIList(z0) isNatIList(active(z0)) -> isNatIList(z0) Tuples: ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_LENGTH(z0) -> c(LENGTH(encArg(z0))) ENCODE_U21(z0) -> c(U21'(encArg(z0))) ENCODE_U31(z0, z1, z2, z3) -> c(U31'(encArg(z0), encArg(z1), encArg(z2), encArg(z3))) ENCODE_TAKE(z0, z1) -> c(TAKE(encArg(z0), encArg(z1))) ENCODE_AND(z0, z1) -> c(AND(encArg(z0), encArg(z1))) ENCODE_ISNAT(z0) -> c(ISNAT(encArg(z0))) ENCODE_ISNATLIST(z0) -> c(ISNATLIST(encArg(z0))) ENCODE_ISNATILIST(z0) -> c(ISNATILIST(encArg(z0))) ENCARG(cons_active(cons_active(z0))) -> c4(ACTIVE(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_active(cons_mark(z0))) -> c4(ACTIVE(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_active(cons_cons(z0, z1))) -> c4(ACTIVE(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_active(cons_U11(z0, z1))) -> c4(ACTIVE(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_active(cons_s(z0))) -> c4(ACTIVE(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_active(cons_length(z0))) -> c4(ACTIVE(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_active(cons_U21(z0))) -> c4(ACTIVE(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_active(cons_U31(z0, z1, z2, z3))) -> c4(ACTIVE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_active(cons_take(z0, z1))) -> c4(ACTIVE(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_active(cons_and(z0, z1))) -> c4(ACTIVE(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_active(cons_isNat(z0))) -> c4(ACTIVE(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_active(cons_isNatList(z0))) -> c4(ACTIVE(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_active(cons_isNatIList(z0))) -> c4(ACTIVE(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_active(zeros)) -> c4(ACTIVE(zeros)) ENCARG(cons_mark(cons_active(z0))) -> c5(MARK(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_mark(cons_mark(z0))) -> c5(MARK(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_mark(cons_cons(z0, z1))) -> c5(MARK(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_mark(cons_U11(z0, z1))) -> c5(MARK(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_mark(cons_s(z0))) -> c5(MARK(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_mark(cons_length(z0))) -> c5(MARK(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_mark(cons_U21(z0))) -> c5(MARK(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_mark(cons_U31(z0, z1, z2, z3))) -> c5(MARK(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_mark(cons_take(z0, z1))) -> c5(MARK(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(cons_and(z0, z1))) -> c5(MARK(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_mark(cons_isNat(z0))) -> c5(MARK(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_mark(cons_isNatList(z0))) -> c5(MARK(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_mark(cons_isNatIList(z0))) -> c5(MARK(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_mark(zeros)) -> c5(MARK(zeros)) ENCARG(cons_mark(0)) -> c5(MARK(0)) ENCARG(cons_mark(tt)) -> c5(MARK(tt)) ENCARG(cons_mark(nil)) -> c5(MARK(nil)) ENCARG(cons_cons(x0, cons_active(z0))) -> c6(CONS(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_cons(x0, cons_mark(z0))) -> c6(CONS(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_cons(x0, cons_cons(z0, z1))) -> c6(CONS(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_cons(x0, cons_U11(z0, z1))) -> c6(CONS(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_cons(x0, cons_s(z0))) -> c6(CONS(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_cons(x0, cons_length(z0))) -> c6(CONS(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_cons(x0, cons_U21(z0))) -> c6(CONS(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_cons(x0, cons_U31(z0, z1, z2, z3))) -> c6(CONS(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_cons(x0, cons_take(z0, z1))) -> c6(CONS(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_cons(x0, cons_and(z0, z1))) -> c6(CONS(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_cons(x0, cons_isNat(z0))) -> c6(CONS(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_cons(x0, cons_isNatList(z0))) -> c6(CONS(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_cons(x0, cons_isNatIList(z0))) -> c6(CONS(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_cons(cons_active(z0), x1)) -> c6(CONS(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_mark(z0), x1)) -> c6(CONS(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_cons(z0, z1), x1)) -> c6(CONS(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_U11(z0, z1), x1)) -> c6(CONS(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_s(z0), x1)) -> c6(CONS(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_length(z0), x1)) -> c6(CONS(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U21(z0), x1)) -> c6(CONS(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U31(z0, z1, z2, z3), x1)) -> c6(CONS(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_cons(cons_take(z0, z1), x1)) -> c6(CONS(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_and(z0, z1), x1)) -> c6(CONS(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_isNat(z0), x1)) -> c6(CONS(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_isNatList(z0), x1)) -> c6(CONS(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_isNatIList(z0), x1)) -> c6(CONS(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_cons(x0, zeros)) -> c6(CONS(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_cons(x0, 0)) -> c6(CONS(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_cons(x0, tt)) -> c6(CONS(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_cons(x0, nil)) -> c6(CONS(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_cons(zeros, x1)) -> c6(CONS(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(0, x1)) -> c6(CONS(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(tt, x1)) -> c6(CONS(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(nil, x1)) -> c6(CONS(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(x0, cons_active(z0))) -> c7(U11'(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_U11(x0, cons_mark(z0))) -> c7(U11'(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_U11(x0, cons_cons(z0, z1))) -> c7(U11'(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U11(x0, cons_U11(z0, z1))) -> c7(U11'(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U11(x0, cons_s(z0))) -> c7(U11'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_U11(x0, cons_length(z0))) -> c7(U11'(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_U11(x0, cons_U21(z0))) -> c7(U11'(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_U11(x0, cons_U31(z0, z1, z2, z3))) -> c7(U11'(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U11(x0, cons_take(z0, z1))) -> c7(U11'(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_U11(x0, cons_and(z0, z1))) -> c7(U11'(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_U11(x0, cons_isNat(z0))) -> c7(U11'(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_U11(x0, cons_isNatList(z0))) -> c7(U11'(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_U11(x0, cons_isNatIList(z0))) -> c7(U11'(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U11(cons_active(z0), x1)) -> c7(U11'(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_mark(z0), x1)) -> c7(U11'(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_cons(z0, z1), x1)) -> c7(U11'(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_U11(z0, z1), x1)) -> c7(U11'(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_s(z0), x1)) -> c7(U11'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_length(z0), x1)) -> c7(U11'(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_U21(z0), x1)) -> c7(U11'(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_U31(z0, z1, z2, z3), x1)) -> c7(U11'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_U11(cons_take(z0, z1), x1)) -> c7(U11'(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_and(z0, z1), x1)) -> c7(U11'(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_isNat(z0), x1)) -> c7(U11'(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_isNatList(z0), x1)) -> c7(U11'(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_isNatIList(z0), x1)) -> c7(U11'(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_U11(x0, zeros)) -> c7(U11'(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_U11(x0, 0)) -> c7(U11'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_U11(x0, tt)) -> c7(U11'(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_U11(x0, nil)) -> c7(U11'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_U11(zeros, x1)) -> c7(U11'(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(0, x1)) -> c7(U11'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(tt, x1)) -> c7(U11'(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(nil, x1)) -> c7(U11'(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_s(cons_active(z0))) -> c8(S(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_s(cons_mark(z0))) -> c8(S(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_s(cons_cons(z0, z1))) -> c8(S(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_s(cons_U11(z0, z1))) -> c8(S(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_s(cons_s(z0))) -> c8(S(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_length(z0))) -> c8(S(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_s(cons_U21(z0))) -> c8(S(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_s(cons_U31(z0, z1, z2, z3))) -> c8(S(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_s(cons_take(z0, z1))) -> c8(S(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_s(cons_and(z0, z1))) -> c8(S(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_s(cons_isNat(z0))) -> c8(S(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_s(cons_isNatList(z0))) -> c8(S(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_s(cons_isNatIList(z0))) -> c8(S(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_length(cons_active(z0))) -> c9(LENGTH(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_length(cons_mark(z0))) -> c9(LENGTH(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_length(cons_cons(z0, z1))) -> c9(LENGTH(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_length(cons_U11(z0, z1))) -> c9(LENGTH(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_length(cons_s(z0))) -> c9(LENGTH(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_length(cons_length(z0))) -> c9(LENGTH(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_length(cons_U21(z0))) -> c9(LENGTH(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_length(cons_U31(z0, z1, z2, z3))) -> c9(LENGTH(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_length(cons_take(z0, z1))) -> c9(LENGTH(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_length(cons_and(z0, z1))) -> c9(LENGTH(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_length(cons_isNat(z0))) -> c9(LENGTH(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_length(cons_isNatList(z0))) -> c9(LENGTH(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_length(cons_isNatIList(z0))) -> c9(LENGTH(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U21(cons_active(z0))) -> c10(U21'(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_U21(cons_mark(z0))) -> c10(U21'(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_U21(cons_cons(z0, z1))) -> c10(U21'(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U21(cons_U11(z0, z1))) -> c10(U21'(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U21(cons_s(z0))) -> c10(U21'(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_U21(cons_length(z0))) -> c10(U21'(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_U21(cons_U21(z0))) -> c10(U21'(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_U21(cons_U31(z0, z1, z2, z3))) -> c10(U21'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U21(cons_take(z0, z1))) -> c10(U21'(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_U21(cons_and(z0, z1))) -> c10(U21'(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_U21(cons_isNat(z0))) -> c10(U21'(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_U21(cons_isNatList(z0))) -> c10(U21'(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_U21(cons_isNatIList(z0))) -> c10(U21'(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U31(x0, x1, x2, cons_active(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), active(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_active(z0))) ENCARG(cons_U31(x0, x1, x2, cons_mark(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), mark(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_mark(z0))) ENCARG(cons_U31(x0, x1, x2, cons_cons(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_U11(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_s(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), s(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_s(z0))) ENCARG(cons_U31(x0, x1, x2, cons_length(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), length(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_length(z0))) ENCARG(cons_U31(x0, x1, x2, cons_U21(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U21(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U21(z0))) ENCARG(cons_U31(x0, x1, x2, cons_U31(z0, z1, z2, z3))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U31(x0, x1, x2, cons_take(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_take(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_and(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_and(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_isNat(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNat(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNat(z0))) ENCARG(cons_U31(x0, x1, x2, cons_isNatList(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNatList(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNatList(z0))) ENCARG(cons_U31(x0, x1, x2, cons_isNatIList(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U31(x0, x1, cons_active(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), active(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_active(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_mark(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), mark(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_mark(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_cons(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), cons(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_cons(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U11(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), U11(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U11(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_s(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), s(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_s(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_length(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), length(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_length(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U21(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), U21(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U21(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U31(z0, z1, z2, z3), x3)) -> c11(U31'(encArg(x0), encArg(x1), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_take(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), take(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_take(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_and(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), and(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_and(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNat(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNat(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNat(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNatList(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNatList(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNatList(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNatIList(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNatIList(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNatIList(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, cons_active(z0), x2, x3)) -> c11(U31'(encArg(x0), active(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_active(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_mark(z0), x2, x3)) -> c11(U31'(encArg(x0), mark(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_mark(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_cons(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), cons(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_cons(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U11(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), U11(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U11(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_s(z0), x2, x3)) -> c11(U31'(encArg(x0), s(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_s(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_length(z0), x2, x3)) -> c11(U31'(encArg(x0), length(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_length(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U21(z0), x2, x3)) -> c11(U31'(encArg(x0), U21(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U21(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U31(z0, z1, z2, z3), x2, x3)) -> c11(U31'(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_take(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), take(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_take(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_and(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), and(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_and(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNat(z0), x2, x3)) -> c11(U31'(encArg(x0), isNat(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNat(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNatList(z0), x2, x3)) -> c11(U31'(encArg(x0), isNatList(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNatList(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNatIList(z0), x2, x3)) -> c11(U31'(encArg(x0), isNatIList(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNatIList(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_active(z0), x1, x2, x3)) -> c11(U31'(active(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_active(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_mark(z0), x1, x2, x3)) -> c11(U31'(mark(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_mark(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_cons(z0, z1), x1, x2, x3)) -> c11(U31'(cons(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_cons(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U11(z0, z1), x1, x2, x3)) -> c11(U31'(U11(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U11(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_s(z0), x1, x2, x3)) -> c11(U31'(s(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_s(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_length(z0), x1, x2, x3)) -> c11(U31'(length(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_length(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U21(z0), x1, x2, x3)) -> c11(U31'(U21(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U21(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U31(z0, z1, z2, z3), x1, x2, x3)) -> c11(U31'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_take(z0, z1), x1, x2, x3)) -> c11(U31'(take(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_take(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_and(z0, z1), x1, x2, x3)) -> c11(U31'(and(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_and(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNat(z0), x1, x2, x3)) -> c11(U31'(isNat(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNat(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNatList(z0), x1, x2, x3)) -> c11(U31'(isNatList(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNatList(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNatIList(z0), x1, x2, x3)) -> c11(U31'(isNatIList(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNatIList(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, x1, x2, zeros)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), zeros), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, 0)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), 0), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, tt)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), tt), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, nil)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), nil), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, zeros, x3)) -> c11(U31'(encArg(x0), encArg(x1), zeros, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, 0, x3)) -> c11(U31'(encArg(x0), encArg(x1), 0, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, tt, x3)) -> c11(U31'(encArg(x0), encArg(x1), tt, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, nil, x3)) -> c11(U31'(encArg(x0), encArg(x1), nil, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, zeros, x2, x3)) -> c11(U31'(encArg(x0), zeros, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, 0, x2, x3)) -> c11(U31'(encArg(x0), 0, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, tt, x2, x3)) -> c11(U31'(encArg(x0), tt, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, nil, x2, x3)) -> c11(U31'(encArg(x0), nil, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(zeros, x1, x2, x3)) -> c11(U31'(zeros, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(0, x1, x2, x3)) -> c11(U31'(0, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(tt, x1, x2, x3)) -> c11(U31'(tt, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(nil, x1, x2, x3)) -> c11(U31'(nil, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_take(x0, cons_active(z0))) -> c12(TAKE(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_take(x0, cons_mark(z0))) -> c12(TAKE(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_take(x0, cons_cons(z0, z1))) -> c12(TAKE(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_take(x0, cons_U11(z0, z1))) -> c12(TAKE(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_take(x0, cons_s(z0))) -> c12(TAKE(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_take(x0, cons_length(z0))) -> c12(TAKE(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_take(x0, cons_U21(z0))) -> c12(TAKE(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_take(x0, cons_U31(z0, z1, z2, z3))) -> c12(TAKE(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_take(x0, cons_take(z0, z1))) -> c12(TAKE(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_take(x0, cons_and(z0, z1))) -> c12(TAKE(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_take(x0, cons_isNat(z0))) -> c12(TAKE(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_take(x0, cons_isNatList(z0))) -> c12(TAKE(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_take(x0, cons_isNatIList(z0))) -> c12(TAKE(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_take(cons_active(z0), x1)) -> c12(TAKE(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_take(cons_mark(z0), x1)) -> c12(TAKE(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_take(cons_cons(z0, z1), x1)) -> c12(TAKE(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_U11(z0, z1), x1)) -> c12(TAKE(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_s(z0), x1)) -> c12(TAKE(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_take(cons_length(z0), x1)) -> c12(TAKE(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_take(cons_U21(z0), x1)) -> c12(TAKE(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_take(cons_U31(z0, z1, z2, z3), x1)) -> c12(TAKE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_take(cons_take(z0, z1), x1)) -> c12(TAKE(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_and(z0, z1), x1)) -> c12(TAKE(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_isNat(z0), x1)) -> c12(TAKE(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_take(cons_isNatList(z0), x1)) -> c12(TAKE(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_take(cons_isNatIList(z0), x1)) -> c12(TAKE(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_take(x0, zeros)) -> c12(TAKE(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_take(x0, 0)) -> c12(TAKE(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_take(x0, tt)) -> c12(TAKE(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_take(x0, nil)) -> c12(TAKE(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_take(zeros, x1)) -> c12(TAKE(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(0, x1)) -> c12(TAKE(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(tt, x1)) -> c12(TAKE(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(nil, x1)) -> c12(TAKE(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(x0, cons_active(z0))) -> c13(AND(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_and(x0, cons_mark(z0))) -> c13(AND(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_and(x0, cons_cons(z0, z1))) -> c13(AND(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_and(x0, cons_U11(z0, z1))) -> c13(AND(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_and(x0, cons_s(z0))) -> c13(AND(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_and(x0, cons_length(z0))) -> c13(AND(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_and(x0, cons_U21(z0))) -> c13(AND(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_and(x0, cons_U31(z0, z1, z2, z3))) -> c13(AND(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_and(x0, cons_take(z0, z1))) -> c13(AND(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_and(x0, cons_and(z0, z1))) -> c13(AND(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_and(x0, cons_isNat(z0))) -> c13(AND(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_and(x0, cons_isNatList(z0))) -> c13(AND(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_and(x0, cons_isNatIList(z0))) -> c13(AND(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_and(cons_active(z0), x1)) -> c13(AND(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_and(cons_mark(z0), x1)) -> c13(AND(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_and(cons_cons(z0, z1), x1)) -> c13(AND(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_U11(z0, z1), x1)) -> c13(AND(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_s(z0), x1)) -> c13(AND(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_and(cons_length(z0), x1)) -> c13(AND(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_and(cons_U21(z0), x1)) -> c13(AND(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_and(cons_U31(z0, z1, z2, z3), x1)) -> c13(AND(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_and(cons_take(z0, z1), x1)) -> c13(AND(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_and(z0, z1), x1)) -> c13(AND(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_isNat(z0), x1)) -> c13(AND(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_and(cons_isNatList(z0), x1)) -> c13(AND(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_and(cons_isNatIList(z0), x1)) -> c13(AND(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_and(x0, zeros)) -> c13(AND(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_and(x0, 0)) -> c13(AND(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_and(x0, tt)) -> c13(AND(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_and(x0, nil)) -> c13(AND(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_and(zeros, x1)) -> c13(AND(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(0, x1)) -> c13(AND(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(tt, x1)) -> c13(AND(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(nil, x1)) -> c13(AND(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_isNat(cons_active(z0))) -> c14(ISNAT(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_isNat(cons_mark(z0))) -> c14(ISNAT(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_isNat(cons_cons(z0, z1))) -> c14(ISNAT(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_isNat(cons_U11(z0, z1))) -> c14(ISNAT(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_isNat(cons_s(z0))) -> c14(ISNAT(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_isNat(cons_length(z0))) -> c14(ISNAT(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_isNat(cons_U21(z0))) -> c14(ISNAT(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_isNat(cons_U31(z0, z1, z2, z3))) -> c14(ISNAT(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_isNat(cons_take(z0, z1))) -> c14(ISNAT(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_isNat(cons_and(z0, z1))) -> c14(ISNAT(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_isNat(cons_isNat(z0))) -> c14(ISNAT(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_isNat(cons_isNatList(z0))) -> c14(ISNAT(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_isNat(cons_isNatIList(z0))) -> c14(ISNAT(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_isNatList(cons_active(z0))) -> c15(ISNATLIST(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_isNatList(cons_mark(z0))) -> c15(ISNATLIST(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_isNatList(cons_cons(z0, z1))) -> c15(ISNATLIST(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_isNatList(cons_U11(z0, z1))) -> c15(ISNATLIST(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_isNatList(cons_s(z0))) -> c15(ISNATLIST(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_isNatList(cons_length(z0))) -> c15(ISNATLIST(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_isNatList(cons_U21(z0))) -> c15(ISNATLIST(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_isNatList(cons_U31(z0, z1, z2, z3))) -> c15(ISNATLIST(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_isNatList(cons_take(z0, z1))) -> c15(ISNATLIST(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_isNatList(cons_and(z0, z1))) -> c15(ISNATLIST(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_isNatList(cons_isNat(z0))) -> c15(ISNATLIST(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_isNatList(cons_isNatList(z0))) -> c15(ISNATLIST(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_isNatList(cons_isNatIList(z0))) -> c15(ISNATLIST(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_isNatIList(cons_active(z0))) -> c16(ISNATILIST(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_isNatIList(cons_mark(z0))) -> c16(ISNATILIST(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_isNatIList(cons_cons(z0, z1))) -> c16(ISNATILIST(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_isNatIList(cons_U11(z0, z1))) -> c16(ISNATILIST(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_isNatIList(cons_s(z0))) -> c16(ISNATILIST(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_isNatIList(cons_length(z0))) -> c16(ISNATILIST(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_isNatIList(cons_U21(z0))) -> c16(ISNATILIST(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_isNatIList(cons_U31(z0, z1, z2, z3))) -> c16(ISNATILIST(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_isNatIList(cons_take(z0, z1))) -> c16(ISNATILIST(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_isNatIList(cons_and(z0, z1))) -> c16(ISNATILIST(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_isNatIList(cons_isNat(z0))) -> c16(ISNATILIST(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_isNatIList(cons_isNatList(z0))) -> c16(ISNATILIST(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_isNatIList(cons_isNatIList(z0))) -> c16(ISNATILIST(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) MARK(cons(zeros, x1)) -> c53(ACTIVE(cons(active(zeros), x1)), CONS(mark(zeros), x1), MARK(zeros)) MARK(cons(cons(z0, z1), x1)) -> c53(ACTIVE(cons(active(cons(mark(z0), z1)), x1)), CONS(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(cons(0, x1)) -> c53(ACTIVE(cons(active(0), x1)), CONS(mark(0), x1), MARK(0)) MARK(cons(U11(z0, z1), x1)) -> c53(ACTIVE(cons(active(U11(mark(z0), z1)), x1)), CONS(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(cons(tt, x1)) -> c53(ACTIVE(cons(active(tt), x1)), CONS(mark(tt), x1), MARK(tt)) MARK(cons(s(z0), x1)) -> c53(ACTIVE(cons(active(s(mark(z0))), x1)), CONS(mark(s(z0)), x1), MARK(s(z0))) MARK(cons(length(z0), x1)) -> c53(ACTIVE(cons(active(length(mark(z0))), x1)), CONS(mark(length(z0)), x1), MARK(length(z0))) MARK(cons(U21(z0), x1)) -> c53(ACTIVE(cons(active(U21(mark(z0))), x1)), CONS(mark(U21(z0)), x1), MARK(U21(z0))) MARK(cons(nil, x1)) -> c53(ACTIVE(cons(active(nil), x1)), CONS(mark(nil), x1), MARK(nil)) MARK(cons(U31(z0, z1, z2, z3), x1)) -> c53(ACTIVE(cons(active(U31(mark(z0), z1, z2, z3)), x1)), CONS(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(cons(take(z0, z1), x1)) -> c53(ACTIVE(cons(active(take(mark(z0), mark(z1))), x1)), CONS(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(cons(and(z0, z1), x1)) -> c53(ACTIVE(cons(active(and(mark(z0), z1)), x1)), CONS(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(cons(isNat(z0), x1)) -> c53(ACTIVE(cons(active(isNat(z0)), x1)), CONS(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(cons(isNatList(z0), x1)) -> c53(ACTIVE(cons(active(isNatList(z0)), x1)), CONS(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(cons(isNatIList(z0), x1)) -> c53(ACTIVE(cons(active(isNatIList(z0)), x1)), CONS(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(cons(x0, x1)) -> c53(CONS(mark(x0), x1)) MARK(cons(z0, z1)) -> c53(CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(z0, z1)), U11'(mark(z0), z1), MARK(z0)) MARK(U11(zeros, x1)) -> c55(ACTIVE(U11(active(zeros), x1)), U11'(mark(zeros), x1), MARK(zeros)) MARK(U11(cons(z0, z1), x1)) -> c55(ACTIVE(U11(active(cons(mark(z0), z1)), x1)), U11'(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(U11(0, x1)) -> c55(ACTIVE(U11(active(0), x1)), U11'(mark(0), x1), MARK(0)) MARK(U11(U11(z0, z1), x1)) -> c55(ACTIVE(U11(active(U11(mark(z0), z1)), x1)), U11'(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(U11(tt, x1)) -> c55(ACTIVE(U11(active(tt), x1)), U11'(mark(tt), x1), MARK(tt)) MARK(U11(s(z0), x1)) -> c55(ACTIVE(U11(active(s(mark(z0))), x1)), U11'(mark(s(z0)), x1), MARK(s(z0))) MARK(U11(length(z0), x1)) -> c55(ACTIVE(U11(active(length(mark(z0))), x1)), U11'(mark(length(z0)), x1), MARK(length(z0))) MARK(U11(U21(z0), x1)) -> c55(ACTIVE(U11(active(U21(mark(z0))), x1)), U11'(mark(U21(z0)), x1), MARK(U21(z0))) MARK(U11(nil, x1)) -> c55(ACTIVE(U11(active(nil), x1)), U11'(mark(nil), x1), MARK(nil)) MARK(U11(U31(z0, z1, z2, z3), x1)) -> c55(ACTIVE(U11(active(U31(mark(z0), z1, z2, z3)), x1)), U11'(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(U11(take(z0, z1), x1)) -> c55(ACTIVE(U11(active(take(mark(z0), mark(z1))), x1)), U11'(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(U11(and(z0, z1), x1)) -> c55(ACTIVE(U11(active(and(mark(z0), z1)), x1)), U11'(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(U11(isNat(z0), x1)) -> c55(ACTIVE(U11(active(isNat(z0)), x1)), U11'(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(U11(isNatList(z0), x1)) -> c55(ACTIVE(U11(active(isNatList(z0)), x1)), U11'(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(U11(isNatIList(z0), x1)) -> c55(ACTIVE(U11(active(isNatIList(z0)), x1)), U11'(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(U11(x0, x1)) -> c55(U11'(mark(x0), x1)) MARK(s(zeros)) -> c57(ACTIVE(s(active(zeros))), S(mark(zeros)), MARK(zeros)) MARK(s(cons(z0, z1))) -> c57(ACTIVE(s(active(cons(mark(z0), z1)))), S(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(s(0)) -> c57(ACTIVE(s(active(0))), S(mark(0)), MARK(0)) MARK(s(U11(z0, z1))) -> c57(ACTIVE(s(active(U11(mark(z0), z1)))), S(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(s(tt)) -> c57(ACTIVE(s(active(tt))), S(mark(tt)), MARK(tt)) MARK(s(s(z0))) -> c57(ACTIVE(s(active(s(mark(z0))))), S(mark(s(z0))), MARK(s(z0))) MARK(s(length(z0))) -> c57(ACTIVE(s(active(length(mark(z0))))), S(mark(length(z0))), MARK(length(z0))) MARK(s(U21(z0))) -> c57(ACTIVE(s(active(U21(mark(z0))))), S(mark(U21(z0))), MARK(U21(z0))) MARK(s(nil)) -> c57(ACTIVE(s(active(nil))), S(mark(nil)), MARK(nil)) MARK(s(U31(z0, z1, z2, z3))) -> c57(ACTIVE(s(active(U31(mark(z0), z1, z2, z3)))), S(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(s(take(z0, z1))) -> c57(ACTIVE(s(active(take(mark(z0), mark(z1))))), S(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(s(and(z0, z1))) -> c57(ACTIVE(s(active(and(mark(z0), z1)))), S(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(s(isNat(z0))) -> c57(ACTIVE(s(active(isNat(z0)))), S(mark(isNat(z0))), MARK(isNat(z0))) MARK(s(isNatList(z0))) -> c57(ACTIVE(s(active(isNatList(z0)))), S(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(s(isNatIList(z0))) -> c57(ACTIVE(s(active(isNatIList(z0)))), S(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(s(z0)) -> c57(S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(z0)), LENGTH(mark(z0)), MARK(z0)) MARK(length(zeros)) -> c58(ACTIVE(length(active(zeros))), LENGTH(mark(zeros)), MARK(zeros)) MARK(length(cons(z0, z1))) -> c58(ACTIVE(length(active(cons(mark(z0), z1)))), LENGTH(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(length(0)) -> c58(ACTIVE(length(active(0))), LENGTH(mark(0)), MARK(0)) MARK(length(U11(z0, z1))) -> c58(ACTIVE(length(active(U11(mark(z0), z1)))), LENGTH(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(length(tt)) -> c58(ACTIVE(length(active(tt))), LENGTH(mark(tt)), MARK(tt)) MARK(length(s(z0))) -> c58(ACTIVE(length(active(s(mark(z0))))), LENGTH(mark(s(z0))), MARK(s(z0))) MARK(length(length(z0))) -> c58(ACTIVE(length(active(length(mark(z0))))), LENGTH(mark(length(z0))), MARK(length(z0))) MARK(length(U21(z0))) -> c58(ACTIVE(length(active(U21(mark(z0))))), LENGTH(mark(U21(z0))), MARK(U21(z0))) MARK(length(nil)) -> c58(ACTIVE(length(active(nil))), LENGTH(mark(nil)), MARK(nil)) MARK(length(U31(z0, z1, z2, z3))) -> c58(ACTIVE(length(active(U31(mark(z0), z1, z2, z3)))), LENGTH(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(length(take(z0, z1))) -> c58(ACTIVE(length(active(take(mark(z0), mark(z1))))), LENGTH(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(length(and(z0, z1))) -> c58(ACTIVE(length(active(and(mark(z0), z1)))), LENGTH(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(length(isNat(z0))) -> c58(ACTIVE(length(active(isNat(z0)))), LENGTH(mark(isNat(z0))), MARK(isNat(z0))) MARK(length(isNatList(z0))) -> c58(ACTIVE(length(active(isNatList(z0)))), LENGTH(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(length(isNatIList(z0))) -> c58(ACTIVE(length(active(isNatIList(z0)))), LENGTH(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(U21(z0)) -> c59(ACTIVE(U21(z0)), U21'(mark(z0)), MARK(z0)) MARK(U21(zeros)) -> c59(ACTIVE(U21(active(zeros))), U21'(mark(zeros)), MARK(zeros)) MARK(U21(cons(z0, z1))) -> c59(ACTIVE(U21(active(cons(mark(z0), z1)))), U21'(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(U21(0)) -> c59(ACTIVE(U21(active(0))), U21'(mark(0)), MARK(0)) MARK(U21(U11(z0, z1))) -> c59(ACTIVE(U21(active(U11(mark(z0), z1)))), U21'(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(U21(tt)) -> c59(ACTIVE(U21(active(tt))), U21'(mark(tt)), MARK(tt)) MARK(U21(s(z0))) -> c59(ACTIVE(U21(active(s(mark(z0))))), U21'(mark(s(z0))), MARK(s(z0))) MARK(U21(length(z0))) -> c59(ACTIVE(U21(active(length(mark(z0))))), U21'(mark(length(z0))), MARK(length(z0))) MARK(U21(U21(z0))) -> c59(ACTIVE(U21(active(U21(mark(z0))))), U21'(mark(U21(z0))), MARK(U21(z0))) MARK(U21(nil)) -> c59(ACTIVE(U21(active(nil))), U21'(mark(nil)), MARK(nil)) MARK(U21(U31(z0, z1, z2, z3))) -> c59(ACTIVE(U21(active(U31(mark(z0), z1, z2, z3)))), U21'(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(U21(take(z0, z1))) -> c59(ACTIVE(U21(active(take(mark(z0), mark(z1))))), U21'(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(U21(and(z0, z1))) -> c59(ACTIVE(U21(active(and(mark(z0), z1)))), U21'(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(U21(isNat(z0))) -> c59(ACTIVE(U21(active(isNat(z0)))), U21'(mark(isNat(z0))), MARK(isNat(z0))) MARK(U21(isNatList(z0))) -> c59(ACTIVE(U21(active(isNatList(z0)))), U21'(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(U21(isNatIList(z0))) -> c59(ACTIVE(U21(active(isNatIList(z0)))), U21'(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(z0, z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U31(zeros, x1, x2, x3)) -> c61(ACTIVE(U31(active(zeros), x1, x2, x3)), U31'(mark(zeros), x1, x2, x3), MARK(zeros)) MARK(U31(cons(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(cons(mark(z0), z1)), x1, x2, x3)), U31'(mark(cons(z0, z1)), x1, x2, x3), MARK(cons(z0, z1))) MARK(U31(0, x1, x2, x3)) -> c61(ACTIVE(U31(active(0), x1, x2, x3)), U31'(mark(0), x1, x2, x3), MARK(0)) MARK(U31(U11(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(U11(mark(z0), z1)), x1, x2, x3)), U31'(mark(U11(z0, z1)), x1, x2, x3), MARK(U11(z0, z1))) MARK(U31(tt, x1, x2, x3)) -> c61(ACTIVE(U31(active(tt), x1, x2, x3)), U31'(mark(tt), x1, x2, x3), MARK(tt)) MARK(U31(s(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(s(mark(z0))), x1, x2, x3)), U31'(mark(s(z0)), x1, x2, x3), MARK(s(z0))) MARK(U31(length(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(length(mark(z0))), x1, x2, x3)), U31'(mark(length(z0)), x1, x2, x3), MARK(length(z0))) MARK(U31(U21(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(U21(mark(z0))), x1, x2, x3)), U31'(mark(U21(z0)), x1, x2, x3), MARK(U21(z0))) MARK(U31(nil, x1, x2, x3)) -> c61(ACTIVE(U31(active(nil), x1, x2, x3)), U31'(mark(nil), x1, x2, x3), MARK(nil)) MARK(U31(U31(z0, z1, z2, z3), x1, x2, x3)) -> c61(ACTIVE(U31(active(U31(mark(z0), z1, z2, z3)), x1, x2, x3)), U31'(mark(U31(z0, z1, z2, z3)), x1, x2, x3), MARK(U31(z0, z1, z2, z3))) MARK(U31(take(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(take(mark(z0), mark(z1))), x1, x2, x3)), U31'(mark(take(z0, z1)), x1, x2, x3), MARK(take(z0, z1))) MARK(U31(and(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(and(mark(z0), z1)), x1, x2, x3)), U31'(mark(and(z0, z1)), x1, x2, x3), MARK(and(z0, z1))) MARK(U31(isNat(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNat(z0)), x1, x2, x3)), U31'(mark(isNat(z0)), x1, x2, x3), MARK(isNat(z0))) MARK(U31(isNatList(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNatList(z0)), x1, x2, x3)), U31'(mark(isNatList(z0)), x1, x2, x3), MARK(isNatList(z0))) MARK(U31(isNatIList(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNatIList(z0)), x1, x2, x3)), U31'(mark(isNatIList(z0)), x1, x2, x3), MARK(isNatIList(z0))) MARK(U31(x0, x1, x2, x3)) -> c61(U31'(mark(x0), x1, x2, x3)) MARK(take(z0, x1)) -> c62(ACTIVE(take(z0, mark(x1))), TAKE(mark(z0), mark(x1)), MARK(z0), MARK(x1)) MARK(take(x0, z1)) -> c62(ACTIVE(take(mark(x0), z1)), TAKE(mark(x0), mark(z1)), MARK(x0), MARK(z1)) MARK(take(x0, zeros)) -> c62(ACTIVE(take(mark(x0), active(zeros))), TAKE(mark(x0), mark(zeros)), MARK(x0), MARK(zeros)) MARK(take(x0, cons(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(cons(mark(z0), z1)))), TAKE(mark(x0), mark(cons(z0, z1))), MARK(x0), MARK(cons(z0, z1))) MARK(take(x0, 0)) -> c62(ACTIVE(take(mark(x0), active(0))), TAKE(mark(x0), mark(0)), MARK(x0), MARK(0)) MARK(take(x0, U11(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(U11(mark(z0), z1)))), TAKE(mark(x0), mark(U11(z0, z1))), MARK(x0), MARK(U11(z0, z1))) MARK(take(x0, tt)) -> c62(ACTIVE(take(mark(x0), active(tt))), TAKE(mark(x0), mark(tt)), MARK(x0), MARK(tt)) MARK(take(x0, s(z0))) -> c62(ACTIVE(take(mark(x0), active(s(mark(z0))))), TAKE(mark(x0), mark(s(z0))), MARK(x0), MARK(s(z0))) MARK(take(x0, length(z0))) -> c62(ACTIVE(take(mark(x0), active(length(mark(z0))))), TAKE(mark(x0), mark(length(z0))), MARK(x0), MARK(length(z0))) MARK(take(x0, U21(z0))) -> c62(ACTIVE(take(mark(x0), active(U21(mark(z0))))), TAKE(mark(x0), mark(U21(z0))), MARK(x0), MARK(U21(z0))) MARK(take(x0, nil)) -> c62(ACTIVE(take(mark(x0), active(nil))), TAKE(mark(x0), mark(nil)), MARK(x0), MARK(nil)) MARK(take(x0, U31(z0, z1, z2, z3))) -> c62(ACTIVE(take(mark(x0), active(U31(mark(z0), z1, z2, z3)))), TAKE(mark(x0), mark(U31(z0, z1, z2, z3))), MARK(x0), MARK(U31(z0, z1, z2, z3))) MARK(take(x0, take(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(take(mark(z0), mark(z1))))), TAKE(mark(x0), mark(take(z0, z1))), MARK(x0), MARK(take(z0, z1))) MARK(take(x0, and(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(and(mark(z0), z1)))), TAKE(mark(x0), mark(and(z0, z1))), MARK(x0), MARK(and(z0, z1))) MARK(take(x0, isNat(z0))) -> c62(ACTIVE(take(mark(x0), active(isNat(z0)))), TAKE(mark(x0), mark(isNat(z0))), MARK(x0), MARK(isNat(z0))) MARK(take(x0, isNatList(z0))) -> c62(ACTIVE(take(mark(x0), active(isNatList(z0)))), TAKE(mark(x0), mark(isNatList(z0))), MARK(x0), MARK(isNatList(z0))) MARK(take(x0, isNatIList(z0))) -> c62(ACTIVE(take(mark(x0), active(isNatIList(z0)))), TAKE(mark(x0), mark(isNatIList(z0))), MARK(x0), MARK(isNatIList(z0))) MARK(take(zeros, x1)) -> c62(ACTIVE(take(active(zeros), mark(x1))), TAKE(mark(zeros), mark(x1)), MARK(zeros), MARK(x1)) MARK(take(cons(z0, z1), x1)) -> c62(ACTIVE(take(active(cons(mark(z0), z1)), mark(x1))), TAKE(mark(cons(z0, z1)), mark(x1)), MARK(cons(z0, z1)), MARK(x1)) MARK(take(0, x1)) -> c62(ACTIVE(take(active(0), mark(x1))), TAKE(mark(0), mark(x1)), MARK(0), MARK(x1)) MARK(take(U11(z0, z1), x1)) -> c62(ACTIVE(take(active(U11(mark(z0), z1)), mark(x1))), TAKE(mark(U11(z0, z1)), mark(x1)), MARK(U11(z0, z1)), MARK(x1)) MARK(take(tt, x1)) -> c62(ACTIVE(take(active(tt), mark(x1))), TAKE(mark(tt), mark(x1)), MARK(tt), MARK(x1)) MARK(take(s(z0), x1)) -> c62(ACTIVE(take(active(s(mark(z0))), mark(x1))), TAKE(mark(s(z0)), mark(x1)), MARK(s(z0)), MARK(x1)) MARK(take(length(z0), x1)) -> c62(ACTIVE(take(active(length(mark(z0))), mark(x1))), TAKE(mark(length(z0)), mark(x1)), MARK(length(z0)), MARK(x1)) MARK(take(U21(z0), x1)) -> c62(ACTIVE(take(active(U21(mark(z0))), mark(x1))), TAKE(mark(U21(z0)), mark(x1)), MARK(U21(z0)), MARK(x1)) MARK(take(nil, x1)) -> c62(ACTIVE(take(active(nil), mark(x1))), TAKE(mark(nil), mark(x1)), MARK(nil), MARK(x1)) MARK(take(U31(z0, z1, z2, z3), x1)) -> c62(ACTIVE(take(active(U31(mark(z0), z1, z2, z3)), mark(x1))), TAKE(mark(U31(z0, z1, z2, z3)), mark(x1)), MARK(U31(z0, z1, z2, z3)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c62(ACTIVE(take(active(take(mark(z0), mark(z1))), mark(x1))), TAKE(mark(take(z0, z1)), mark(x1)), MARK(take(z0, z1)), MARK(x1)) MARK(take(and(z0, z1), x1)) -> c62(ACTIVE(take(active(and(mark(z0), z1)), mark(x1))), TAKE(mark(and(z0, z1)), mark(x1)), MARK(and(z0, z1)), MARK(x1)) MARK(take(isNat(z0), x1)) -> c62(ACTIVE(take(active(isNat(z0)), mark(x1))), TAKE(mark(isNat(z0)), mark(x1)), MARK(isNat(z0)), MARK(x1)) MARK(take(isNatList(z0), x1)) -> c62(ACTIVE(take(active(isNatList(z0)), mark(x1))), TAKE(mark(isNatList(z0)), mark(x1)), MARK(isNatList(z0)), MARK(x1)) MARK(take(isNatIList(z0), x1)) -> c62(ACTIVE(take(active(isNatIList(z0)), mark(x1))), TAKE(mark(isNatIList(z0)), mark(x1)), MARK(isNatIList(z0)), MARK(x1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(z0, z1)), AND(mark(z0), z1), MARK(z0)) MARK(and(zeros, x1)) -> c63(ACTIVE(and(active(zeros), x1)), AND(mark(zeros), x1), MARK(zeros)) MARK(and(cons(z0, z1), x1)) -> c63(ACTIVE(and(active(cons(mark(z0), z1)), x1)), AND(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(and(0, x1)) -> c63(ACTIVE(and(active(0), x1)), AND(mark(0), x1), MARK(0)) MARK(and(U11(z0, z1), x1)) -> c63(ACTIVE(and(active(U11(mark(z0), z1)), x1)), AND(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(and(tt, x1)) -> c63(ACTIVE(and(active(tt), x1)), AND(mark(tt), x1), MARK(tt)) MARK(and(s(z0), x1)) -> c63(ACTIVE(and(active(s(mark(z0))), x1)), AND(mark(s(z0)), x1), MARK(s(z0))) MARK(and(length(z0), x1)) -> c63(ACTIVE(and(active(length(mark(z0))), x1)), AND(mark(length(z0)), x1), MARK(length(z0))) MARK(and(U21(z0), x1)) -> c63(ACTIVE(and(active(U21(mark(z0))), x1)), AND(mark(U21(z0)), x1), MARK(U21(z0))) MARK(and(nil, x1)) -> c63(ACTIVE(and(active(nil), x1)), AND(mark(nil), x1), MARK(nil)) MARK(and(U31(z0, z1, z2, z3), x1)) -> c63(ACTIVE(and(active(U31(mark(z0), z1, z2, z3)), x1)), AND(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(and(take(z0, z1), x1)) -> c63(ACTIVE(and(active(take(mark(z0), mark(z1))), x1)), AND(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(and(and(z0, z1), x1)) -> c63(ACTIVE(and(active(and(mark(z0), z1)), x1)), AND(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(and(isNat(z0), x1)) -> c63(ACTIVE(and(active(isNat(z0)), x1)), AND(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(and(isNatList(z0), x1)) -> c63(ACTIVE(and(active(isNatList(z0)), x1)), AND(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(and(isNatIList(z0), x1)) -> c63(ACTIVE(and(active(isNatIList(z0)), x1)), AND(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(and(x0, x1)) -> c63(AND(mark(x0), x1)) ENCODE_ACTIVE(cons_active(z0)) -> c(ACTIVE(active(encArg(z0)))) ENCODE_ACTIVE(cons_mark(z0)) -> c(ACTIVE(mark(encArg(z0)))) ENCODE_ACTIVE(cons_cons(z0, z1)) -> c(ACTIVE(cons(encArg(z0), encArg(z1)))) ENCODE_ACTIVE(cons_U11(z0, z1)) -> c(ACTIVE(U11(encArg(z0), encArg(z1)))) ENCODE_ACTIVE(cons_s(z0)) -> c(ACTIVE(s(encArg(z0)))) ENCODE_ACTIVE(cons_length(z0)) -> c(ACTIVE(length(encArg(z0)))) ENCODE_ACTIVE(cons_U21(z0)) -> c(ACTIVE(U21(encArg(z0)))) ENCODE_ACTIVE(cons_U31(z0, z1, z2, z3)) -> c(ACTIVE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)))) ENCODE_ACTIVE(cons_take(z0, z1)) -> c(ACTIVE(take(encArg(z0), encArg(z1)))) ENCODE_ACTIVE(cons_and(z0, z1)) -> c(ACTIVE(and(encArg(z0), encArg(z1)))) ENCODE_ACTIVE(cons_isNat(z0)) -> c(ACTIVE(isNat(encArg(z0)))) ENCODE_ACTIVE(cons_isNatList(z0)) -> c(ACTIVE(isNatList(encArg(z0)))) ENCODE_ACTIVE(cons_isNatIList(z0)) -> c(ACTIVE(isNatIList(encArg(z0)))) ENCODE_MARK(cons_active(z0)) -> c(MARK(active(encArg(z0)))) ENCODE_MARK(cons_mark(z0)) -> c(MARK(mark(encArg(z0)))) ENCODE_MARK(cons_cons(z0, z1)) -> c(MARK(cons(encArg(z0), encArg(z1)))) ENCODE_MARK(cons_U11(z0, z1)) -> c(MARK(U11(encArg(z0), encArg(z1)))) ENCODE_MARK(cons_s(z0)) -> c(MARK(s(encArg(z0)))) ENCODE_MARK(cons_length(z0)) -> c(MARK(length(encArg(z0)))) ENCODE_MARK(cons_U21(z0)) -> c(MARK(U21(encArg(z0)))) ENCODE_MARK(cons_U31(z0, z1, z2, z3)) -> c(MARK(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)))) ENCODE_MARK(cons_take(z0, z1)) -> c(MARK(take(encArg(z0), encArg(z1)))) ENCODE_MARK(cons_and(z0, z1)) -> c(MARK(and(encArg(z0), encArg(z1)))) ENCODE_MARK(cons_isNat(z0)) -> c(MARK(isNat(encArg(z0)))) ENCODE_MARK(cons_isNatList(z0)) -> c(MARK(isNatList(encArg(z0)))) ENCODE_MARK(cons_isNatIList(z0)) -> c(MARK(isNatIList(encArg(z0)))) ENCODE_CONS(x0, zeros) -> c(CONS(encArg(x0), zeros)) ENCODE_CONS(x0, 0) -> c(CONS(encArg(x0), 0)) ENCODE_CONS(x0, tt) -> c(CONS(encArg(x0), tt)) ENCODE_CONS(x0, nil) -> c(CONS(encArg(x0), nil)) ENCODE_CONS(x0, cons_active(z0)) -> c(CONS(encArg(x0), active(encArg(z0)))) ENCODE_CONS(x0, cons_mark(z0)) -> c(CONS(encArg(x0), mark(encArg(z0)))) ENCODE_CONS(x0, cons_cons(z0, z1)) -> c(CONS(encArg(x0), cons(encArg(z0), encArg(z1)))) ENCODE_CONS(x0, cons_U11(z0, z1)) -> c(CONS(encArg(x0), U11(encArg(z0), encArg(z1)))) ENCODE_CONS(x0, cons_s(z0)) -> c(CONS(encArg(x0), s(encArg(z0)))) ENCODE_CONS(x0, cons_length(z0)) -> c(CONS(encArg(x0), length(encArg(z0)))) ENCODE_CONS(x0, cons_U21(z0)) -> c(CONS(encArg(x0), U21(encArg(z0)))) ENCODE_CONS(x0, cons_U31(z0, z1, z2, z3)) -> c(CONS(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)))) ENCODE_CONS(x0, cons_take(z0, z1)) -> c(CONS(encArg(x0), take(encArg(z0), encArg(z1)))) ENCODE_CONS(x0, cons_and(z0, z1)) -> c(CONS(encArg(x0), and(encArg(z0), encArg(z1)))) ENCODE_CONS(x0, cons_isNat(z0)) -> c(CONS(encArg(x0), isNat(encArg(z0)))) ENCODE_CONS(x0, cons_isNatList(z0)) -> c(CONS(encArg(x0), isNatList(encArg(z0)))) ENCODE_CONS(x0, cons_isNatIList(z0)) -> c(CONS(encArg(x0), isNatIList(encArg(z0)))) ENCODE_CONS(zeros, x1) -> c(CONS(zeros, encArg(x1))) ENCODE_CONS(0, x1) -> c(CONS(0, encArg(x1))) ENCODE_CONS(tt, x1) -> c(CONS(tt, encArg(x1))) ENCODE_CONS(nil, x1) -> c(CONS(nil, encArg(x1))) ENCODE_CONS(cons_active(z0), x1) -> c(CONS(active(encArg(z0)), encArg(x1))) ENCODE_CONS(cons_mark(z0), x1) -> c(CONS(mark(encArg(z0)), encArg(x1))) ENCODE_CONS(cons_cons(z0, z1), x1) -> c(CONS(cons(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_CONS(cons_U11(z0, z1), x1) -> c(CONS(U11(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_CONS(cons_s(z0), x1) -> c(CONS(s(encArg(z0)), encArg(x1))) ENCODE_CONS(cons_length(z0), x1) -> c(CONS(length(encArg(z0)), encArg(x1))) ENCODE_CONS(cons_U21(z0), x1) -> c(CONS(U21(encArg(z0)), encArg(x1))) ENCODE_CONS(cons_U31(z0, z1, z2, z3), x1) -> c(CONS(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1))) ENCODE_CONS(cons_take(z0, z1), x1) -> c(CONS(take(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_CONS(cons_and(z0, z1), x1) -> c(CONS(and(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_CONS(cons_isNat(z0), x1) -> c(CONS(isNat(encArg(z0)), encArg(x1))) ENCODE_CONS(cons_isNatList(z0), x1) -> c(CONS(isNatList(encArg(z0)), encArg(x1))) ENCODE_CONS(cons_isNatIList(z0), x1) -> c(CONS(isNatIList(encArg(z0)), encArg(x1))) ENCODE_U11(x0, zeros) -> c(U11'(encArg(x0), zeros)) ENCODE_U11(x0, 0) -> c(U11'(encArg(x0), 0)) ENCODE_U11(x0, tt) -> c(U11'(encArg(x0), tt)) ENCODE_U11(x0, nil) -> c(U11'(encArg(x0), nil)) ENCODE_U11(x0, cons_active(z0)) -> c(U11'(encArg(x0), active(encArg(z0)))) ENCODE_U11(x0, cons_mark(z0)) -> c(U11'(encArg(x0), mark(encArg(z0)))) ENCODE_U11(x0, cons_cons(z0, z1)) -> c(U11'(encArg(x0), cons(encArg(z0), encArg(z1)))) ENCODE_U11(x0, cons_U11(z0, z1)) -> c(U11'(encArg(x0), U11(encArg(z0), encArg(z1)))) ENCODE_U11(x0, cons_s(z0)) -> c(U11'(encArg(x0), s(encArg(z0)))) ENCODE_U11(x0, cons_length(z0)) -> c(U11'(encArg(x0), length(encArg(z0)))) ENCODE_U11(x0, cons_U21(z0)) -> c(U11'(encArg(x0), U21(encArg(z0)))) ENCODE_U11(x0, cons_U31(z0, z1, z2, z3)) -> c(U11'(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)))) ENCODE_U11(x0, cons_take(z0, z1)) -> c(U11'(encArg(x0), take(encArg(z0), encArg(z1)))) ENCODE_U11(x0, cons_and(z0, z1)) -> c(U11'(encArg(x0), and(encArg(z0), encArg(z1)))) ENCODE_U11(x0, cons_isNat(z0)) -> c(U11'(encArg(x0), isNat(encArg(z0)))) ENCODE_U11(x0, cons_isNatList(z0)) -> c(U11'(encArg(x0), isNatList(encArg(z0)))) ENCODE_U11(x0, cons_isNatIList(z0)) -> c(U11'(encArg(x0), isNatIList(encArg(z0)))) ENCODE_U11(zeros, x1) -> c(U11'(zeros, encArg(x1))) ENCODE_U11(0, x1) -> c(U11'(0, encArg(x1))) ENCODE_U11(tt, x1) -> c(U11'(tt, encArg(x1))) ENCODE_U11(nil, x1) -> c(U11'(nil, encArg(x1))) ENCODE_U11(cons_active(z0), x1) -> c(U11'(active(encArg(z0)), encArg(x1))) ENCODE_U11(cons_mark(z0), x1) -> c(U11'(mark(encArg(z0)), encArg(x1))) ENCODE_U11(cons_cons(z0, z1), x1) -> c(U11'(cons(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_U11(cons_U11(z0, z1), x1) -> c(U11'(U11(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_U11(cons_s(z0), x1) -> c(U11'(s(encArg(z0)), encArg(x1))) ENCODE_U11(cons_length(z0), x1) -> c(U11'(length(encArg(z0)), encArg(x1))) ENCODE_U11(cons_U21(z0), x1) -> c(U11'(U21(encArg(z0)), encArg(x1))) ENCODE_U11(cons_U31(z0, z1, z2, z3), x1) -> c(U11'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1))) ENCODE_U11(cons_take(z0, z1), x1) -> c(U11'(take(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_U11(cons_and(z0, z1), x1) -> c(U11'(and(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_U11(cons_isNat(z0), x1) -> c(U11'(isNat(encArg(z0)), encArg(x1))) ENCODE_U11(cons_isNatList(z0), x1) -> c(U11'(isNatList(encArg(z0)), encArg(x1))) ENCODE_U11(cons_isNatIList(z0), x1) -> c(U11'(isNatIList(encArg(z0)), encArg(x1))) S tuples: ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 MARK(cons(zeros, x1)) -> c53(ACTIVE(cons(active(zeros), x1)), CONS(mark(zeros), x1), MARK(zeros)) MARK(cons(cons(z0, z1), x1)) -> c53(ACTIVE(cons(active(cons(mark(z0), z1)), x1)), CONS(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(cons(0, x1)) -> c53(ACTIVE(cons(active(0), x1)), CONS(mark(0), x1), MARK(0)) MARK(cons(U11(z0, z1), x1)) -> c53(ACTIVE(cons(active(U11(mark(z0), z1)), x1)), CONS(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(cons(tt, x1)) -> c53(ACTIVE(cons(active(tt), x1)), CONS(mark(tt), x1), MARK(tt)) MARK(cons(s(z0), x1)) -> c53(ACTIVE(cons(active(s(mark(z0))), x1)), CONS(mark(s(z0)), x1), MARK(s(z0))) MARK(cons(length(z0), x1)) -> c53(ACTIVE(cons(active(length(mark(z0))), x1)), CONS(mark(length(z0)), x1), MARK(length(z0))) MARK(cons(U21(z0), x1)) -> c53(ACTIVE(cons(active(U21(mark(z0))), x1)), CONS(mark(U21(z0)), x1), MARK(U21(z0))) MARK(cons(nil, x1)) -> c53(ACTIVE(cons(active(nil), x1)), CONS(mark(nil), x1), MARK(nil)) MARK(cons(U31(z0, z1, z2, z3), x1)) -> c53(ACTIVE(cons(active(U31(mark(z0), z1, z2, z3)), x1)), CONS(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(cons(take(z0, z1), x1)) -> c53(ACTIVE(cons(active(take(mark(z0), mark(z1))), x1)), CONS(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(cons(and(z0, z1), x1)) -> c53(ACTIVE(cons(active(and(mark(z0), z1)), x1)), CONS(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(cons(isNat(z0), x1)) -> c53(ACTIVE(cons(active(isNat(z0)), x1)), CONS(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(cons(isNatList(z0), x1)) -> c53(ACTIVE(cons(active(isNatList(z0)), x1)), CONS(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(cons(isNatIList(z0), x1)) -> c53(ACTIVE(cons(active(isNatIList(z0)), x1)), CONS(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(cons(x0, x1)) -> c53(CONS(mark(x0), x1)) MARK(cons(z0, z1)) -> c53(CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(z0, z1)), U11'(mark(z0), z1), MARK(z0)) MARK(U11(zeros, x1)) -> c55(ACTIVE(U11(active(zeros), x1)), U11'(mark(zeros), x1), MARK(zeros)) MARK(U11(cons(z0, z1), x1)) -> c55(ACTIVE(U11(active(cons(mark(z0), z1)), x1)), U11'(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(U11(0, x1)) -> c55(ACTIVE(U11(active(0), x1)), U11'(mark(0), x1), MARK(0)) MARK(U11(U11(z0, z1), x1)) -> c55(ACTIVE(U11(active(U11(mark(z0), z1)), x1)), U11'(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(U11(tt, x1)) -> c55(ACTIVE(U11(active(tt), x1)), U11'(mark(tt), x1), MARK(tt)) MARK(U11(s(z0), x1)) -> c55(ACTIVE(U11(active(s(mark(z0))), x1)), U11'(mark(s(z0)), x1), MARK(s(z0))) MARK(U11(length(z0), x1)) -> c55(ACTIVE(U11(active(length(mark(z0))), x1)), U11'(mark(length(z0)), x1), MARK(length(z0))) MARK(U11(U21(z0), x1)) -> c55(ACTIVE(U11(active(U21(mark(z0))), x1)), U11'(mark(U21(z0)), x1), MARK(U21(z0))) MARK(U11(nil, x1)) -> c55(ACTIVE(U11(active(nil), x1)), U11'(mark(nil), x1), MARK(nil)) MARK(U11(U31(z0, z1, z2, z3), x1)) -> c55(ACTIVE(U11(active(U31(mark(z0), z1, z2, z3)), x1)), U11'(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(U11(take(z0, z1), x1)) -> c55(ACTIVE(U11(active(take(mark(z0), mark(z1))), x1)), U11'(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(U11(and(z0, z1), x1)) -> c55(ACTIVE(U11(active(and(mark(z0), z1)), x1)), U11'(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(U11(isNat(z0), x1)) -> c55(ACTIVE(U11(active(isNat(z0)), x1)), U11'(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(U11(isNatList(z0), x1)) -> c55(ACTIVE(U11(active(isNatList(z0)), x1)), U11'(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(U11(isNatIList(z0), x1)) -> c55(ACTIVE(U11(active(isNatIList(z0)), x1)), U11'(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(U11(x0, x1)) -> c55(U11'(mark(x0), x1)) MARK(s(zeros)) -> c57(ACTIVE(s(active(zeros))), S(mark(zeros)), MARK(zeros)) MARK(s(cons(z0, z1))) -> c57(ACTIVE(s(active(cons(mark(z0), z1)))), S(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(s(0)) -> c57(ACTIVE(s(active(0))), S(mark(0)), MARK(0)) MARK(s(U11(z0, z1))) -> c57(ACTIVE(s(active(U11(mark(z0), z1)))), S(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(s(tt)) -> c57(ACTIVE(s(active(tt))), S(mark(tt)), MARK(tt)) MARK(s(s(z0))) -> c57(ACTIVE(s(active(s(mark(z0))))), S(mark(s(z0))), MARK(s(z0))) MARK(s(length(z0))) -> c57(ACTIVE(s(active(length(mark(z0))))), S(mark(length(z0))), MARK(length(z0))) MARK(s(U21(z0))) -> c57(ACTIVE(s(active(U21(mark(z0))))), S(mark(U21(z0))), MARK(U21(z0))) MARK(s(nil)) -> c57(ACTIVE(s(active(nil))), S(mark(nil)), MARK(nil)) MARK(s(U31(z0, z1, z2, z3))) -> c57(ACTIVE(s(active(U31(mark(z0), z1, z2, z3)))), S(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(s(take(z0, z1))) -> c57(ACTIVE(s(active(take(mark(z0), mark(z1))))), S(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(s(and(z0, z1))) -> c57(ACTIVE(s(active(and(mark(z0), z1)))), S(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(s(isNat(z0))) -> c57(ACTIVE(s(active(isNat(z0)))), S(mark(isNat(z0))), MARK(isNat(z0))) MARK(s(isNatList(z0))) -> c57(ACTIVE(s(active(isNatList(z0)))), S(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(s(isNatIList(z0))) -> c57(ACTIVE(s(active(isNatIList(z0)))), S(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(s(z0)) -> c57(S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(z0)), LENGTH(mark(z0)), MARK(z0)) MARK(length(zeros)) -> c58(ACTIVE(length(active(zeros))), LENGTH(mark(zeros)), MARK(zeros)) MARK(length(cons(z0, z1))) -> c58(ACTIVE(length(active(cons(mark(z0), z1)))), LENGTH(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(length(0)) -> c58(ACTIVE(length(active(0))), LENGTH(mark(0)), MARK(0)) MARK(length(U11(z0, z1))) -> c58(ACTIVE(length(active(U11(mark(z0), z1)))), LENGTH(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(length(tt)) -> c58(ACTIVE(length(active(tt))), LENGTH(mark(tt)), MARK(tt)) MARK(length(s(z0))) -> c58(ACTIVE(length(active(s(mark(z0))))), LENGTH(mark(s(z0))), MARK(s(z0))) MARK(length(length(z0))) -> c58(ACTIVE(length(active(length(mark(z0))))), LENGTH(mark(length(z0))), MARK(length(z0))) MARK(length(U21(z0))) -> c58(ACTIVE(length(active(U21(mark(z0))))), LENGTH(mark(U21(z0))), MARK(U21(z0))) MARK(length(nil)) -> c58(ACTIVE(length(active(nil))), LENGTH(mark(nil)), MARK(nil)) MARK(length(U31(z0, z1, z2, z3))) -> c58(ACTIVE(length(active(U31(mark(z0), z1, z2, z3)))), LENGTH(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(length(take(z0, z1))) -> c58(ACTIVE(length(active(take(mark(z0), mark(z1))))), LENGTH(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(length(and(z0, z1))) -> c58(ACTIVE(length(active(and(mark(z0), z1)))), LENGTH(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(length(isNat(z0))) -> c58(ACTIVE(length(active(isNat(z0)))), LENGTH(mark(isNat(z0))), MARK(isNat(z0))) MARK(length(isNatList(z0))) -> c58(ACTIVE(length(active(isNatList(z0)))), LENGTH(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(length(isNatIList(z0))) -> c58(ACTIVE(length(active(isNatIList(z0)))), LENGTH(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(U21(z0)) -> c59(ACTIVE(U21(z0)), U21'(mark(z0)), MARK(z0)) MARK(U21(zeros)) -> c59(ACTIVE(U21(active(zeros))), U21'(mark(zeros)), MARK(zeros)) MARK(U21(cons(z0, z1))) -> c59(ACTIVE(U21(active(cons(mark(z0), z1)))), U21'(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(U21(0)) -> c59(ACTIVE(U21(active(0))), U21'(mark(0)), MARK(0)) MARK(U21(U11(z0, z1))) -> c59(ACTIVE(U21(active(U11(mark(z0), z1)))), U21'(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(U21(tt)) -> c59(ACTIVE(U21(active(tt))), U21'(mark(tt)), MARK(tt)) MARK(U21(s(z0))) -> c59(ACTIVE(U21(active(s(mark(z0))))), U21'(mark(s(z0))), MARK(s(z0))) MARK(U21(length(z0))) -> c59(ACTIVE(U21(active(length(mark(z0))))), U21'(mark(length(z0))), MARK(length(z0))) MARK(U21(U21(z0))) -> c59(ACTIVE(U21(active(U21(mark(z0))))), U21'(mark(U21(z0))), MARK(U21(z0))) MARK(U21(nil)) -> c59(ACTIVE(U21(active(nil))), U21'(mark(nil)), MARK(nil)) MARK(U21(U31(z0, z1, z2, z3))) -> c59(ACTIVE(U21(active(U31(mark(z0), z1, z2, z3)))), U21'(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(U21(take(z0, z1))) -> c59(ACTIVE(U21(active(take(mark(z0), mark(z1))))), U21'(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(U21(and(z0, z1))) -> c59(ACTIVE(U21(active(and(mark(z0), z1)))), U21'(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(U21(isNat(z0))) -> c59(ACTIVE(U21(active(isNat(z0)))), U21'(mark(isNat(z0))), MARK(isNat(z0))) MARK(U21(isNatList(z0))) -> c59(ACTIVE(U21(active(isNatList(z0)))), U21'(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(U21(isNatIList(z0))) -> c59(ACTIVE(U21(active(isNatIList(z0)))), U21'(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(z0, z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U31(zeros, x1, x2, x3)) -> c61(ACTIVE(U31(active(zeros), x1, x2, x3)), U31'(mark(zeros), x1, x2, x3), MARK(zeros)) MARK(U31(cons(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(cons(mark(z0), z1)), x1, x2, x3)), U31'(mark(cons(z0, z1)), x1, x2, x3), MARK(cons(z0, z1))) MARK(U31(0, x1, x2, x3)) -> c61(ACTIVE(U31(active(0), x1, x2, x3)), U31'(mark(0), x1, x2, x3), MARK(0)) MARK(U31(U11(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(U11(mark(z0), z1)), x1, x2, x3)), U31'(mark(U11(z0, z1)), x1, x2, x3), MARK(U11(z0, z1))) MARK(U31(tt, x1, x2, x3)) -> c61(ACTIVE(U31(active(tt), x1, x2, x3)), U31'(mark(tt), x1, x2, x3), MARK(tt)) MARK(U31(s(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(s(mark(z0))), x1, x2, x3)), U31'(mark(s(z0)), x1, x2, x3), MARK(s(z0))) MARK(U31(length(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(length(mark(z0))), x1, x2, x3)), U31'(mark(length(z0)), x1, x2, x3), MARK(length(z0))) MARK(U31(U21(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(U21(mark(z0))), x1, x2, x3)), U31'(mark(U21(z0)), x1, x2, x3), MARK(U21(z0))) MARK(U31(nil, x1, x2, x3)) -> c61(ACTIVE(U31(active(nil), x1, x2, x3)), U31'(mark(nil), x1, x2, x3), MARK(nil)) MARK(U31(U31(z0, z1, z2, z3), x1, x2, x3)) -> c61(ACTIVE(U31(active(U31(mark(z0), z1, z2, z3)), x1, x2, x3)), U31'(mark(U31(z0, z1, z2, z3)), x1, x2, x3), MARK(U31(z0, z1, z2, z3))) MARK(U31(take(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(take(mark(z0), mark(z1))), x1, x2, x3)), U31'(mark(take(z0, z1)), x1, x2, x3), MARK(take(z0, z1))) MARK(U31(and(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(and(mark(z0), z1)), x1, x2, x3)), U31'(mark(and(z0, z1)), x1, x2, x3), MARK(and(z0, z1))) MARK(U31(isNat(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNat(z0)), x1, x2, x3)), U31'(mark(isNat(z0)), x1, x2, x3), MARK(isNat(z0))) MARK(U31(isNatList(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNatList(z0)), x1, x2, x3)), U31'(mark(isNatList(z0)), x1, x2, x3), MARK(isNatList(z0))) MARK(U31(isNatIList(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNatIList(z0)), x1, x2, x3)), U31'(mark(isNatIList(z0)), x1, x2, x3), MARK(isNatIList(z0))) MARK(U31(x0, x1, x2, x3)) -> c61(U31'(mark(x0), x1, x2, x3)) MARK(take(z0, x1)) -> c62(ACTIVE(take(z0, mark(x1))), TAKE(mark(z0), mark(x1)), MARK(z0), MARK(x1)) MARK(take(x0, z1)) -> c62(ACTIVE(take(mark(x0), z1)), TAKE(mark(x0), mark(z1)), MARK(x0), MARK(z1)) MARK(take(x0, zeros)) -> c62(ACTIVE(take(mark(x0), active(zeros))), TAKE(mark(x0), mark(zeros)), MARK(x0), MARK(zeros)) MARK(take(x0, cons(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(cons(mark(z0), z1)))), TAKE(mark(x0), mark(cons(z0, z1))), MARK(x0), MARK(cons(z0, z1))) MARK(take(x0, 0)) -> c62(ACTIVE(take(mark(x0), active(0))), TAKE(mark(x0), mark(0)), MARK(x0), MARK(0)) MARK(take(x0, U11(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(U11(mark(z0), z1)))), TAKE(mark(x0), mark(U11(z0, z1))), MARK(x0), MARK(U11(z0, z1))) MARK(take(x0, tt)) -> c62(ACTIVE(take(mark(x0), active(tt))), TAKE(mark(x0), mark(tt)), MARK(x0), MARK(tt)) MARK(take(x0, s(z0))) -> c62(ACTIVE(take(mark(x0), active(s(mark(z0))))), TAKE(mark(x0), mark(s(z0))), MARK(x0), MARK(s(z0))) MARK(take(x0, length(z0))) -> c62(ACTIVE(take(mark(x0), active(length(mark(z0))))), TAKE(mark(x0), mark(length(z0))), MARK(x0), MARK(length(z0))) MARK(take(x0, U21(z0))) -> c62(ACTIVE(take(mark(x0), active(U21(mark(z0))))), TAKE(mark(x0), mark(U21(z0))), MARK(x0), MARK(U21(z0))) MARK(take(x0, nil)) -> c62(ACTIVE(take(mark(x0), active(nil))), TAKE(mark(x0), mark(nil)), MARK(x0), MARK(nil)) MARK(take(x0, U31(z0, z1, z2, z3))) -> c62(ACTIVE(take(mark(x0), active(U31(mark(z0), z1, z2, z3)))), TAKE(mark(x0), mark(U31(z0, z1, z2, z3))), MARK(x0), MARK(U31(z0, z1, z2, z3))) MARK(take(x0, take(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(take(mark(z0), mark(z1))))), TAKE(mark(x0), mark(take(z0, z1))), MARK(x0), MARK(take(z0, z1))) MARK(take(x0, and(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(and(mark(z0), z1)))), TAKE(mark(x0), mark(and(z0, z1))), MARK(x0), MARK(and(z0, z1))) MARK(take(x0, isNat(z0))) -> c62(ACTIVE(take(mark(x0), active(isNat(z0)))), TAKE(mark(x0), mark(isNat(z0))), MARK(x0), MARK(isNat(z0))) MARK(take(x0, isNatList(z0))) -> c62(ACTIVE(take(mark(x0), active(isNatList(z0)))), TAKE(mark(x0), mark(isNatList(z0))), MARK(x0), MARK(isNatList(z0))) MARK(take(x0, isNatIList(z0))) -> c62(ACTIVE(take(mark(x0), active(isNatIList(z0)))), TAKE(mark(x0), mark(isNatIList(z0))), MARK(x0), MARK(isNatIList(z0))) MARK(take(zeros, x1)) -> c62(ACTIVE(take(active(zeros), mark(x1))), TAKE(mark(zeros), mark(x1)), MARK(zeros), MARK(x1)) MARK(take(cons(z0, z1), x1)) -> c62(ACTIVE(take(active(cons(mark(z0), z1)), mark(x1))), TAKE(mark(cons(z0, z1)), mark(x1)), MARK(cons(z0, z1)), MARK(x1)) MARK(take(0, x1)) -> c62(ACTIVE(take(active(0), mark(x1))), TAKE(mark(0), mark(x1)), MARK(0), MARK(x1)) MARK(take(U11(z0, z1), x1)) -> c62(ACTIVE(take(active(U11(mark(z0), z1)), mark(x1))), TAKE(mark(U11(z0, z1)), mark(x1)), MARK(U11(z0, z1)), MARK(x1)) MARK(take(tt, x1)) -> c62(ACTIVE(take(active(tt), mark(x1))), TAKE(mark(tt), mark(x1)), MARK(tt), MARK(x1)) MARK(take(s(z0), x1)) -> c62(ACTIVE(take(active(s(mark(z0))), mark(x1))), TAKE(mark(s(z0)), mark(x1)), MARK(s(z0)), MARK(x1)) MARK(take(length(z0), x1)) -> c62(ACTIVE(take(active(length(mark(z0))), mark(x1))), TAKE(mark(length(z0)), mark(x1)), MARK(length(z0)), MARK(x1)) MARK(take(U21(z0), x1)) -> c62(ACTIVE(take(active(U21(mark(z0))), mark(x1))), TAKE(mark(U21(z0)), mark(x1)), MARK(U21(z0)), MARK(x1)) MARK(take(nil, x1)) -> c62(ACTIVE(take(active(nil), mark(x1))), TAKE(mark(nil), mark(x1)), MARK(nil), MARK(x1)) MARK(take(U31(z0, z1, z2, z3), x1)) -> c62(ACTIVE(take(active(U31(mark(z0), z1, z2, z3)), mark(x1))), TAKE(mark(U31(z0, z1, z2, z3)), mark(x1)), MARK(U31(z0, z1, z2, z3)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c62(ACTIVE(take(active(take(mark(z0), mark(z1))), mark(x1))), TAKE(mark(take(z0, z1)), mark(x1)), MARK(take(z0, z1)), MARK(x1)) MARK(take(and(z0, z1), x1)) -> c62(ACTIVE(take(active(and(mark(z0), z1)), mark(x1))), TAKE(mark(and(z0, z1)), mark(x1)), MARK(and(z0, z1)), MARK(x1)) MARK(take(isNat(z0), x1)) -> c62(ACTIVE(take(active(isNat(z0)), mark(x1))), TAKE(mark(isNat(z0)), mark(x1)), MARK(isNat(z0)), MARK(x1)) MARK(take(isNatList(z0), x1)) -> c62(ACTIVE(take(active(isNatList(z0)), mark(x1))), TAKE(mark(isNatList(z0)), mark(x1)), MARK(isNatList(z0)), MARK(x1)) MARK(take(isNatIList(z0), x1)) -> c62(ACTIVE(take(active(isNatIList(z0)), mark(x1))), TAKE(mark(isNatIList(z0)), mark(x1)), MARK(isNatIList(z0)), MARK(x1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(z0, z1)), AND(mark(z0), z1), MARK(z0)) MARK(and(zeros, x1)) -> c63(ACTIVE(and(active(zeros), x1)), AND(mark(zeros), x1), MARK(zeros)) MARK(and(cons(z0, z1), x1)) -> c63(ACTIVE(and(active(cons(mark(z0), z1)), x1)), AND(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(and(0, x1)) -> c63(ACTIVE(and(active(0), x1)), AND(mark(0), x1), MARK(0)) MARK(and(U11(z0, z1), x1)) -> c63(ACTIVE(and(active(U11(mark(z0), z1)), x1)), AND(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(and(tt, x1)) -> c63(ACTIVE(and(active(tt), x1)), AND(mark(tt), x1), MARK(tt)) MARK(and(s(z0), x1)) -> c63(ACTIVE(and(active(s(mark(z0))), x1)), AND(mark(s(z0)), x1), MARK(s(z0))) MARK(and(length(z0), x1)) -> c63(ACTIVE(and(active(length(mark(z0))), x1)), AND(mark(length(z0)), x1), MARK(length(z0))) MARK(and(U21(z0), x1)) -> c63(ACTIVE(and(active(U21(mark(z0))), x1)), AND(mark(U21(z0)), x1), MARK(U21(z0))) MARK(and(nil, x1)) -> c63(ACTIVE(and(active(nil), x1)), AND(mark(nil), x1), MARK(nil)) MARK(and(U31(z0, z1, z2, z3), x1)) -> c63(ACTIVE(and(active(U31(mark(z0), z1, z2, z3)), x1)), AND(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(and(take(z0, z1), x1)) -> c63(ACTIVE(and(active(take(mark(z0), mark(z1))), x1)), AND(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(and(and(z0, z1), x1)) -> c63(ACTIVE(and(active(and(mark(z0), z1)), x1)), AND(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(and(isNat(z0), x1)) -> c63(ACTIVE(and(active(isNat(z0)), x1)), AND(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(and(isNatList(z0), x1)) -> c63(ACTIVE(and(active(isNatList(z0)), x1)), AND(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(and(isNatIList(z0), x1)) -> c63(ACTIVE(and(active(isNatIList(z0)), x1)), AND(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(and(x0, x1)) -> c63(AND(mark(x0), x1)) K tuples:none Defined Rule Symbols: encArg_1, active_1, mark_1, cons_2, U11_2, s_1, length_1, U21_1, U31_4, take_2, and_2, isNat_1, isNatList_1, isNatIList_1 Defined Pair Symbols: ACTIVE_1, MARK_1, CONS_2, U11'_2, S_1, LENGTH_1, U21'_1, U31'_4, TAKE_2, AND_2, ISNAT_1, ISNATLIST_1, ISNATILIST_1, ENCODE_S_1, ENCODE_LENGTH_1, ENCODE_U21_1, ENCODE_U31_4, ENCODE_TAKE_2, ENCODE_AND_2, ENCODE_ISNAT_1, ENCODE_ISNATLIST_1, ENCODE_ISNATILIST_1, ENCARG_1, ENCODE_ACTIVE_1, ENCODE_MARK_1, ENCODE_CONS_2, ENCODE_U11_2 Compound Symbols: c36_1, c37_3, c38_1, c39_1, c40_2, c41_2, c42_2, c43_1, c45_1, c48_1, c52_1, c64_2, c65_2, c66_2, c67_1, c68_1, c69_1, c70_1, c71_1, c72_1, c73_1, c74_1, c75_1, c76_1, c77_1, c78_1, c79_1, c80_1, c81_1, c82_1, c83_1, c84_1, c85_1, c86_1, c87_1, c88_1, c89_1, c90_1, c91_1, c92_1, c93_1, c94_1, c95_1, c96_1, c97_1, c98_1, c99_1, c100_1, c101_1, c102_1, c34_1, c35_2, c44_3, c46_3, c47_3, c49_3, c50_2, c51_4, c54, c56, c60, c_1, c4_2, c4_1, c5_2, c5_1, c6_3, c6_2, c7_3, c7_2, c8_2, c9_2, c10_2, c11_5, c11_4, c12_3, c12_2, c13_3, c13_2, c14_2, c15_2, c16_2, c53_3, c53_1, c53_2, c55_3, c55_1, c57_3, c57_2, c58_3, c59_3, c61_3, c61_1, c62_4, c63_3, c63_1 ---------------------------------------- (125) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace ENCODE_S(z0) -> c(S(encArg(z0))) by ENCODE_S(zeros) -> c(S(zeros)) ENCODE_S(0) -> c(S(0)) ENCODE_S(tt) -> c(S(tt)) ENCODE_S(nil) -> c(S(nil)) ENCODE_S(cons_active(z0)) -> c(S(active(encArg(z0)))) ENCODE_S(cons_mark(z0)) -> c(S(mark(encArg(z0)))) ENCODE_S(cons_cons(z0, z1)) -> c(S(cons(encArg(z0), encArg(z1)))) ENCODE_S(cons_U11(z0, z1)) -> c(S(U11(encArg(z0), encArg(z1)))) ENCODE_S(cons_s(z0)) -> c(S(s(encArg(z0)))) ENCODE_S(cons_length(z0)) -> c(S(length(encArg(z0)))) ENCODE_S(cons_U21(z0)) -> c(S(U21(encArg(z0)))) ENCODE_S(cons_U31(z0, z1, z2, z3)) -> c(S(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)))) ENCODE_S(cons_take(z0, z1)) -> c(S(take(encArg(z0), encArg(z1)))) ENCODE_S(cons_and(z0, z1)) -> c(S(and(encArg(z0), encArg(z1)))) ENCODE_S(cons_isNat(z0)) -> c(S(isNat(encArg(z0)))) ENCODE_S(cons_isNatList(z0)) -> c(S(isNatList(encArg(z0)))) ENCODE_S(cons_isNatIList(z0)) -> c(S(isNatIList(encArg(z0)))) ---------------------------------------- (126) Obligation: Complexity Dependency Tuples Problem Rules: encArg(zeros) -> zeros encArg(0) -> 0 encArg(tt) -> tt encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_U11(z0, z1)) -> U11(encArg(z0), encArg(z1)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_length(z0)) -> length(encArg(z0)) encArg(cons_U21(z0)) -> U21(encArg(z0)) encArg(cons_U31(z0, z1, z2, z3)) -> U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_isNat(z0)) -> isNat(encArg(z0)) encArg(cons_isNatList(z0)) -> isNatList(encArg(z0)) encArg(cons_isNatIList(z0)) -> isNatIList(encArg(z0)) active(zeros) -> mark(cons(0, zeros)) active(U11(tt, z0)) -> mark(s(length(z0))) active(U21(tt)) -> mark(nil) active(U31(tt, z0, z1, z2)) -> mark(cons(z2, take(z1, z0))) active(and(tt, z0)) -> mark(z0) active(isNat(0)) -> mark(tt) active(isNat(length(z0))) -> mark(isNatList(z0)) active(isNat(s(z0))) -> mark(isNat(z0)) active(isNatIList(z0)) -> mark(isNatList(z0)) active(isNatIList(zeros)) -> mark(tt) active(isNatIList(cons(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(isNatList(nil)) -> mark(tt) active(isNatList(cons(z0, z1))) -> mark(and(isNat(z0), isNatList(z1))) active(isNatList(take(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(length(nil)) -> mark(0) active(length(cons(z0, z1))) -> mark(U11(and(isNatList(z1), isNat(z0)), z1)) active(take(0, z0)) -> mark(U21(isNatIList(z0))) active(take(s(z0), cons(z1, z2))) -> mark(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)) mark(zeros) -> active(zeros) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(0) -> active(0) mark(U11(z0, z1)) -> active(U11(mark(z0), z1)) mark(tt) -> active(tt) mark(s(z0)) -> active(s(mark(z0))) mark(length(z0)) -> active(length(mark(z0))) mark(U21(z0)) -> active(U21(mark(z0))) mark(nil) -> active(nil) mark(U31(z0, z1, z2, z3)) -> active(U31(mark(z0), z1, z2, z3)) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(isNat(z0)) -> active(isNat(z0)) mark(isNatList(z0)) -> active(isNatList(z0)) mark(isNatIList(z0)) -> active(isNatIList(z0)) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) U11(mark(z0), z1) -> U11(z0, z1) U11(z0, mark(z1)) -> U11(z0, z1) U11(active(z0), z1) -> U11(z0, z1) U11(z0, active(z1)) -> U11(z0, z1) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) length(mark(z0)) -> length(z0) length(active(z0)) -> length(z0) U21(mark(z0)) -> U21(z0) U21(active(z0)) -> U21(z0) U31(mark(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, mark(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, mark(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, mark(z3)) -> U31(z0, z1, z2, z3) U31(active(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, active(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, active(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, active(z3)) -> U31(z0, z1, z2, z3) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) isNat(mark(z0)) -> isNat(z0) isNat(active(z0)) -> isNat(z0) isNatList(mark(z0)) -> isNatList(z0) isNatList(active(z0)) -> isNatList(z0) isNatIList(mark(z0)) -> isNatIList(z0) isNatIList(active(z0)) -> isNatIList(z0) Tuples: ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 ENCODE_LENGTH(z0) -> c(LENGTH(encArg(z0))) ENCODE_U21(z0) -> c(U21'(encArg(z0))) ENCODE_U31(z0, z1, z2, z3) -> c(U31'(encArg(z0), encArg(z1), encArg(z2), encArg(z3))) ENCODE_TAKE(z0, z1) -> c(TAKE(encArg(z0), encArg(z1))) ENCODE_AND(z0, z1) -> c(AND(encArg(z0), encArg(z1))) ENCODE_ISNAT(z0) -> c(ISNAT(encArg(z0))) ENCODE_ISNATLIST(z0) -> c(ISNATLIST(encArg(z0))) ENCODE_ISNATILIST(z0) -> c(ISNATILIST(encArg(z0))) ENCARG(cons_active(cons_active(z0))) -> c4(ACTIVE(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_active(cons_mark(z0))) -> c4(ACTIVE(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_active(cons_cons(z0, z1))) -> c4(ACTIVE(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_active(cons_U11(z0, z1))) -> c4(ACTIVE(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_active(cons_s(z0))) -> c4(ACTIVE(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_active(cons_length(z0))) -> c4(ACTIVE(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_active(cons_U21(z0))) -> c4(ACTIVE(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_active(cons_U31(z0, z1, z2, z3))) -> c4(ACTIVE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_active(cons_take(z0, z1))) -> c4(ACTIVE(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_active(cons_and(z0, z1))) -> c4(ACTIVE(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_active(cons_isNat(z0))) -> c4(ACTIVE(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_active(cons_isNatList(z0))) -> c4(ACTIVE(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_active(cons_isNatIList(z0))) -> c4(ACTIVE(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_active(zeros)) -> c4(ACTIVE(zeros)) ENCARG(cons_mark(cons_active(z0))) -> c5(MARK(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_mark(cons_mark(z0))) -> c5(MARK(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_mark(cons_cons(z0, z1))) -> c5(MARK(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_mark(cons_U11(z0, z1))) -> c5(MARK(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_mark(cons_s(z0))) -> c5(MARK(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_mark(cons_length(z0))) -> c5(MARK(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_mark(cons_U21(z0))) -> c5(MARK(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_mark(cons_U31(z0, z1, z2, z3))) -> c5(MARK(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_mark(cons_take(z0, z1))) -> c5(MARK(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(cons_and(z0, z1))) -> c5(MARK(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_mark(cons_isNat(z0))) -> c5(MARK(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_mark(cons_isNatList(z0))) -> c5(MARK(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_mark(cons_isNatIList(z0))) -> c5(MARK(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_mark(zeros)) -> c5(MARK(zeros)) ENCARG(cons_mark(0)) -> c5(MARK(0)) ENCARG(cons_mark(tt)) -> c5(MARK(tt)) ENCARG(cons_mark(nil)) -> c5(MARK(nil)) ENCARG(cons_cons(x0, cons_active(z0))) -> c6(CONS(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_cons(x0, cons_mark(z0))) -> c6(CONS(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_cons(x0, cons_cons(z0, z1))) -> c6(CONS(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_cons(x0, cons_U11(z0, z1))) -> c6(CONS(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_cons(x0, cons_s(z0))) -> c6(CONS(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_cons(x0, cons_length(z0))) -> c6(CONS(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_cons(x0, cons_U21(z0))) -> c6(CONS(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_cons(x0, cons_U31(z0, z1, z2, z3))) -> c6(CONS(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_cons(x0, cons_take(z0, z1))) -> c6(CONS(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_cons(x0, cons_and(z0, z1))) -> c6(CONS(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_cons(x0, cons_isNat(z0))) -> c6(CONS(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_cons(x0, cons_isNatList(z0))) -> c6(CONS(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_cons(x0, cons_isNatIList(z0))) -> c6(CONS(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_cons(cons_active(z0), x1)) -> c6(CONS(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_mark(z0), x1)) -> c6(CONS(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_cons(z0, z1), x1)) -> c6(CONS(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_U11(z0, z1), x1)) -> c6(CONS(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_s(z0), x1)) -> c6(CONS(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_length(z0), x1)) -> c6(CONS(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U21(z0), x1)) -> c6(CONS(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U31(z0, z1, z2, z3), x1)) -> c6(CONS(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_cons(cons_take(z0, z1), x1)) -> c6(CONS(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_and(z0, z1), x1)) -> c6(CONS(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_isNat(z0), x1)) -> c6(CONS(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_isNatList(z0), x1)) -> c6(CONS(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_isNatIList(z0), x1)) -> c6(CONS(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_cons(x0, zeros)) -> c6(CONS(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_cons(x0, 0)) -> c6(CONS(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_cons(x0, tt)) -> c6(CONS(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_cons(x0, nil)) -> c6(CONS(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_cons(zeros, x1)) -> c6(CONS(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(0, x1)) -> c6(CONS(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(tt, x1)) -> c6(CONS(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(nil, x1)) -> c6(CONS(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(x0, cons_active(z0))) -> c7(U11'(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_U11(x0, cons_mark(z0))) -> c7(U11'(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_U11(x0, cons_cons(z0, z1))) -> c7(U11'(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U11(x0, cons_U11(z0, z1))) -> c7(U11'(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U11(x0, cons_s(z0))) -> c7(U11'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_U11(x0, cons_length(z0))) -> c7(U11'(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_U11(x0, cons_U21(z0))) -> c7(U11'(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_U11(x0, cons_U31(z0, z1, z2, z3))) -> c7(U11'(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U11(x0, cons_take(z0, z1))) -> c7(U11'(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_U11(x0, cons_and(z0, z1))) -> c7(U11'(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_U11(x0, cons_isNat(z0))) -> c7(U11'(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_U11(x0, cons_isNatList(z0))) -> c7(U11'(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_U11(x0, cons_isNatIList(z0))) -> c7(U11'(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U11(cons_active(z0), x1)) -> c7(U11'(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_mark(z0), x1)) -> c7(U11'(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_cons(z0, z1), x1)) -> c7(U11'(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_U11(z0, z1), x1)) -> c7(U11'(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_s(z0), x1)) -> c7(U11'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_length(z0), x1)) -> c7(U11'(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_U21(z0), x1)) -> c7(U11'(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_U31(z0, z1, z2, z3), x1)) -> c7(U11'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_U11(cons_take(z0, z1), x1)) -> c7(U11'(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_and(z0, z1), x1)) -> c7(U11'(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_isNat(z0), x1)) -> c7(U11'(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_isNatList(z0), x1)) -> c7(U11'(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_isNatIList(z0), x1)) -> c7(U11'(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_U11(x0, zeros)) -> c7(U11'(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_U11(x0, 0)) -> c7(U11'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_U11(x0, tt)) -> c7(U11'(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_U11(x0, nil)) -> c7(U11'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_U11(zeros, x1)) -> c7(U11'(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(0, x1)) -> c7(U11'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(tt, x1)) -> c7(U11'(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(nil, x1)) -> c7(U11'(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_s(cons_active(z0))) -> c8(S(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_s(cons_mark(z0))) -> c8(S(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_s(cons_cons(z0, z1))) -> c8(S(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_s(cons_U11(z0, z1))) -> c8(S(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_s(cons_s(z0))) -> c8(S(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_length(z0))) -> c8(S(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_s(cons_U21(z0))) -> c8(S(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_s(cons_U31(z0, z1, z2, z3))) -> c8(S(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_s(cons_take(z0, z1))) -> c8(S(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_s(cons_and(z0, z1))) -> c8(S(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_s(cons_isNat(z0))) -> c8(S(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_s(cons_isNatList(z0))) -> c8(S(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_s(cons_isNatIList(z0))) -> c8(S(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_length(cons_active(z0))) -> c9(LENGTH(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_length(cons_mark(z0))) -> c9(LENGTH(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_length(cons_cons(z0, z1))) -> c9(LENGTH(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_length(cons_U11(z0, z1))) -> c9(LENGTH(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_length(cons_s(z0))) -> c9(LENGTH(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_length(cons_length(z0))) -> c9(LENGTH(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_length(cons_U21(z0))) -> c9(LENGTH(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_length(cons_U31(z0, z1, z2, z3))) -> c9(LENGTH(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_length(cons_take(z0, z1))) -> c9(LENGTH(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_length(cons_and(z0, z1))) -> c9(LENGTH(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_length(cons_isNat(z0))) -> c9(LENGTH(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_length(cons_isNatList(z0))) -> c9(LENGTH(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_length(cons_isNatIList(z0))) -> c9(LENGTH(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U21(cons_active(z0))) -> c10(U21'(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_U21(cons_mark(z0))) -> c10(U21'(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_U21(cons_cons(z0, z1))) -> c10(U21'(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U21(cons_U11(z0, z1))) -> c10(U21'(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U21(cons_s(z0))) -> c10(U21'(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_U21(cons_length(z0))) -> c10(U21'(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_U21(cons_U21(z0))) -> c10(U21'(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_U21(cons_U31(z0, z1, z2, z3))) -> c10(U21'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U21(cons_take(z0, z1))) -> c10(U21'(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_U21(cons_and(z0, z1))) -> c10(U21'(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_U21(cons_isNat(z0))) -> c10(U21'(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_U21(cons_isNatList(z0))) -> c10(U21'(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_U21(cons_isNatIList(z0))) -> c10(U21'(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U31(x0, x1, x2, cons_active(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), active(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_active(z0))) ENCARG(cons_U31(x0, x1, x2, cons_mark(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), mark(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_mark(z0))) ENCARG(cons_U31(x0, x1, x2, cons_cons(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_U11(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_s(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), s(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_s(z0))) ENCARG(cons_U31(x0, x1, x2, cons_length(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), length(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_length(z0))) ENCARG(cons_U31(x0, x1, x2, cons_U21(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U21(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U21(z0))) ENCARG(cons_U31(x0, x1, x2, cons_U31(z0, z1, z2, z3))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U31(x0, x1, x2, cons_take(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_take(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_and(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_and(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_isNat(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNat(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNat(z0))) ENCARG(cons_U31(x0, x1, x2, cons_isNatList(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNatList(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNatList(z0))) ENCARG(cons_U31(x0, x1, x2, cons_isNatIList(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U31(x0, x1, cons_active(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), active(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_active(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_mark(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), mark(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_mark(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_cons(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), cons(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_cons(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U11(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), U11(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U11(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_s(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), s(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_s(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_length(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), length(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_length(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U21(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), U21(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U21(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U31(z0, z1, z2, z3), x3)) -> c11(U31'(encArg(x0), encArg(x1), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_take(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), take(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_take(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_and(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), and(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_and(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNat(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNat(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNat(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNatList(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNatList(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNatList(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNatIList(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNatIList(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNatIList(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, cons_active(z0), x2, x3)) -> c11(U31'(encArg(x0), active(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_active(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_mark(z0), x2, x3)) -> c11(U31'(encArg(x0), mark(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_mark(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_cons(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), cons(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_cons(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U11(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), U11(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U11(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_s(z0), x2, x3)) -> c11(U31'(encArg(x0), s(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_s(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_length(z0), x2, x3)) -> c11(U31'(encArg(x0), length(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_length(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U21(z0), x2, x3)) -> c11(U31'(encArg(x0), U21(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U21(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U31(z0, z1, z2, z3), x2, x3)) -> c11(U31'(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_take(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), take(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_take(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_and(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), and(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_and(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNat(z0), x2, x3)) -> c11(U31'(encArg(x0), isNat(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNat(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNatList(z0), x2, x3)) -> c11(U31'(encArg(x0), isNatList(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNatList(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNatIList(z0), x2, x3)) -> c11(U31'(encArg(x0), isNatIList(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNatIList(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_active(z0), x1, x2, x3)) -> c11(U31'(active(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_active(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_mark(z0), x1, x2, x3)) -> c11(U31'(mark(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_mark(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_cons(z0, z1), x1, x2, x3)) -> c11(U31'(cons(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_cons(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U11(z0, z1), x1, x2, x3)) -> c11(U31'(U11(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U11(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_s(z0), x1, x2, x3)) -> c11(U31'(s(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_s(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_length(z0), x1, x2, x3)) -> c11(U31'(length(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_length(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U21(z0), x1, x2, x3)) -> c11(U31'(U21(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U21(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U31(z0, z1, z2, z3), x1, x2, x3)) -> c11(U31'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_take(z0, z1), x1, x2, x3)) -> c11(U31'(take(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_take(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_and(z0, z1), x1, x2, x3)) -> c11(U31'(and(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_and(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNat(z0), x1, x2, x3)) -> c11(U31'(isNat(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNat(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNatList(z0), x1, x2, x3)) -> c11(U31'(isNatList(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNatList(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNatIList(z0), x1, x2, x3)) -> c11(U31'(isNatIList(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNatIList(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, x1, x2, zeros)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), zeros), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, 0)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), 0), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, tt)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), tt), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, nil)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), nil), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, zeros, x3)) -> c11(U31'(encArg(x0), encArg(x1), zeros, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, 0, x3)) -> c11(U31'(encArg(x0), encArg(x1), 0, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, tt, x3)) -> c11(U31'(encArg(x0), encArg(x1), tt, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, nil, x3)) -> c11(U31'(encArg(x0), encArg(x1), nil, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, zeros, x2, x3)) -> c11(U31'(encArg(x0), zeros, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, 0, x2, x3)) -> c11(U31'(encArg(x0), 0, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, tt, x2, x3)) -> c11(U31'(encArg(x0), tt, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, nil, x2, x3)) -> c11(U31'(encArg(x0), nil, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(zeros, x1, x2, x3)) -> c11(U31'(zeros, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(0, x1, x2, x3)) -> c11(U31'(0, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(tt, x1, x2, x3)) -> c11(U31'(tt, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(nil, x1, x2, x3)) -> c11(U31'(nil, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_take(x0, cons_active(z0))) -> c12(TAKE(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_take(x0, cons_mark(z0))) -> c12(TAKE(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_take(x0, cons_cons(z0, z1))) -> c12(TAKE(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_take(x0, cons_U11(z0, z1))) -> c12(TAKE(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_take(x0, cons_s(z0))) -> c12(TAKE(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_take(x0, cons_length(z0))) -> c12(TAKE(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_take(x0, cons_U21(z0))) -> c12(TAKE(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_take(x0, cons_U31(z0, z1, z2, z3))) -> c12(TAKE(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_take(x0, cons_take(z0, z1))) -> c12(TAKE(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_take(x0, cons_and(z0, z1))) -> c12(TAKE(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_take(x0, cons_isNat(z0))) -> c12(TAKE(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_take(x0, cons_isNatList(z0))) -> c12(TAKE(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_take(x0, cons_isNatIList(z0))) -> c12(TAKE(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_take(cons_active(z0), x1)) -> c12(TAKE(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_take(cons_mark(z0), x1)) -> c12(TAKE(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_take(cons_cons(z0, z1), x1)) -> c12(TAKE(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_U11(z0, z1), x1)) -> c12(TAKE(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_s(z0), x1)) -> c12(TAKE(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_take(cons_length(z0), x1)) -> c12(TAKE(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_take(cons_U21(z0), x1)) -> c12(TAKE(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_take(cons_U31(z0, z1, z2, z3), x1)) -> c12(TAKE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_take(cons_take(z0, z1), x1)) -> c12(TAKE(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_and(z0, z1), x1)) -> c12(TAKE(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_isNat(z0), x1)) -> c12(TAKE(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_take(cons_isNatList(z0), x1)) -> c12(TAKE(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_take(cons_isNatIList(z0), x1)) -> c12(TAKE(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_take(x0, zeros)) -> c12(TAKE(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_take(x0, 0)) -> c12(TAKE(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_take(x0, tt)) -> c12(TAKE(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_take(x0, nil)) -> c12(TAKE(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_take(zeros, x1)) -> c12(TAKE(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(0, x1)) -> c12(TAKE(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(tt, x1)) -> c12(TAKE(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(nil, x1)) -> c12(TAKE(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(x0, cons_active(z0))) -> c13(AND(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_and(x0, cons_mark(z0))) -> c13(AND(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_and(x0, cons_cons(z0, z1))) -> c13(AND(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_and(x0, cons_U11(z0, z1))) -> c13(AND(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_and(x0, cons_s(z0))) -> c13(AND(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_and(x0, cons_length(z0))) -> c13(AND(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_and(x0, cons_U21(z0))) -> c13(AND(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_and(x0, cons_U31(z0, z1, z2, z3))) -> c13(AND(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_and(x0, cons_take(z0, z1))) -> c13(AND(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_and(x0, cons_and(z0, z1))) -> c13(AND(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_and(x0, cons_isNat(z0))) -> c13(AND(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_and(x0, cons_isNatList(z0))) -> c13(AND(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_and(x0, cons_isNatIList(z0))) -> c13(AND(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_and(cons_active(z0), x1)) -> c13(AND(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_and(cons_mark(z0), x1)) -> c13(AND(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_and(cons_cons(z0, z1), x1)) -> c13(AND(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_U11(z0, z1), x1)) -> c13(AND(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_s(z0), x1)) -> c13(AND(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_and(cons_length(z0), x1)) -> c13(AND(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_and(cons_U21(z0), x1)) -> c13(AND(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_and(cons_U31(z0, z1, z2, z3), x1)) -> c13(AND(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_and(cons_take(z0, z1), x1)) -> c13(AND(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_and(z0, z1), x1)) -> c13(AND(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_isNat(z0), x1)) -> c13(AND(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_and(cons_isNatList(z0), x1)) -> c13(AND(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_and(cons_isNatIList(z0), x1)) -> c13(AND(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_and(x0, zeros)) -> c13(AND(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_and(x0, 0)) -> c13(AND(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_and(x0, tt)) -> c13(AND(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_and(x0, nil)) -> c13(AND(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_and(zeros, x1)) -> c13(AND(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(0, x1)) -> c13(AND(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(tt, x1)) -> c13(AND(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(nil, x1)) -> c13(AND(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_isNat(cons_active(z0))) -> c14(ISNAT(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_isNat(cons_mark(z0))) -> c14(ISNAT(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_isNat(cons_cons(z0, z1))) -> c14(ISNAT(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_isNat(cons_U11(z0, z1))) -> c14(ISNAT(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_isNat(cons_s(z0))) -> c14(ISNAT(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_isNat(cons_length(z0))) -> c14(ISNAT(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_isNat(cons_U21(z0))) -> c14(ISNAT(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_isNat(cons_U31(z0, z1, z2, z3))) -> c14(ISNAT(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_isNat(cons_take(z0, z1))) -> c14(ISNAT(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_isNat(cons_and(z0, z1))) -> c14(ISNAT(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_isNat(cons_isNat(z0))) -> c14(ISNAT(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_isNat(cons_isNatList(z0))) -> c14(ISNAT(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_isNat(cons_isNatIList(z0))) -> c14(ISNAT(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_isNatList(cons_active(z0))) -> c15(ISNATLIST(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_isNatList(cons_mark(z0))) -> c15(ISNATLIST(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_isNatList(cons_cons(z0, z1))) -> c15(ISNATLIST(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_isNatList(cons_U11(z0, z1))) -> c15(ISNATLIST(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_isNatList(cons_s(z0))) -> c15(ISNATLIST(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_isNatList(cons_length(z0))) -> c15(ISNATLIST(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_isNatList(cons_U21(z0))) -> c15(ISNATLIST(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_isNatList(cons_U31(z0, z1, z2, z3))) -> c15(ISNATLIST(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_isNatList(cons_take(z0, z1))) -> c15(ISNATLIST(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_isNatList(cons_and(z0, z1))) -> c15(ISNATLIST(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_isNatList(cons_isNat(z0))) -> c15(ISNATLIST(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_isNatList(cons_isNatList(z0))) -> c15(ISNATLIST(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_isNatList(cons_isNatIList(z0))) -> c15(ISNATLIST(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_isNatIList(cons_active(z0))) -> c16(ISNATILIST(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_isNatIList(cons_mark(z0))) -> c16(ISNATILIST(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_isNatIList(cons_cons(z0, z1))) -> c16(ISNATILIST(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_isNatIList(cons_U11(z0, z1))) -> c16(ISNATILIST(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_isNatIList(cons_s(z0))) -> c16(ISNATILIST(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_isNatIList(cons_length(z0))) -> c16(ISNATILIST(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_isNatIList(cons_U21(z0))) -> c16(ISNATILIST(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_isNatIList(cons_U31(z0, z1, z2, z3))) -> c16(ISNATILIST(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_isNatIList(cons_take(z0, z1))) -> c16(ISNATILIST(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_isNatIList(cons_and(z0, z1))) -> c16(ISNATILIST(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_isNatIList(cons_isNat(z0))) -> c16(ISNATILIST(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_isNatIList(cons_isNatList(z0))) -> c16(ISNATILIST(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_isNatIList(cons_isNatIList(z0))) -> c16(ISNATILIST(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) MARK(cons(zeros, x1)) -> c53(ACTIVE(cons(active(zeros), x1)), CONS(mark(zeros), x1), MARK(zeros)) MARK(cons(cons(z0, z1), x1)) -> c53(ACTIVE(cons(active(cons(mark(z0), z1)), x1)), CONS(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(cons(0, x1)) -> c53(ACTIVE(cons(active(0), x1)), CONS(mark(0), x1), MARK(0)) MARK(cons(U11(z0, z1), x1)) -> c53(ACTIVE(cons(active(U11(mark(z0), z1)), x1)), CONS(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(cons(tt, x1)) -> c53(ACTIVE(cons(active(tt), x1)), CONS(mark(tt), x1), MARK(tt)) MARK(cons(s(z0), x1)) -> c53(ACTIVE(cons(active(s(mark(z0))), x1)), CONS(mark(s(z0)), x1), MARK(s(z0))) MARK(cons(length(z0), x1)) -> c53(ACTIVE(cons(active(length(mark(z0))), x1)), CONS(mark(length(z0)), x1), MARK(length(z0))) MARK(cons(U21(z0), x1)) -> c53(ACTIVE(cons(active(U21(mark(z0))), x1)), CONS(mark(U21(z0)), x1), MARK(U21(z0))) MARK(cons(nil, x1)) -> c53(ACTIVE(cons(active(nil), x1)), CONS(mark(nil), x1), MARK(nil)) MARK(cons(U31(z0, z1, z2, z3), x1)) -> c53(ACTIVE(cons(active(U31(mark(z0), z1, z2, z3)), x1)), CONS(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(cons(take(z0, z1), x1)) -> c53(ACTIVE(cons(active(take(mark(z0), mark(z1))), x1)), CONS(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(cons(and(z0, z1), x1)) -> c53(ACTIVE(cons(active(and(mark(z0), z1)), x1)), CONS(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(cons(isNat(z0), x1)) -> c53(ACTIVE(cons(active(isNat(z0)), x1)), CONS(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(cons(isNatList(z0), x1)) -> c53(ACTIVE(cons(active(isNatList(z0)), x1)), CONS(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(cons(isNatIList(z0), x1)) -> c53(ACTIVE(cons(active(isNatIList(z0)), x1)), CONS(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(cons(x0, x1)) -> c53(CONS(mark(x0), x1)) MARK(cons(z0, z1)) -> c53(CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(z0, z1)), U11'(mark(z0), z1), MARK(z0)) MARK(U11(zeros, x1)) -> c55(ACTIVE(U11(active(zeros), x1)), U11'(mark(zeros), x1), MARK(zeros)) MARK(U11(cons(z0, z1), x1)) -> c55(ACTIVE(U11(active(cons(mark(z0), z1)), x1)), U11'(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(U11(0, x1)) -> c55(ACTIVE(U11(active(0), x1)), U11'(mark(0), x1), MARK(0)) MARK(U11(U11(z0, z1), x1)) -> c55(ACTIVE(U11(active(U11(mark(z0), z1)), x1)), U11'(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(U11(tt, x1)) -> c55(ACTIVE(U11(active(tt), x1)), U11'(mark(tt), x1), MARK(tt)) MARK(U11(s(z0), x1)) -> c55(ACTIVE(U11(active(s(mark(z0))), x1)), U11'(mark(s(z0)), x1), MARK(s(z0))) MARK(U11(length(z0), x1)) -> c55(ACTIVE(U11(active(length(mark(z0))), x1)), U11'(mark(length(z0)), x1), MARK(length(z0))) MARK(U11(U21(z0), x1)) -> c55(ACTIVE(U11(active(U21(mark(z0))), x1)), U11'(mark(U21(z0)), x1), MARK(U21(z0))) MARK(U11(nil, x1)) -> c55(ACTIVE(U11(active(nil), x1)), U11'(mark(nil), x1), MARK(nil)) MARK(U11(U31(z0, z1, z2, z3), x1)) -> c55(ACTIVE(U11(active(U31(mark(z0), z1, z2, z3)), x1)), U11'(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(U11(take(z0, z1), x1)) -> c55(ACTIVE(U11(active(take(mark(z0), mark(z1))), x1)), U11'(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(U11(and(z0, z1), x1)) -> c55(ACTIVE(U11(active(and(mark(z0), z1)), x1)), U11'(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(U11(isNat(z0), x1)) -> c55(ACTIVE(U11(active(isNat(z0)), x1)), U11'(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(U11(isNatList(z0), x1)) -> c55(ACTIVE(U11(active(isNatList(z0)), x1)), U11'(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(U11(isNatIList(z0), x1)) -> c55(ACTIVE(U11(active(isNatIList(z0)), x1)), U11'(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(U11(x0, x1)) -> c55(U11'(mark(x0), x1)) MARK(s(zeros)) -> c57(ACTIVE(s(active(zeros))), S(mark(zeros)), MARK(zeros)) MARK(s(cons(z0, z1))) -> c57(ACTIVE(s(active(cons(mark(z0), z1)))), S(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(s(0)) -> c57(ACTIVE(s(active(0))), S(mark(0)), MARK(0)) MARK(s(U11(z0, z1))) -> c57(ACTIVE(s(active(U11(mark(z0), z1)))), S(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(s(tt)) -> c57(ACTIVE(s(active(tt))), S(mark(tt)), MARK(tt)) MARK(s(s(z0))) -> c57(ACTIVE(s(active(s(mark(z0))))), S(mark(s(z0))), MARK(s(z0))) MARK(s(length(z0))) -> c57(ACTIVE(s(active(length(mark(z0))))), S(mark(length(z0))), MARK(length(z0))) MARK(s(U21(z0))) -> c57(ACTIVE(s(active(U21(mark(z0))))), S(mark(U21(z0))), MARK(U21(z0))) MARK(s(nil)) -> c57(ACTIVE(s(active(nil))), S(mark(nil)), MARK(nil)) MARK(s(U31(z0, z1, z2, z3))) -> c57(ACTIVE(s(active(U31(mark(z0), z1, z2, z3)))), S(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(s(take(z0, z1))) -> c57(ACTIVE(s(active(take(mark(z0), mark(z1))))), S(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(s(and(z0, z1))) -> c57(ACTIVE(s(active(and(mark(z0), z1)))), S(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(s(isNat(z0))) -> c57(ACTIVE(s(active(isNat(z0)))), S(mark(isNat(z0))), MARK(isNat(z0))) MARK(s(isNatList(z0))) -> c57(ACTIVE(s(active(isNatList(z0)))), S(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(s(isNatIList(z0))) -> c57(ACTIVE(s(active(isNatIList(z0)))), S(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(s(z0)) -> c57(S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(z0)), LENGTH(mark(z0)), MARK(z0)) MARK(length(zeros)) -> c58(ACTIVE(length(active(zeros))), LENGTH(mark(zeros)), MARK(zeros)) MARK(length(cons(z0, z1))) -> c58(ACTIVE(length(active(cons(mark(z0), z1)))), LENGTH(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(length(0)) -> c58(ACTIVE(length(active(0))), LENGTH(mark(0)), MARK(0)) MARK(length(U11(z0, z1))) -> c58(ACTIVE(length(active(U11(mark(z0), z1)))), LENGTH(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(length(tt)) -> c58(ACTIVE(length(active(tt))), LENGTH(mark(tt)), MARK(tt)) MARK(length(s(z0))) -> c58(ACTIVE(length(active(s(mark(z0))))), LENGTH(mark(s(z0))), MARK(s(z0))) MARK(length(length(z0))) -> c58(ACTIVE(length(active(length(mark(z0))))), LENGTH(mark(length(z0))), MARK(length(z0))) MARK(length(U21(z0))) -> c58(ACTIVE(length(active(U21(mark(z0))))), LENGTH(mark(U21(z0))), MARK(U21(z0))) MARK(length(nil)) -> c58(ACTIVE(length(active(nil))), LENGTH(mark(nil)), MARK(nil)) MARK(length(U31(z0, z1, z2, z3))) -> c58(ACTIVE(length(active(U31(mark(z0), z1, z2, z3)))), LENGTH(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(length(take(z0, z1))) -> c58(ACTIVE(length(active(take(mark(z0), mark(z1))))), LENGTH(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(length(and(z0, z1))) -> c58(ACTIVE(length(active(and(mark(z0), z1)))), LENGTH(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(length(isNat(z0))) -> c58(ACTIVE(length(active(isNat(z0)))), LENGTH(mark(isNat(z0))), MARK(isNat(z0))) MARK(length(isNatList(z0))) -> c58(ACTIVE(length(active(isNatList(z0)))), LENGTH(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(length(isNatIList(z0))) -> c58(ACTIVE(length(active(isNatIList(z0)))), LENGTH(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(U21(z0)) -> c59(ACTIVE(U21(z0)), U21'(mark(z0)), MARK(z0)) MARK(U21(zeros)) -> c59(ACTIVE(U21(active(zeros))), U21'(mark(zeros)), MARK(zeros)) MARK(U21(cons(z0, z1))) -> c59(ACTIVE(U21(active(cons(mark(z0), z1)))), U21'(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(U21(0)) -> c59(ACTIVE(U21(active(0))), U21'(mark(0)), MARK(0)) MARK(U21(U11(z0, z1))) -> c59(ACTIVE(U21(active(U11(mark(z0), z1)))), U21'(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(U21(tt)) -> c59(ACTIVE(U21(active(tt))), U21'(mark(tt)), MARK(tt)) MARK(U21(s(z0))) -> c59(ACTIVE(U21(active(s(mark(z0))))), U21'(mark(s(z0))), MARK(s(z0))) MARK(U21(length(z0))) -> c59(ACTIVE(U21(active(length(mark(z0))))), U21'(mark(length(z0))), MARK(length(z0))) MARK(U21(U21(z0))) -> c59(ACTIVE(U21(active(U21(mark(z0))))), U21'(mark(U21(z0))), MARK(U21(z0))) MARK(U21(nil)) -> c59(ACTIVE(U21(active(nil))), U21'(mark(nil)), MARK(nil)) MARK(U21(U31(z0, z1, z2, z3))) -> c59(ACTIVE(U21(active(U31(mark(z0), z1, z2, z3)))), U21'(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(U21(take(z0, z1))) -> c59(ACTIVE(U21(active(take(mark(z0), mark(z1))))), U21'(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(U21(and(z0, z1))) -> c59(ACTIVE(U21(active(and(mark(z0), z1)))), U21'(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(U21(isNat(z0))) -> c59(ACTIVE(U21(active(isNat(z0)))), U21'(mark(isNat(z0))), MARK(isNat(z0))) MARK(U21(isNatList(z0))) -> c59(ACTIVE(U21(active(isNatList(z0)))), U21'(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(U21(isNatIList(z0))) -> c59(ACTIVE(U21(active(isNatIList(z0)))), U21'(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(z0, z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U31(zeros, x1, x2, x3)) -> c61(ACTIVE(U31(active(zeros), x1, x2, x3)), U31'(mark(zeros), x1, x2, x3), MARK(zeros)) MARK(U31(cons(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(cons(mark(z0), z1)), x1, x2, x3)), U31'(mark(cons(z0, z1)), x1, x2, x3), MARK(cons(z0, z1))) MARK(U31(0, x1, x2, x3)) -> c61(ACTIVE(U31(active(0), x1, x2, x3)), U31'(mark(0), x1, x2, x3), MARK(0)) MARK(U31(U11(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(U11(mark(z0), z1)), x1, x2, x3)), U31'(mark(U11(z0, z1)), x1, x2, x3), MARK(U11(z0, z1))) MARK(U31(tt, x1, x2, x3)) -> c61(ACTIVE(U31(active(tt), x1, x2, x3)), U31'(mark(tt), x1, x2, x3), MARK(tt)) MARK(U31(s(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(s(mark(z0))), x1, x2, x3)), U31'(mark(s(z0)), x1, x2, x3), MARK(s(z0))) MARK(U31(length(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(length(mark(z0))), x1, x2, x3)), U31'(mark(length(z0)), x1, x2, x3), MARK(length(z0))) MARK(U31(U21(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(U21(mark(z0))), x1, x2, x3)), U31'(mark(U21(z0)), x1, x2, x3), MARK(U21(z0))) MARK(U31(nil, x1, x2, x3)) -> c61(ACTIVE(U31(active(nil), x1, x2, x3)), U31'(mark(nil), x1, x2, x3), MARK(nil)) MARK(U31(U31(z0, z1, z2, z3), x1, x2, x3)) -> c61(ACTIVE(U31(active(U31(mark(z0), z1, z2, z3)), x1, x2, x3)), U31'(mark(U31(z0, z1, z2, z3)), x1, x2, x3), MARK(U31(z0, z1, z2, z3))) MARK(U31(take(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(take(mark(z0), mark(z1))), x1, x2, x3)), U31'(mark(take(z0, z1)), x1, x2, x3), MARK(take(z0, z1))) MARK(U31(and(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(and(mark(z0), z1)), x1, x2, x3)), U31'(mark(and(z0, z1)), x1, x2, x3), MARK(and(z0, z1))) MARK(U31(isNat(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNat(z0)), x1, x2, x3)), U31'(mark(isNat(z0)), x1, x2, x3), MARK(isNat(z0))) MARK(U31(isNatList(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNatList(z0)), x1, x2, x3)), U31'(mark(isNatList(z0)), x1, x2, x3), MARK(isNatList(z0))) MARK(U31(isNatIList(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNatIList(z0)), x1, x2, x3)), U31'(mark(isNatIList(z0)), x1, x2, x3), MARK(isNatIList(z0))) MARK(U31(x0, x1, x2, x3)) -> c61(U31'(mark(x0), x1, x2, x3)) MARK(take(z0, x1)) -> c62(ACTIVE(take(z0, mark(x1))), TAKE(mark(z0), mark(x1)), MARK(z0), MARK(x1)) MARK(take(x0, z1)) -> c62(ACTIVE(take(mark(x0), z1)), TAKE(mark(x0), mark(z1)), MARK(x0), MARK(z1)) MARK(take(x0, zeros)) -> c62(ACTIVE(take(mark(x0), active(zeros))), TAKE(mark(x0), mark(zeros)), MARK(x0), MARK(zeros)) MARK(take(x0, cons(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(cons(mark(z0), z1)))), TAKE(mark(x0), mark(cons(z0, z1))), MARK(x0), MARK(cons(z0, z1))) MARK(take(x0, 0)) -> c62(ACTIVE(take(mark(x0), active(0))), TAKE(mark(x0), mark(0)), MARK(x0), MARK(0)) MARK(take(x0, U11(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(U11(mark(z0), z1)))), TAKE(mark(x0), mark(U11(z0, z1))), MARK(x0), MARK(U11(z0, z1))) MARK(take(x0, tt)) -> c62(ACTIVE(take(mark(x0), active(tt))), TAKE(mark(x0), mark(tt)), MARK(x0), MARK(tt)) MARK(take(x0, s(z0))) -> c62(ACTIVE(take(mark(x0), active(s(mark(z0))))), TAKE(mark(x0), mark(s(z0))), MARK(x0), MARK(s(z0))) MARK(take(x0, length(z0))) -> c62(ACTIVE(take(mark(x0), active(length(mark(z0))))), TAKE(mark(x0), mark(length(z0))), MARK(x0), MARK(length(z0))) MARK(take(x0, U21(z0))) -> c62(ACTIVE(take(mark(x0), active(U21(mark(z0))))), TAKE(mark(x0), mark(U21(z0))), MARK(x0), MARK(U21(z0))) MARK(take(x0, nil)) -> c62(ACTIVE(take(mark(x0), active(nil))), TAKE(mark(x0), mark(nil)), MARK(x0), MARK(nil)) MARK(take(x0, U31(z0, z1, z2, z3))) -> c62(ACTIVE(take(mark(x0), active(U31(mark(z0), z1, z2, z3)))), TAKE(mark(x0), mark(U31(z0, z1, z2, z3))), MARK(x0), MARK(U31(z0, z1, z2, z3))) MARK(take(x0, take(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(take(mark(z0), mark(z1))))), TAKE(mark(x0), mark(take(z0, z1))), MARK(x0), MARK(take(z0, z1))) MARK(take(x0, and(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(and(mark(z0), z1)))), TAKE(mark(x0), mark(and(z0, z1))), MARK(x0), MARK(and(z0, z1))) MARK(take(x0, isNat(z0))) -> c62(ACTIVE(take(mark(x0), active(isNat(z0)))), TAKE(mark(x0), mark(isNat(z0))), MARK(x0), MARK(isNat(z0))) MARK(take(x0, isNatList(z0))) -> c62(ACTIVE(take(mark(x0), active(isNatList(z0)))), TAKE(mark(x0), mark(isNatList(z0))), MARK(x0), MARK(isNatList(z0))) MARK(take(x0, isNatIList(z0))) -> c62(ACTIVE(take(mark(x0), active(isNatIList(z0)))), TAKE(mark(x0), mark(isNatIList(z0))), MARK(x0), MARK(isNatIList(z0))) MARK(take(zeros, x1)) -> c62(ACTIVE(take(active(zeros), mark(x1))), TAKE(mark(zeros), mark(x1)), MARK(zeros), MARK(x1)) MARK(take(cons(z0, z1), x1)) -> c62(ACTIVE(take(active(cons(mark(z0), z1)), mark(x1))), TAKE(mark(cons(z0, z1)), mark(x1)), MARK(cons(z0, z1)), MARK(x1)) MARK(take(0, x1)) -> c62(ACTIVE(take(active(0), mark(x1))), TAKE(mark(0), mark(x1)), MARK(0), MARK(x1)) MARK(take(U11(z0, z1), x1)) -> c62(ACTIVE(take(active(U11(mark(z0), z1)), mark(x1))), TAKE(mark(U11(z0, z1)), mark(x1)), MARK(U11(z0, z1)), MARK(x1)) MARK(take(tt, x1)) -> c62(ACTIVE(take(active(tt), mark(x1))), TAKE(mark(tt), mark(x1)), MARK(tt), MARK(x1)) MARK(take(s(z0), x1)) -> c62(ACTIVE(take(active(s(mark(z0))), mark(x1))), TAKE(mark(s(z0)), mark(x1)), MARK(s(z0)), MARK(x1)) MARK(take(length(z0), x1)) -> c62(ACTIVE(take(active(length(mark(z0))), mark(x1))), TAKE(mark(length(z0)), mark(x1)), MARK(length(z0)), MARK(x1)) MARK(take(U21(z0), x1)) -> c62(ACTIVE(take(active(U21(mark(z0))), mark(x1))), TAKE(mark(U21(z0)), mark(x1)), MARK(U21(z0)), MARK(x1)) MARK(take(nil, x1)) -> c62(ACTIVE(take(active(nil), mark(x1))), TAKE(mark(nil), mark(x1)), MARK(nil), MARK(x1)) MARK(take(U31(z0, z1, z2, z3), x1)) -> c62(ACTIVE(take(active(U31(mark(z0), z1, z2, z3)), mark(x1))), TAKE(mark(U31(z0, z1, z2, z3)), mark(x1)), MARK(U31(z0, z1, z2, z3)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c62(ACTIVE(take(active(take(mark(z0), mark(z1))), mark(x1))), TAKE(mark(take(z0, z1)), mark(x1)), MARK(take(z0, z1)), MARK(x1)) MARK(take(and(z0, z1), x1)) -> c62(ACTIVE(take(active(and(mark(z0), z1)), mark(x1))), TAKE(mark(and(z0, z1)), mark(x1)), MARK(and(z0, z1)), MARK(x1)) MARK(take(isNat(z0), x1)) -> c62(ACTIVE(take(active(isNat(z0)), mark(x1))), TAKE(mark(isNat(z0)), mark(x1)), MARK(isNat(z0)), MARK(x1)) MARK(take(isNatList(z0), x1)) -> c62(ACTIVE(take(active(isNatList(z0)), mark(x1))), TAKE(mark(isNatList(z0)), mark(x1)), MARK(isNatList(z0)), MARK(x1)) MARK(take(isNatIList(z0), x1)) -> c62(ACTIVE(take(active(isNatIList(z0)), mark(x1))), TAKE(mark(isNatIList(z0)), mark(x1)), MARK(isNatIList(z0)), MARK(x1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(z0, z1)), AND(mark(z0), z1), MARK(z0)) MARK(and(zeros, x1)) -> c63(ACTIVE(and(active(zeros), x1)), AND(mark(zeros), x1), MARK(zeros)) MARK(and(cons(z0, z1), x1)) -> c63(ACTIVE(and(active(cons(mark(z0), z1)), x1)), AND(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(and(0, x1)) -> c63(ACTIVE(and(active(0), x1)), AND(mark(0), x1), MARK(0)) MARK(and(U11(z0, z1), x1)) -> c63(ACTIVE(and(active(U11(mark(z0), z1)), x1)), AND(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(and(tt, x1)) -> c63(ACTIVE(and(active(tt), x1)), AND(mark(tt), x1), MARK(tt)) MARK(and(s(z0), x1)) -> c63(ACTIVE(and(active(s(mark(z0))), x1)), AND(mark(s(z0)), x1), MARK(s(z0))) MARK(and(length(z0), x1)) -> c63(ACTIVE(and(active(length(mark(z0))), x1)), AND(mark(length(z0)), x1), MARK(length(z0))) MARK(and(U21(z0), x1)) -> c63(ACTIVE(and(active(U21(mark(z0))), x1)), AND(mark(U21(z0)), x1), MARK(U21(z0))) MARK(and(nil, x1)) -> c63(ACTIVE(and(active(nil), x1)), AND(mark(nil), x1), MARK(nil)) MARK(and(U31(z0, z1, z2, z3), x1)) -> c63(ACTIVE(and(active(U31(mark(z0), z1, z2, z3)), x1)), AND(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(and(take(z0, z1), x1)) -> c63(ACTIVE(and(active(take(mark(z0), mark(z1))), x1)), AND(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(and(and(z0, z1), x1)) -> c63(ACTIVE(and(active(and(mark(z0), z1)), x1)), AND(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(and(isNat(z0), x1)) -> c63(ACTIVE(and(active(isNat(z0)), x1)), AND(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(and(isNatList(z0), x1)) -> c63(ACTIVE(and(active(isNatList(z0)), x1)), AND(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(and(isNatIList(z0), x1)) -> c63(ACTIVE(and(active(isNatIList(z0)), x1)), AND(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(and(x0, x1)) -> c63(AND(mark(x0), x1)) ENCODE_ACTIVE(cons_active(z0)) -> c(ACTIVE(active(encArg(z0)))) ENCODE_ACTIVE(cons_mark(z0)) -> c(ACTIVE(mark(encArg(z0)))) ENCODE_ACTIVE(cons_cons(z0, z1)) -> c(ACTIVE(cons(encArg(z0), encArg(z1)))) ENCODE_ACTIVE(cons_U11(z0, z1)) -> c(ACTIVE(U11(encArg(z0), encArg(z1)))) ENCODE_ACTIVE(cons_s(z0)) -> c(ACTIVE(s(encArg(z0)))) ENCODE_ACTIVE(cons_length(z0)) -> c(ACTIVE(length(encArg(z0)))) ENCODE_ACTIVE(cons_U21(z0)) -> c(ACTIVE(U21(encArg(z0)))) ENCODE_ACTIVE(cons_U31(z0, z1, z2, z3)) -> c(ACTIVE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)))) ENCODE_ACTIVE(cons_take(z0, z1)) -> c(ACTIVE(take(encArg(z0), encArg(z1)))) ENCODE_ACTIVE(cons_and(z0, z1)) -> c(ACTIVE(and(encArg(z0), encArg(z1)))) ENCODE_ACTIVE(cons_isNat(z0)) -> c(ACTIVE(isNat(encArg(z0)))) ENCODE_ACTIVE(cons_isNatList(z0)) -> c(ACTIVE(isNatList(encArg(z0)))) ENCODE_ACTIVE(cons_isNatIList(z0)) -> c(ACTIVE(isNatIList(encArg(z0)))) ENCODE_MARK(cons_active(z0)) -> c(MARK(active(encArg(z0)))) ENCODE_MARK(cons_mark(z0)) -> c(MARK(mark(encArg(z0)))) ENCODE_MARK(cons_cons(z0, z1)) -> c(MARK(cons(encArg(z0), encArg(z1)))) ENCODE_MARK(cons_U11(z0, z1)) -> c(MARK(U11(encArg(z0), encArg(z1)))) ENCODE_MARK(cons_s(z0)) -> c(MARK(s(encArg(z0)))) ENCODE_MARK(cons_length(z0)) -> c(MARK(length(encArg(z0)))) ENCODE_MARK(cons_U21(z0)) -> c(MARK(U21(encArg(z0)))) ENCODE_MARK(cons_U31(z0, z1, z2, z3)) -> c(MARK(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)))) ENCODE_MARK(cons_take(z0, z1)) -> c(MARK(take(encArg(z0), encArg(z1)))) ENCODE_MARK(cons_and(z0, z1)) -> c(MARK(and(encArg(z0), encArg(z1)))) ENCODE_MARK(cons_isNat(z0)) -> c(MARK(isNat(encArg(z0)))) ENCODE_MARK(cons_isNatList(z0)) -> c(MARK(isNatList(encArg(z0)))) ENCODE_MARK(cons_isNatIList(z0)) -> c(MARK(isNatIList(encArg(z0)))) ENCODE_CONS(x0, zeros) -> c(CONS(encArg(x0), zeros)) ENCODE_CONS(x0, 0) -> c(CONS(encArg(x0), 0)) ENCODE_CONS(x0, tt) -> c(CONS(encArg(x0), tt)) ENCODE_CONS(x0, nil) -> c(CONS(encArg(x0), nil)) ENCODE_CONS(x0, cons_active(z0)) -> c(CONS(encArg(x0), active(encArg(z0)))) ENCODE_CONS(x0, cons_mark(z0)) -> c(CONS(encArg(x0), mark(encArg(z0)))) ENCODE_CONS(x0, cons_cons(z0, z1)) -> c(CONS(encArg(x0), cons(encArg(z0), encArg(z1)))) ENCODE_CONS(x0, cons_U11(z0, z1)) -> c(CONS(encArg(x0), U11(encArg(z0), encArg(z1)))) ENCODE_CONS(x0, cons_s(z0)) -> c(CONS(encArg(x0), s(encArg(z0)))) ENCODE_CONS(x0, cons_length(z0)) -> c(CONS(encArg(x0), length(encArg(z0)))) ENCODE_CONS(x0, cons_U21(z0)) -> c(CONS(encArg(x0), U21(encArg(z0)))) ENCODE_CONS(x0, cons_U31(z0, z1, z2, z3)) -> c(CONS(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)))) ENCODE_CONS(x0, cons_take(z0, z1)) -> c(CONS(encArg(x0), take(encArg(z0), encArg(z1)))) ENCODE_CONS(x0, cons_and(z0, z1)) -> c(CONS(encArg(x0), and(encArg(z0), encArg(z1)))) ENCODE_CONS(x0, cons_isNat(z0)) -> c(CONS(encArg(x0), isNat(encArg(z0)))) ENCODE_CONS(x0, cons_isNatList(z0)) -> c(CONS(encArg(x0), isNatList(encArg(z0)))) ENCODE_CONS(x0, cons_isNatIList(z0)) -> c(CONS(encArg(x0), isNatIList(encArg(z0)))) ENCODE_CONS(zeros, x1) -> c(CONS(zeros, encArg(x1))) ENCODE_CONS(0, x1) -> c(CONS(0, encArg(x1))) ENCODE_CONS(tt, x1) -> c(CONS(tt, encArg(x1))) ENCODE_CONS(nil, x1) -> c(CONS(nil, encArg(x1))) ENCODE_CONS(cons_active(z0), x1) -> c(CONS(active(encArg(z0)), encArg(x1))) ENCODE_CONS(cons_mark(z0), x1) -> c(CONS(mark(encArg(z0)), encArg(x1))) ENCODE_CONS(cons_cons(z0, z1), x1) -> c(CONS(cons(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_CONS(cons_U11(z0, z1), x1) -> c(CONS(U11(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_CONS(cons_s(z0), x1) -> c(CONS(s(encArg(z0)), encArg(x1))) ENCODE_CONS(cons_length(z0), x1) -> c(CONS(length(encArg(z0)), encArg(x1))) ENCODE_CONS(cons_U21(z0), x1) -> c(CONS(U21(encArg(z0)), encArg(x1))) ENCODE_CONS(cons_U31(z0, z1, z2, z3), x1) -> c(CONS(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1))) ENCODE_CONS(cons_take(z0, z1), x1) -> c(CONS(take(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_CONS(cons_and(z0, z1), x1) -> c(CONS(and(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_CONS(cons_isNat(z0), x1) -> c(CONS(isNat(encArg(z0)), encArg(x1))) ENCODE_CONS(cons_isNatList(z0), x1) -> c(CONS(isNatList(encArg(z0)), encArg(x1))) ENCODE_CONS(cons_isNatIList(z0), x1) -> c(CONS(isNatIList(encArg(z0)), encArg(x1))) ENCODE_U11(x0, zeros) -> c(U11'(encArg(x0), zeros)) ENCODE_U11(x0, 0) -> c(U11'(encArg(x0), 0)) ENCODE_U11(x0, tt) -> c(U11'(encArg(x0), tt)) ENCODE_U11(x0, nil) -> c(U11'(encArg(x0), nil)) ENCODE_U11(x0, cons_active(z0)) -> c(U11'(encArg(x0), active(encArg(z0)))) ENCODE_U11(x0, cons_mark(z0)) -> c(U11'(encArg(x0), mark(encArg(z0)))) ENCODE_U11(x0, cons_cons(z0, z1)) -> c(U11'(encArg(x0), cons(encArg(z0), encArg(z1)))) ENCODE_U11(x0, cons_U11(z0, z1)) -> c(U11'(encArg(x0), U11(encArg(z0), encArg(z1)))) ENCODE_U11(x0, cons_s(z0)) -> c(U11'(encArg(x0), s(encArg(z0)))) ENCODE_U11(x0, cons_length(z0)) -> c(U11'(encArg(x0), length(encArg(z0)))) ENCODE_U11(x0, cons_U21(z0)) -> c(U11'(encArg(x0), U21(encArg(z0)))) ENCODE_U11(x0, cons_U31(z0, z1, z2, z3)) -> c(U11'(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)))) ENCODE_U11(x0, cons_take(z0, z1)) -> c(U11'(encArg(x0), take(encArg(z0), encArg(z1)))) ENCODE_U11(x0, cons_and(z0, z1)) -> c(U11'(encArg(x0), and(encArg(z0), encArg(z1)))) ENCODE_U11(x0, cons_isNat(z0)) -> c(U11'(encArg(x0), isNat(encArg(z0)))) ENCODE_U11(x0, cons_isNatList(z0)) -> c(U11'(encArg(x0), isNatList(encArg(z0)))) ENCODE_U11(x0, cons_isNatIList(z0)) -> c(U11'(encArg(x0), isNatIList(encArg(z0)))) ENCODE_U11(zeros, x1) -> c(U11'(zeros, encArg(x1))) ENCODE_U11(0, x1) -> c(U11'(0, encArg(x1))) ENCODE_U11(tt, x1) -> c(U11'(tt, encArg(x1))) ENCODE_U11(nil, x1) -> c(U11'(nil, encArg(x1))) ENCODE_U11(cons_active(z0), x1) -> c(U11'(active(encArg(z0)), encArg(x1))) ENCODE_U11(cons_mark(z0), x1) -> c(U11'(mark(encArg(z0)), encArg(x1))) ENCODE_U11(cons_cons(z0, z1), x1) -> c(U11'(cons(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_U11(cons_U11(z0, z1), x1) -> c(U11'(U11(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_U11(cons_s(z0), x1) -> c(U11'(s(encArg(z0)), encArg(x1))) ENCODE_U11(cons_length(z0), x1) -> c(U11'(length(encArg(z0)), encArg(x1))) ENCODE_U11(cons_U21(z0), x1) -> c(U11'(U21(encArg(z0)), encArg(x1))) ENCODE_U11(cons_U31(z0, z1, z2, z3), x1) -> c(U11'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1))) ENCODE_U11(cons_take(z0, z1), x1) -> c(U11'(take(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_U11(cons_and(z0, z1), x1) -> c(U11'(and(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_U11(cons_isNat(z0), x1) -> c(U11'(isNat(encArg(z0)), encArg(x1))) ENCODE_U11(cons_isNatList(z0), x1) -> c(U11'(isNatList(encArg(z0)), encArg(x1))) ENCODE_U11(cons_isNatIList(z0), x1) -> c(U11'(isNatIList(encArg(z0)), encArg(x1))) ENCODE_S(zeros) -> c(S(zeros)) ENCODE_S(0) -> c(S(0)) ENCODE_S(tt) -> c(S(tt)) ENCODE_S(nil) -> c(S(nil)) ENCODE_S(cons_active(z0)) -> c(S(active(encArg(z0)))) ENCODE_S(cons_mark(z0)) -> c(S(mark(encArg(z0)))) ENCODE_S(cons_cons(z0, z1)) -> c(S(cons(encArg(z0), encArg(z1)))) ENCODE_S(cons_U11(z0, z1)) -> c(S(U11(encArg(z0), encArg(z1)))) ENCODE_S(cons_s(z0)) -> c(S(s(encArg(z0)))) ENCODE_S(cons_length(z0)) -> c(S(length(encArg(z0)))) ENCODE_S(cons_U21(z0)) -> c(S(U21(encArg(z0)))) ENCODE_S(cons_U31(z0, z1, z2, z3)) -> c(S(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)))) ENCODE_S(cons_take(z0, z1)) -> c(S(take(encArg(z0), encArg(z1)))) ENCODE_S(cons_and(z0, z1)) -> c(S(and(encArg(z0), encArg(z1)))) ENCODE_S(cons_isNat(z0)) -> c(S(isNat(encArg(z0)))) ENCODE_S(cons_isNatList(z0)) -> c(S(isNatList(encArg(z0)))) ENCODE_S(cons_isNatIList(z0)) -> c(S(isNatIList(encArg(z0)))) S tuples: ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 MARK(cons(zeros, x1)) -> c53(ACTIVE(cons(active(zeros), x1)), CONS(mark(zeros), x1), MARK(zeros)) MARK(cons(cons(z0, z1), x1)) -> c53(ACTIVE(cons(active(cons(mark(z0), z1)), x1)), CONS(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(cons(0, x1)) -> c53(ACTIVE(cons(active(0), x1)), CONS(mark(0), x1), MARK(0)) MARK(cons(U11(z0, z1), x1)) -> c53(ACTIVE(cons(active(U11(mark(z0), z1)), x1)), CONS(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(cons(tt, x1)) -> c53(ACTIVE(cons(active(tt), x1)), CONS(mark(tt), x1), MARK(tt)) MARK(cons(s(z0), x1)) -> c53(ACTIVE(cons(active(s(mark(z0))), x1)), CONS(mark(s(z0)), x1), MARK(s(z0))) MARK(cons(length(z0), x1)) -> c53(ACTIVE(cons(active(length(mark(z0))), x1)), CONS(mark(length(z0)), x1), MARK(length(z0))) MARK(cons(U21(z0), x1)) -> c53(ACTIVE(cons(active(U21(mark(z0))), x1)), CONS(mark(U21(z0)), x1), MARK(U21(z0))) MARK(cons(nil, x1)) -> c53(ACTIVE(cons(active(nil), x1)), CONS(mark(nil), x1), MARK(nil)) MARK(cons(U31(z0, z1, z2, z3), x1)) -> c53(ACTIVE(cons(active(U31(mark(z0), z1, z2, z3)), x1)), CONS(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(cons(take(z0, z1), x1)) -> c53(ACTIVE(cons(active(take(mark(z0), mark(z1))), x1)), CONS(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(cons(and(z0, z1), x1)) -> c53(ACTIVE(cons(active(and(mark(z0), z1)), x1)), CONS(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(cons(isNat(z0), x1)) -> c53(ACTIVE(cons(active(isNat(z0)), x1)), CONS(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(cons(isNatList(z0), x1)) -> c53(ACTIVE(cons(active(isNatList(z0)), x1)), CONS(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(cons(isNatIList(z0), x1)) -> c53(ACTIVE(cons(active(isNatIList(z0)), x1)), CONS(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(cons(x0, x1)) -> c53(CONS(mark(x0), x1)) MARK(cons(z0, z1)) -> c53(CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(z0, z1)), U11'(mark(z0), z1), MARK(z0)) MARK(U11(zeros, x1)) -> c55(ACTIVE(U11(active(zeros), x1)), U11'(mark(zeros), x1), MARK(zeros)) MARK(U11(cons(z0, z1), x1)) -> c55(ACTIVE(U11(active(cons(mark(z0), z1)), x1)), U11'(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(U11(0, x1)) -> c55(ACTIVE(U11(active(0), x1)), U11'(mark(0), x1), MARK(0)) MARK(U11(U11(z0, z1), x1)) -> c55(ACTIVE(U11(active(U11(mark(z0), z1)), x1)), U11'(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(U11(tt, x1)) -> c55(ACTIVE(U11(active(tt), x1)), U11'(mark(tt), x1), MARK(tt)) MARK(U11(s(z0), x1)) -> c55(ACTIVE(U11(active(s(mark(z0))), x1)), U11'(mark(s(z0)), x1), MARK(s(z0))) MARK(U11(length(z0), x1)) -> c55(ACTIVE(U11(active(length(mark(z0))), x1)), U11'(mark(length(z0)), x1), MARK(length(z0))) MARK(U11(U21(z0), x1)) -> c55(ACTIVE(U11(active(U21(mark(z0))), x1)), U11'(mark(U21(z0)), x1), MARK(U21(z0))) MARK(U11(nil, x1)) -> c55(ACTIVE(U11(active(nil), x1)), U11'(mark(nil), x1), MARK(nil)) MARK(U11(U31(z0, z1, z2, z3), x1)) -> c55(ACTIVE(U11(active(U31(mark(z0), z1, z2, z3)), x1)), U11'(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(U11(take(z0, z1), x1)) -> c55(ACTIVE(U11(active(take(mark(z0), mark(z1))), x1)), U11'(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(U11(and(z0, z1), x1)) -> c55(ACTIVE(U11(active(and(mark(z0), z1)), x1)), U11'(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(U11(isNat(z0), x1)) -> c55(ACTIVE(U11(active(isNat(z0)), x1)), U11'(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(U11(isNatList(z0), x1)) -> c55(ACTIVE(U11(active(isNatList(z0)), x1)), U11'(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(U11(isNatIList(z0), x1)) -> c55(ACTIVE(U11(active(isNatIList(z0)), x1)), U11'(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(U11(x0, x1)) -> c55(U11'(mark(x0), x1)) MARK(s(zeros)) -> c57(ACTIVE(s(active(zeros))), S(mark(zeros)), MARK(zeros)) MARK(s(cons(z0, z1))) -> c57(ACTIVE(s(active(cons(mark(z0), z1)))), S(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(s(0)) -> c57(ACTIVE(s(active(0))), S(mark(0)), MARK(0)) MARK(s(U11(z0, z1))) -> c57(ACTIVE(s(active(U11(mark(z0), z1)))), S(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(s(tt)) -> c57(ACTIVE(s(active(tt))), S(mark(tt)), MARK(tt)) MARK(s(s(z0))) -> c57(ACTIVE(s(active(s(mark(z0))))), S(mark(s(z0))), MARK(s(z0))) MARK(s(length(z0))) -> c57(ACTIVE(s(active(length(mark(z0))))), S(mark(length(z0))), MARK(length(z0))) MARK(s(U21(z0))) -> c57(ACTIVE(s(active(U21(mark(z0))))), S(mark(U21(z0))), MARK(U21(z0))) MARK(s(nil)) -> c57(ACTIVE(s(active(nil))), S(mark(nil)), MARK(nil)) MARK(s(U31(z0, z1, z2, z3))) -> c57(ACTIVE(s(active(U31(mark(z0), z1, z2, z3)))), S(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(s(take(z0, z1))) -> c57(ACTIVE(s(active(take(mark(z0), mark(z1))))), S(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(s(and(z0, z1))) -> c57(ACTIVE(s(active(and(mark(z0), z1)))), S(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(s(isNat(z0))) -> c57(ACTIVE(s(active(isNat(z0)))), S(mark(isNat(z0))), MARK(isNat(z0))) MARK(s(isNatList(z0))) -> c57(ACTIVE(s(active(isNatList(z0)))), S(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(s(isNatIList(z0))) -> c57(ACTIVE(s(active(isNatIList(z0)))), S(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(s(z0)) -> c57(S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(z0)), LENGTH(mark(z0)), MARK(z0)) MARK(length(zeros)) -> c58(ACTIVE(length(active(zeros))), LENGTH(mark(zeros)), MARK(zeros)) MARK(length(cons(z0, z1))) -> c58(ACTIVE(length(active(cons(mark(z0), z1)))), LENGTH(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(length(0)) -> c58(ACTIVE(length(active(0))), LENGTH(mark(0)), MARK(0)) MARK(length(U11(z0, z1))) -> c58(ACTIVE(length(active(U11(mark(z0), z1)))), LENGTH(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(length(tt)) -> c58(ACTIVE(length(active(tt))), LENGTH(mark(tt)), MARK(tt)) MARK(length(s(z0))) -> c58(ACTIVE(length(active(s(mark(z0))))), LENGTH(mark(s(z0))), MARK(s(z0))) MARK(length(length(z0))) -> c58(ACTIVE(length(active(length(mark(z0))))), LENGTH(mark(length(z0))), MARK(length(z0))) MARK(length(U21(z0))) -> c58(ACTIVE(length(active(U21(mark(z0))))), LENGTH(mark(U21(z0))), MARK(U21(z0))) MARK(length(nil)) -> c58(ACTIVE(length(active(nil))), LENGTH(mark(nil)), MARK(nil)) MARK(length(U31(z0, z1, z2, z3))) -> c58(ACTIVE(length(active(U31(mark(z0), z1, z2, z3)))), LENGTH(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(length(take(z0, z1))) -> c58(ACTIVE(length(active(take(mark(z0), mark(z1))))), LENGTH(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(length(and(z0, z1))) -> c58(ACTIVE(length(active(and(mark(z0), z1)))), LENGTH(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(length(isNat(z0))) -> c58(ACTIVE(length(active(isNat(z0)))), LENGTH(mark(isNat(z0))), MARK(isNat(z0))) MARK(length(isNatList(z0))) -> c58(ACTIVE(length(active(isNatList(z0)))), LENGTH(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(length(isNatIList(z0))) -> c58(ACTIVE(length(active(isNatIList(z0)))), LENGTH(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(U21(z0)) -> c59(ACTIVE(U21(z0)), U21'(mark(z0)), MARK(z0)) MARK(U21(zeros)) -> c59(ACTIVE(U21(active(zeros))), U21'(mark(zeros)), MARK(zeros)) MARK(U21(cons(z0, z1))) -> c59(ACTIVE(U21(active(cons(mark(z0), z1)))), U21'(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(U21(0)) -> c59(ACTIVE(U21(active(0))), U21'(mark(0)), MARK(0)) MARK(U21(U11(z0, z1))) -> c59(ACTIVE(U21(active(U11(mark(z0), z1)))), U21'(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(U21(tt)) -> c59(ACTIVE(U21(active(tt))), U21'(mark(tt)), MARK(tt)) MARK(U21(s(z0))) -> c59(ACTIVE(U21(active(s(mark(z0))))), U21'(mark(s(z0))), MARK(s(z0))) MARK(U21(length(z0))) -> c59(ACTIVE(U21(active(length(mark(z0))))), U21'(mark(length(z0))), MARK(length(z0))) MARK(U21(U21(z0))) -> c59(ACTIVE(U21(active(U21(mark(z0))))), U21'(mark(U21(z0))), MARK(U21(z0))) MARK(U21(nil)) -> c59(ACTIVE(U21(active(nil))), U21'(mark(nil)), MARK(nil)) MARK(U21(U31(z0, z1, z2, z3))) -> c59(ACTIVE(U21(active(U31(mark(z0), z1, z2, z3)))), U21'(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(U21(take(z0, z1))) -> c59(ACTIVE(U21(active(take(mark(z0), mark(z1))))), U21'(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(U21(and(z0, z1))) -> c59(ACTIVE(U21(active(and(mark(z0), z1)))), U21'(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(U21(isNat(z0))) -> c59(ACTIVE(U21(active(isNat(z0)))), U21'(mark(isNat(z0))), MARK(isNat(z0))) MARK(U21(isNatList(z0))) -> c59(ACTIVE(U21(active(isNatList(z0)))), U21'(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(U21(isNatIList(z0))) -> c59(ACTIVE(U21(active(isNatIList(z0)))), U21'(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(z0, z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U31(zeros, x1, x2, x3)) -> c61(ACTIVE(U31(active(zeros), x1, x2, x3)), U31'(mark(zeros), x1, x2, x3), MARK(zeros)) MARK(U31(cons(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(cons(mark(z0), z1)), x1, x2, x3)), U31'(mark(cons(z0, z1)), x1, x2, x3), MARK(cons(z0, z1))) MARK(U31(0, x1, x2, x3)) -> c61(ACTIVE(U31(active(0), x1, x2, x3)), U31'(mark(0), x1, x2, x3), MARK(0)) MARK(U31(U11(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(U11(mark(z0), z1)), x1, x2, x3)), U31'(mark(U11(z0, z1)), x1, x2, x3), MARK(U11(z0, z1))) MARK(U31(tt, x1, x2, x3)) -> c61(ACTIVE(U31(active(tt), x1, x2, x3)), U31'(mark(tt), x1, x2, x3), MARK(tt)) MARK(U31(s(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(s(mark(z0))), x1, x2, x3)), U31'(mark(s(z0)), x1, x2, x3), MARK(s(z0))) MARK(U31(length(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(length(mark(z0))), x1, x2, x3)), U31'(mark(length(z0)), x1, x2, x3), MARK(length(z0))) MARK(U31(U21(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(U21(mark(z0))), x1, x2, x3)), U31'(mark(U21(z0)), x1, x2, x3), MARK(U21(z0))) MARK(U31(nil, x1, x2, x3)) -> c61(ACTIVE(U31(active(nil), x1, x2, x3)), U31'(mark(nil), x1, x2, x3), MARK(nil)) MARK(U31(U31(z0, z1, z2, z3), x1, x2, x3)) -> c61(ACTIVE(U31(active(U31(mark(z0), z1, z2, z3)), x1, x2, x3)), U31'(mark(U31(z0, z1, z2, z3)), x1, x2, x3), MARK(U31(z0, z1, z2, z3))) MARK(U31(take(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(take(mark(z0), mark(z1))), x1, x2, x3)), U31'(mark(take(z0, z1)), x1, x2, x3), MARK(take(z0, z1))) MARK(U31(and(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(and(mark(z0), z1)), x1, x2, x3)), U31'(mark(and(z0, z1)), x1, x2, x3), MARK(and(z0, z1))) MARK(U31(isNat(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNat(z0)), x1, x2, x3)), U31'(mark(isNat(z0)), x1, x2, x3), MARK(isNat(z0))) MARK(U31(isNatList(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNatList(z0)), x1, x2, x3)), U31'(mark(isNatList(z0)), x1, x2, x3), MARK(isNatList(z0))) MARK(U31(isNatIList(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNatIList(z0)), x1, x2, x3)), U31'(mark(isNatIList(z0)), x1, x2, x3), MARK(isNatIList(z0))) MARK(U31(x0, x1, x2, x3)) -> c61(U31'(mark(x0), x1, x2, x3)) MARK(take(z0, x1)) -> c62(ACTIVE(take(z0, mark(x1))), TAKE(mark(z0), mark(x1)), MARK(z0), MARK(x1)) MARK(take(x0, z1)) -> c62(ACTIVE(take(mark(x0), z1)), TAKE(mark(x0), mark(z1)), MARK(x0), MARK(z1)) MARK(take(x0, zeros)) -> c62(ACTIVE(take(mark(x0), active(zeros))), TAKE(mark(x0), mark(zeros)), MARK(x0), MARK(zeros)) MARK(take(x0, cons(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(cons(mark(z0), z1)))), TAKE(mark(x0), mark(cons(z0, z1))), MARK(x0), MARK(cons(z0, z1))) MARK(take(x0, 0)) -> c62(ACTIVE(take(mark(x0), active(0))), TAKE(mark(x0), mark(0)), MARK(x0), MARK(0)) MARK(take(x0, U11(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(U11(mark(z0), z1)))), TAKE(mark(x0), mark(U11(z0, z1))), MARK(x0), MARK(U11(z0, z1))) MARK(take(x0, tt)) -> c62(ACTIVE(take(mark(x0), active(tt))), TAKE(mark(x0), mark(tt)), MARK(x0), MARK(tt)) MARK(take(x0, s(z0))) -> c62(ACTIVE(take(mark(x0), active(s(mark(z0))))), TAKE(mark(x0), mark(s(z0))), MARK(x0), MARK(s(z0))) MARK(take(x0, length(z0))) -> c62(ACTIVE(take(mark(x0), active(length(mark(z0))))), TAKE(mark(x0), mark(length(z0))), MARK(x0), MARK(length(z0))) MARK(take(x0, U21(z0))) -> c62(ACTIVE(take(mark(x0), active(U21(mark(z0))))), TAKE(mark(x0), mark(U21(z0))), MARK(x0), MARK(U21(z0))) MARK(take(x0, nil)) -> c62(ACTIVE(take(mark(x0), active(nil))), TAKE(mark(x0), mark(nil)), MARK(x0), MARK(nil)) MARK(take(x0, U31(z0, z1, z2, z3))) -> c62(ACTIVE(take(mark(x0), active(U31(mark(z0), z1, z2, z3)))), TAKE(mark(x0), mark(U31(z0, z1, z2, z3))), MARK(x0), MARK(U31(z0, z1, z2, z3))) MARK(take(x0, take(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(take(mark(z0), mark(z1))))), TAKE(mark(x0), mark(take(z0, z1))), MARK(x0), MARK(take(z0, z1))) MARK(take(x0, and(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(and(mark(z0), z1)))), TAKE(mark(x0), mark(and(z0, z1))), MARK(x0), MARK(and(z0, z1))) MARK(take(x0, isNat(z0))) -> c62(ACTIVE(take(mark(x0), active(isNat(z0)))), TAKE(mark(x0), mark(isNat(z0))), MARK(x0), MARK(isNat(z0))) MARK(take(x0, isNatList(z0))) -> c62(ACTIVE(take(mark(x0), active(isNatList(z0)))), TAKE(mark(x0), mark(isNatList(z0))), MARK(x0), MARK(isNatList(z0))) MARK(take(x0, isNatIList(z0))) -> c62(ACTIVE(take(mark(x0), active(isNatIList(z0)))), TAKE(mark(x0), mark(isNatIList(z0))), MARK(x0), MARK(isNatIList(z0))) MARK(take(zeros, x1)) -> c62(ACTIVE(take(active(zeros), mark(x1))), TAKE(mark(zeros), mark(x1)), MARK(zeros), MARK(x1)) MARK(take(cons(z0, z1), x1)) -> c62(ACTIVE(take(active(cons(mark(z0), z1)), mark(x1))), TAKE(mark(cons(z0, z1)), mark(x1)), MARK(cons(z0, z1)), MARK(x1)) MARK(take(0, x1)) -> c62(ACTIVE(take(active(0), mark(x1))), TAKE(mark(0), mark(x1)), MARK(0), MARK(x1)) MARK(take(U11(z0, z1), x1)) -> c62(ACTIVE(take(active(U11(mark(z0), z1)), mark(x1))), TAKE(mark(U11(z0, z1)), mark(x1)), MARK(U11(z0, z1)), MARK(x1)) MARK(take(tt, x1)) -> c62(ACTIVE(take(active(tt), mark(x1))), TAKE(mark(tt), mark(x1)), MARK(tt), MARK(x1)) MARK(take(s(z0), x1)) -> c62(ACTIVE(take(active(s(mark(z0))), mark(x1))), TAKE(mark(s(z0)), mark(x1)), MARK(s(z0)), MARK(x1)) MARK(take(length(z0), x1)) -> c62(ACTIVE(take(active(length(mark(z0))), mark(x1))), TAKE(mark(length(z0)), mark(x1)), MARK(length(z0)), MARK(x1)) MARK(take(U21(z0), x1)) -> c62(ACTIVE(take(active(U21(mark(z0))), mark(x1))), TAKE(mark(U21(z0)), mark(x1)), MARK(U21(z0)), MARK(x1)) MARK(take(nil, x1)) -> c62(ACTIVE(take(active(nil), mark(x1))), TAKE(mark(nil), mark(x1)), MARK(nil), MARK(x1)) MARK(take(U31(z0, z1, z2, z3), x1)) -> c62(ACTIVE(take(active(U31(mark(z0), z1, z2, z3)), mark(x1))), TAKE(mark(U31(z0, z1, z2, z3)), mark(x1)), MARK(U31(z0, z1, z2, z3)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c62(ACTIVE(take(active(take(mark(z0), mark(z1))), mark(x1))), TAKE(mark(take(z0, z1)), mark(x1)), MARK(take(z0, z1)), MARK(x1)) MARK(take(and(z0, z1), x1)) -> c62(ACTIVE(take(active(and(mark(z0), z1)), mark(x1))), TAKE(mark(and(z0, z1)), mark(x1)), MARK(and(z0, z1)), MARK(x1)) MARK(take(isNat(z0), x1)) -> c62(ACTIVE(take(active(isNat(z0)), mark(x1))), TAKE(mark(isNat(z0)), mark(x1)), MARK(isNat(z0)), MARK(x1)) MARK(take(isNatList(z0), x1)) -> c62(ACTIVE(take(active(isNatList(z0)), mark(x1))), TAKE(mark(isNatList(z0)), mark(x1)), MARK(isNatList(z0)), MARK(x1)) MARK(take(isNatIList(z0), x1)) -> c62(ACTIVE(take(active(isNatIList(z0)), mark(x1))), TAKE(mark(isNatIList(z0)), mark(x1)), MARK(isNatIList(z0)), MARK(x1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(z0, z1)), AND(mark(z0), z1), MARK(z0)) MARK(and(zeros, x1)) -> c63(ACTIVE(and(active(zeros), x1)), AND(mark(zeros), x1), MARK(zeros)) MARK(and(cons(z0, z1), x1)) -> c63(ACTIVE(and(active(cons(mark(z0), z1)), x1)), AND(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(and(0, x1)) -> c63(ACTIVE(and(active(0), x1)), AND(mark(0), x1), MARK(0)) MARK(and(U11(z0, z1), x1)) -> c63(ACTIVE(and(active(U11(mark(z0), z1)), x1)), AND(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(and(tt, x1)) -> c63(ACTIVE(and(active(tt), x1)), AND(mark(tt), x1), MARK(tt)) MARK(and(s(z0), x1)) -> c63(ACTIVE(and(active(s(mark(z0))), x1)), AND(mark(s(z0)), x1), MARK(s(z0))) MARK(and(length(z0), x1)) -> c63(ACTIVE(and(active(length(mark(z0))), x1)), AND(mark(length(z0)), x1), MARK(length(z0))) MARK(and(U21(z0), x1)) -> c63(ACTIVE(and(active(U21(mark(z0))), x1)), AND(mark(U21(z0)), x1), MARK(U21(z0))) MARK(and(nil, x1)) -> c63(ACTIVE(and(active(nil), x1)), AND(mark(nil), x1), MARK(nil)) MARK(and(U31(z0, z1, z2, z3), x1)) -> c63(ACTIVE(and(active(U31(mark(z0), z1, z2, z3)), x1)), AND(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(and(take(z0, z1), x1)) -> c63(ACTIVE(and(active(take(mark(z0), mark(z1))), x1)), AND(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(and(and(z0, z1), x1)) -> c63(ACTIVE(and(active(and(mark(z0), z1)), x1)), AND(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(and(isNat(z0), x1)) -> c63(ACTIVE(and(active(isNat(z0)), x1)), AND(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(and(isNatList(z0), x1)) -> c63(ACTIVE(and(active(isNatList(z0)), x1)), AND(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(and(isNatIList(z0), x1)) -> c63(ACTIVE(and(active(isNatIList(z0)), x1)), AND(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(and(x0, x1)) -> c63(AND(mark(x0), x1)) K tuples:none Defined Rule Symbols: encArg_1, active_1, mark_1, cons_2, U11_2, s_1, length_1, U21_1, U31_4, take_2, and_2, isNat_1, isNatList_1, isNatIList_1 Defined Pair Symbols: ACTIVE_1, MARK_1, CONS_2, U11'_2, S_1, LENGTH_1, U21'_1, U31'_4, TAKE_2, AND_2, ISNAT_1, ISNATLIST_1, ISNATILIST_1, ENCODE_LENGTH_1, ENCODE_U21_1, ENCODE_U31_4, ENCODE_TAKE_2, ENCODE_AND_2, ENCODE_ISNAT_1, ENCODE_ISNATLIST_1, ENCODE_ISNATILIST_1, ENCARG_1, ENCODE_ACTIVE_1, ENCODE_MARK_1, ENCODE_CONS_2, ENCODE_U11_2, ENCODE_S_1 Compound Symbols: c36_1, c37_3, c38_1, c39_1, c40_2, c41_2, c42_2, c43_1, c45_1, c48_1, c52_1, c64_2, c65_2, c66_2, c67_1, c68_1, c69_1, c70_1, c71_1, c72_1, c73_1, c74_1, c75_1, c76_1, c77_1, c78_1, c79_1, c80_1, c81_1, c82_1, c83_1, c84_1, c85_1, c86_1, c87_1, c88_1, c89_1, c90_1, c91_1, c92_1, c93_1, c94_1, c95_1, c96_1, c97_1, c98_1, c99_1, c100_1, c101_1, c102_1, c34_1, c35_2, c44_3, c46_3, c47_3, c49_3, c50_2, c51_4, c54, c56, c60, c_1, c4_2, c4_1, c5_2, c5_1, c6_3, c6_2, c7_3, c7_2, c8_2, c9_2, c10_2, c11_5, c11_4, c12_3, c12_2, c13_3, c13_2, c14_2, c15_2, c16_2, c53_3, c53_1, c53_2, c55_3, c55_1, c57_3, c57_2, c58_3, c59_3, c61_3, c61_1, c62_4, c63_3, c63_1 ---------------------------------------- (127) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 4 trailing nodes: ENCODE_S(tt) -> c(S(tt)) ENCODE_S(nil) -> c(S(nil)) ENCODE_S(0) -> c(S(0)) ENCODE_S(zeros) -> c(S(zeros)) ---------------------------------------- (128) Obligation: Complexity Dependency Tuples Problem Rules: encArg(zeros) -> zeros encArg(0) -> 0 encArg(tt) -> tt encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_U11(z0, z1)) -> U11(encArg(z0), encArg(z1)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_length(z0)) -> length(encArg(z0)) encArg(cons_U21(z0)) -> U21(encArg(z0)) encArg(cons_U31(z0, z1, z2, z3)) -> U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_isNat(z0)) -> isNat(encArg(z0)) encArg(cons_isNatList(z0)) -> isNatList(encArg(z0)) encArg(cons_isNatIList(z0)) -> isNatIList(encArg(z0)) active(zeros) -> mark(cons(0, zeros)) active(U11(tt, z0)) -> mark(s(length(z0))) active(U21(tt)) -> mark(nil) active(U31(tt, z0, z1, z2)) -> mark(cons(z2, take(z1, z0))) active(and(tt, z0)) -> mark(z0) active(isNat(0)) -> mark(tt) active(isNat(length(z0))) -> mark(isNatList(z0)) active(isNat(s(z0))) -> mark(isNat(z0)) active(isNatIList(z0)) -> mark(isNatList(z0)) active(isNatIList(zeros)) -> mark(tt) active(isNatIList(cons(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(isNatList(nil)) -> mark(tt) active(isNatList(cons(z0, z1))) -> mark(and(isNat(z0), isNatList(z1))) active(isNatList(take(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(length(nil)) -> mark(0) active(length(cons(z0, z1))) -> mark(U11(and(isNatList(z1), isNat(z0)), z1)) active(take(0, z0)) -> mark(U21(isNatIList(z0))) active(take(s(z0), cons(z1, z2))) -> mark(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)) mark(zeros) -> active(zeros) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(0) -> active(0) mark(U11(z0, z1)) -> active(U11(mark(z0), z1)) mark(tt) -> active(tt) mark(s(z0)) -> active(s(mark(z0))) mark(length(z0)) -> active(length(mark(z0))) mark(U21(z0)) -> active(U21(mark(z0))) mark(nil) -> active(nil) mark(U31(z0, z1, z2, z3)) -> active(U31(mark(z0), z1, z2, z3)) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(isNat(z0)) -> active(isNat(z0)) mark(isNatList(z0)) -> active(isNatList(z0)) mark(isNatIList(z0)) -> active(isNatIList(z0)) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) U11(mark(z0), z1) -> U11(z0, z1) U11(z0, mark(z1)) -> U11(z0, z1) U11(active(z0), z1) -> U11(z0, z1) U11(z0, active(z1)) -> U11(z0, z1) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) length(mark(z0)) -> length(z0) length(active(z0)) -> length(z0) U21(mark(z0)) -> U21(z0) U21(active(z0)) -> U21(z0) U31(mark(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, mark(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, mark(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, mark(z3)) -> U31(z0, z1, z2, z3) U31(active(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, active(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, active(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, active(z3)) -> U31(z0, z1, z2, z3) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) isNat(mark(z0)) -> isNat(z0) isNat(active(z0)) -> isNat(z0) isNatList(mark(z0)) -> isNatList(z0) isNatList(active(z0)) -> isNatList(z0) isNatIList(mark(z0)) -> isNatIList(z0) isNatIList(active(z0)) -> isNatIList(z0) Tuples: ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 ENCODE_LENGTH(z0) -> c(LENGTH(encArg(z0))) ENCODE_U21(z0) -> c(U21'(encArg(z0))) ENCODE_U31(z0, z1, z2, z3) -> c(U31'(encArg(z0), encArg(z1), encArg(z2), encArg(z3))) ENCODE_TAKE(z0, z1) -> c(TAKE(encArg(z0), encArg(z1))) ENCODE_AND(z0, z1) -> c(AND(encArg(z0), encArg(z1))) ENCODE_ISNAT(z0) -> c(ISNAT(encArg(z0))) ENCODE_ISNATLIST(z0) -> c(ISNATLIST(encArg(z0))) ENCODE_ISNATILIST(z0) -> c(ISNATILIST(encArg(z0))) ENCARG(cons_active(cons_active(z0))) -> c4(ACTIVE(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_active(cons_mark(z0))) -> c4(ACTIVE(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_active(cons_cons(z0, z1))) -> c4(ACTIVE(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_active(cons_U11(z0, z1))) -> c4(ACTIVE(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_active(cons_s(z0))) -> c4(ACTIVE(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_active(cons_length(z0))) -> c4(ACTIVE(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_active(cons_U21(z0))) -> c4(ACTIVE(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_active(cons_U31(z0, z1, z2, z3))) -> c4(ACTIVE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_active(cons_take(z0, z1))) -> c4(ACTIVE(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_active(cons_and(z0, z1))) -> c4(ACTIVE(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_active(cons_isNat(z0))) -> c4(ACTIVE(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_active(cons_isNatList(z0))) -> c4(ACTIVE(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_active(cons_isNatIList(z0))) -> c4(ACTIVE(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_active(zeros)) -> c4(ACTIVE(zeros)) ENCARG(cons_mark(cons_active(z0))) -> c5(MARK(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_mark(cons_mark(z0))) -> c5(MARK(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_mark(cons_cons(z0, z1))) -> c5(MARK(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_mark(cons_U11(z0, z1))) -> c5(MARK(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_mark(cons_s(z0))) -> c5(MARK(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_mark(cons_length(z0))) -> c5(MARK(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_mark(cons_U21(z0))) -> c5(MARK(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_mark(cons_U31(z0, z1, z2, z3))) -> c5(MARK(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_mark(cons_take(z0, z1))) -> c5(MARK(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(cons_and(z0, z1))) -> c5(MARK(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_mark(cons_isNat(z0))) -> c5(MARK(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_mark(cons_isNatList(z0))) -> c5(MARK(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_mark(cons_isNatIList(z0))) -> c5(MARK(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_mark(zeros)) -> c5(MARK(zeros)) ENCARG(cons_mark(0)) -> c5(MARK(0)) ENCARG(cons_mark(tt)) -> c5(MARK(tt)) ENCARG(cons_mark(nil)) -> c5(MARK(nil)) ENCARG(cons_cons(x0, cons_active(z0))) -> c6(CONS(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_cons(x0, cons_mark(z0))) -> c6(CONS(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_cons(x0, cons_cons(z0, z1))) -> c6(CONS(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_cons(x0, cons_U11(z0, z1))) -> c6(CONS(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_cons(x0, cons_s(z0))) -> c6(CONS(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_cons(x0, cons_length(z0))) -> c6(CONS(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_cons(x0, cons_U21(z0))) -> c6(CONS(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_cons(x0, cons_U31(z0, z1, z2, z3))) -> c6(CONS(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_cons(x0, cons_take(z0, z1))) -> c6(CONS(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_cons(x0, cons_and(z0, z1))) -> c6(CONS(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_cons(x0, cons_isNat(z0))) -> c6(CONS(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_cons(x0, cons_isNatList(z0))) -> c6(CONS(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_cons(x0, cons_isNatIList(z0))) -> c6(CONS(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_cons(cons_active(z0), x1)) -> c6(CONS(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_mark(z0), x1)) -> c6(CONS(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_cons(z0, z1), x1)) -> c6(CONS(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_U11(z0, z1), x1)) -> c6(CONS(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_s(z0), x1)) -> c6(CONS(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_length(z0), x1)) -> c6(CONS(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U21(z0), x1)) -> c6(CONS(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U31(z0, z1, z2, z3), x1)) -> c6(CONS(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_cons(cons_take(z0, z1), x1)) -> c6(CONS(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_and(z0, z1), x1)) -> c6(CONS(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_isNat(z0), x1)) -> c6(CONS(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_isNatList(z0), x1)) -> c6(CONS(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_isNatIList(z0), x1)) -> c6(CONS(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_cons(x0, zeros)) -> c6(CONS(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_cons(x0, 0)) -> c6(CONS(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_cons(x0, tt)) -> c6(CONS(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_cons(x0, nil)) -> c6(CONS(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_cons(zeros, x1)) -> c6(CONS(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(0, x1)) -> c6(CONS(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(tt, x1)) -> c6(CONS(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(nil, x1)) -> c6(CONS(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(x0, cons_active(z0))) -> c7(U11'(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_U11(x0, cons_mark(z0))) -> c7(U11'(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_U11(x0, cons_cons(z0, z1))) -> c7(U11'(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U11(x0, cons_U11(z0, z1))) -> c7(U11'(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U11(x0, cons_s(z0))) -> c7(U11'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_U11(x0, cons_length(z0))) -> c7(U11'(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_U11(x0, cons_U21(z0))) -> c7(U11'(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_U11(x0, cons_U31(z0, z1, z2, z3))) -> c7(U11'(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U11(x0, cons_take(z0, z1))) -> c7(U11'(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_U11(x0, cons_and(z0, z1))) -> c7(U11'(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_U11(x0, cons_isNat(z0))) -> c7(U11'(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_U11(x0, cons_isNatList(z0))) -> c7(U11'(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_U11(x0, cons_isNatIList(z0))) -> c7(U11'(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U11(cons_active(z0), x1)) -> c7(U11'(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_mark(z0), x1)) -> c7(U11'(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_cons(z0, z1), x1)) -> c7(U11'(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_U11(z0, z1), x1)) -> c7(U11'(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_s(z0), x1)) -> c7(U11'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_length(z0), x1)) -> c7(U11'(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_U21(z0), x1)) -> c7(U11'(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_U31(z0, z1, z2, z3), x1)) -> c7(U11'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_U11(cons_take(z0, z1), x1)) -> c7(U11'(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_and(z0, z1), x1)) -> c7(U11'(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_isNat(z0), x1)) -> c7(U11'(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_isNatList(z0), x1)) -> c7(U11'(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_isNatIList(z0), x1)) -> c7(U11'(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_U11(x0, zeros)) -> c7(U11'(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_U11(x0, 0)) -> c7(U11'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_U11(x0, tt)) -> c7(U11'(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_U11(x0, nil)) -> c7(U11'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_U11(zeros, x1)) -> c7(U11'(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(0, x1)) -> c7(U11'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(tt, x1)) -> c7(U11'(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(nil, x1)) -> c7(U11'(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_s(cons_active(z0))) -> c8(S(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_s(cons_mark(z0))) -> c8(S(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_s(cons_cons(z0, z1))) -> c8(S(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_s(cons_U11(z0, z1))) -> c8(S(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_s(cons_s(z0))) -> c8(S(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_length(z0))) -> c8(S(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_s(cons_U21(z0))) -> c8(S(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_s(cons_U31(z0, z1, z2, z3))) -> c8(S(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_s(cons_take(z0, z1))) -> c8(S(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_s(cons_and(z0, z1))) -> c8(S(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_s(cons_isNat(z0))) -> c8(S(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_s(cons_isNatList(z0))) -> c8(S(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_s(cons_isNatIList(z0))) -> c8(S(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_length(cons_active(z0))) -> c9(LENGTH(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_length(cons_mark(z0))) -> c9(LENGTH(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_length(cons_cons(z0, z1))) -> c9(LENGTH(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_length(cons_U11(z0, z1))) -> c9(LENGTH(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_length(cons_s(z0))) -> c9(LENGTH(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_length(cons_length(z0))) -> c9(LENGTH(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_length(cons_U21(z0))) -> c9(LENGTH(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_length(cons_U31(z0, z1, z2, z3))) -> c9(LENGTH(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_length(cons_take(z0, z1))) -> c9(LENGTH(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_length(cons_and(z0, z1))) -> c9(LENGTH(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_length(cons_isNat(z0))) -> c9(LENGTH(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_length(cons_isNatList(z0))) -> c9(LENGTH(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_length(cons_isNatIList(z0))) -> c9(LENGTH(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U21(cons_active(z0))) -> c10(U21'(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_U21(cons_mark(z0))) -> c10(U21'(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_U21(cons_cons(z0, z1))) -> c10(U21'(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U21(cons_U11(z0, z1))) -> c10(U21'(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U21(cons_s(z0))) -> c10(U21'(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_U21(cons_length(z0))) -> c10(U21'(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_U21(cons_U21(z0))) -> c10(U21'(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_U21(cons_U31(z0, z1, z2, z3))) -> c10(U21'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U21(cons_take(z0, z1))) -> c10(U21'(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_U21(cons_and(z0, z1))) -> c10(U21'(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_U21(cons_isNat(z0))) -> c10(U21'(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_U21(cons_isNatList(z0))) -> c10(U21'(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_U21(cons_isNatIList(z0))) -> c10(U21'(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U31(x0, x1, x2, cons_active(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), active(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_active(z0))) ENCARG(cons_U31(x0, x1, x2, cons_mark(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), mark(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_mark(z0))) ENCARG(cons_U31(x0, x1, x2, cons_cons(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_U11(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_s(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), s(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_s(z0))) ENCARG(cons_U31(x0, x1, x2, cons_length(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), length(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_length(z0))) ENCARG(cons_U31(x0, x1, x2, cons_U21(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U21(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U21(z0))) ENCARG(cons_U31(x0, x1, x2, cons_U31(z0, z1, z2, z3))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U31(x0, x1, x2, cons_take(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_take(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_and(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_and(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_isNat(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNat(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNat(z0))) ENCARG(cons_U31(x0, x1, x2, cons_isNatList(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNatList(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNatList(z0))) ENCARG(cons_U31(x0, x1, x2, cons_isNatIList(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U31(x0, x1, cons_active(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), active(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_active(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_mark(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), mark(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_mark(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_cons(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), cons(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_cons(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U11(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), U11(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U11(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_s(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), s(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_s(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_length(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), length(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_length(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U21(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), U21(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U21(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U31(z0, z1, z2, z3), x3)) -> c11(U31'(encArg(x0), encArg(x1), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_take(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), take(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_take(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_and(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), and(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_and(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNat(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNat(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNat(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNatList(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNatList(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNatList(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNatIList(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNatIList(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNatIList(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, cons_active(z0), x2, x3)) -> c11(U31'(encArg(x0), active(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_active(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_mark(z0), x2, x3)) -> c11(U31'(encArg(x0), mark(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_mark(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_cons(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), cons(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_cons(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U11(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), U11(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U11(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_s(z0), x2, x3)) -> c11(U31'(encArg(x0), s(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_s(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_length(z0), x2, x3)) -> c11(U31'(encArg(x0), length(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_length(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U21(z0), x2, x3)) -> c11(U31'(encArg(x0), U21(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U21(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U31(z0, z1, z2, z3), x2, x3)) -> c11(U31'(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_take(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), take(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_take(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_and(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), and(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_and(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNat(z0), x2, x3)) -> c11(U31'(encArg(x0), isNat(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNat(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNatList(z0), x2, x3)) -> c11(U31'(encArg(x0), isNatList(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNatList(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNatIList(z0), x2, x3)) -> c11(U31'(encArg(x0), isNatIList(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNatIList(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_active(z0), x1, x2, x3)) -> c11(U31'(active(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_active(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_mark(z0), x1, x2, x3)) -> c11(U31'(mark(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_mark(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_cons(z0, z1), x1, x2, x3)) -> c11(U31'(cons(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_cons(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U11(z0, z1), x1, x2, x3)) -> c11(U31'(U11(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U11(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_s(z0), x1, x2, x3)) -> c11(U31'(s(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_s(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_length(z0), x1, x2, x3)) -> c11(U31'(length(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_length(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U21(z0), x1, x2, x3)) -> c11(U31'(U21(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U21(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U31(z0, z1, z2, z3), x1, x2, x3)) -> c11(U31'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_take(z0, z1), x1, x2, x3)) -> c11(U31'(take(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_take(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_and(z0, z1), x1, x2, x3)) -> c11(U31'(and(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_and(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNat(z0), x1, x2, x3)) -> c11(U31'(isNat(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNat(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNatList(z0), x1, x2, x3)) -> c11(U31'(isNatList(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNatList(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNatIList(z0), x1, x2, x3)) -> c11(U31'(isNatIList(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNatIList(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, x1, x2, zeros)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), zeros), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, 0)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), 0), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, tt)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), tt), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, nil)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), nil), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, zeros, x3)) -> c11(U31'(encArg(x0), encArg(x1), zeros, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, 0, x3)) -> c11(U31'(encArg(x0), encArg(x1), 0, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, tt, x3)) -> c11(U31'(encArg(x0), encArg(x1), tt, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, nil, x3)) -> c11(U31'(encArg(x0), encArg(x1), nil, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, zeros, x2, x3)) -> c11(U31'(encArg(x0), zeros, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, 0, x2, x3)) -> c11(U31'(encArg(x0), 0, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, tt, x2, x3)) -> c11(U31'(encArg(x0), tt, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, nil, x2, x3)) -> c11(U31'(encArg(x0), nil, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(zeros, x1, x2, x3)) -> c11(U31'(zeros, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(0, x1, x2, x3)) -> c11(U31'(0, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(tt, x1, x2, x3)) -> c11(U31'(tt, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(nil, x1, x2, x3)) -> c11(U31'(nil, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_take(x0, cons_active(z0))) -> c12(TAKE(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_take(x0, cons_mark(z0))) -> c12(TAKE(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_take(x0, cons_cons(z0, z1))) -> c12(TAKE(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_take(x0, cons_U11(z0, z1))) -> c12(TAKE(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_take(x0, cons_s(z0))) -> c12(TAKE(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_take(x0, cons_length(z0))) -> c12(TAKE(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_take(x0, cons_U21(z0))) -> c12(TAKE(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_take(x0, cons_U31(z0, z1, z2, z3))) -> c12(TAKE(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_take(x0, cons_take(z0, z1))) -> c12(TAKE(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_take(x0, cons_and(z0, z1))) -> c12(TAKE(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_take(x0, cons_isNat(z0))) -> c12(TAKE(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_take(x0, cons_isNatList(z0))) -> c12(TAKE(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_take(x0, cons_isNatIList(z0))) -> c12(TAKE(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_take(cons_active(z0), x1)) -> c12(TAKE(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_take(cons_mark(z0), x1)) -> c12(TAKE(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_take(cons_cons(z0, z1), x1)) -> c12(TAKE(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_U11(z0, z1), x1)) -> c12(TAKE(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_s(z0), x1)) -> c12(TAKE(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_take(cons_length(z0), x1)) -> c12(TAKE(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_take(cons_U21(z0), x1)) -> c12(TAKE(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_take(cons_U31(z0, z1, z2, z3), x1)) -> c12(TAKE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_take(cons_take(z0, z1), x1)) -> c12(TAKE(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_and(z0, z1), x1)) -> c12(TAKE(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_isNat(z0), x1)) -> c12(TAKE(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_take(cons_isNatList(z0), x1)) -> c12(TAKE(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_take(cons_isNatIList(z0), x1)) -> c12(TAKE(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_take(x0, zeros)) -> c12(TAKE(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_take(x0, 0)) -> c12(TAKE(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_take(x0, tt)) -> c12(TAKE(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_take(x0, nil)) -> c12(TAKE(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_take(zeros, x1)) -> c12(TAKE(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(0, x1)) -> c12(TAKE(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(tt, x1)) -> c12(TAKE(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(nil, x1)) -> c12(TAKE(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(x0, cons_active(z0))) -> c13(AND(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_and(x0, cons_mark(z0))) -> c13(AND(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_and(x0, cons_cons(z0, z1))) -> c13(AND(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_and(x0, cons_U11(z0, z1))) -> c13(AND(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_and(x0, cons_s(z0))) -> c13(AND(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_and(x0, cons_length(z0))) -> c13(AND(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_and(x0, cons_U21(z0))) -> c13(AND(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_and(x0, cons_U31(z0, z1, z2, z3))) -> c13(AND(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_and(x0, cons_take(z0, z1))) -> c13(AND(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_and(x0, cons_and(z0, z1))) -> c13(AND(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_and(x0, cons_isNat(z0))) -> c13(AND(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_and(x0, cons_isNatList(z0))) -> c13(AND(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_and(x0, cons_isNatIList(z0))) -> c13(AND(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_and(cons_active(z0), x1)) -> c13(AND(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_and(cons_mark(z0), x1)) -> c13(AND(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_and(cons_cons(z0, z1), x1)) -> c13(AND(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_U11(z0, z1), x1)) -> c13(AND(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_s(z0), x1)) -> c13(AND(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_and(cons_length(z0), x1)) -> c13(AND(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_and(cons_U21(z0), x1)) -> c13(AND(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_and(cons_U31(z0, z1, z2, z3), x1)) -> c13(AND(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_and(cons_take(z0, z1), x1)) -> c13(AND(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_and(z0, z1), x1)) -> c13(AND(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_isNat(z0), x1)) -> c13(AND(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_and(cons_isNatList(z0), x1)) -> c13(AND(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_and(cons_isNatIList(z0), x1)) -> c13(AND(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_and(x0, zeros)) -> c13(AND(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_and(x0, 0)) -> c13(AND(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_and(x0, tt)) -> c13(AND(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_and(x0, nil)) -> c13(AND(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_and(zeros, x1)) -> c13(AND(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(0, x1)) -> c13(AND(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(tt, x1)) -> c13(AND(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(nil, x1)) -> c13(AND(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_isNat(cons_active(z0))) -> c14(ISNAT(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_isNat(cons_mark(z0))) -> c14(ISNAT(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_isNat(cons_cons(z0, z1))) -> c14(ISNAT(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_isNat(cons_U11(z0, z1))) -> c14(ISNAT(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_isNat(cons_s(z0))) -> c14(ISNAT(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_isNat(cons_length(z0))) -> c14(ISNAT(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_isNat(cons_U21(z0))) -> c14(ISNAT(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_isNat(cons_U31(z0, z1, z2, z3))) -> c14(ISNAT(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_isNat(cons_take(z0, z1))) -> c14(ISNAT(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_isNat(cons_and(z0, z1))) -> c14(ISNAT(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_isNat(cons_isNat(z0))) -> c14(ISNAT(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_isNat(cons_isNatList(z0))) -> c14(ISNAT(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_isNat(cons_isNatIList(z0))) -> c14(ISNAT(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_isNatList(cons_active(z0))) -> c15(ISNATLIST(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_isNatList(cons_mark(z0))) -> c15(ISNATLIST(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_isNatList(cons_cons(z0, z1))) -> c15(ISNATLIST(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_isNatList(cons_U11(z0, z1))) -> c15(ISNATLIST(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_isNatList(cons_s(z0))) -> c15(ISNATLIST(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_isNatList(cons_length(z0))) -> c15(ISNATLIST(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_isNatList(cons_U21(z0))) -> c15(ISNATLIST(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_isNatList(cons_U31(z0, z1, z2, z3))) -> c15(ISNATLIST(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_isNatList(cons_take(z0, z1))) -> c15(ISNATLIST(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_isNatList(cons_and(z0, z1))) -> c15(ISNATLIST(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_isNatList(cons_isNat(z0))) -> c15(ISNATLIST(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_isNatList(cons_isNatList(z0))) -> c15(ISNATLIST(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_isNatList(cons_isNatIList(z0))) -> c15(ISNATLIST(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_isNatIList(cons_active(z0))) -> c16(ISNATILIST(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_isNatIList(cons_mark(z0))) -> c16(ISNATILIST(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_isNatIList(cons_cons(z0, z1))) -> c16(ISNATILIST(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_isNatIList(cons_U11(z0, z1))) -> c16(ISNATILIST(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_isNatIList(cons_s(z0))) -> c16(ISNATILIST(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_isNatIList(cons_length(z0))) -> c16(ISNATILIST(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_isNatIList(cons_U21(z0))) -> c16(ISNATILIST(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_isNatIList(cons_U31(z0, z1, z2, z3))) -> c16(ISNATILIST(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_isNatIList(cons_take(z0, z1))) -> c16(ISNATILIST(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_isNatIList(cons_and(z0, z1))) -> c16(ISNATILIST(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_isNatIList(cons_isNat(z0))) -> c16(ISNATILIST(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_isNatIList(cons_isNatList(z0))) -> c16(ISNATILIST(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_isNatIList(cons_isNatIList(z0))) -> c16(ISNATILIST(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) MARK(cons(zeros, x1)) -> c53(ACTIVE(cons(active(zeros), x1)), CONS(mark(zeros), x1), MARK(zeros)) MARK(cons(cons(z0, z1), x1)) -> c53(ACTIVE(cons(active(cons(mark(z0), z1)), x1)), CONS(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(cons(0, x1)) -> c53(ACTIVE(cons(active(0), x1)), CONS(mark(0), x1), MARK(0)) MARK(cons(U11(z0, z1), x1)) -> c53(ACTIVE(cons(active(U11(mark(z0), z1)), x1)), CONS(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(cons(tt, x1)) -> c53(ACTIVE(cons(active(tt), x1)), CONS(mark(tt), x1), MARK(tt)) MARK(cons(s(z0), x1)) -> c53(ACTIVE(cons(active(s(mark(z0))), x1)), CONS(mark(s(z0)), x1), MARK(s(z0))) MARK(cons(length(z0), x1)) -> c53(ACTIVE(cons(active(length(mark(z0))), x1)), CONS(mark(length(z0)), x1), MARK(length(z0))) MARK(cons(U21(z0), x1)) -> c53(ACTIVE(cons(active(U21(mark(z0))), x1)), CONS(mark(U21(z0)), x1), MARK(U21(z0))) MARK(cons(nil, x1)) -> c53(ACTIVE(cons(active(nil), x1)), CONS(mark(nil), x1), MARK(nil)) MARK(cons(U31(z0, z1, z2, z3), x1)) -> c53(ACTIVE(cons(active(U31(mark(z0), z1, z2, z3)), x1)), CONS(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(cons(take(z0, z1), x1)) -> c53(ACTIVE(cons(active(take(mark(z0), mark(z1))), x1)), CONS(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(cons(and(z0, z1), x1)) -> c53(ACTIVE(cons(active(and(mark(z0), z1)), x1)), CONS(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(cons(isNat(z0), x1)) -> c53(ACTIVE(cons(active(isNat(z0)), x1)), CONS(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(cons(isNatList(z0), x1)) -> c53(ACTIVE(cons(active(isNatList(z0)), x1)), CONS(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(cons(isNatIList(z0), x1)) -> c53(ACTIVE(cons(active(isNatIList(z0)), x1)), CONS(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(cons(x0, x1)) -> c53(CONS(mark(x0), x1)) MARK(cons(z0, z1)) -> c53(CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(z0, z1)), U11'(mark(z0), z1), MARK(z0)) MARK(U11(zeros, x1)) -> c55(ACTIVE(U11(active(zeros), x1)), U11'(mark(zeros), x1), MARK(zeros)) MARK(U11(cons(z0, z1), x1)) -> c55(ACTIVE(U11(active(cons(mark(z0), z1)), x1)), U11'(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(U11(0, x1)) -> c55(ACTIVE(U11(active(0), x1)), U11'(mark(0), x1), MARK(0)) MARK(U11(U11(z0, z1), x1)) -> c55(ACTIVE(U11(active(U11(mark(z0), z1)), x1)), U11'(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(U11(tt, x1)) -> c55(ACTIVE(U11(active(tt), x1)), U11'(mark(tt), x1), MARK(tt)) MARK(U11(s(z0), x1)) -> c55(ACTIVE(U11(active(s(mark(z0))), x1)), U11'(mark(s(z0)), x1), MARK(s(z0))) MARK(U11(length(z0), x1)) -> c55(ACTIVE(U11(active(length(mark(z0))), x1)), U11'(mark(length(z0)), x1), MARK(length(z0))) MARK(U11(U21(z0), x1)) -> c55(ACTIVE(U11(active(U21(mark(z0))), x1)), U11'(mark(U21(z0)), x1), MARK(U21(z0))) MARK(U11(nil, x1)) -> c55(ACTIVE(U11(active(nil), x1)), U11'(mark(nil), x1), MARK(nil)) MARK(U11(U31(z0, z1, z2, z3), x1)) -> c55(ACTIVE(U11(active(U31(mark(z0), z1, z2, z3)), x1)), U11'(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(U11(take(z0, z1), x1)) -> c55(ACTIVE(U11(active(take(mark(z0), mark(z1))), x1)), U11'(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(U11(and(z0, z1), x1)) -> c55(ACTIVE(U11(active(and(mark(z0), z1)), x1)), U11'(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(U11(isNat(z0), x1)) -> c55(ACTIVE(U11(active(isNat(z0)), x1)), U11'(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(U11(isNatList(z0), x1)) -> c55(ACTIVE(U11(active(isNatList(z0)), x1)), U11'(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(U11(isNatIList(z0), x1)) -> c55(ACTIVE(U11(active(isNatIList(z0)), x1)), U11'(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(U11(x0, x1)) -> c55(U11'(mark(x0), x1)) MARK(s(zeros)) -> c57(ACTIVE(s(active(zeros))), S(mark(zeros)), MARK(zeros)) MARK(s(cons(z0, z1))) -> c57(ACTIVE(s(active(cons(mark(z0), z1)))), S(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(s(0)) -> c57(ACTIVE(s(active(0))), S(mark(0)), MARK(0)) MARK(s(U11(z0, z1))) -> c57(ACTIVE(s(active(U11(mark(z0), z1)))), S(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(s(tt)) -> c57(ACTIVE(s(active(tt))), S(mark(tt)), MARK(tt)) MARK(s(s(z0))) -> c57(ACTIVE(s(active(s(mark(z0))))), S(mark(s(z0))), MARK(s(z0))) MARK(s(length(z0))) -> c57(ACTIVE(s(active(length(mark(z0))))), S(mark(length(z0))), MARK(length(z0))) MARK(s(U21(z0))) -> c57(ACTIVE(s(active(U21(mark(z0))))), S(mark(U21(z0))), MARK(U21(z0))) MARK(s(nil)) -> c57(ACTIVE(s(active(nil))), S(mark(nil)), MARK(nil)) MARK(s(U31(z0, z1, z2, z3))) -> c57(ACTIVE(s(active(U31(mark(z0), z1, z2, z3)))), S(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(s(take(z0, z1))) -> c57(ACTIVE(s(active(take(mark(z0), mark(z1))))), S(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(s(and(z0, z1))) -> c57(ACTIVE(s(active(and(mark(z0), z1)))), S(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(s(isNat(z0))) -> c57(ACTIVE(s(active(isNat(z0)))), S(mark(isNat(z0))), MARK(isNat(z0))) MARK(s(isNatList(z0))) -> c57(ACTIVE(s(active(isNatList(z0)))), S(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(s(isNatIList(z0))) -> c57(ACTIVE(s(active(isNatIList(z0)))), S(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(s(z0)) -> c57(S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(z0)), LENGTH(mark(z0)), MARK(z0)) MARK(length(zeros)) -> c58(ACTIVE(length(active(zeros))), LENGTH(mark(zeros)), MARK(zeros)) MARK(length(cons(z0, z1))) -> c58(ACTIVE(length(active(cons(mark(z0), z1)))), LENGTH(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(length(0)) -> c58(ACTIVE(length(active(0))), LENGTH(mark(0)), MARK(0)) MARK(length(U11(z0, z1))) -> c58(ACTIVE(length(active(U11(mark(z0), z1)))), LENGTH(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(length(tt)) -> c58(ACTIVE(length(active(tt))), LENGTH(mark(tt)), MARK(tt)) MARK(length(s(z0))) -> c58(ACTIVE(length(active(s(mark(z0))))), LENGTH(mark(s(z0))), MARK(s(z0))) MARK(length(length(z0))) -> c58(ACTIVE(length(active(length(mark(z0))))), LENGTH(mark(length(z0))), MARK(length(z0))) MARK(length(U21(z0))) -> c58(ACTIVE(length(active(U21(mark(z0))))), LENGTH(mark(U21(z0))), MARK(U21(z0))) MARK(length(nil)) -> c58(ACTIVE(length(active(nil))), LENGTH(mark(nil)), MARK(nil)) MARK(length(U31(z0, z1, z2, z3))) -> c58(ACTIVE(length(active(U31(mark(z0), z1, z2, z3)))), LENGTH(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(length(take(z0, z1))) -> c58(ACTIVE(length(active(take(mark(z0), mark(z1))))), LENGTH(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(length(and(z0, z1))) -> c58(ACTIVE(length(active(and(mark(z0), z1)))), LENGTH(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(length(isNat(z0))) -> c58(ACTIVE(length(active(isNat(z0)))), LENGTH(mark(isNat(z0))), MARK(isNat(z0))) MARK(length(isNatList(z0))) -> c58(ACTIVE(length(active(isNatList(z0)))), LENGTH(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(length(isNatIList(z0))) -> c58(ACTIVE(length(active(isNatIList(z0)))), LENGTH(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(U21(z0)) -> c59(ACTIVE(U21(z0)), U21'(mark(z0)), MARK(z0)) MARK(U21(zeros)) -> c59(ACTIVE(U21(active(zeros))), U21'(mark(zeros)), MARK(zeros)) MARK(U21(cons(z0, z1))) -> c59(ACTIVE(U21(active(cons(mark(z0), z1)))), U21'(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(U21(0)) -> c59(ACTIVE(U21(active(0))), U21'(mark(0)), MARK(0)) MARK(U21(U11(z0, z1))) -> c59(ACTIVE(U21(active(U11(mark(z0), z1)))), U21'(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(U21(tt)) -> c59(ACTIVE(U21(active(tt))), U21'(mark(tt)), MARK(tt)) MARK(U21(s(z0))) -> c59(ACTIVE(U21(active(s(mark(z0))))), U21'(mark(s(z0))), MARK(s(z0))) MARK(U21(length(z0))) -> c59(ACTIVE(U21(active(length(mark(z0))))), U21'(mark(length(z0))), MARK(length(z0))) MARK(U21(U21(z0))) -> c59(ACTIVE(U21(active(U21(mark(z0))))), U21'(mark(U21(z0))), MARK(U21(z0))) MARK(U21(nil)) -> c59(ACTIVE(U21(active(nil))), U21'(mark(nil)), MARK(nil)) MARK(U21(U31(z0, z1, z2, z3))) -> c59(ACTIVE(U21(active(U31(mark(z0), z1, z2, z3)))), U21'(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(U21(take(z0, z1))) -> c59(ACTIVE(U21(active(take(mark(z0), mark(z1))))), U21'(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(U21(and(z0, z1))) -> c59(ACTIVE(U21(active(and(mark(z0), z1)))), U21'(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(U21(isNat(z0))) -> c59(ACTIVE(U21(active(isNat(z0)))), U21'(mark(isNat(z0))), MARK(isNat(z0))) MARK(U21(isNatList(z0))) -> c59(ACTIVE(U21(active(isNatList(z0)))), U21'(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(U21(isNatIList(z0))) -> c59(ACTIVE(U21(active(isNatIList(z0)))), U21'(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(z0, z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U31(zeros, x1, x2, x3)) -> c61(ACTIVE(U31(active(zeros), x1, x2, x3)), U31'(mark(zeros), x1, x2, x3), MARK(zeros)) MARK(U31(cons(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(cons(mark(z0), z1)), x1, x2, x3)), U31'(mark(cons(z0, z1)), x1, x2, x3), MARK(cons(z0, z1))) MARK(U31(0, x1, x2, x3)) -> c61(ACTIVE(U31(active(0), x1, x2, x3)), U31'(mark(0), x1, x2, x3), MARK(0)) MARK(U31(U11(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(U11(mark(z0), z1)), x1, x2, x3)), U31'(mark(U11(z0, z1)), x1, x2, x3), MARK(U11(z0, z1))) MARK(U31(tt, x1, x2, x3)) -> c61(ACTIVE(U31(active(tt), x1, x2, x3)), U31'(mark(tt), x1, x2, x3), MARK(tt)) MARK(U31(s(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(s(mark(z0))), x1, x2, x3)), U31'(mark(s(z0)), x1, x2, x3), MARK(s(z0))) MARK(U31(length(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(length(mark(z0))), x1, x2, x3)), U31'(mark(length(z0)), x1, x2, x3), MARK(length(z0))) MARK(U31(U21(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(U21(mark(z0))), x1, x2, x3)), U31'(mark(U21(z0)), x1, x2, x3), MARK(U21(z0))) MARK(U31(nil, x1, x2, x3)) -> c61(ACTIVE(U31(active(nil), x1, x2, x3)), U31'(mark(nil), x1, x2, x3), MARK(nil)) MARK(U31(U31(z0, z1, z2, z3), x1, x2, x3)) -> c61(ACTIVE(U31(active(U31(mark(z0), z1, z2, z3)), x1, x2, x3)), U31'(mark(U31(z0, z1, z2, z3)), x1, x2, x3), MARK(U31(z0, z1, z2, z3))) MARK(U31(take(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(take(mark(z0), mark(z1))), x1, x2, x3)), U31'(mark(take(z0, z1)), x1, x2, x3), MARK(take(z0, z1))) MARK(U31(and(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(and(mark(z0), z1)), x1, x2, x3)), U31'(mark(and(z0, z1)), x1, x2, x3), MARK(and(z0, z1))) MARK(U31(isNat(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNat(z0)), x1, x2, x3)), U31'(mark(isNat(z0)), x1, x2, x3), MARK(isNat(z0))) MARK(U31(isNatList(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNatList(z0)), x1, x2, x3)), U31'(mark(isNatList(z0)), x1, x2, x3), MARK(isNatList(z0))) MARK(U31(isNatIList(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNatIList(z0)), x1, x2, x3)), U31'(mark(isNatIList(z0)), x1, x2, x3), MARK(isNatIList(z0))) MARK(U31(x0, x1, x2, x3)) -> c61(U31'(mark(x0), x1, x2, x3)) MARK(take(z0, x1)) -> c62(ACTIVE(take(z0, mark(x1))), TAKE(mark(z0), mark(x1)), MARK(z0), MARK(x1)) MARK(take(x0, z1)) -> c62(ACTIVE(take(mark(x0), z1)), TAKE(mark(x0), mark(z1)), MARK(x0), MARK(z1)) MARK(take(x0, zeros)) -> c62(ACTIVE(take(mark(x0), active(zeros))), TAKE(mark(x0), mark(zeros)), MARK(x0), MARK(zeros)) MARK(take(x0, cons(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(cons(mark(z0), z1)))), TAKE(mark(x0), mark(cons(z0, z1))), MARK(x0), MARK(cons(z0, z1))) MARK(take(x0, 0)) -> c62(ACTIVE(take(mark(x0), active(0))), TAKE(mark(x0), mark(0)), MARK(x0), MARK(0)) MARK(take(x0, U11(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(U11(mark(z0), z1)))), TAKE(mark(x0), mark(U11(z0, z1))), MARK(x0), MARK(U11(z0, z1))) MARK(take(x0, tt)) -> c62(ACTIVE(take(mark(x0), active(tt))), TAKE(mark(x0), mark(tt)), MARK(x0), MARK(tt)) MARK(take(x0, s(z0))) -> c62(ACTIVE(take(mark(x0), active(s(mark(z0))))), TAKE(mark(x0), mark(s(z0))), MARK(x0), MARK(s(z0))) MARK(take(x0, length(z0))) -> c62(ACTIVE(take(mark(x0), active(length(mark(z0))))), TAKE(mark(x0), mark(length(z0))), MARK(x0), MARK(length(z0))) MARK(take(x0, U21(z0))) -> c62(ACTIVE(take(mark(x0), active(U21(mark(z0))))), TAKE(mark(x0), mark(U21(z0))), MARK(x0), MARK(U21(z0))) MARK(take(x0, nil)) -> c62(ACTIVE(take(mark(x0), active(nil))), TAKE(mark(x0), mark(nil)), MARK(x0), MARK(nil)) MARK(take(x0, U31(z0, z1, z2, z3))) -> c62(ACTIVE(take(mark(x0), active(U31(mark(z0), z1, z2, z3)))), TAKE(mark(x0), mark(U31(z0, z1, z2, z3))), MARK(x0), MARK(U31(z0, z1, z2, z3))) MARK(take(x0, take(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(take(mark(z0), mark(z1))))), TAKE(mark(x0), mark(take(z0, z1))), MARK(x0), MARK(take(z0, z1))) MARK(take(x0, and(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(and(mark(z0), z1)))), TAKE(mark(x0), mark(and(z0, z1))), MARK(x0), MARK(and(z0, z1))) MARK(take(x0, isNat(z0))) -> c62(ACTIVE(take(mark(x0), active(isNat(z0)))), TAKE(mark(x0), mark(isNat(z0))), MARK(x0), MARK(isNat(z0))) MARK(take(x0, isNatList(z0))) -> c62(ACTIVE(take(mark(x0), active(isNatList(z0)))), TAKE(mark(x0), mark(isNatList(z0))), MARK(x0), MARK(isNatList(z0))) MARK(take(x0, isNatIList(z0))) -> c62(ACTIVE(take(mark(x0), active(isNatIList(z0)))), TAKE(mark(x0), mark(isNatIList(z0))), MARK(x0), MARK(isNatIList(z0))) MARK(take(zeros, x1)) -> c62(ACTIVE(take(active(zeros), mark(x1))), TAKE(mark(zeros), mark(x1)), MARK(zeros), MARK(x1)) MARK(take(cons(z0, z1), x1)) -> c62(ACTIVE(take(active(cons(mark(z0), z1)), mark(x1))), TAKE(mark(cons(z0, z1)), mark(x1)), MARK(cons(z0, z1)), MARK(x1)) MARK(take(0, x1)) -> c62(ACTIVE(take(active(0), mark(x1))), TAKE(mark(0), mark(x1)), MARK(0), MARK(x1)) MARK(take(U11(z0, z1), x1)) -> c62(ACTIVE(take(active(U11(mark(z0), z1)), mark(x1))), TAKE(mark(U11(z0, z1)), mark(x1)), MARK(U11(z0, z1)), MARK(x1)) MARK(take(tt, x1)) -> c62(ACTIVE(take(active(tt), mark(x1))), TAKE(mark(tt), mark(x1)), MARK(tt), MARK(x1)) MARK(take(s(z0), x1)) -> c62(ACTIVE(take(active(s(mark(z0))), mark(x1))), TAKE(mark(s(z0)), mark(x1)), MARK(s(z0)), MARK(x1)) MARK(take(length(z0), x1)) -> c62(ACTIVE(take(active(length(mark(z0))), mark(x1))), TAKE(mark(length(z0)), mark(x1)), MARK(length(z0)), MARK(x1)) MARK(take(U21(z0), x1)) -> c62(ACTIVE(take(active(U21(mark(z0))), mark(x1))), TAKE(mark(U21(z0)), mark(x1)), MARK(U21(z0)), MARK(x1)) MARK(take(nil, x1)) -> c62(ACTIVE(take(active(nil), mark(x1))), TAKE(mark(nil), mark(x1)), MARK(nil), MARK(x1)) MARK(take(U31(z0, z1, z2, z3), x1)) -> c62(ACTIVE(take(active(U31(mark(z0), z1, z2, z3)), mark(x1))), TAKE(mark(U31(z0, z1, z2, z3)), mark(x1)), MARK(U31(z0, z1, z2, z3)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c62(ACTIVE(take(active(take(mark(z0), mark(z1))), mark(x1))), TAKE(mark(take(z0, z1)), mark(x1)), MARK(take(z0, z1)), MARK(x1)) MARK(take(and(z0, z1), x1)) -> c62(ACTIVE(take(active(and(mark(z0), z1)), mark(x1))), TAKE(mark(and(z0, z1)), mark(x1)), MARK(and(z0, z1)), MARK(x1)) MARK(take(isNat(z0), x1)) -> c62(ACTIVE(take(active(isNat(z0)), mark(x1))), TAKE(mark(isNat(z0)), mark(x1)), MARK(isNat(z0)), MARK(x1)) MARK(take(isNatList(z0), x1)) -> c62(ACTIVE(take(active(isNatList(z0)), mark(x1))), TAKE(mark(isNatList(z0)), mark(x1)), MARK(isNatList(z0)), MARK(x1)) MARK(take(isNatIList(z0), x1)) -> c62(ACTIVE(take(active(isNatIList(z0)), mark(x1))), TAKE(mark(isNatIList(z0)), mark(x1)), MARK(isNatIList(z0)), MARK(x1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(z0, z1)), AND(mark(z0), z1), MARK(z0)) MARK(and(zeros, x1)) -> c63(ACTIVE(and(active(zeros), x1)), AND(mark(zeros), x1), MARK(zeros)) MARK(and(cons(z0, z1), x1)) -> c63(ACTIVE(and(active(cons(mark(z0), z1)), x1)), AND(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(and(0, x1)) -> c63(ACTIVE(and(active(0), x1)), AND(mark(0), x1), MARK(0)) MARK(and(U11(z0, z1), x1)) -> c63(ACTIVE(and(active(U11(mark(z0), z1)), x1)), AND(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(and(tt, x1)) -> c63(ACTIVE(and(active(tt), x1)), AND(mark(tt), x1), MARK(tt)) MARK(and(s(z0), x1)) -> c63(ACTIVE(and(active(s(mark(z0))), x1)), AND(mark(s(z0)), x1), MARK(s(z0))) MARK(and(length(z0), x1)) -> c63(ACTIVE(and(active(length(mark(z0))), x1)), AND(mark(length(z0)), x1), MARK(length(z0))) MARK(and(U21(z0), x1)) -> c63(ACTIVE(and(active(U21(mark(z0))), x1)), AND(mark(U21(z0)), x1), MARK(U21(z0))) MARK(and(nil, x1)) -> c63(ACTIVE(and(active(nil), x1)), AND(mark(nil), x1), MARK(nil)) MARK(and(U31(z0, z1, z2, z3), x1)) -> c63(ACTIVE(and(active(U31(mark(z0), z1, z2, z3)), x1)), AND(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(and(take(z0, z1), x1)) -> c63(ACTIVE(and(active(take(mark(z0), mark(z1))), x1)), AND(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(and(and(z0, z1), x1)) -> c63(ACTIVE(and(active(and(mark(z0), z1)), x1)), AND(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(and(isNat(z0), x1)) -> c63(ACTIVE(and(active(isNat(z0)), x1)), AND(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(and(isNatList(z0), x1)) -> c63(ACTIVE(and(active(isNatList(z0)), x1)), AND(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(and(isNatIList(z0), x1)) -> c63(ACTIVE(and(active(isNatIList(z0)), x1)), AND(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(and(x0, x1)) -> c63(AND(mark(x0), x1)) ENCODE_ACTIVE(cons_active(z0)) -> c(ACTIVE(active(encArg(z0)))) ENCODE_ACTIVE(cons_mark(z0)) -> c(ACTIVE(mark(encArg(z0)))) ENCODE_ACTIVE(cons_cons(z0, z1)) -> c(ACTIVE(cons(encArg(z0), encArg(z1)))) ENCODE_ACTIVE(cons_U11(z0, z1)) -> c(ACTIVE(U11(encArg(z0), encArg(z1)))) ENCODE_ACTIVE(cons_s(z0)) -> c(ACTIVE(s(encArg(z0)))) ENCODE_ACTIVE(cons_length(z0)) -> c(ACTIVE(length(encArg(z0)))) ENCODE_ACTIVE(cons_U21(z0)) -> c(ACTIVE(U21(encArg(z0)))) ENCODE_ACTIVE(cons_U31(z0, z1, z2, z3)) -> c(ACTIVE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)))) ENCODE_ACTIVE(cons_take(z0, z1)) -> c(ACTIVE(take(encArg(z0), encArg(z1)))) ENCODE_ACTIVE(cons_and(z0, z1)) -> c(ACTIVE(and(encArg(z0), encArg(z1)))) ENCODE_ACTIVE(cons_isNat(z0)) -> c(ACTIVE(isNat(encArg(z0)))) ENCODE_ACTIVE(cons_isNatList(z0)) -> c(ACTIVE(isNatList(encArg(z0)))) ENCODE_ACTIVE(cons_isNatIList(z0)) -> c(ACTIVE(isNatIList(encArg(z0)))) ENCODE_MARK(cons_active(z0)) -> c(MARK(active(encArg(z0)))) ENCODE_MARK(cons_mark(z0)) -> c(MARK(mark(encArg(z0)))) ENCODE_MARK(cons_cons(z0, z1)) -> c(MARK(cons(encArg(z0), encArg(z1)))) ENCODE_MARK(cons_U11(z0, z1)) -> c(MARK(U11(encArg(z0), encArg(z1)))) ENCODE_MARK(cons_s(z0)) -> c(MARK(s(encArg(z0)))) ENCODE_MARK(cons_length(z0)) -> c(MARK(length(encArg(z0)))) ENCODE_MARK(cons_U21(z0)) -> c(MARK(U21(encArg(z0)))) ENCODE_MARK(cons_U31(z0, z1, z2, z3)) -> c(MARK(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)))) ENCODE_MARK(cons_take(z0, z1)) -> c(MARK(take(encArg(z0), encArg(z1)))) ENCODE_MARK(cons_and(z0, z1)) -> c(MARK(and(encArg(z0), encArg(z1)))) ENCODE_MARK(cons_isNat(z0)) -> c(MARK(isNat(encArg(z0)))) ENCODE_MARK(cons_isNatList(z0)) -> c(MARK(isNatList(encArg(z0)))) ENCODE_MARK(cons_isNatIList(z0)) -> c(MARK(isNatIList(encArg(z0)))) ENCODE_CONS(x0, zeros) -> c(CONS(encArg(x0), zeros)) ENCODE_CONS(x0, 0) -> c(CONS(encArg(x0), 0)) ENCODE_CONS(x0, tt) -> c(CONS(encArg(x0), tt)) ENCODE_CONS(x0, nil) -> c(CONS(encArg(x0), nil)) ENCODE_CONS(x0, cons_active(z0)) -> c(CONS(encArg(x0), active(encArg(z0)))) ENCODE_CONS(x0, cons_mark(z0)) -> c(CONS(encArg(x0), mark(encArg(z0)))) ENCODE_CONS(x0, cons_cons(z0, z1)) -> c(CONS(encArg(x0), cons(encArg(z0), encArg(z1)))) ENCODE_CONS(x0, cons_U11(z0, z1)) -> c(CONS(encArg(x0), U11(encArg(z0), encArg(z1)))) ENCODE_CONS(x0, cons_s(z0)) -> c(CONS(encArg(x0), s(encArg(z0)))) ENCODE_CONS(x0, cons_length(z0)) -> c(CONS(encArg(x0), length(encArg(z0)))) ENCODE_CONS(x0, cons_U21(z0)) -> c(CONS(encArg(x0), U21(encArg(z0)))) ENCODE_CONS(x0, cons_U31(z0, z1, z2, z3)) -> c(CONS(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)))) ENCODE_CONS(x0, cons_take(z0, z1)) -> c(CONS(encArg(x0), take(encArg(z0), encArg(z1)))) ENCODE_CONS(x0, cons_and(z0, z1)) -> c(CONS(encArg(x0), and(encArg(z0), encArg(z1)))) ENCODE_CONS(x0, cons_isNat(z0)) -> c(CONS(encArg(x0), isNat(encArg(z0)))) ENCODE_CONS(x0, cons_isNatList(z0)) -> c(CONS(encArg(x0), isNatList(encArg(z0)))) ENCODE_CONS(x0, cons_isNatIList(z0)) -> c(CONS(encArg(x0), isNatIList(encArg(z0)))) ENCODE_CONS(zeros, x1) -> c(CONS(zeros, encArg(x1))) ENCODE_CONS(0, x1) -> c(CONS(0, encArg(x1))) ENCODE_CONS(tt, x1) -> c(CONS(tt, encArg(x1))) ENCODE_CONS(nil, x1) -> c(CONS(nil, encArg(x1))) ENCODE_CONS(cons_active(z0), x1) -> c(CONS(active(encArg(z0)), encArg(x1))) ENCODE_CONS(cons_mark(z0), x1) -> c(CONS(mark(encArg(z0)), encArg(x1))) ENCODE_CONS(cons_cons(z0, z1), x1) -> c(CONS(cons(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_CONS(cons_U11(z0, z1), x1) -> c(CONS(U11(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_CONS(cons_s(z0), x1) -> c(CONS(s(encArg(z0)), encArg(x1))) ENCODE_CONS(cons_length(z0), x1) -> c(CONS(length(encArg(z0)), encArg(x1))) ENCODE_CONS(cons_U21(z0), x1) -> c(CONS(U21(encArg(z0)), encArg(x1))) ENCODE_CONS(cons_U31(z0, z1, z2, z3), x1) -> c(CONS(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1))) ENCODE_CONS(cons_take(z0, z1), x1) -> c(CONS(take(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_CONS(cons_and(z0, z1), x1) -> c(CONS(and(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_CONS(cons_isNat(z0), x1) -> c(CONS(isNat(encArg(z0)), encArg(x1))) ENCODE_CONS(cons_isNatList(z0), x1) -> c(CONS(isNatList(encArg(z0)), encArg(x1))) ENCODE_CONS(cons_isNatIList(z0), x1) -> c(CONS(isNatIList(encArg(z0)), encArg(x1))) ENCODE_U11(x0, zeros) -> c(U11'(encArg(x0), zeros)) ENCODE_U11(x0, 0) -> c(U11'(encArg(x0), 0)) ENCODE_U11(x0, tt) -> c(U11'(encArg(x0), tt)) ENCODE_U11(x0, nil) -> c(U11'(encArg(x0), nil)) ENCODE_U11(x0, cons_active(z0)) -> c(U11'(encArg(x0), active(encArg(z0)))) ENCODE_U11(x0, cons_mark(z0)) -> c(U11'(encArg(x0), mark(encArg(z0)))) ENCODE_U11(x0, cons_cons(z0, z1)) -> c(U11'(encArg(x0), cons(encArg(z0), encArg(z1)))) ENCODE_U11(x0, cons_U11(z0, z1)) -> c(U11'(encArg(x0), U11(encArg(z0), encArg(z1)))) ENCODE_U11(x0, cons_s(z0)) -> c(U11'(encArg(x0), s(encArg(z0)))) ENCODE_U11(x0, cons_length(z0)) -> c(U11'(encArg(x0), length(encArg(z0)))) ENCODE_U11(x0, cons_U21(z0)) -> c(U11'(encArg(x0), U21(encArg(z0)))) ENCODE_U11(x0, cons_U31(z0, z1, z2, z3)) -> c(U11'(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)))) ENCODE_U11(x0, cons_take(z0, z1)) -> c(U11'(encArg(x0), take(encArg(z0), encArg(z1)))) ENCODE_U11(x0, cons_and(z0, z1)) -> c(U11'(encArg(x0), and(encArg(z0), encArg(z1)))) ENCODE_U11(x0, cons_isNat(z0)) -> c(U11'(encArg(x0), isNat(encArg(z0)))) ENCODE_U11(x0, cons_isNatList(z0)) -> c(U11'(encArg(x0), isNatList(encArg(z0)))) ENCODE_U11(x0, cons_isNatIList(z0)) -> c(U11'(encArg(x0), isNatIList(encArg(z0)))) ENCODE_U11(zeros, x1) -> c(U11'(zeros, encArg(x1))) ENCODE_U11(0, x1) -> c(U11'(0, encArg(x1))) ENCODE_U11(tt, x1) -> c(U11'(tt, encArg(x1))) ENCODE_U11(nil, x1) -> c(U11'(nil, encArg(x1))) ENCODE_U11(cons_active(z0), x1) -> c(U11'(active(encArg(z0)), encArg(x1))) ENCODE_U11(cons_mark(z0), x1) -> c(U11'(mark(encArg(z0)), encArg(x1))) ENCODE_U11(cons_cons(z0, z1), x1) -> c(U11'(cons(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_U11(cons_U11(z0, z1), x1) -> c(U11'(U11(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_U11(cons_s(z0), x1) -> c(U11'(s(encArg(z0)), encArg(x1))) ENCODE_U11(cons_length(z0), x1) -> c(U11'(length(encArg(z0)), encArg(x1))) ENCODE_U11(cons_U21(z0), x1) -> c(U11'(U21(encArg(z0)), encArg(x1))) ENCODE_U11(cons_U31(z0, z1, z2, z3), x1) -> c(U11'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1))) ENCODE_U11(cons_take(z0, z1), x1) -> c(U11'(take(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_U11(cons_and(z0, z1), x1) -> c(U11'(and(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_U11(cons_isNat(z0), x1) -> c(U11'(isNat(encArg(z0)), encArg(x1))) ENCODE_U11(cons_isNatList(z0), x1) -> c(U11'(isNatList(encArg(z0)), encArg(x1))) ENCODE_U11(cons_isNatIList(z0), x1) -> c(U11'(isNatIList(encArg(z0)), encArg(x1))) ENCODE_S(cons_active(z0)) -> c(S(active(encArg(z0)))) ENCODE_S(cons_mark(z0)) -> c(S(mark(encArg(z0)))) ENCODE_S(cons_cons(z0, z1)) -> c(S(cons(encArg(z0), encArg(z1)))) ENCODE_S(cons_U11(z0, z1)) -> c(S(U11(encArg(z0), encArg(z1)))) ENCODE_S(cons_s(z0)) -> c(S(s(encArg(z0)))) ENCODE_S(cons_length(z0)) -> c(S(length(encArg(z0)))) ENCODE_S(cons_U21(z0)) -> c(S(U21(encArg(z0)))) ENCODE_S(cons_U31(z0, z1, z2, z3)) -> c(S(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)))) ENCODE_S(cons_take(z0, z1)) -> c(S(take(encArg(z0), encArg(z1)))) ENCODE_S(cons_and(z0, z1)) -> c(S(and(encArg(z0), encArg(z1)))) ENCODE_S(cons_isNat(z0)) -> c(S(isNat(encArg(z0)))) ENCODE_S(cons_isNatList(z0)) -> c(S(isNatList(encArg(z0)))) ENCODE_S(cons_isNatIList(z0)) -> c(S(isNatIList(encArg(z0)))) S tuples: ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 MARK(cons(zeros, x1)) -> c53(ACTIVE(cons(active(zeros), x1)), CONS(mark(zeros), x1), MARK(zeros)) MARK(cons(cons(z0, z1), x1)) -> c53(ACTIVE(cons(active(cons(mark(z0), z1)), x1)), CONS(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(cons(0, x1)) -> c53(ACTIVE(cons(active(0), x1)), CONS(mark(0), x1), MARK(0)) MARK(cons(U11(z0, z1), x1)) -> c53(ACTIVE(cons(active(U11(mark(z0), z1)), x1)), CONS(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(cons(tt, x1)) -> c53(ACTIVE(cons(active(tt), x1)), CONS(mark(tt), x1), MARK(tt)) MARK(cons(s(z0), x1)) -> c53(ACTIVE(cons(active(s(mark(z0))), x1)), CONS(mark(s(z0)), x1), MARK(s(z0))) MARK(cons(length(z0), x1)) -> c53(ACTIVE(cons(active(length(mark(z0))), x1)), CONS(mark(length(z0)), x1), MARK(length(z0))) MARK(cons(U21(z0), x1)) -> c53(ACTIVE(cons(active(U21(mark(z0))), x1)), CONS(mark(U21(z0)), x1), MARK(U21(z0))) MARK(cons(nil, x1)) -> c53(ACTIVE(cons(active(nil), x1)), CONS(mark(nil), x1), MARK(nil)) MARK(cons(U31(z0, z1, z2, z3), x1)) -> c53(ACTIVE(cons(active(U31(mark(z0), z1, z2, z3)), x1)), CONS(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(cons(take(z0, z1), x1)) -> c53(ACTIVE(cons(active(take(mark(z0), mark(z1))), x1)), CONS(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(cons(and(z0, z1), x1)) -> c53(ACTIVE(cons(active(and(mark(z0), z1)), x1)), CONS(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(cons(isNat(z0), x1)) -> c53(ACTIVE(cons(active(isNat(z0)), x1)), CONS(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(cons(isNatList(z0), x1)) -> c53(ACTIVE(cons(active(isNatList(z0)), x1)), CONS(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(cons(isNatIList(z0), x1)) -> c53(ACTIVE(cons(active(isNatIList(z0)), x1)), CONS(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(cons(x0, x1)) -> c53(CONS(mark(x0), x1)) MARK(cons(z0, z1)) -> c53(CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(z0, z1)), U11'(mark(z0), z1), MARK(z0)) MARK(U11(zeros, x1)) -> c55(ACTIVE(U11(active(zeros), x1)), U11'(mark(zeros), x1), MARK(zeros)) MARK(U11(cons(z0, z1), x1)) -> c55(ACTIVE(U11(active(cons(mark(z0), z1)), x1)), U11'(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(U11(0, x1)) -> c55(ACTIVE(U11(active(0), x1)), U11'(mark(0), x1), MARK(0)) MARK(U11(U11(z0, z1), x1)) -> c55(ACTIVE(U11(active(U11(mark(z0), z1)), x1)), U11'(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(U11(tt, x1)) -> c55(ACTIVE(U11(active(tt), x1)), U11'(mark(tt), x1), MARK(tt)) MARK(U11(s(z0), x1)) -> c55(ACTIVE(U11(active(s(mark(z0))), x1)), U11'(mark(s(z0)), x1), MARK(s(z0))) MARK(U11(length(z0), x1)) -> c55(ACTIVE(U11(active(length(mark(z0))), x1)), U11'(mark(length(z0)), x1), MARK(length(z0))) MARK(U11(U21(z0), x1)) -> c55(ACTIVE(U11(active(U21(mark(z0))), x1)), U11'(mark(U21(z0)), x1), MARK(U21(z0))) MARK(U11(nil, x1)) -> c55(ACTIVE(U11(active(nil), x1)), U11'(mark(nil), x1), MARK(nil)) MARK(U11(U31(z0, z1, z2, z3), x1)) -> c55(ACTIVE(U11(active(U31(mark(z0), z1, z2, z3)), x1)), U11'(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(U11(take(z0, z1), x1)) -> c55(ACTIVE(U11(active(take(mark(z0), mark(z1))), x1)), U11'(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(U11(and(z0, z1), x1)) -> c55(ACTIVE(U11(active(and(mark(z0), z1)), x1)), U11'(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(U11(isNat(z0), x1)) -> c55(ACTIVE(U11(active(isNat(z0)), x1)), U11'(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(U11(isNatList(z0), x1)) -> c55(ACTIVE(U11(active(isNatList(z0)), x1)), U11'(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(U11(isNatIList(z0), x1)) -> c55(ACTIVE(U11(active(isNatIList(z0)), x1)), U11'(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(U11(x0, x1)) -> c55(U11'(mark(x0), x1)) MARK(s(zeros)) -> c57(ACTIVE(s(active(zeros))), S(mark(zeros)), MARK(zeros)) MARK(s(cons(z0, z1))) -> c57(ACTIVE(s(active(cons(mark(z0), z1)))), S(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(s(0)) -> c57(ACTIVE(s(active(0))), S(mark(0)), MARK(0)) MARK(s(U11(z0, z1))) -> c57(ACTIVE(s(active(U11(mark(z0), z1)))), S(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(s(tt)) -> c57(ACTIVE(s(active(tt))), S(mark(tt)), MARK(tt)) MARK(s(s(z0))) -> c57(ACTIVE(s(active(s(mark(z0))))), S(mark(s(z0))), MARK(s(z0))) MARK(s(length(z0))) -> c57(ACTIVE(s(active(length(mark(z0))))), S(mark(length(z0))), MARK(length(z0))) MARK(s(U21(z0))) -> c57(ACTIVE(s(active(U21(mark(z0))))), S(mark(U21(z0))), MARK(U21(z0))) MARK(s(nil)) -> c57(ACTIVE(s(active(nil))), S(mark(nil)), MARK(nil)) MARK(s(U31(z0, z1, z2, z3))) -> c57(ACTIVE(s(active(U31(mark(z0), z1, z2, z3)))), S(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(s(take(z0, z1))) -> c57(ACTIVE(s(active(take(mark(z0), mark(z1))))), S(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(s(and(z0, z1))) -> c57(ACTIVE(s(active(and(mark(z0), z1)))), S(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(s(isNat(z0))) -> c57(ACTIVE(s(active(isNat(z0)))), S(mark(isNat(z0))), MARK(isNat(z0))) MARK(s(isNatList(z0))) -> c57(ACTIVE(s(active(isNatList(z0)))), S(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(s(isNatIList(z0))) -> c57(ACTIVE(s(active(isNatIList(z0)))), S(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(s(z0)) -> c57(S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(z0)), LENGTH(mark(z0)), MARK(z0)) MARK(length(zeros)) -> c58(ACTIVE(length(active(zeros))), LENGTH(mark(zeros)), MARK(zeros)) MARK(length(cons(z0, z1))) -> c58(ACTIVE(length(active(cons(mark(z0), z1)))), LENGTH(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(length(0)) -> c58(ACTIVE(length(active(0))), LENGTH(mark(0)), MARK(0)) MARK(length(U11(z0, z1))) -> c58(ACTIVE(length(active(U11(mark(z0), z1)))), LENGTH(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(length(tt)) -> c58(ACTIVE(length(active(tt))), LENGTH(mark(tt)), MARK(tt)) MARK(length(s(z0))) -> c58(ACTIVE(length(active(s(mark(z0))))), LENGTH(mark(s(z0))), MARK(s(z0))) MARK(length(length(z0))) -> c58(ACTIVE(length(active(length(mark(z0))))), LENGTH(mark(length(z0))), MARK(length(z0))) MARK(length(U21(z0))) -> c58(ACTIVE(length(active(U21(mark(z0))))), LENGTH(mark(U21(z0))), MARK(U21(z0))) MARK(length(nil)) -> c58(ACTIVE(length(active(nil))), LENGTH(mark(nil)), MARK(nil)) MARK(length(U31(z0, z1, z2, z3))) -> c58(ACTIVE(length(active(U31(mark(z0), z1, z2, z3)))), LENGTH(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(length(take(z0, z1))) -> c58(ACTIVE(length(active(take(mark(z0), mark(z1))))), LENGTH(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(length(and(z0, z1))) -> c58(ACTIVE(length(active(and(mark(z0), z1)))), LENGTH(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(length(isNat(z0))) -> c58(ACTIVE(length(active(isNat(z0)))), LENGTH(mark(isNat(z0))), MARK(isNat(z0))) MARK(length(isNatList(z0))) -> c58(ACTIVE(length(active(isNatList(z0)))), LENGTH(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(length(isNatIList(z0))) -> c58(ACTIVE(length(active(isNatIList(z0)))), LENGTH(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(U21(z0)) -> c59(ACTIVE(U21(z0)), U21'(mark(z0)), MARK(z0)) MARK(U21(zeros)) -> c59(ACTIVE(U21(active(zeros))), U21'(mark(zeros)), MARK(zeros)) MARK(U21(cons(z0, z1))) -> c59(ACTIVE(U21(active(cons(mark(z0), z1)))), U21'(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(U21(0)) -> c59(ACTIVE(U21(active(0))), U21'(mark(0)), MARK(0)) MARK(U21(U11(z0, z1))) -> c59(ACTIVE(U21(active(U11(mark(z0), z1)))), U21'(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(U21(tt)) -> c59(ACTIVE(U21(active(tt))), U21'(mark(tt)), MARK(tt)) MARK(U21(s(z0))) -> c59(ACTIVE(U21(active(s(mark(z0))))), U21'(mark(s(z0))), MARK(s(z0))) MARK(U21(length(z0))) -> c59(ACTIVE(U21(active(length(mark(z0))))), U21'(mark(length(z0))), MARK(length(z0))) MARK(U21(U21(z0))) -> c59(ACTIVE(U21(active(U21(mark(z0))))), U21'(mark(U21(z0))), MARK(U21(z0))) MARK(U21(nil)) -> c59(ACTIVE(U21(active(nil))), U21'(mark(nil)), MARK(nil)) MARK(U21(U31(z0, z1, z2, z3))) -> c59(ACTIVE(U21(active(U31(mark(z0), z1, z2, z3)))), U21'(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(U21(take(z0, z1))) -> c59(ACTIVE(U21(active(take(mark(z0), mark(z1))))), U21'(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(U21(and(z0, z1))) -> c59(ACTIVE(U21(active(and(mark(z0), z1)))), U21'(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(U21(isNat(z0))) -> c59(ACTIVE(U21(active(isNat(z0)))), U21'(mark(isNat(z0))), MARK(isNat(z0))) MARK(U21(isNatList(z0))) -> c59(ACTIVE(U21(active(isNatList(z0)))), U21'(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(U21(isNatIList(z0))) -> c59(ACTIVE(U21(active(isNatIList(z0)))), U21'(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(z0, z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U31(zeros, x1, x2, x3)) -> c61(ACTIVE(U31(active(zeros), x1, x2, x3)), U31'(mark(zeros), x1, x2, x3), MARK(zeros)) MARK(U31(cons(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(cons(mark(z0), z1)), x1, x2, x3)), U31'(mark(cons(z0, z1)), x1, x2, x3), MARK(cons(z0, z1))) MARK(U31(0, x1, x2, x3)) -> c61(ACTIVE(U31(active(0), x1, x2, x3)), U31'(mark(0), x1, x2, x3), MARK(0)) MARK(U31(U11(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(U11(mark(z0), z1)), x1, x2, x3)), U31'(mark(U11(z0, z1)), x1, x2, x3), MARK(U11(z0, z1))) MARK(U31(tt, x1, x2, x3)) -> c61(ACTIVE(U31(active(tt), x1, x2, x3)), U31'(mark(tt), x1, x2, x3), MARK(tt)) MARK(U31(s(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(s(mark(z0))), x1, x2, x3)), U31'(mark(s(z0)), x1, x2, x3), MARK(s(z0))) MARK(U31(length(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(length(mark(z0))), x1, x2, x3)), U31'(mark(length(z0)), x1, x2, x3), MARK(length(z0))) MARK(U31(U21(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(U21(mark(z0))), x1, x2, x3)), U31'(mark(U21(z0)), x1, x2, x3), MARK(U21(z0))) MARK(U31(nil, x1, x2, x3)) -> c61(ACTIVE(U31(active(nil), x1, x2, x3)), U31'(mark(nil), x1, x2, x3), MARK(nil)) MARK(U31(U31(z0, z1, z2, z3), x1, x2, x3)) -> c61(ACTIVE(U31(active(U31(mark(z0), z1, z2, z3)), x1, x2, x3)), U31'(mark(U31(z0, z1, z2, z3)), x1, x2, x3), MARK(U31(z0, z1, z2, z3))) MARK(U31(take(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(take(mark(z0), mark(z1))), x1, x2, x3)), U31'(mark(take(z0, z1)), x1, x2, x3), MARK(take(z0, z1))) MARK(U31(and(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(and(mark(z0), z1)), x1, x2, x3)), U31'(mark(and(z0, z1)), x1, x2, x3), MARK(and(z0, z1))) MARK(U31(isNat(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNat(z0)), x1, x2, x3)), U31'(mark(isNat(z0)), x1, x2, x3), MARK(isNat(z0))) MARK(U31(isNatList(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNatList(z0)), x1, x2, x3)), U31'(mark(isNatList(z0)), x1, x2, x3), MARK(isNatList(z0))) MARK(U31(isNatIList(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNatIList(z0)), x1, x2, x3)), U31'(mark(isNatIList(z0)), x1, x2, x3), MARK(isNatIList(z0))) MARK(U31(x0, x1, x2, x3)) -> c61(U31'(mark(x0), x1, x2, x3)) MARK(take(z0, x1)) -> c62(ACTIVE(take(z0, mark(x1))), TAKE(mark(z0), mark(x1)), MARK(z0), MARK(x1)) MARK(take(x0, z1)) -> c62(ACTIVE(take(mark(x0), z1)), TAKE(mark(x0), mark(z1)), MARK(x0), MARK(z1)) MARK(take(x0, zeros)) -> c62(ACTIVE(take(mark(x0), active(zeros))), TAKE(mark(x0), mark(zeros)), MARK(x0), MARK(zeros)) MARK(take(x0, cons(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(cons(mark(z0), z1)))), TAKE(mark(x0), mark(cons(z0, z1))), MARK(x0), MARK(cons(z0, z1))) MARK(take(x0, 0)) -> c62(ACTIVE(take(mark(x0), active(0))), TAKE(mark(x0), mark(0)), MARK(x0), MARK(0)) MARK(take(x0, U11(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(U11(mark(z0), z1)))), TAKE(mark(x0), mark(U11(z0, z1))), MARK(x0), MARK(U11(z0, z1))) MARK(take(x0, tt)) -> c62(ACTIVE(take(mark(x0), active(tt))), TAKE(mark(x0), mark(tt)), MARK(x0), MARK(tt)) MARK(take(x0, s(z0))) -> c62(ACTIVE(take(mark(x0), active(s(mark(z0))))), TAKE(mark(x0), mark(s(z0))), MARK(x0), MARK(s(z0))) MARK(take(x0, length(z0))) -> c62(ACTIVE(take(mark(x0), active(length(mark(z0))))), TAKE(mark(x0), mark(length(z0))), MARK(x0), MARK(length(z0))) MARK(take(x0, U21(z0))) -> c62(ACTIVE(take(mark(x0), active(U21(mark(z0))))), TAKE(mark(x0), mark(U21(z0))), MARK(x0), MARK(U21(z0))) MARK(take(x0, nil)) -> c62(ACTIVE(take(mark(x0), active(nil))), TAKE(mark(x0), mark(nil)), MARK(x0), MARK(nil)) MARK(take(x0, U31(z0, z1, z2, z3))) -> c62(ACTIVE(take(mark(x0), active(U31(mark(z0), z1, z2, z3)))), TAKE(mark(x0), mark(U31(z0, z1, z2, z3))), MARK(x0), MARK(U31(z0, z1, z2, z3))) MARK(take(x0, take(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(take(mark(z0), mark(z1))))), TAKE(mark(x0), mark(take(z0, z1))), MARK(x0), MARK(take(z0, z1))) MARK(take(x0, and(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(and(mark(z0), z1)))), TAKE(mark(x0), mark(and(z0, z1))), MARK(x0), MARK(and(z0, z1))) MARK(take(x0, isNat(z0))) -> c62(ACTIVE(take(mark(x0), active(isNat(z0)))), TAKE(mark(x0), mark(isNat(z0))), MARK(x0), MARK(isNat(z0))) MARK(take(x0, isNatList(z0))) -> c62(ACTIVE(take(mark(x0), active(isNatList(z0)))), TAKE(mark(x0), mark(isNatList(z0))), MARK(x0), MARK(isNatList(z0))) MARK(take(x0, isNatIList(z0))) -> c62(ACTIVE(take(mark(x0), active(isNatIList(z0)))), TAKE(mark(x0), mark(isNatIList(z0))), MARK(x0), MARK(isNatIList(z0))) MARK(take(zeros, x1)) -> c62(ACTIVE(take(active(zeros), mark(x1))), TAKE(mark(zeros), mark(x1)), MARK(zeros), MARK(x1)) MARK(take(cons(z0, z1), x1)) -> c62(ACTIVE(take(active(cons(mark(z0), z1)), mark(x1))), TAKE(mark(cons(z0, z1)), mark(x1)), MARK(cons(z0, z1)), MARK(x1)) MARK(take(0, x1)) -> c62(ACTIVE(take(active(0), mark(x1))), TAKE(mark(0), mark(x1)), MARK(0), MARK(x1)) MARK(take(U11(z0, z1), x1)) -> c62(ACTIVE(take(active(U11(mark(z0), z1)), mark(x1))), TAKE(mark(U11(z0, z1)), mark(x1)), MARK(U11(z0, z1)), MARK(x1)) MARK(take(tt, x1)) -> c62(ACTIVE(take(active(tt), mark(x1))), TAKE(mark(tt), mark(x1)), MARK(tt), MARK(x1)) MARK(take(s(z0), x1)) -> c62(ACTIVE(take(active(s(mark(z0))), mark(x1))), TAKE(mark(s(z0)), mark(x1)), MARK(s(z0)), MARK(x1)) MARK(take(length(z0), x1)) -> c62(ACTIVE(take(active(length(mark(z0))), mark(x1))), TAKE(mark(length(z0)), mark(x1)), MARK(length(z0)), MARK(x1)) MARK(take(U21(z0), x1)) -> c62(ACTIVE(take(active(U21(mark(z0))), mark(x1))), TAKE(mark(U21(z0)), mark(x1)), MARK(U21(z0)), MARK(x1)) MARK(take(nil, x1)) -> c62(ACTIVE(take(active(nil), mark(x1))), TAKE(mark(nil), mark(x1)), MARK(nil), MARK(x1)) MARK(take(U31(z0, z1, z2, z3), x1)) -> c62(ACTIVE(take(active(U31(mark(z0), z1, z2, z3)), mark(x1))), TAKE(mark(U31(z0, z1, z2, z3)), mark(x1)), MARK(U31(z0, z1, z2, z3)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c62(ACTIVE(take(active(take(mark(z0), mark(z1))), mark(x1))), TAKE(mark(take(z0, z1)), mark(x1)), MARK(take(z0, z1)), MARK(x1)) MARK(take(and(z0, z1), x1)) -> c62(ACTIVE(take(active(and(mark(z0), z1)), mark(x1))), TAKE(mark(and(z0, z1)), mark(x1)), MARK(and(z0, z1)), MARK(x1)) MARK(take(isNat(z0), x1)) -> c62(ACTIVE(take(active(isNat(z0)), mark(x1))), TAKE(mark(isNat(z0)), mark(x1)), MARK(isNat(z0)), MARK(x1)) MARK(take(isNatList(z0), x1)) -> c62(ACTIVE(take(active(isNatList(z0)), mark(x1))), TAKE(mark(isNatList(z0)), mark(x1)), MARK(isNatList(z0)), MARK(x1)) MARK(take(isNatIList(z0), x1)) -> c62(ACTIVE(take(active(isNatIList(z0)), mark(x1))), TAKE(mark(isNatIList(z0)), mark(x1)), MARK(isNatIList(z0)), MARK(x1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(z0, z1)), AND(mark(z0), z1), MARK(z0)) MARK(and(zeros, x1)) -> c63(ACTIVE(and(active(zeros), x1)), AND(mark(zeros), x1), MARK(zeros)) MARK(and(cons(z0, z1), x1)) -> c63(ACTIVE(and(active(cons(mark(z0), z1)), x1)), AND(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(and(0, x1)) -> c63(ACTIVE(and(active(0), x1)), AND(mark(0), x1), MARK(0)) MARK(and(U11(z0, z1), x1)) -> c63(ACTIVE(and(active(U11(mark(z0), z1)), x1)), AND(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(and(tt, x1)) -> c63(ACTIVE(and(active(tt), x1)), AND(mark(tt), x1), MARK(tt)) MARK(and(s(z0), x1)) -> c63(ACTIVE(and(active(s(mark(z0))), x1)), AND(mark(s(z0)), x1), MARK(s(z0))) MARK(and(length(z0), x1)) -> c63(ACTIVE(and(active(length(mark(z0))), x1)), AND(mark(length(z0)), x1), MARK(length(z0))) MARK(and(U21(z0), x1)) -> c63(ACTIVE(and(active(U21(mark(z0))), x1)), AND(mark(U21(z0)), x1), MARK(U21(z0))) MARK(and(nil, x1)) -> c63(ACTIVE(and(active(nil), x1)), AND(mark(nil), x1), MARK(nil)) MARK(and(U31(z0, z1, z2, z3), x1)) -> c63(ACTIVE(and(active(U31(mark(z0), z1, z2, z3)), x1)), AND(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(and(take(z0, z1), x1)) -> c63(ACTIVE(and(active(take(mark(z0), mark(z1))), x1)), AND(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(and(and(z0, z1), x1)) -> c63(ACTIVE(and(active(and(mark(z0), z1)), x1)), AND(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(and(isNat(z0), x1)) -> c63(ACTIVE(and(active(isNat(z0)), x1)), AND(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(and(isNatList(z0), x1)) -> c63(ACTIVE(and(active(isNatList(z0)), x1)), AND(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(and(isNatIList(z0), x1)) -> c63(ACTIVE(and(active(isNatIList(z0)), x1)), AND(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(and(x0, x1)) -> c63(AND(mark(x0), x1)) K tuples:none Defined Rule Symbols: encArg_1, active_1, mark_1, cons_2, U11_2, s_1, length_1, U21_1, U31_4, take_2, and_2, isNat_1, isNatList_1, isNatIList_1 Defined Pair Symbols: ACTIVE_1, MARK_1, CONS_2, U11'_2, S_1, LENGTH_1, U21'_1, U31'_4, TAKE_2, AND_2, ISNAT_1, ISNATLIST_1, ISNATILIST_1, ENCODE_LENGTH_1, ENCODE_U21_1, ENCODE_U31_4, ENCODE_TAKE_2, ENCODE_AND_2, ENCODE_ISNAT_1, ENCODE_ISNATLIST_1, ENCODE_ISNATILIST_1, ENCARG_1, ENCODE_ACTIVE_1, ENCODE_MARK_1, ENCODE_CONS_2, ENCODE_U11_2, ENCODE_S_1 Compound Symbols: c36_1, c37_3, c38_1, c39_1, c40_2, c41_2, c42_2, c43_1, c45_1, c48_1, c52_1, c64_2, c65_2, c66_2, c67_1, c68_1, c69_1, c70_1, c71_1, c72_1, c73_1, c74_1, c75_1, c76_1, c77_1, c78_1, c79_1, c80_1, c81_1, c82_1, c83_1, c84_1, c85_1, c86_1, c87_1, c88_1, c89_1, c90_1, c91_1, c92_1, c93_1, c94_1, c95_1, c96_1, c97_1, c98_1, c99_1, c100_1, c101_1, c102_1, c34_1, c35_2, c44_3, c46_3, c47_3, c49_3, c50_2, c51_4, c54, c56, c60, c_1, c4_2, c4_1, c5_2, c5_1, c6_3, c6_2, c7_3, c7_2, c8_2, c9_2, c10_2, c11_5, c11_4, c12_3, c12_2, c13_3, c13_2, c14_2, c15_2, c16_2, c53_3, c53_1, c53_2, c55_3, c55_1, c57_3, c57_2, c58_3, c59_3, c61_3, c61_1, c62_4, c63_3, c63_1 ---------------------------------------- (129) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace ENCODE_LENGTH(z0) -> c(LENGTH(encArg(z0))) by ENCODE_LENGTH(zeros) -> c(LENGTH(zeros)) ENCODE_LENGTH(0) -> c(LENGTH(0)) ENCODE_LENGTH(tt) -> c(LENGTH(tt)) ENCODE_LENGTH(nil) -> c(LENGTH(nil)) ENCODE_LENGTH(cons_active(z0)) -> c(LENGTH(active(encArg(z0)))) ENCODE_LENGTH(cons_mark(z0)) -> c(LENGTH(mark(encArg(z0)))) ENCODE_LENGTH(cons_cons(z0, z1)) -> c(LENGTH(cons(encArg(z0), encArg(z1)))) ENCODE_LENGTH(cons_U11(z0, z1)) -> c(LENGTH(U11(encArg(z0), encArg(z1)))) ENCODE_LENGTH(cons_s(z0)) -> c(LENGTH(s(encArg(z0)))) ENCODE_LENGTH(cons_length(z0)) -> c(LENGTH(length(encArg(z0)))) ENCODE_LENGTH(cons_U21(z0)) -> c(LENGTH(U21(encArg(z0)))) ENCODE_LENGTH(cons_U31(z0, z1, z2, z3)) -> c(LENGTH(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)))) ENCODE_LENGTH(cons_take(z0, z1)) -> c(LENGTH(take(encArg(z0), encArg(z1)))) ENCODE_LENGTH(cons_and(z0, z1)) -> c(LENGTH(and(encArg(z0), encArg(z1)))) ENCODE_LENGTH(cons_isNat(z0)) -> c(LENGTH(isNat(encArg(z0)))) ENCODE_LENGTH(cons_isNatList(z0)) -> c(LENGTH(isNatList(encArg(z0)))) ENCODE_LENGTH(cons_isNatIList(z0)) -> c(LENGTH(isNatIList(encArg(z0)))) ---------------------------------------- (130) Obligation: Complexity Dependency Tuples Problem Rules: encArg(zeros) -> zeros encArg(0) -> 0 encArg(tt) -> tt encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_U11(z0, z1)) -> U11(encArg(z0), encArg(z1)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_length(z0)) -> length(encArg(z0)) encArg(cons_U21(z0)) -> U21(encArg(z0)) encArg(cons_U31(z0, z1, z2, z3)) -> U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_isNat(z0)) -> isNat(encArg(z0)) encArg(cons_isNatList(z0)) -> isNatList(encArg(z0)) encArg(cons_isNatIList(z0)) -> isNatIList(encArg(z0)) active(zeros) -> mark(cons(0, zeros)) active(U11(tt, z0)) -> mark(s(length(z0))) active(U21(tt)) -> mark(nil) active(U31(tt, z0, z1, z2)) -> mark(cons(z2, take(z1, z0))) active(and(tt, z0)) -> mark(z0) active(isNat(0)) -> mark(tt) active(isNat(length(z0))) -> mark(isNatList(z0)) active(isNat(s(z0))) -> mark(isNat(z0)) active(isNatIList(z0)) -> mark(isNatList(z0)) active(isNatIList(zeros)) -> mark(tt) active(isNatIList(cons(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(isNatList(nil)) -> mark(tt) active(isNatList(cons(z0, z1))) -> mark(and(isNat(z0), isNatList(z1))) active(isNatList(take(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(length(nil)) -> mark(0) active(length(cons(z0, z1))) -> mark(U11(and(isNatList(z1), isNat(z0)), z1)) active(take(0, z0)) -> mark(U21(isNatIList(z0))) active(take(s(z0), cons(z1, z2))) -> mark(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)) mark(zeros) -> active(zeros) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(0) -> active(0) mark(U11(z0, z1)) -> active(U11(mark(z0), z1)) mark(tt) -> active(tt) mark(s(z0)) -> active(s(mark(z0))) mark(length(z0)) -> active(length(mark(z0))) mark(U21(z0)) -> active(U21(mark(z0))) mark(nil) -> active(nil) mark(U31(z0, z1, z2, z3)) -> active(U31(mark(z0), z1, z2, z3)) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(isNat(z0)) -> active(isNat(z0)) mark(isNatList(z0)) -> active(isNatList(z0)) mark(isNatIList(z0)) -> active(isNatIList(z0)) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) U11(mark(z0), z1) -> U11(z0, z1) U11(z0, mark(z1)) -> U11(z0, z1) U11(active(z0), z1) -> U11(z0, z1) U11(z0, active(z1)) -> U11(z0, z1) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) length(mark(z0)) -> length(z0) length(active(z0)) -> length(z0) U21(mark(z0)) -> U21(z0) U21(active(z0)) -> U21(z0) U31(mark(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, mark(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, mark(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, mark(z3)) -> U31(z0, z1, z2, z3) U31(active(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, active(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, active(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, active(z3)) -> U31(z0, z1, z2, z3) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) isNat(mark(z0)) -> isNat(z0) isNat(active(z0)) -> isNat(z0) isNatList(mark(z0)) -> isNatList(z0) isNatList(active(z0)) -> isNatList(z0) isNatIList(mark(z0)) -> isNatIList(z0) isNatIList(active(z0)) -> isNatIList(z0) Tuples: ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 ENCODE_U21(z0) -> c(U21'(encArg(z0))) ENCODE_U31(z0, z1, z2, z3) -> c(U31'(encArg(z0), encArg(z1), encArg(z2), encArg(z3))) ENCODE_TAKE(z0, z1) -> c(TAKE(encArg(z0), encArg(z1))) ENCODE_AND(z0, z1) -> c(AND(encArg(z0), encArg(z1))) ENCODE_ISNAT(z0) -> c(ISNAT(encArg(z0))) ENCODE_ISNATLIST(z0) -> c(ISNATLIST(encArg(z0))) ENCODE_ISNATILIST(z0) -> c(ISNATILIST(encArg(z0))) ENCARG(cons_active(cons_active(z0))) -> c4(ACTIVE(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_active(cons_mark(z0))) -> c4(ACTIVE(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_active(cons_cons(z0, z1))) -> c4(ACTIVE(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_active(cons_U11(z0, z1))) -> c4(ACTIVE(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_active(cons_s(z0))) -> c4(ACTIVE(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_active(cons_length(z0))) -> c4(ACTIVE(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_active(cons_U21(z0))) -> c4(ACTIVE(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_active(cons_U31(z0, z1, z2, z3))) -> c4(ACTIVE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_active(cons_take(z0, z1))) -> c4(ACTIVE(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_active(cons_and(z0, z1))) -> c4(ACTIVE(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_active(cons_isNat(z0))) -> c4(ACTIVE(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_active(cons_isNatList(z0))) -> c4(ACTIVE(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_active(cons_isNatIList(z0))) -> c4(ACTIVE(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_active(zeros)) -> c4(ACTIVE(zeros)) ENCARG(cons_mark(cons_active(z0))) -> c5(MARK(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_mark(cons_mark(z0))) -> c5(MARK(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_mark(cons_cons(z0, z1))) -> c5(MARK(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_mark(cons_U11(z0, z1))) -> c5(MARK(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_mark(cons_s(z0))) -> c5(MARK(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_mark(cons_length(z0))) -> c5(MARK(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_mark(cons_U21(z0))) -> c5(MARK(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_mark(cons_U31(z0, z1, z2, z3))) -> c5(MARK(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_mark(cons_take(z0, z1))) -> c5(MARK(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(cons_and(z0, z1))) -> c5(MARK(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_mark(cons_isNat(z0))) -> c5(MARK(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_mark(cons_isNatList(z0))) -> c5(MARK(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_mark(cons_isNatIList(z0))) -> c5(MARK(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_mark(zeros)) -> c5(MARK(zeros)) ENCARG(cons_mark(0)) -> c5(MARK(0)) ENCARG(cons_mark(tt)) -> c5(MARK(tt)) ENCARG(cons_mark(nil)) -> c5(MARK(nil)) ENCARG(cons_cons(x0, cons_active(z0))) -> c6(CONS(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_cons(x0, cons_mark(z0))) -> c6(CONS(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_cons(x0, cons_cons(z0, z1))) -> c6(CONS(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_cons(x0, cons_U11(z0, z1))) -> c6(CONS(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_cons(x0, cons_s(z0))) -> c6(CONS(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_cons(x0, cons_length(z0))) -> c6(CONS(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_cons(x0, cons_U21(z0))) -> c6(CONS(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_cons(x0, cons_U31(z0, z1, z2, z3))) -> c6(CONS(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_cons(x0, cons_take(z0, z1))) -> c6(CONS(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_cons(x0, cons_and(z0, z1))) -> c6(CONS(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_cons(x0, cons_isNat(z0))) -> c6(CONS(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_cons(x0, cons_isNatList(z0))) -> c6(CONS(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_cons(x0, cons_isNatIList(z0))) -> c6(CONS(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_cons(cons_active(z0), x1)) -> c6(CONS(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_mark(z0), x1)) -> c6(CONS(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_cons(z0, z1), x1)) -> c6(CONS(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_U11(z0, z1), x1)) -> c6(CONS(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_s(z0), x1)) -> c6(CONS(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_length(z0), x1)) -> c6(CONS(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U21(z0), x1)) -> c6(CONS(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U31(z0, z1, z2, z3), x1)) -> c6(CONS(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_cons(cons_take(z0, z1), x1)) -> c6(CONS(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_and(z0, z1), x1)) -> c6(CONS(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_isNat(z0), x1)) -> c6(CONS(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_isNatList(z0), x1)) -> c6(CONS(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_isNatIList(z0), x1)) -> c6(CONS(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_cons(x0, zeros)) -> c6(CONS(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_cons(x0, 0)) -> c6(CONS(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_cons(x0, tt)) -> c6(CONS(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_cons(x0, nil)) -> c6(CONS(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_cons(zeros, x1)) -> c6(CONS(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(0, x1)) -> c6(CONS(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(tt, x1)) -> c6(CONS(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(nil, x1)) -> c6(CONS(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(x0, cons_active(z0))) -> c7(U11'(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_U11(x0, cons_mark(z0))) -> c7(U11'(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_U11(x0, cons_cons(z0, z1))) -> c7(U11'(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U11(x0, cons_U11(z0, z1))) -> c7(U11'(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U11(x0, cons_s(z0))) -> c7(U11'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_U11(x0, cons_length(z0))) -> c7(U11'(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_U11(x0, cons_U21(z0))) -> c7(U11'(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_U11(x0, cons_U31(z0, z1, z2, z3))) -> c7(U11'(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U11(x0, cons_take(z0, z1))) -> c7(U11'(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_U11(x0, cons_and(z0, z1))) -> c7(U11'(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_U11(x0, cons_isNat(z0))) -> c7(U11'(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_U11(x0, cons_isNatList(z0))) -> c7(U11'(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_U11(x0, cons_isNatIList(z0))) -> c7(U11'(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U11(cons_active(z0), x1)) -> c7(U11'(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_mark(z0), x1)) -> c7(U11'(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_cons(z0, z1), x1)) -> c7(U11'(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_U11(z0, z1), x1)) -> c7(U11'(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_s(z0), x1)) -> c7(U11'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_length(z0), x1)) -> c7(U11'(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_U21(z0), x1)) -> c7(U11'(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_U31(z0, z1, z2, z3), x1)) -> c7(U11'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_U11(cons_take(z0, z1), x1)) -> c7(U11'(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_and(z0, z1), x1)) -> c7(U11'(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_isNat(z0), x1)) -> c7(U11'(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_isNatList(z0), x1)) -> c7(U11'(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_isNatIList(z0), x1)) -> c7(U11'(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_U11(x0, zeros)) -> c7(U11'(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_U11(x0, 0)) -> c7(U11'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_U11(x0, tt)) -> c7(U11'(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_U11(x0, nil)) -> c7(U11'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_U11(zeros, x1)) -> c7(U11'(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(0, x1)) -> c7(U11'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(tt, x1)) -> c7(U11'(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(nil, x1)) -> c7(U11'(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_s(cons_active(z0))) -> c8(S(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_s(cons_mark(z0))) -> c8(S(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_s(cons_cons(z0, z1))) -> c8(S(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_s(cons_U11(z0, z1))) -> c8(S(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_s(cons_s(z0))) -> c8(S(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_length(z0))) -> c8(S(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_s(cons_U21(z0))) -> c8(S(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_s(cons_U31(z0, z1, z2, z3))) -> c8(S(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_s(cons_take(z0, z1))) -> c8(S(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_s(cons_and(z0, z1))) -> c8(S(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_s(cons_isNat(z0))) -> c8(S(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_s(cons_isNatList(z0))) -> c8(S(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_s(cons_isNatIList(z0))) -> c8(S(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_length(cons_active(z0))) -> c9(LENGTH(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_length(cons_mark(z0))) -> c9(LENGTH(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_length(cons_cons(z0, z1))) -> c9(LENGTH(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_length(cons_U11(z0, z1))) -> c9(LENGTH(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_length(cons_s(z0))) -> c9(LENGTH(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_length(cons_length(z0))) -> c9(LENGTH(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_length(cons_U21(z0))) -> c9(LENGTH(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_length(cons_U31(z0, z1, z2, z3))) -> c9(LENGTH(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_length(cons_take(z0, z1))) -> c9(LENGTH(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_length(cons_and(z0, z1))) -> c9(LENGTH(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_length(cons_isNat(z0))) -> c9(LENGTH(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_length(cons_isNatList(z0))) -> c9(LENGTH(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_length(cons_isNatIList(z0))) -> c9(LENGTH(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U21(cons_active(z0))) -> c10(U21'(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_U21(cons_mark(z0))) -> c10(U21'(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_U21(cons_cons(z0, z1))) -> c10(U21'(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U21(cons_U11(z0, z1))) -> c10(U21'(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U21(cons_s(z0))) -> c10(U21'(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_U21(cons_length(z0))) -> c10(U21'(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_U21(cons_U21(z0))) -> c10(U21'(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_U21(cons_U31(z0, z1, z2, z3))) -> c10(U21'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U21(cons_take(z0, z1))) -> c10(U21'(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_U21(cons_and(z0, z1))) -> c10(U21'(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_U21(cons_isNat(z0))) -> c10(U21'(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_U21(cons_isNatList(z0))) -> c10(U21'(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_U21(cons_isNatIList(z0))) -> c10(U21'(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U31(x0, x1, x2, cons_active(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), active(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_active(z0))) ENCARG(cons_U31(x0, x1, x2, cons_mark(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), mark(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_mark(z0))) ENCARG(cons_U31(x0, x1, x2, cons_cons(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_U11(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_s(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), s(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_s(z0))) ENCARG(cons_U31(x0, x1, x2, cons_length(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), length(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_length(z0))) ENCARG(cons_U31(x0, x1, x2, cons_U21(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U21(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U21(z0))) ENCARG(cons_U31(x0, x1, x2, cons_U31(z0, z1, z2, z3))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U31(x0, x1, x2, cons_take(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_take(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_and(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_and(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_isNat(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNat(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNat(z0))) ENCARG(cons_U31(x0, x1, x2, cons_isNatList(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNatList(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNatList(z0))) ENCARG(cons_U31(x0, x1, x2, cons_isNatIList(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U31(x0, x1, cons_active(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), active(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_active(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_mark(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), mark(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_mark(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_cons(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), cons(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_cons(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U11(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), U11(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U11(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_s(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), s(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_s(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_length(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), length(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_length(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U21(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), U21(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U21(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U31(z0, z1, z2, z3), x3)) -> c11(U31'(encArg(x0), encArg(x1), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_take(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), take(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_take(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_and(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), and(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_and(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNat(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNat(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNat(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNatList(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNatList(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNatList(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNatIList(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNatIList(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNatIList(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, cons_active(z0), x2, x3)) -> c11(U31'(encArg(x0), active(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_active(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_mark(z0), x2, x3)) -> c11(U31'(encArg(x0), mark(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_mark(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_cons(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), cons(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_cons(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U11(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), U11(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U11(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_s(z0), x2, x3)) -> c11(U31'(encArg(x0), s(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_s(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_length(z0), x2, x3)) -> c11(U31'(encArg(x0), length(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_length(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U21(z0), x2, x3)) -> c11(U31'(encArg(x0), U21(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U21(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U31(z0, z1, z2, z3), x2, x3)) -> c11(U31'(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_take(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), take(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_take(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_and(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), and(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_and(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNat(z0), x2, x3)) -> c11(U31'(encArg(x0), isNat(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNat(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNatList(z0), x2, x3)) -> c11(U31'(encArg(x0), isNatList(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNatList(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNatIList(z0), x2, x3)) -> c11(U31'(encArg(x0), isNatIList(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNatIList(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_active(z0), x1, x2, x3)) -> c11(U31'(active(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_active(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_mark(z0), x1, x2, x3)) -> c11(U31'(mark(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_mark(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_cons(z0, z1), x1, x2, x3)) -> c11(U31'(cons(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_cons(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U11(z0, z1), x1, x2, x3)) -> c11(U31'(U11(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U11(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_s(z0), x1, x2, x3)) -> c11(U31'(s(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_s(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_length(z0), x1, x2, x3)) -> c11(U31'(length(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_length(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U21(z0), x1, x2, x3)) -> c11(U31'(U21(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U21(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U31(z0, z1, z2, z3), x1, x2, x3)) -> c11(U31'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_take(z0, z1), x1, x2, x3)) -> c11(U31'(take(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_take(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_and(z0, z1), x1, x2, x3)) -> c11(U31'(and(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_and(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNat(z0), x1, x2, x3)) -> c11(U31'(isNat(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNat(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNatList(z0), x1, x2, x3)) -> c11(U31'(isNatList(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNatList(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNatIList(z0), x1, x2, x3)) -> c11(U31'(isNatIList(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNatIList(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, x1, x2, zeros)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), zeros), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, 0)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), 0), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, tt)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), tt), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, nil)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), nil), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, zeros, x3)) -> c11(U31'(encArg(x0), encArg(x1), zeros, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, 0, x3)) -> c11(U31'(encArg(x0), encArg(x1), 0, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, tt, x3)) -> c11(U31'(encArg(x0), encArg(x1), tt, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, nil, x3)) -> c11(U31'(encArg(x0), encArg(x1), nil, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, zeros, x2, x3)) -> c11(U31'(encArg(x0), zeros, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, 0, x2, x3)) -> c11(U31'(encArg(x0), 0, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, tt, x2, x3)) -> c11(U31'(encArg(x0), tt, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, nil, x2, x3)) -> c11(U31'(encArg(x0), nil, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(zeros, x1, x2, x3)) -> c11(U31'(zeros, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(0, x1, x2, x3)) -> c11(U31'(0, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(tt, x1, x2, x3)) -> c11(U31'(tt, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(nil, x1, x2, x3)) -> c11(U31'(nil, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_take(x0, cons_active(z0))) -> c12(TAKE(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_take(x0, cons_mark(z0))) -> c12(TAKE(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_take(x0, cons_cons(z0, z1))) -> c12(TAKE(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_take(x0, cons_U11(z0, z1))) -> c12(TAKE(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_take(x0, cons_s(z0))) -> c12(TAKE(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_take(x0, cons_length(z0))) -> c12(TAKE(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_take(x0, cons_U21(z0))) -> c12(TAKE(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_take(x0, cons_U31(z0, z1, z2, z3))) -> c12(TAKE(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_take(x0, cons_take(z0, z1))) -> c12(TAKE(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_take(x0, cons_and(z0, z1))) -> c12(TAKE(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_take(x0, cons_isNat(z0))) -> c12(TAKE(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_take(x0, cons_isNatList(z0))) -> c12(TAKE(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_take(x0, cons_isNatIList(z0))) -> c12(TAKE(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_take(cons_active(z0), x1)) -> c12(TAKE(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_take(cons_mark(z0), x1)) -> c12(TAKE(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_take(cons_cons(z0, z1), x1)) -> c12(TAKE(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_U11(z0, z1), x1)) -> c12(TAKE(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_s(z0), x1)) -> c12(TAKE(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_take(cons_length(z0), x1)) -> c12(TAKE(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_take(cons_U21(z0), x1)) -> c12(TAKE(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_take(cons_U31(z0, z1, z2, z3), x1)) -> c12(TAKE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_take(cons_take(z0, z1), x1)) -> c12(TAKE(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_and(z0, z1), x1)) -> c12(TAKE(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_isNat(z0), x1)) -> c12(TAKE(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_take(cons_isNatList(z0), x1)) -> c12(TAKE(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_take(cons_isNatIList(z0), x1)) -> c12(TAKE(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_take(x0, zeros)) -> c12(TAKE(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_take(x0, 0)) -> c12(TAKE(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_take(x0, tt)) -> c12(TAKE(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_take(x0, nil)) -> c12(TAKE(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_take(zeros, x1)) -> c12(TAKE(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(0, x1)) -> c12(TAKE(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(tt, x1)) -> c12(TAKE(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(nil, x1)) -> c12(TAKE(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(x0, cons_active(z0))) -> c13(AND(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_and(x0, cons_mark(z0))) -> c13(AND(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_and(x0, cons_cons(z0, z1))) -> c13(AND(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_and(x0, cons_U11(z0, z1))) -> c13(AND(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_and(x0, cons_s(z0))) -> c13(AND(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_and(x0, cons_length(z0))) -> c13(AND(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_and(x0, cons_U21(z0))) -> c13(AND(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_and(x0, cons_U31(z0, z1, z2, z3))) -> c13(AND(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_and(x0, cons_take(z0, z1))) -> c13(AND(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_and(x0, cons_and(z0, z1))) -> c13(AND(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_and(x0, cons_isNat(z0))) -> c13(AND(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_and(x0, cons_isNatList(z0))) -> c13(AND(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_and(x0, cons_isNatIList(z0))) -> c13(AND(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_and(cons_active(z0), x1)) -> c13(AND(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_and(cons_mark(z0), x1)) -> c13(AND(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_and(cons_cons(z0, z1), x1)) -> c13(AND(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_U11(z0, z1), x1)) -> c13(AND(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_s(z0), x1)) -> c13(AND(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_and(cons_length(z0), x1)) -> c13(AND(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_and(cons_U21(z0), x1)) -> c13(AND(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_and(cons_U31(z0, z1, z2, z3), x1)) -> c13(AND(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_and(cons_take(z0, z1), x1)) -> c13(AND(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_and(z0, z1), x1)) -> c13(AND(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_isNat(z0), x1)) -> c13(AND(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_and(cons_isNatList(z0), x1)) -> c13(AND(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_and(cons_isNatIList(z0), x1)) -> c13(AND(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_and(x0, zeros)) -> c13(AND(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_and(x0, 0)) -> c13(AND(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_and(x0, tt)) -> c13(AND(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_and(x0, nil)) -> c13(AND(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_and(zeros, x1)) -> c13(AND(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(0, x1)) -> c13(AND(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(tt, x1)) -> c13(AND(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(nil, x1)) -> c13(AND(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_isNat(cons_active(z0))) -> c14(ISNAT(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_isNat(cons_mark(z0))) -> c14(ISNAT(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_isNat(cons_cons(z0, z1))) -> c14(ISNAT(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_isNat(cons_U11(z0, z1))) -> c14(ISNAT(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_isNat(cons_s(z0))) -> c14(ISNAT(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_isNat(cons_length(z0))) -> c14(ISNAT(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_isNat(cons_U21(z0))) -> c14(ISNAT(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_isNat(cons_U31(z0, z1, z2, z3))) -> c14(ISNAT(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_isNat(cons_take(z0, z1))) -> c14(ISNAT(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_isNat(cons_and(z0, z1))) -> c14(ISNAT(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_isNat(cons_isNat(z0))) -> c14(ISNAT(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_isNat(cons_isNatList(z0))) -> c14(ISNAT(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_isNat(cons_isNatIList(z0))) -> c14(ISNAT(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_isNatList(cons_active(z0))) -> c15(ISNATLIST(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_isNatList(cons_mark(z0))) -> c15(ISNATLIST(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_isNatList(cons_cons(z0, z1))) -> c15(ISNATLIST(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_isNatList(cons_U11(z0, z1))) -> c15(ISNATLIST(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_isNatList(cons_s(z0))) -> c15(ISNATLIST(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_isNatList(cons_length(z0))) -> c15(ISNATLIST(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_isNatList(cons_U21(z0))) -> c15(ISNATLIST(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_isNatList(cons_U31(z0, z1, z2, z3))) -> c15(ISNATLIST(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_isNatList(cons_take(z0, z1))) -> c15(ISNATLIST(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_isNatList(cons_and(z0, z1))) -> c15(ISNATLIST(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_isNatList(cons_isNat(z0))) -> c15(ISNATLIST(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_isNatList(cons_isNatList(z0))) -> c15(ISNATLIST(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_isNatList(cons_isNatIList(z0))) -> c15(ISNATLIST(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_isNatIList(cons_active(z0))) -> c16(ISNATILIST(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_isNatIList(cons_mark(z0))) -> c16(ISNATILIST(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_isNatIList(cons_cons(z0, z1))) -> c16(ISNATILIST(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_isNatIList(cons_U11(z0, z1))) -> c16(ISNATILIST(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_isNatIList(cons_s(z0))) -> c16(ISNATILIST(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_isNatIList(cons_length(z0))) -> c16(ISNATILIST(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_isNatIList(cons_U21(z0))) -> c16(ISNATILIST(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_isNatIList(cons_U31(z0, z1, z2, z3))) -> c16(ISNATILIST(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_isNatIList(cons_take(z0, z1))) -> c16(ISNATILIST(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_isNatIList(cons_and(z0, z1))) -> c16(ISNATILIST(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_isNatIList(cons_isNat(z0))) -> c16(ISNATILIST(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_isNatIList(cons_isNatList(z0))) -> c16(ISNATILIST(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_isNatIList(cons_isNatIList(z0))) -> c16(ISNATILIST(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) MARK(cons(zeros, x1)) -> c53(ACTIVE(cons(active(zeros), x1)), CONS(mark(zeros), x1), MARK(zeros)) MARK(cons(cons(z0, z1), x1)) -> c53(ACTIVE(cons(active(cons(mark(z0), z1)), x1)), CONS(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(cons(0, x1)) -> c53(ACTIVE(cons(active(0), x1)), CONS(mark(0), x1), MARK(0)) MARK(cons(U11(z0, z1), x1)) -> c53(ACTIVE(cons(active(U11(mark(z0), z1)), x1)), CONS(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(cons(tt, x1)) -> c53(ACTIVE(cons(active(tt), x1)), CONS(mark(tt), x1), MARK(tt)) MARK(cons(s(z0), x1)) -> c53(ACTIVE(cons(active(s(mark(z0))), x1)), CONS(mark(s(z0)), x1), MARK(s(z0))) MARK(cons(length(z0), x1)) -> c53(ACTIVE(cons(active(length(mark(z0))), x1)), CONS(mark(length(z0)), x1), MARK(length(z0))) MARK(cons(U21(z0), x1)) -> c53(ACTIVE(cons(active(U21(mark(z0))), x1)), CONS(mark(U21(z0)), x1), MARK(U21(z0))) MARK(cons(nil, x1)) -> c53(ACTIVE(cons(active(nil), x1)), CONS(mark(nil), x1), MARK(nil)) MARK(cons(U31(z0, z1, z2, z3), x1)) -> c53(ACTIVE(cons(active(U31(mark(z0), z1, z2, z3)), x1)), CONS(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(cons(take(z0, z1), x1)) -> c53(ACTIVE(cons(active(take(mark(z0), mark(z1))), x1)), CONS(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(cons(and(z0, z1), x1)) -> c53(ACTIVE(cons(active(and(mark(z0), z1)), x1)), CONS(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(cons(isNat(z0), x1)) -> c53(ACTIVE(cons(active(isNat(z0)), x1)), CONS(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(cons(isNatList(z0), x1)) -> c53(ACTIVE(cons(active(isNatList(z0)), x1)), CONS(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(cons(isNatIList(z0), x1)) -> c53(ACTIVE(cons(active(isNatIList(z0)), x1)), CONS(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(cons(x0, x1)) -> c53(CONS(mark(x0), x1)) MARK(cons(z0, z1)) -> c53(CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(z0, z1)), U11'(mark(z0), z1), MARK(z0)) MARK(U11(zeros, x1)) -> c55(ACTIVE(U11(active(zeros), x1)), U11'(mark(zeros), x1), MARK(zeros)) MARK(U11(cons(z0, z1), x1)) -> c55(ACTIVE(U11(active(cons(mark(z0), z1)), x1)), U11'(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(U11(0, x1)) -> c55(ACTIVE(U11(active(0), x1)), U11'(mark(0), x1), MARK(0)) MARK(U11(U11(z0, z1), x1)) -> c55(ACTIVE(U11(active(U11(mark(z0), z1)), x1)), U11'(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(U11(tt, x1)) -> c55(ACTIVE(U11(active(tt), x1)), U11'(mark(tt), x1), MARK(tt)) MARK(U11(s(z0), x1)) -> c55(ACTIVE(U11(active(s(mark(z0))), x1)), U11'(mark(s(z0)), x1), MARK(s(z0))) MARK(U11(length(z0), x1)) -> c55(ACTIVE(U11(active(length(mark(z0))), x1)), U11'(mark(length(z0)), x1), MARK(length(z0))) MARK(U11(U21(z0), x1)) -> c55(ACTIVE(U11(active(U21(mark(z0))), x1)), U11'(mark(U21(z0)), x1), MARK(U21(z0))) MARK(U11(nil, x1)) -> c55(ACTIVE(U11(active(nil), x1)), U11'(mark(nil), x1), MARK(nil)) MARK(U11(U31(z0, z1, z2, z3), x1)) -> c55(ACTIVE(U11(active(U31(mark(z0), z1, z2, z3)), x1)), U11'(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(U11(take(z0, z1), x1)) -> c55(ACTIVE(U11(active(take(mark(z0), mark(z1))), x1)), U11'(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(U11(and(z0, z1), x1)) -> c55(ACTIVE(U11(active(and(mark(z0), z1)), x1)), U11'(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(U11(isNat(z0), x1)) -> c55(ACTIVE(U11(active(isNat(z0)), x1)), U11'(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(U11(isNatList(z0), x1)) -> c55(ACTIVE(U11(active(isNatList(z0)), x1)), U11'(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(U11(isNatIList(z0), x1)) -> c55(ACTIVE(U11(active(isNatIList(z0)), x1)), U11'(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(U11(x0, x1)) -> c55(U11'(mark(x0), x1)) MARK(s(zeros)) -> c57(ACTIVE(s(active(zeros))), S(mark(zeros)), MARK(zeros)) MARK(s(cons(z0, z1))) -> c57(ACTIVE(s(active(cons(mark(z0), z1)))), S(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(s(0)) -> c57(ACTIVE(s(active(0))), S(mark(0)), MARK(0)) MARK(s(U11(z0, z1))) -> c57(ACTIVE(s(active(U11(mark(z0), z1)))), S(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(s(tt)) -> c57(ACTIVE(s(active(tt))), S(mark(tt)), MARK(tt)) MARK(s(s(z0))) -> c57(ACTIVE(s(active(s(mark(z0))))), S(mark(s(z0))), MARK(s(z0))) MARK(s(length(z0))) -> c57(ACTIVE(s(active(length(mark(z0))))), S(mark(length(z0))), MARK(length(z0))) MARK(s(U21(z0))) -> c57(ACTIVE(s(active(U21(mark(z0))))), S(mark(U21(z0))), MARK(U21(z0))) MARK(s(nil)) -> c57(ACTIVE(s(active(nil))), S(mark(nil)), MARK(nil)) MARK(s(U31(z0, z1, z2, z3))) -> c57(ACTIVE(s(active(U31(mark(z0), z1, z2, z3)))), S(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(s(take(z0, z1))) -> c57(ACTIVE(s(active(take(mark(z0), mark(z1))))), S(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(s(and(z0, z1))) -> c57(ACTIVE(s(active(and(mark(z0), z1)))), S(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(s(isNat(z0))) -> c57(ACTIVE(s(active(isNat(z0)))), S(mark(isNat(z0))), MARK(isNat(z0))) MARK(s(isNatList(z0))) -> c57(ACTIVE(s(active(isNatList(z0)))), S(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(s(isNatIList(z0))) -> c57(ACTIVE(s(active(isNatIList(z0)))), S(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(s(z0)) -> c57(S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(z0)), LENGTH(mark(z0)), MARK(z0)) MARK(length(zeros)) -> c58(ACTIVE(length(active(zeros))), LENGTH(mark(zeros)), MARK(zeros)) MARK(length(cons(z0, z1))) -> c58(ACTIVE(length(active(cons(mark(z0), z1)))), LENGTH(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(length(0)) -> c58(ACTIVE(length(active(0))), LENGTH(mark(0)), MARK(0)) MARK(length(U11(z0, z1))) -> c58(ACTIVE(length(active(U11(mark(z0), z1)))), LENGTH(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(length(tt)) -> c58(ACTIVE(length(active(tt))), LENGTH(mark(tt)), MARK(tt)) MARK(length(s(z0))) -> c58(ACTIVE(length(active(s(mark(z0))))), LENGTH(mark(s(z0))), MARK(s(z0))) MARK(length(length(z0))) -> c58(ACTIVE(length(active(length(mark(z0))))), LENGTH(mark(length(z0))), MARK(length(z0))) MARK(length(U21(z0))) -> c58(ACTIVE(length(active(U21(mark(z0))))), LENGTH(mark(U21(z0))), MARK(U21(z0))) MARK(length(nil)) -> c58(ACTIVE(length(active(nil))), LENGTH(mark(nil)), MARK(nil)) MARK(length(U31(z0, z1, z2, z3))) -> c58(ACTIVE(length(active(U31(mark(z0), z1, z2, z3)))), LENGTH(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(length(take(z0, z1))) -> c58(ACTIVE(length(active(take(mark(z0), mark(z1))))), LENGTH(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(length(and(z0, z1))) -> c58(ACTIVE(length(active(and(mark(z0), z1)))), LENGTH(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(length(isNat(z0))) -> c58(ACTIVE(length(active(isNat(z0)))), LENGTH(mark(isNat(z0))), MARK(isNat(z0))) MARK(length(isNatList(z0))) -> c58(ACTIVE(length(active(isNatList(z0)))), LENGTH(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(length(isNatIList(z0))) -> c58(ACTIVE(length(active(isNatIList(z0)))), LENGTH(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(U21(z0)) -> c59(ACTIVE(U21(z0)), U21'(mark(z0)), MARK(z0)) MARK(U21(zeros)) -> c59(ACTIVE(U21(active(zeros))), U21'(mark(zeros)), MARK(zeros)) MARK(U21(cons(z0, z1))) -> c59(ACTIVE(U21(active(cons(mark(z0), z1)))), U21'(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(U21(0)) -> c59(ACTIVE(U21(active(0))), U21'(mark(0)), MARK(0)) MARK(U21(U11(z0, z1))) -> c59(ACTIVE(U21(active(U11(mark(z0), z1)))), U21'(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(U21(tt)) -> c59(ACTIVE(U21(active(tt))), U21'(mark(tt)), MARK(tt)) MARK(U21(s(z0))) -> c59(ACTIVE(U21(active(s(mark(z0))))), U21'(mark(s(z0))), MARK(s(z0))) MARK(U21(length(z0))) -> c59(ACTIVE(U21(active(length(mark(z0))))), U21'(mark(length(z0))), MARK(length(z0))) MARK(U21(U21(z0))) -> c59(ACTIVE(U21(active(U21(mark(z0))))), U21'(mark(U21(z0))), MARK(U21(z0))) MARK(U21(nil)) -> c59(ACTIVE(U21(active(nil))), U21'(mark(nil)), MARK(nil)) MARK(U21(U31(z0, z1, z2, z3))) -> c59(ACTIVE(U21(active(U31(mark(z0), z1, z2, z3)))), U21'(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(U21(take(z0, z1))) -> c59(ACTIVE(U21(active(take(mark(z0), mark(z1))))), U21'(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(U21(and(z0, z1))) -> c59(ACTIVE(U21(active(and(mark(z0), z1)))), U21'(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(U21(isNat(z0))) -> c59(ACTIVE(U21(active(isNat(z0)))), U21'(mark(isNat(z0))), MARK(isNat(z0))) MARK(U21(isNatList(z0))) -> c59(ACTIVE(U21(active(isNatList(z0)))), U21'(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(U21(isNatIList(z0))) -> c59(ACTIVE(U21(active(isNatIList(z0)))), U21'(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(z0, z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U31(zeros, x1, x2, x3)) -> c61(ACTIVE(U31(active(zeros), x1, x2, x3)), U31'(mark(zeros), x1, x2, x3), MARK(zeros)) MARK(U31(cons(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(cons(mark(z0), z1)), x1, x2, x3)), U31'(mark(cons(z0, z1)), x1, x2, x3), MARK(cons(z0, z1))) MARK(U31(0, x1, x2, x3)) -> c61(ACTIVE(U31(active(0), x1, x2, x3)), U31'(mark(0), x1, x2, x3), MARK(0)) MARK(U31(U11(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(U11(mark(z0), z1)), x1, x2, x3)), U31'(mark(U11(z0, z1)), x1, x2, x3), MARK(U11(z0, z1))) MARK(U31(tt, x1, x2, x3)) -> c61(ACTIVE(U31(active(tt), x1, x2, x3)), U31'(mark(tt), x1, x2, x3), MARK(tt)) MARK(U31(s(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(s(mark(z0))), x1, x2, x3)), U31'(mark(s(z0)), x1, x2, x3), MARK(s(z0))) MARK(U31(length(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(length(mark(z0))), x1, x2, x3)), U31'(mark(length(z0)), x1, x2, x3), MARK(length(z0))) MARK(U31(U21(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(U21(mark(z0))), x1, x2, x3)), U31'(mark(U21(z0)), x1, x2, x3), MARK(U21(z0))) MARK(U31(nil, x1, x2, x3)) -> c61(ACTIVE(U31(active(nil), x1, x2, x3)), U31'(mark(nil), x1, x2, x3), MARK(nil)) MARK(U31(U31(z0, z1, z2, z3), x1, x2, x3)) -> c61(ACTIVE(U31(active(U31(mark(z0), z1, z2, z3)), x1, x2, x3)), U31'(mark(U31(z0, z1, z2, z3)), x1, x2, x3), MARK(U31(z0, z1, z2, z3))) MARK(U31(take(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(take(mark(z0), mark(z1))), x1, x2, x3)), U31'(mark(take(z0, z1)), x1, x2, x3), MARK(take(z0, z1))) MARK(U31(and(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(and(mark(z0), z1)), x1, x2, x3)), U31'(mark(and(z0, z1)), x1, x2, x3), MARK(and(z0, z1))) MARK(U31(isNat(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNat(z0)), x1, x2, x3)), U31'(mark(isNat(z0)), x1, x2, x3), MARK(isNat(z0))) MARK(U31(isNatList(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNatList(z0)), x1, x2, x3)), U31'(mark(isNatList(z0)), x1, x2, x3), MARK(isNatList(z0))) MARK(U31(isNatIList(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNatIList(z0)), x1, x2, x3)), U31'(mark(isNatIList(z0)), x1, x2, x3), MARK(isNatIList(z0))) MARK(U31(x0, x1, x2, x3)) -> c61(U31'(mark(x0), x1, x2, x3)) MARK(take(z0, x1)) -> c62(ACTIVE(take(z0, mark(x1))), TAKE(mark(z0), mark(x1)), MARK(z0), MARK(x1)) MARK(take(x0, z1)) -> c62(ACTIVE(take(mark(x0), z1)), TAKE(mark(x0), mark(z1)), MARK(x0), MARK(z1)) MARK(take(x0, zeros)) -> c62(ACTIVE(take(mark(x0), active(zeros))), TAKE(mark(x0), mark(zeros)), MARK(x0), MARK(zeros)) MARK(take(x0, cons(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(cons(mark(z0), z1)))), TAKE(mark(x0), mark(cons(z0, z1))), MARK(x0), MARK(cons(z0, z1))) MARK(take(x0, 0)) -> c62(ACTIVE(take(mark(x0), active(0))), TAKE(mark(x0), mark(0)), MARK(x0), MARK(0)) MARK(take(x0, U11(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(U11(mark(z0), z1)))), TAKE(mark(x0), mark(U11(z0, z1))), MARK(x0), MARK(U11(z0, z1))) MARK(take(x0, tt)) -> c62(ACTIVE(take(mark(x0), active(tt))), TAKE(mark(x0), mark(tt)), MARK(x0), MARK(tt)) MARK(take(x0, s(z0))) -> c62(ACTIVE(take(mark(x0), active(s(mark(z0))))), TAKE(mark(x0), mark(s(z0))), MARK(x0), MARK(s(z0))) MARK(take(x0, length(z0))) -> c62(ACTIVE(take(mark(x0), active(length(mark(z0))))), TAKE(mark(x0), mark(length(z0))), MARK(x0), MARK(length(z0))) MARK(take(x0, U21(z0))) -> c62(ACTIVE(take(mark(x0), active(U21(mark(z0))))), TAKE(mark(x0), mark(U21(z0))), MARK(x0), MARK(U21(z0))) MARK(take(x0, nil)) -> c62(ACTIVE(take(mark(x0), active(nil))), TAKE(mark(x0), mark(nil)), MARK(x0), MARK(nil)) MARK(take(x0, U31(z0, z1, z2, z3))) -> c62(ACTIVE(take(mark(x0), active(U31(mark(z0), z1, z2, z3)))), TAKE(mark(x0), mark(U31(z0, z1, z2, z3))), MARK(x0), MARK(U31(z0, z1, z2, z3))) MARK(take(x0, take(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(take(mark(z0), mark(z1))))), TAKE(mark(x0), mark(take(z0, z1))), MARK(x0), MARK(take(z0, z1))) MARK(take(x0, and(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(and(mark(z0), z1)))), TAKE(mark(x0), mark(and(z0, z1))), MARK(x0), MARK(and(z0, z1))) MARK(take(x0, isNat(z0))) -> c62(ACTIVE(take(mark(x0), active(isNat(z0)))), TAKE(mark(x0), mark(isNat(z0))), MARK(x0), MARK(isNat(z0))) MARK(take(x0, isNatList(z0))) -> c62(ACTIVE(take(mark(x0), active(isNatList(z0)))), TAKE(mark(x0), mark(isNatList(z0))), MARK(x0), MARK(isNatList(z0))) MARK(take(x0, isNatIList(z0))) -> c62(ACTIVE(take(mark(x0), active(isNatIList(z0)))), TAKE(mark(x0), mark(isNatIList(z0))), MARK(x0), MARK(isNatIList(z0))) MARK(take(zeros, x1)) -> c62(ACTIVE(take(active(zeros), mark(x1))), TAKE(mark(zeros), mark(x1)), MARK(zeros), MARK(x1)) MARK(take(cons(z0, z1), x1)) -> c62(ACTIVE(take(active(cons(mark(z0), z1)), mark(x1))), TAKE(mark(cons(z0, z1)), mark(x1)), MARK(cons(z0, z1)), MARK(x1)) MARK(take(0, x1)) -> c62(ACTIVE(take(active(0), mark(x1))), TAKE(mark(0), mark(x1)), MARK(0), MARK(x1)) MARK(take(U11(z0, z1), x1)) -> c62(ACTIVE(take(active(U11(mark(z0), z1)), mark(x1))), TAKE(mark(U11(z0, z1)), mark(x1)), MARK(U11(z0, z1)), MARK(x1)) MARK(take(tt, x1)) -> c62(ACTIVE(take(active(tt), mark(x1))), TAKE(mark(tt), mark(x1)), MARK(tt), MARK(x1)) MARK(take(s(z0), x1)) -> c62(ACTIVE(take(active(s(mark(z0))), mark(x1))), TAKE(mark(s(z0)), mark(x1)), MARK(s(z0)), MARK(x1)) MARK(take(length(z0), x1)) -> c62(ACTIVE(take(active(length(mark(z0))), mark(x1))), TAKE(mark(length(z0)), mark(x1)), MARK(length(z0)), MARK(x1)) MARK(take(U21(z0), x1)) -> c62(ACTIVE(take(active(U21(mark(z0))), mark(x1))), TAKE(mark(U21(z0)), mark(x1)), MARK(U21(z0)), MARK(x1)) MARK(take(nil, x1)) -> c62(ACTIVE(take(active(nil), mark(x1))), TAKE(mark(nil), mark(x1)), MARK(nil), MARK(x1)) MARK(take(U31(z0, z1, z2, z3), x1)) -> c62(ACTIVE(take(active(U31(mark(z0), z1, z2, z3)), mark(x1))), TAKE(mark(U31(z0, z1, z2, z3)), mark(x1)), MARK(U31(z0, z1, z2, z3)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c62(ACTIVE(take(active(take(mark(z0), mark(z1))), mark(x1))), TAKE(mark(take(z0, z1)), mark(x1)), MARK(take(z0, z1)), MARK(x1)) MARK(take(and(z0, z1), x1)) -> c62(ACTIVE(take(active(and(mark(z0), z1)), mark(x1))), TAKE(mark(and(z0, z1)), mark(x1)), MARK(and(z0, z1)), MARK(x1)) MARK(take(isNat(z0), x1)) -> c62(ACTIVE(take(active(isNat(z0)), mark(x1))), TAKE(mark(isNat(z0)), mark(x1)), MARK(isNat(z0)), MARK(x1)) MARK(take(isNatList(z0), x1)) -> c62(ACTIVE(take(active(isNatList(z0)), mark(x1))), TAKE(mark(isNatList(z0)), mark(x1)), MARK(isNatList(z0)), MARK(x1)) MARK(take(isNatIList(z0), x1)) -> c62(ACTIVE(take(active(isNatIList(z0)), mark(x1))), TAKE(mark(isNatIList(z0)), mark(x1)), MARK(isNatIList(z0)), MARK(x1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(z0, z1)), AND(mark(z0), z1), MARK(z0)) MARK(and(zeros, x1)) -> c63(ACTIVE(and(active(zeros), x1)), AND(mark(zeros), x1), MARK(zeros)) MARK(and(cons(z0, z1), x1)) -> c63(ACTIVE(and(active(cons(mark(z0), z1)), x1)), AND(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(and(0, x1)) -> c63(ACTIVE(and(active(0), x1)), AND(mark(0), x1), MARK(0)) MARK(and(U11(z0, z1), x1)) -> c63(ACTIVE(and(active(U11(mark(z0), z1)), x1)), AND(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(and(tt, x1)) -> c63(ACTIVE(and(active(tt), x1)), AND(mark(tt), x1), MARK(tt)) MARK(and(s(z0), x1)) -> c63(ACTIVE(and(active(s(mark(z0))), x1)), AND(mark(s(z0)), x1), MARK(s(z0))) MARK(and(length(z0), x1)) -> c63(ACTIVE(and(active(length(mark(z0))), x1)), AND(mark(length(z0)), x1), MARK(length(z0))) MARK(and(U21(z0), x1)) -> c63(ACTIVE(and(active(U21(mark(z0))), x1)), AND(mark(U21(z0)), x1), MARK(U21(z0))) MARK(and(nil, x1)) -> c63(ACTIVE(and(active(nil), x1)), AND(mark(nil), x1), MARK(nil)) MARK(and(U31(z0, z1, z2, z3), x1)) -> c63(ACTIVE(and(active(U31(mark(z0), z1, z2, z3)), x1)), AND(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(and(take(z0, z1), x1)) -> c63(ACTIVE(and(active(take(mark(z0), mark(z1))), x1)), AND(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(and(and(z0, z1), x1)) -> c63(ACTIVE(and(active(and(mark(z0), z1)), x1)), AND(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(and(isNat(z0), x1)) -> c63(ACTIVE(and(active(isNat(z0)), x1)), AND(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(and(isNatList(z0), x1)) -> c63(ACTIVE(and(active(isNatList(z0)), x1)), AND(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(and(isNatIList(z0), x1)) -> c63(ACTIVE(and(active(isNatIList(z0)), x1)), AND(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(and(x0, x1)) -> c63(AND(mark(x0), x1)) ENCODE_ACTIVE(cons_active(z0)) -> c(ACTIVE(active(encArg(z0)))) ENCODE_ACTIVE(cons_mark(z0)) -> c(ACTIVE(mark(encArg(z0)))) ENCODE_ACTIVE(cons_cons(z0, z1)) -> c(ACTIVE(cons(encArg(z0), encArg(z1)))) ENCODE_ACTIVE(cons_U11(z0, z1)) -> c(ACTIVE(U11(encArg(z0), encArg(z1)))) ENCODE_ACTIVE(cons_s(z0)) -> c(ACTIVE(s(encArg(z0)))) ENCODE_ACTIVE(cons_length(z0)) -> c(ACTIVE(length(encArg(z0)))) ENCODE_ACTIVE(cons_U21(z0)) -> c(ACTIVE(U21(encArg(z0)))) ENCODE_ACTIVE(cons_U31(z0, z1, z2, z3)) -> c(ACTIVE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)))) ENCODE_ACTIVE(cons_take(z0, z1)) -> c(ACTIVE(take(encArg(z0), encArg(z1)))) ENCODE_ACTIVE(cons_and(z0, z1)) -> c(ACTIVE(and(encArg(z0), encArg(z1)))) ENCODE_ACTIVE(cons_isNat(z0)) -> c(ACTIVE(isNat(encArg(z0)))) ENCODE_ACTIVE(cons_isNatList(z0)) -> c(ACTIVE(isNatList(encArg(z0)))) ENCODE_ACTIVE(cons_isNatIList(z0)) -> c(ACTIVE(isNatIList(encArg(z0)))) ENCODE_MARK(cons_active(z0)) -> c(MARK(active(encArg(z0)))) ENCODE_MARK(cons_mark(z0)) -> c(MARK(mark(encArg(z0)))) ENCODE_MARK(cons_cons(z0, z1)) -> c(MARK(cons(encArg(z0), encArg(z1)))) ENCODE_MARK(cons_U11(z0, z1)) -> c(MARK(U11(encArg(z0), encArg(z1)))) ENCODE_MARK(cons_s(z0)) -> c(MARK(s(encArg(z0)))) ENCODE_MARK(cons_length(z0)) -> c(MARK(length(encArg(z0)))) ENCODE_MARK(cons_U21(z0)) -> c(MARK(U21(encArg(z0)))) ENCODE_MARK(cons_U31(z0, z1, z2, z3)) -> c(MARK(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)))) ENCODE_MARK(cons_take(z0, z1)) -> c(MARK(take(encArg(z0), encArg(z1)))) ENCODE_MARK(cons_and(z0, z1)) -> c(MARK(and(encArg(z0), encArg(z1)))) ENCODE_MARK(cons_isNat(z0)) -> c(MARK(isNat(encArg(z0)))) ENCODE_MARK(cons_isNatList(z0)) -> c(MARK(isNatList(encArg(z0)))) ENCODE_MARK(cons_isNatIList(z0)) -> c(MARK(isNatIList(encArg(z0)))) ENCODE_CONS(x0, zeros) -> c(CONS(encArg(x0), zeros)) ENCODE_CONS(x0, 0) -> c(CONS(encArg(x0), 0)) ENCODE_CONS(x0, tt) -> c(CONS(encArg(x0), tt)) ENCODE_CONS(x0, nil) -> c(CONS(encArg(x0), nil)) ENCODE_CONS(x0, cons_active(z0)) -> c(CONS(encArg(x0), active(encArg(z0)))) ENCODE_CONS(x0, cons_mark(z0)) -> c(CONS(encArg(x0), mark(encArg(z0)))) ENCODE_CONS(x0, cons_cons(z0, z1)) -> c(CONS(encArg(x0), cons(encArg(z0), encArg(z1)))) ENCODE_CONS(x0, cons_U11(z0, z1)) -> c(CONS(encArg(x0), U11(encArg(z0), encArg(z1)))) ENCODE_CONS(x0, cons_s(z0)) -> c(CONS(encArg(x0), s(encArg(z0)))) ENCODE_CONS(x0, cons_length(z0)) -> c(CONS(encArg(x0), length(encArg(z0)))) ENCODE_CONS(x0, cons_U21(z0)) -> c(CONS(encArg(x0), U21(encArg(z0)))) ENCODE_CONS(x0, cons_U31(z0, z1, z2, z3)) -> c(CONS(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)))) ENCODE_CONS(x0, cons_take(z0, z1)) -> c(CONS(encArg(x0), take(encArg(z0), encArg(z1)))) ENCODE_CONS(x0, cons_and(z0, z1)) -> c(CONS(encArg(x0), and(encArg(z0), encArg(z1)))) ENCODE_CONS(x0, cons_isNat(z0)) -> c(CONS(encArg(x0), isNat(encArg(z0)))) ENCODE_CONS(x0, cons_isNatList(z0)) -> c(CONS(encArg(x0), isNatList(encArg(z0)))) ENCODE_CONS(x0, cons_isNatIList(z0)) -> c(CONS(encArg(x0), isNatIList(encArg(z0)))) ENCODE_CONS(zeros, x1) -> c(CONS(zeros, encArg(x1))) ENCODE_CONS(0, x1) -> c(CONS(0, encArg(x1))) ENCODE_CONS(tt, x1) -> c(CONS(tt, encArg(x1))) ENCODE_CONS(nil, x1) -> c(CONS(nil, encArg(x1))) ENCODE_CONS(cons_active(z0), x1) -> c(CONS(active(encArg(z0)), encArg(x1))) ENCODE_CONS(cons_mark(z0), x1) -> c(CONS(mark(encArg(z0)), encArg(x1))) ENCODE_CONS(cons_cons(z0, z1), x1) -> c(CONS(cons(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_CONS(cons_U11(z0, z1), x1) -> c(CONS(U11(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_CONS(cons_s(z0), x1) -> c(CONS(s(encArg(z0)), encArg(x1))) ENCODE_CONS(cons_length(z0), x1) -> c(CONS(length(encArg(z0)), encArg(x1))) ENCODE_CONS(cons_U21(z0), x1) -> c(CONS(U21(encArg(z0)), encArg(x1))) ENCODE_CONS(cons_U31(z0, z1, z2, z3), x1) -> c(CONS(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1))) ENCODE_CONS(cons_take(z0, z1), x1) -> c(CONS(take(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_CONS(cons_and(z0, z1), x1) -> c(CONS(and(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_CONS(cons_isNat(z0), x1) -> c(CONS(isNat(encArg(z0)), encArg(x1))) ENCODE_CONS(cons_isNatList(z0), x1) -> c(CONS(isNatList(encArg(z0)), encArg(x1))) ENCODE_CONS(cons_isNatIList(z0), x1) -> c(CONS(isNatIList(encArg(z0)), encArg(x1))) ENCODE_U11(x0, zeros) -> c(U11'(encArg(x0), zeros)) ENCODE_U11(x0, 0) -> c(U11'(encArg(x0), 0)) ENCODE_U11(x0, tt) -> c(U11'(encArg(x0), tt)) ENCODE_U11(x0, nil) -> c(U11'(encArg(x0), nil)) ENCODE_U11(x0, cons_active(z0)) -> c(U11'(encArg(x0), active(encArg(z0)))) ENCODE_U11(x0, cons_mark(z0)) -> c(U11'(encArg(x0), mark(encArg(z0)))) ENCODE_U11(x0, cons_cons(z0, z1)) -> c(U11'(encArg(x0), cons(encArg(z0), encArg(z1)))) ENCODE_U11(x0, cons_U11(z0, z1)) -> c(U11'(encArg(x0), U11(encArg(z0), encArg(z1)))) ENCODE_U11(x0, cons_s(z0)) -> c(U11'(encArg(x0), s(encArg(z0)))) ENCODE_U11(x0, cons_length(z0)) -> c(U11'(encArg(x0), length(encArg(z0)))) ENCODE_U11(x0, cons_U21(z0)) -> c(U11'(encArg(x0), U21(encArg(z0)))) ENCODE_U11(x0, cons_U31(z0, z1, z2, z3)) -> c(U11'(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)))) ENCODE_U11(x0, cons_take(z0, z1)) -> c(U11'(encArg(x0), take(encArg(z0), encArg(z1)))) ENCODE_U11(x0, cons_and(z0, z1)) -> c(U11'(encArg(x0), and(encArg(z0), encArg(z1)))) ENCODE_U11(x0, cons_isNat(z0)) -> c(U11'(encArg(x0), isNat(encArg(z0)))) ENCODE_U11(x0, cons_isNatList(z0)) -> c(U11'(encArg(x0), isNatList(encArg(z0)))) ENCODE_U11(x0, cons_isNatIList(z0)) -> c(U11'(encArg(x0), isNatIList(encArg(z0)))) ENCODE_U11(zeros, x1) -> c(U11'(zeros, encArg(x1))) ENCODE_U11(0, x1) -> c(U11'(0, encArg(x1))) ENCODE_U11(tt, x1) -> c(U11'(tt, encArg(x1))) ENCODE_U11(nil, x1) -> c(U11'(nil, encArg(x1))) ENCODE_U11(cons_active(z0), x1) -> c(U11'(active(encArg(z0)), encArg(x1))) ENCODE_U11(cons_mark(z0), x1) -> c(U11'(mark(encArg(z0)), encArg(x1))) ENCODE_U11(cons_cons(z0, z1), x1) -> c(U11'(cons(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_U11(cons_U11(z0, z1), x1) -> c(U11'(U11(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_U11(cons_s(z0), x1) -> c(U11'(s(encArg(z0)), encArg(x1))) ENCODE_U11(cons_length(z0), x1) -> c(U11'(length(encArg(z0)), encArg(x1))) ENCODE_U11(cons_U21(z0), x1) -> c(U11'(U21(encArg(z0)), encArg(x1))) ENCODE_U11(cons_U31(z0, z1, z2, z3), x1) -> c(U11'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1))) ENCODE_U11(cons_take(z0, z1), x1) -> c(U11'(take(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_U11(cons_and(z0, z1), x1) -> c(U11'(and(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_U11(cons_isNat(z0), x1) -> c(U11'(isNat(encArg(z0)), encArg(x1))) ENCODE_U11(cons_isNatList(z0), x1) -> c(U11'(isNatList(encArg(z0)), encArg(x1))) ENCODE_U11(cons_isNatIList(z0), x1) -> c(U11'(isNatIList(encArg(z0)), encArg(x1))) ENCODE_S(cons_active(z0)) -> c(S(active(encArg(z0)))) ENCODE_S(cons_mark(z0)) -> c(S(mark(encArg(z0)))) ENCODE_S(cons_cons(z0, z1)) -> c(S(cons(encArg(z0), encArg(z1)))) ENCODE_S(cons_U11(z0, z1)) -> c(S(U11(encArg(z0), encArg(z1)))) ENCODE_S(cons_s(z0)) -> c(S(s(encArg(z0)))) ENCODE_S(cons_length(z0)) -> c(S(length(encArg(z0)))) ENCODE_S(cons_U21(z0)) -> c(S(U21(encArg(z0)))) ENCODE_S(cons_U31(z0, z1, z2, z3)) -> c(S(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)))) ENCODE_S(cons_take(z0, z1)) -> c(S(take(encArg(z0), encArg(z1)))) ENCODE_S(cons_and(z0, z1)) -> c(S(and(encArg(z0), encArg(z1)))) ENCODE_S(cons_isNat(z0)) -> c(S(isNat(encArg(z0)))) ENCODE_S(cons_isNatList(z0)) -> c(S(isNatList(encArg(z0)))) ENCODE_S(cons_isNatIList(z0)) -> c(S(isNatIList(encArg(z0)))) ENCODE_LENGTH(zeros) -> c(LENGTH(zeros)) ENCODE_LENGTH(0) -> c(LENGTH(0)) ENCODE_LENGTH(tt) -> c(LENGTH(tt)) ENCODE_LENGTH(nil) -> c(LENGTH(nil)) ENCODE_LENGTH(cons_active(z0)) -> c(LENGTH(active(encArg(z0)))) ENCODE_LENGTH(cons_mark(z0)) -> c(LENGTH(mark(encArg(z0)))) ENCODE_LENGTH(cons_cons(z0, z1)) -> c(LENGTH(cons(encArg(z0), encArg(z1)))) ENCODE_LENGTH(cons_U11(z0, z1)) -> c(LENGTH(U11(encArg(z0), encArg(z1)))) ENCODE_LENGTH(cons_s(z0)) -> c(LENGTH(s(encArg(z0)))) ENCODE_LENGTH(cons_length(z0)) -> c(LENGTH(length(encArg(z0)))) ENCODE_LENGTH(cons_U21(z0)) -> c(LENGTH(U21(encArg(z0)))) ENCODE_LENGTH(cons_U31(z0, z1, z2, z3)) -> c(LENGTH(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)))) ENCODE_LENGTH(cons_take(z0, z1)) -> c(LENGTH(take(encArg(z0), encArg(z1)))) ENCODE_LENGTH(cons_and(z0, z1)) -> c(LENGTH(and(encArg(z0), encArg(z1)))) ENCODE_LENGTH(cons_isNat(z0)) -> c(LENGTH(isNat(encArg(z0)))) ENCODE_LENGTH(cons_isNatList(z0)) -> c(LENGTH(isNatList(encArg(z0)))) ENCODE_LENGTH(cons_isNatIList(z0)) -> c(LENGTH(isNatIList(encArg(z0)))) S tuples: ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 MARK(cons(zeros, x1)) -> c53(ACTIVE(cons(active(zeros), x1)), CONS(mark(zeros), x1), MARK(zeros)) MARK(cons(cons(z0, z1), x1)) -> c53(ACTIVE(cons(active(cons(mark(z0), z1)), x1)), CONS(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(cons(0, x1)) -> c53(ACTIVE(cons(active(0), x1)), CONS(mark(0), x1), MARK(0)) MARK(cons(U11(z0, z1), x1)) -> c53(ACTIVE(cons(active(U11(mark(z0), z1)), x1)), CONS(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(cons(tt, x1)) -> c53(ACTIVE(cons(active(tt), x1)), CONS(mark(tt), x1), MARK(tt)) MARK(cons(s(z0), x1)) -> c53(ACTIVE(cons(active(s(mark(z0))), x1)), CONS(mark(s(z0)), x1), MARK(s(z0))) MARK(cons(length(z0), x1)) -> c53(ACTIVE(cons(active(length(mark(z0))), x1)), CONS(mark(length(z0)), x1), MARK(length(z0))) MARK(cons(U21(z0), x1)) -> c53(ACTIVE(cons(active(U21(mark(z0))), x1)), CONS(mark(U21(z0)), x1), MARK(U21(z0))) MARK(cons(nil, x1)) -> c53(ACTIVE(cons(active(nil), x1)), CONS(mark(nil), x1), MARK(nil)) MARK(cons(U31(z0, z1, z2, z3), x1)) -> c53(ACTIVE(cons(active(U31(mark(z0), z1, z2, z3)), x1)), CONS(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(cons(take(z0, z1), x1)) -> c53(ACTIVE(cons(active(take(mark(z0), mark(z1))), x1)), CONS(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(cons(and(z0, z1), x1)) -> c53(ACTIVE(cons(active(and(mark(z0), z1)), x1)), CONS(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(cons(isNat(z0), x1)) -> c53(ACTIVE(cons(active(isNat(z0)), x1)), CONS(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(cons(isNatList(z0), x1)) -> c53(ACTIVE(cons(active(isNatList(z0)), x1)), CONS(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(cons(isNatIList(z0), x1)) -> c53(ACTIVE(cons(active(isNatIList(z0)), x1)), CONS(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(cons(x0, x1)) -> c53(CONS(mark(x0), x1)) MARK(cons(z0, z1)) -> c53(CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(z0, z1)), U11'(mark(z0), z1), MARK(z0)) MARK(U11(zeros, x1)) -> c55(ACTIVE(U11(active(zeros), x1)), U11'(mark(zeros), x1), MARK(zeros)) MARK(U11(cons(z0, z1), x1)) -> c55(ACTIVE(U11(active(cons(mark(z0), z1)), x1)), U11'(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(U11(0, x1)) -> c55(ACTIVE(U11(active(0), x1)), U11'(mark(0), x1), MARK(0)) MARK(U11(U11(z0, z1), x1)) -> c55(ACTIVE(U11(active(U11(mark(z0), z1)), x1)), U11'(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(U11(tt, x1)) -> c55(ACTIVE(U11(active(tt), x1)), U11'(mark(tt), x1), MARK(tt)) MARK(U11(s(z0), x1)) -> c55(ACTIVE(U11(active(s(mark(z0))), x1)), U11'(mark(s(z0)), x1), MARK(s(z0))) MARK(U11(length(z0), x1)) -> c55(ACTIVE(U11(active(length(mark(z0))), x1)), U11'(mark(length(z0)), x1), MARK(length(z0))) MARK(U11(U21(z0), x1)) -> c55(ACTIVE(U11(active(U21(mark(z0))), x1)), U11'(mark(U21(z0)), x1), MARK(U21(z0))) MARK(U11(nil, x1)) -> c55(ACTIVE(U11(active(nil), x1)), U11'(mark(nil), x1), MARK(nil)) MARK(U11(U31(z0, z1, z2, z3), x1)) -> c55(ACTIVE(U11(active(U31(mark(z0), z1, z2, z3)), x1)), U11'(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(U11(take(z0, z1), x1)) -> c55(ACTIVE(U11(active(take(mark(z0), mark(z1))), x1)), U11'(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(U11(and(z0, z1), x1)) -> c55(ACTIVE(U11(active(and(mark(z0), z1)), x1)), U11'(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(U11(isNat(z0), x1)) -> c55(ACTIVE(U11(active(isNat(z0)), x1)), U11'(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(U11(isNatList(z0), x1)) -> c55(ACTIVE(U11(active(isNatList(z0)), x1)), U11'(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(U11(isNatIList(z0), x1)) -> c55(ACTIVE(U11(active(isNatIList(z0)), x1)), U11'(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(U11(x0, x1)) -> c55(U11'(mark(x0), x1)) MARK(s(zeros)) -> c57(ACTIVE(s(active(zeros))), S(mark(zeros)), MARK(zeros)) MARK(s(cons(z0, z1))) -> c57(ACTIVE(s(active(cons(mark(z0), z1)))), S(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(s(0)) -> c57(ACTIVE(s(active(0))), S(mark(0)), MARK(0)) MARK(s(U11(z0, z1))) -> c57(ACTIVE(s(active(U11(mark(z0), z1)))), S(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(s(tt)) -> c57(ACTIVE(s(active(tt))), S(mark(tt)), MARK(tt)) MARK(s(s(z0))) -> c57(ACTIVE(s(active(s(mark(z0))))), S(mark(s(z0))), MARK(s(z0))) MARK(s(length(z0))) -> c57(ACTIVE(s(active(length(mark(z0))))), S(mark(length(z0))), MARK(length(z0))) MARK(s(U21(z0))) -> c57(ACTIVE(s(active(U21(mark(z0))))), S(mark(U21(z0))), MARK(U21(z0))) MARK(s(nil)) -> c57(ACTIVE(s(active(nil))), S(mark(nil)), MARK(nil)) MARK(s(U31(z0, z1, z2, z3))) -> c57(ACTIVE(s(active(U31(mark(z0), z1, z2, z3)))), S(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(s(take(z0, z1))) -> c57(ACTIVE(s(active(take(mark(z0), mark(z1))))), S(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(s(and(z0, z1))) -> c57(ACTIVE(s(active(and(mark(z0), z1)))), S(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(s(isNat(z0))) -> c57(ACTIVE(s(active(isNat(z0)))), S(mark(isNat(z0))), MARK(isNat(z0))) MARK(s(isNatList(z0))) -> c57(ACTIVE(s(active(isNatList(z0)))), S(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(s(isNatIList(z0))) -> c57(ACTIVE(s(active(isNatIList(z0)))), S(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(s(z0)) -> c57(S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(z0)), LENGTH(mark(z0)), MARK(z0)) MARK(length(zeros)) -> c58(ACTIVE(length(active(zeros))), LENGTH(mark(zeros)), MARK(zeros)) MARK(length(cons(z0, z1))) -> c58(ACTIVE(length(active(cons(mark(z0), z1)))), LENGTH(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(length(0)) -> c58(ACTIVE(length(active(0))), LENGTH(mark(0)), MARK(0)) MARK(length(U11(z0, z1))) -> c58(ACTIVE(length(active(U11(mark(z0), z1)))), LENGTH(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(length(tt)) -> c58(ACTIVE(length(active(tt))), LENGTH(mark(tt)), MARK(tt)) MARK(length(s(z0))) -> c58(ACTIVE(length(active(s(mark(z0))))), LENGTH(mark(s(z0))), MARK(s(z0))) MARK(length(length(z0))) -> c58(ACTIVE(length(active(length(mark(z0))))), LENGTH(mark(length(z0))), MARK(length(z0))) MARK(length(U21(z0))) -> c58(ACTIVE(length(active(U21(mark(z0))))), LENGTH(mark(U21(z0))), MARK(U21(z0))) MARK(length(nil)) -> c58(ACTIVE(length(active(nil))), LENGTH(mark(nil)), MARK(nil)) MARK(length(U31(z0, z1, z2, z3))) -> c58(ACTIVE(length(active(U31(mark(z0), z1, z2, z3)))), LENGTH(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(length(take(z0, z1))) -> c58(ACTIVE(length(active(take(mark(z0), mark(z1))))), LENGTH(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(length(and(z0, z1))) -> c58(ACTIVE(length(active(and(mark(z0), z1)))), LENGTH(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(length(isNat(z0))) -> c58(ACTIVE(length(active(isNat(z0)))), LENGTH(mark(isNat(z0))), MARK(isNat(z0))) MARK(length(isNatList(z0))) -> c58(ACTIVE(length(active(isNatList(z0)))), LENGTH(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(length(isNatIList(z0))) -> c58(ACTIVE(length(active(isNatIList(z0)))), LENGTH(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(U21(z0)) -> c59(ACTIVE(U21(z0)), U21'(mark(z0)), MARK(z0)) MARK(U21(zeros)) -> c59(ACTIVE(U21(active(zeros))), U21'(mark(zeros)), MARK(zeros)) MARK(U21(cons(z0, z1))) -> c59(ACTIVE(U21(active(cons(mark(z0), z1)))), U21'(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(U21(0)) -> c59(ACTIVE(U21(active(0))), U21'(mark(0)), MARK(0)) MARK(U21(U11(z0, z1))) -> c59(ACTIVE(U21(active(U11(mark(z0), z1)))), U21'(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(U21(tt)) -> c59(ACTIVE(U21(active(tt))), U21'(mark(tt)), MARK(tt)) MARK(U21(s(z0))) -> c59(ACTIVE(U21(active(s(mark(z0))))), U21'(mark(s(z0))), MARK(s(z0))) MARK(U21(length(z0))) -> c59(ACTIVE(U21(active(length(mark(z0))))), U21'(mark(length(z0))), MARK(length(z0))) MARK(U21(U21(z0))) -> c59(ACTIVE(U21(active(U21(mark(z0))))), U21'(mark(U21(z0))), MARK(U21(z0))) MARK(U21(nil)) -> c59(ACTIVE(U21(active(nil))), U21'(mark(nil)), MARK(nil)) MARK(U21(U31(z0, z1, z2, z3))) -> c59(ACTIVE(U21(active(U31(mark(z0), z1, z2, z3)))), U21'(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(U21(take(z0, z1))) -> c59(ACTIVE(U21(active(take(mark(z0), mark(z1))))), U21'(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(U21(and(z0, z1))) -> c59(ACTIVE(U21(active(and(mark(z0), z1)))), U21'(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(U21(isNat(z0))) -> c59(ACTIVE(U21(active(isNat(z0)))), U21'(mark(isNat(z0))), MARK(isNat(z0))) MARK(U21(isNatList(z0))) -> c59(ACTIVE(U21(active(isNatList(z0)))), U21'(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(U21(isNatIList(z0))) -> c59(ACTIVE(U21(active(isNatIList(z0)))), U21'(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(z0, z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U31(zeros, x1, x2, x3)) -> c61(ACTIVE(U31(active(zeros), x1, x2, x3)), U31'(mark(zeros), x1, x2, x3), MARK(zeros)) MARK(U31(cons(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(cons(mark(z0), z1)), x1, x2, x3)), U31'(mark(cons(z0, z1)), x1, x2, x3), MARK(cons(z0, z1))) MARK(U31(0, x1, x2, x3)) -> c61(ACTIVE(U31(active(0), x1, x2, x3)), U31'(mark(0), x1, x2, x3), MARK(0)) MARK(U31(U11(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(U11(mark(z0), z1)), x1, x2, x3)), U31'(mark(U11(z0, z1)), x1, x2, x3), MARK(U11(z0, z1))) MARK(U31(tt, x1, x2, x3)) -> c61(ACTIVE(U31(active(tt), x1, x2, x3)), U31'(mark(tt), x1, x2, x3), MARK(tt)) MARK(U31(s(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(s(mark(z0))), x1, x2, x3)), U31'(mark(s(z0)), x1, x2, x3), MARK(s(z0))) MARK(U31(length(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(length(mark(z0))), x1, x2, x3)), U31'(mark(length(z0)), x1, x2, x3), MARK(length(z0))) MARK(U31(U21(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(U21(mark(z0))), x1, x2, x3)), U31'(mark(U21(z0)), x1, x2, x3), MARK(U21(z0))) MARK(U31(nil, x1, x2, x3)) -> c61(ACTIVE(U31(active(nil), x1, x2, x3)), U31'(mark(nil), x1, x2, x3), MARK(nil)) MARK(U31(U31(z0, z1, z2, z3), x1, x2, x3)) -> c61(ACTIVE(U31(active(U31(mark(z0), z1, z2, z3)), x1, x2, x3)), U31'(mark(U31(z0, z1, z2, z3)), x1, x2, x3), MARK(U31(z0, z1, z2, z3))) MARK(U31(take(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(take(mark(z0), mark(z1))), x1, x2, x3)), U31'(mark(take(z0, z1)), x1, x2, x3), MARK(take(z0, z1))) MARK(U31(and(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(and(mark(z0), z1)), x1, x2, x3)), U31'(mark(and(z0, z1)), x1, x2, x3), MARK(and(z0, z1))) MARK(U31(isNat(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNat(z0)), x1, x2, x3)), U31'(mark(isNat(z0)), x1, x2, x3), MARK(isNat(z0))) MARK(U31(isNatList(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNatList(z0)), x1, x2, x3)), U31'(mark(isNatList(z0)), x1, x2, x3), MARK(isNatList(z0))) MARK(U31(isNatIList(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNatIList(z0)), x1, x2, x3)), U31'(mark(isNatIList(z0)), x1, x2, x3), MARK(isNatIList(z0))) MARK(U31(x0, x1, x2, x3)) -> c61(U31'(mark(x0), x1, x2, x3)) MARK(take(z0, x1)) -> c62(ACTIVE(take(z0, mark(x1))), TAKE(mark(z0), mark(x1)), MARK(z0), MARK(x1)) MARK(take(x0, z1)) -> c62(ACTIVE(take(mark(x0), z1)), TAKE(mark(x0), mark(z1)), MARK(x0), MARK(z1)) MARK(take(x0, zeros)) -> c62(ACTIVE(take(mark(x0), active(zeros))), TAKE(mark(x0), mark(zeros)), MARK(x0), MARK(zeros)) MARK(take(x0, cons(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(cons(mark(z0), z1)))), TAKE(mark(x0), mark(cons(z0, z1))), MARK(x0), MARK(cons(z0, z1))) MARK(take(x0, 0)) -> c62(ACTIVE(take(mark(x0), active(0))), TAKE(mark(x0), mark(0)), MARK(x0), MARK(0)) MARK(take(x0, U11(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(U11(mark(z0), z1)))), TAKE(mark(x0), mark(U11(z0, z1))), MARK(x0), MARK(U11(z0, z1))) MARK(take(x0, tt)) -> c62(ACTIVE(take(mark(x0), active(tt))), TAKE(mark(x0), mark(tt)), MARK(x0), MARK(tt)) MARK(take(x0, s(z0))) -> c62(ACTIVE(take(mark(x0), active(s(mark(z0))))), TAKE(mark(x0), mark(s(z0))), MARK(x0), MARK(s(z0))) MARK(take(x0, length(z0))) -> c62(ACTIVE(take(mark(x0), active(length(mark(z0))))), TAKE(mark(x0), mark(length(z0))), MARK(x0), MARK(length(z0))) MARK(take(x0, U21(z0))) -> c62(ACTIVE(take(mark(x0), active(U21(mark(z0))))), TAKE(mark(x0), mark(U21(z0))), MARK(x0), MARK(U21(z0))) MARK(take(x0, nil)) -> c62(ACTIVE(take(mark(x0), active(nil))), TAKE(mark(x0), mark(nil)), MARK(x0), MARK(nil)) MARK(take(x0, U31(z0, z1, z2, z3))) -> c62(ACTIVE(take(mark(x0), active(U31(mark(z0), z1, z2, z3)))), TAKE(mark(x0), mark(U31(z0, z1, z2, z3))), MARK(x0), MARK(U31(z0, z1, z2, z3))) MARK(take(x0, take(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(take(mark(z0), mark(z1))))), TAKE(mark(x0), mark(take(z0, z1))), MARK(x0), MARK(take(z0, z1))) MARK(take(x0, and(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(and(mark(z0), z1)))), TAKE(mark(x0), mark(and(z0, z1))), MARK(x0), MARK(and(z0, z1))) MARK(take(x0, isNat(z0))) -> c62(ACTIVE(take(mark(x0), active(isNat(z0)))), TAKE(mark(x0), mark(isNat(z0))), MARK(x0), MARK(isNat(z0))) MARK(take(x0, isNatList(z0))) -> c62(ACTIVE(take(mark(x0), active(isNatList(z0)))), TAKE(mark(x0), mark(isNatList(z0))), MARK(x0), MARK(isNatList(z0))) MARK(take(x0, isNatIList(z0))) -> c62(ACTIVE(take(mark(x0), active(isNatIList(z0)))), TAKE(mark(x0), mark(isNatIList(z0))), MARK(x0), MARK(isNatIList(z0))) MARK(take(zeros, x1)) -> c62(ACTIVE(take(active(zeros), mark(x1))), TAKE(mark(zeros), mark(x1)), MARK(zeros), MARK(x1)) MARK(take(cons(z0, z1), x1)) -> c62(ACTIVE(take(active(cons(mark(z0), z1)), mark(x1))), TAKE(mark(cons(z0, z1)), mark(x1)), MARK(cons(z0, z1)), MARK(x1)) MARK(take(0, x1)) -> c62(ACTIVE(take(active(0), mark(x1))), TAKE(mark(0), mark(x1)), MARK(0), MARK(x1)) MARK(take(U11(z0, z1), x1)) -> c62(ACTIVE(take(active(U11(mark(z0), z1)), mark(x1))), TAKE(mark(U11(z0, z1)), mark(x1)), MARK(U11(z0, z1)), MARK(x1)) MARK(take(tt, x1)) -> c62(ACTIVE(take(active(tt), mark(x1))), TAKE(mark(tt), mark(x1)), MARK(tt), MARK(x1)) MARK(take(s(z0), x1)) -> c62(ACTIVE(take(active(s(mark(z0))), mark(x1))), TAKE(mark(s(z0)), mark(x1)), MARK(s(z0)), MARK(x1)) MARK(take(length(z0), x1)) -> c62(ACTIVE(take(active(length(mark(z0))), mark(x1))), TAKE(mark(length(z0)), mark(x1)), MARK(length(z0)), MARK(x1)) MARK(take(U21(z0), x1)) -> c62(ACTIVE(take(active(U21(mark(z0))), mark(x1))), TAKE(mark(U21(z0)), mark(x1)), MARK(U21(z0)), MARK(x1)) MARK(take(nil, x1)) -> c62(ACTIVE(take(active(nil), mark(x1))), TAKE(mark(nil), mark(x1)), MARK(nil), MARK(x1)) MARK(take(U31(z0, z1, z2, z3), x1)) -> c62(ACTIVE(take(active(U31(mark(z0), z1, z2, z3)), mark(x1))), TAKE(mark(U31(z0, z1, z2, z3)), mark(x1)), MARK(U31(z0, z1, z2, z3)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c62(ACTIVE(take(active(take(mark(z0), mark(z1))), mark(x1))), TAKE(mark(take(z0, z1)), mark(x1)), MARK(take(z0, z1)), MARK(x1)) MARK(take(and(z0, z1), x1)) -> c62(ACTIVE(take(active(and(mark(z0), z1)), mark(x1))), TAKE(mark(and(z0, z1)), mark(x1)), MARK(and(z0, z1)), MARK(x1)) MARK(take(isNat(z0), x1)) -> c62(ACTIVE(take(active(isNat(z0)), mark(x1))), TAKE(mark(isNat(z0)), mark(x1)), MARK(isNat(z0)), MARK(x1)) MARK(take(isNatList(z0), x1)) -> c62(ACTIVE(take(active(isNatList(z0)), mark(x1))), TAKE(mark(isNatList(z0)), mark(x1)), MARK(isNatList(z0)), MARK(x1)) MARK(take(isNatIList(z0), x1)) -> c62(ACTIVE(take(active(isNatIList(z0)), mark(x1))), TAKE(mark(isNatIList(z0)), mark(x1)), MARK(isNatIList(z0)), MARK(x1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(z0, z1)), AND(mark(z0), z1), MARK(z0)) MARK(and(zeros, x1)) -> c63(ACTIVE(and(active(zeros), x1)), AND(mark(zeros), x1), MARK(zeros)) MARK(and(cons(z0, z1), x1)) -> c63(ACTIVE(and(active(cons(mark(z0), z1)), x1)), AND(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(and(0, x1)) -> c63(ACTIVE(and(active(0), x1)), AND(mark(0), x1), MARK(0)) MARK(and(U11(z0, z1), x1)) -> c63(ACTIVE(and(active(U11(mark(z0), z1)), x1)), AND(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(and(tt, x1)) -> c63(ACTIVE(and(active(tt), x1)), AND(mark(tt), x1), MARK(tt)) MARK(and(s(z0), x1)) -> c63(ACTIVE(and(active(s(mark(z0))), x1)), AND(mark(s(z0)), x1), MARK(s(z0))) MARK(and(length(z0), x1)) -> c63(ACTIVE(and(active(length(mark(z0))), x1)), AND(mark(length(z0)), x1), MARK(length(z0))) MARK(and(U21(z0), x1)) -> c63(ACTIVE(and(active(U21(mark(z0))), x1)), AND(mark(U21(z0)), x1), MARK(U21(z0))) MARK(and(nil, x1)) -> c63(ACTIVE(and(active(nil), x1)), AND(mark(nil), x1), MARK(nil)) MARK(and(U31(z0, z1, z2, z3), x1)) -> c63(ACTIVE(and(active(U31(mark(z0), z1, z2, z3)), x1)), AND(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(and(take(z0, z1), x1)) -> c63(ACTIVE(and(active(take(mark(z0), mark(z1))), x1)), AND(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(and(and(z0, z1), x1)) -> c63(ACTIVE(and(active(and(mark(z0), z1)), x1)), AND(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(and(isNat(z0), x1)) -> c63(ACTIVE(and(active(isNat(z0)), x1)), AND(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(and(isNatList(z0), x1)) -> c63(ACTIVE(and(active(isNatList(z0)), x1)), AND(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(and(isNatIList(z0), x1)) -> c63(ACTIVE(and(active(isNatIList(z0)), x1)), AND(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(and(x0, x1)) -> c63(AND(mark(x0), x1)) K tuples:none Defined Rule Symbols: encArg_1, active_1, mark_1, cons_2, U11_2, s_1, length_1, U21_1, U31_4, take_2, and_2, isNat_1, isNatList_1, isNatIList_1 Defined Pair Symbols: ACTIVE_1, MARK_1, CONS_2, U11'_2, S_1, LENGTH_1, U21'_1, U31'_4, TAKE_2, AND_2, ISNAT_1, ISNATLIST_1, ISNATILIST_1, ENCODE_U21_1, ENCODE_U31_4, ENCODE_TAKE_2, ENCODE_AND_2, ENCODE_ISNAT_1, ENCODE_ISNATLIST_1, ENCODE_ISNATILIST_1, ENCARG_1, ENCODE_ACTIVE_1, ENCODE_MARK_1, ENCODE_CONS_2, ENCODE_U11_2, ENCODE_S_1, ENCODE_LENGTH_1 Compound Symbols: c36_1, c37_3, c38_1, c39_1, c40_2, c41_2, c42_2, c43_1, c45_1, c48_1, c52_1, c64_2, c65_2, c66_2, c67_1, c68_1, c69_1, c70_1, c71_1, c72_1, c73_1, c74_1, c75_1, c76_1, c77_1, c78_1, c79_1, c80_1, c81_1, c82_1, c83_1, c84_1, c85_1, c86_1, c87_1, c88_1, c89_1, c90_1, c91_1, c92_1, c93_1, c94_1, c95_1, c96_1, c97_1, c98_1, c99_1, c100_1, c101_1, c102_1, c34_1, c35_2, c44_3, c46_3, c47_3, c49_3, c50_2, c51_4, c54, c56, c60, c_1, c4_2, c4_1, c5_2, c5_1, c6_3, c6_2, c7_3, c7_2, c8_2, c9_2, c10_2, c11_5, c11_4, c12_3, c12_2, c13_3, c13_2, c14_2, c15_2, c16_2, c53_3, c53_1, c53_2, c55_3, c55_1, c57_3, c57_2, c58_3, c59_3, c61_3, c61_1, c62_4, c63_3, c63_1 ---------------------------------------- (131) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 4 trailing nodes: ENCODE_LENGTH(nil) -> c(LENGTH(nil)) ENCODE_LENGTH(0) -> c(LENGTH(0)) ENCODE_LENGTH(tt) -> c(LENGTH(tt)) ENCODE_LENGTH(zeros) -> c(LENGTH(zeros)) ---------------------------------------- (132) Obligation: Complexity Dependency Tuples Problem Rules: encArg(zeros) -> zeros encArg(0) -> 0 encArg(tt) -> tt encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_U11(z0, z1)) -> U11(encArg(z0), encArg(z1)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_length(z0)) -> length(encArg(z0)) encArg(cons_U21(z0)) -> U21(encArg(z0)) encArg(cons_U31(z0, z1, z2, z3)) -> U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_isNat(z0)) -> isNat(encArg(z0)) encArg(cons_isNatList(z0)) -> isNatList(encArg(z0)) encArg(cons_isNatIList(z0)) -> isNatIList(encArg(z0)) active(zeros) -> mark(cons(0, zeros)) active(U11(tt, z0)) -> mark(s(length(z0))) active(U21(tt)) -> mark(nil) active(U31(tt, z0, z1, z2)) -> mark(cons(z2, take(z1, z0))) active(and(tt, z0)) -> mark(z0) active(isNat(0)) -> mark(tt) active(isNat(length(z0))) -> mark(isNatList(z0)) active(isNat(s(z0))) -> mark(isNat(z0)) active(isNatIList(z0)) -> mark(isNatList(z0)) active(isNatIList(zeros)) -> mark(tt) active(isNatIList(cons(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(isNatList(nil)) -> mark(tt) active(isNatList(cons(z0, z1))) -> mark(and(isNat(z0), isNatList(z1))) active(isNatList(take(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(length(nil)) -> mark(0) active(length(cons(z0, z1))) -> mark(U11(and(isNatList(z1), isNat(z0)), z1)) active(take(0, z0)) -> mark(U21(isNatIList(z0))) active(take(s(z0), cons(z1, z2))) -> mark(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)) mark(zeros) -> active(zeros) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(0) -> active(0) mark(U11(z0, z1)) -> active(U11(mark(z0), z1)) mark(tt) -> active(tt) mark(s(z0)) -> active(s(mark(z0))) mark(length(z0)) -> active(length(mark(z0))) mark(U21(z0)) -> active(U21(mark(z0))) mark(nil) -> active(nil) mark(U31(z0, z1, z2, z3)) -> active(U31(mark(z0), z1, z2, z3)) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(isNat(z0)) -> active(isNat(z0)) mark(isNatList(z0)) -> active(isNatList(z0)) mark(isNatIList(z0)) -> active(isNatIList(z0)) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) U11(mark(z0), z1) -> U11(z0, z1) U11(z0, mark(z1)) -> U11(z0, z1) U11(active(z0), z1) -> U11(z0, z1) U11(z0, active(z1)) -> U11(z0, z1) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) length(mark(z0)) -> length(z0) length(active(z0)) -> length(z0) U21(mark(z0)) -> U21(z0) U21(active(z0)) -> U21(z0) U31(mark(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, mark(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, mark(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, mark(z3)) -> U31(z0, z1, z2, z3) U31(active(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, active(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, active(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, active(z3)) -> U31(z0, z1, z2, z3) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) isNat(mark(z0)) -> isNat(z0) isNat(active(z0)) -> isNat(z0) isNatList(mark(z0)) -> isNatList(z0) isNatList(active(z0)) -> isNatList(z0) isNatIList(mark(z0)) -> isNatIList(z0) isNatIList(active(z0)) -> isNatIList(z0) Tuples: ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 ENCODE_U21(z0) -> c(U21'(encArg(z0))) ENCODE_U31(z0, z1, z2, z3) -> c(U31'(encArg(z0), encArg(z1), encArg(z2), encArg(z3))) ENCODE_TAKE(z0, z1) -> c(TAKE(encArg(z0), encArg(z1))) ENCODE_AND(z0, z1) -> c(AND(encArg(z0), encArg(z1))) ENCODE_ISNAT(z0) -> c(ISNAT(encArg(z0))) ENCODE_ISNATLIST(z0) -> c(ISNATLIST(encArg(z0))) ENCODE_ISNATILIST(z0) -> c(ISNATILIST(encArg(z0))) ENCARG(cons_active(cons_active(z0))) -> c4(ACTIVE(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_active(cons_mark(z0))) -> c4(ACTIVE(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_active(cons_cons(z0, z1))) -> c4(ACTIVE(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_active(cons_U11(z0, z1))) -> c4(ACTIVE(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_active(cons_s(z0))) -> c4(ACTIVE(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_active(cons_length(z0))) -> c4(ACTIVE(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_active(cons_U21(z0))) -> c4(ACTIVE(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_active(cons_U31(z0, z1, z2, z3))) -> c4(ACTIVE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_active(cons_take(z0, z1))) -> c4(ACTIVE(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_active(cons_and(z0, z1))) -> c4(ACTIVE(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_active(cons_isNat(z0))) -> c4(ACTIVE(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_active(cons_isNatList(z0))) -> c4(ACTIVE(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_active(cons_isNatIList(z0))) -> c4(ACTIVE(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_active(zeros)) -> c4(ACTIVE(zeros)) ENCARG(cons_mark(cons_active(z0))) -> c5(MARK(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_mark(cons_mark(z0))) -> c5(MARK(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_mark(cons_cons(z0, z1))) -> c5(MARK(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_mark(cons_U11(z0, z1))) -> c5(MARK(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_mark(cons_s(z0))) -> c5(MARK(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_mark(cons_length(z0))) -> c5(MARK(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_mark(cons_U21(z0))) -> c5(MARK(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_mark(cons_U31(z0, z1, z2, z3))) -> c5(MARK(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_mark(cons_take(z0, z1))) -> c5(MARK(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(cons_and(z0, z1))) -> c5(MARK(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_mark(cons_isNat(z0))) -> c5(MARK(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_mark(cons_isNatList(z0))) -> c5(MARK(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_mark(cons_isNatIList(z0))) -> c5(MARK(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_mark(zeros)) -> c5(MARK(zeros)) ENCARG(cons_mark(0)) -> c5(MARK(0)) ENCARG(cons_mark(tt)) -> c5(MARK(tt)) ENCARG(cons_mark(nil)) -> c5(MARK(nil)) ENCARG(cons_cons(x0, cons_active(z0))) -> c6(CONS(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_cons(x0, cons_mark(z0))) -> c6(CONS(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_cons(x0, cons_cons(z0, z1))) -> c6(CONS(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_cons(x0, cons_U11(z0, z1))) -> c6(CONS(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_cons(x0, cons_s(z0))) -> c6(CONS(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_cons(x0, cons_length(z0))) -> c6(CONS(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_cons(x0, cons_U21(z0))) -> c6(CONS(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_cons(x0, cons_U31(z0, z1, z2, z3))) -> c6(CONS(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_cons(x0, cons_take(z0, z1))) -> c6(CONS(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_cons(x0, cons_and(z0, z1))) -> c6(CONS(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_cons(x0, cons_isNat(z0))) -> c6(CONS(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_cons(x0, cons_isNatList(z0))) -> c6(CONS(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_cons(x0, cons_isNatIList(z0))) -> c6(CONS(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_cons(cons_active(z0), x1)) -> c6(CONS(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_mark(z0), x1)) -> c6(CONS(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_cons(z0, z1), x1)) -> c6(CONS(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_U11(z0, z1), x1)) -> c6(CONS(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_s(z0), x1)) -> c6(CONS(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_length(z0), x1)) -> c6(CONS(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U21(z0), x1)) -> c6(CONS(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U31(z0, z1, z2, z3), x1)) -> c6(CONS(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_cons(cons_take(z0, z1), x1)) -> c6(CONS(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_and(z0, z1), x1)) -> c6(CONS(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_isNat(z0), x1)) -> c6(CONS(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_isNatList(z0), x1)) -> c6(CONS(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_isNatIList(z0), x1)) -> c6(CONS(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_cons(x0, zeros)) -> c6(CONS(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_cons(x0, 0)) -> c6(CONS(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_cons(x0, tt)) -> c6(CONS(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_cons(x0, nil)) -> c6(CONS(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_cons(zeros, x1)) -> c6(CONS(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(0, x1)) -> c6(CONS(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(tt, x1)) -> c6(CONS(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(nil, x1)) -> c6(CONS(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(x0, cons_active(z0))) -> c7(U11'(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_U11(x0, cons_mark(z0))) -> c7(U11'(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_U11(x0, cons_cons(z0, z1))) -> c7(U11'(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U11(x0, cons_U11(z0, z1))) -> c7(U11'(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U11(x0, cons_s(z0))) -> c7(U11'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_U11(x0, cons_length(z0))) -> c7(U11'(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_U11(x0, cons_U21(z0))) -> c7(U11'(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_U11(x0, cons_U31(z0, z1, z2, z3))) -> c7(U11'(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U11(x0, cons_take(z0, z1))) -> c7(U11'(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_U11(x0, cons_and(z0, z1))) -> c7(U11'(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_U11(x0, cons_isNat(z0))) -> c7(U11'(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_U11(x0, cons_isNatList(z0))) -> c7(U11'(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_U11(x0, cons_isNatIList(z0))) -> c7(U11'(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U11(cons_active(z0), x1)) -> c7(U11'(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_mark(z0), x1)) -> c7(U11'(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_cons(z0, z1), x1)) -> c7(U11'(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_U11(z0, z1), x1)) -> c7(U11'(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_s(z0), x1)) -> c7(U11'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_length(z0), x1)) -> c7(U11'(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_U21(z0), x1)) -> c7(U11'(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_U31(z0, z1, z2, z3), x1)) -> c7(U11'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_U11(cons_take(z0, z1), x1)) -> c7(U11'(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_and(z0, z1), x1)) -> c7(U11'(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_isNat(z0), x1)) -> c7(U11'(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_isNatList(z0), x1)) -> c7(U11'(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_isNatIList(z0), x1)) -> c7(U11'(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_U11(x0, zeros)) -> c7(U11'(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_U11(x0, 0)) -> c7(U11'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_U11(x0, tt)) -> c7(U11'(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_U11(x0, nil)) -> c7(U11'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_U11(zeros, x1)) -> c7(U11'(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(0, x1)) -> c7(U11'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(tt, x1)) -> c7(U11'(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(nil, x1)) -> c7(U11'(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_s(cons_active(z0))) -> c8(S(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_s(cons_mark(z0))) -> c8(S(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_s(cons_cons(z0, z1))) -> c8(S(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_s(cons_U11(z0, z1))) -> c8(S(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_s(cons_s(z0))) -> c8(S(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_length(z0))) -> c8(S(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_s(cons_U21(z0))) -> c8(S(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_s(cons_U31(z0, z1, z2, z3))) -> c8(S(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_s(cons_take(z0, z1))) -> c8(S(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_s(cons_and(z0, z1))) -> c8(S(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_s(cons_isNat(z0))) -> c8(S(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_s(cons_isNatList(z0))) -> c8(S(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_s(cons_isNatIList(z0))) -> c8(S(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_length(cons_active(z0))) -> c9(LENGTH(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_length(cons_mark(z0))) -> c9(LENGTH(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_length(cons_cons(z0, z1))) -> c9(LENGTH(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_length(cons_U11(z0, z1))) -> c9(LENGTH(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_length(cons_s(z0))) -> c9(LENGTH(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_length(cons_length(z0))) -> c9(LENGTH(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_length(cons_U21(z0))) -> c9(LENGTH(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_length(cons_U31(z0, z1, z2, z3))) -> c9(LENGTH(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_length(cons_take(z0, z1))) -> c9(LENGTH(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_length(cons_and(z0, z1))) -> c9(LENGTH(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_length(cons_isNat(z0))) -> c9(LENGTH(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_length(cons_isNatList(z0))) -> c9(LENGTH(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_length(cons_isNatIList(z0))) -> c9(LENGTH(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U21(cons_active(z0))) -> c10(U21'(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_U21(cons_mark(z0))) -> c10(U21'(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_U21(cons_cons(z0, z1))) -> c10(U21'(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U21(cons_U11(z0, z1))) -> c10(U21'(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U21(cons_s(z0))) -> c10(U21'(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_U21(cons_length(z0))) -> c10(U21'(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_U21(cons_U21(z0))) -> c10(U21'(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_U21(cons_U31(z0, z1, z2, z3))) -> c10(U21'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U21(cons_take(z0, z1))) -> c10(U21'(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_U21(cons_and(z0, z1))) -> c10(U21'(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_U21(cons_isNat(z0))) -> c10(U21'(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_U21(cons_isNatList(z0))) -> c10(U21'(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_U21(cons_isNatIList(z0))) -> c10(U21'(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U31(x0, x1, x2, cons_active(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), active(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_active(z0))) ENCARG(cons_U31(x0, x1, x2, cons_mark(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), mark(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_mark(z0))) ENCARG(cons_U31(x0, x1, x2, cons_cons(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_U11(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_s(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), s(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_s(z0))) ENCARG(cons_U31(x0, x1, x2, cons_length(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), length(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_length(z0))) ENCARG(cons_U31(x0, x1, x2, cons_U21(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U21(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U21(z0))) ENCARG(cons_U31(x0, x1, x2, cons_U31(z0, z1, z2, z3))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U31(x0, x1, x2, cons_take(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_take(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_and(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_and(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_isNat(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNat(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNat(z0))) ENCARG(cons_U31(x0, x1, x2, cons_isNatList(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNatList(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNatList(z0))) ENCARG(cons_U31(x0, x1, x2, cons_isNatIList(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U31(x0, x1, cons_active(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), active(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_active(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_mark(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), mark(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_mark(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_cons(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), cons(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_cons(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U11(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), U11(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U11(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_s(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), s(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_s(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_length(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), length(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_length(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U21(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), U21(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U21(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U31(z0, z1, z2, z3), x3)) -> c11(U31'(encArg(x0), encArg(x1), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_take(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), take(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_take(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_and(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), and(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_and(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNat(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNat(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNat(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNatList(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNatList(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNatList(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNatIList(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNatIList(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNatIList(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, cons_active(z0), x2, x3)) -> c11(U31'(encArg(x0), active(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_active(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_mark(z0), x2, x3)) -> c11(U31'(encArg(x0), mark(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_mark(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_cons(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), cons(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_cons(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U11(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), U11(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U11(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_s(z0), x2, x3)) -> c11(U31'(encArg(x0), s(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_s(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_length(z0), x2, x3)) -> c11(U31'(encArg(x0), length(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_length(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U21(z0), x2, x3)) -> c11(U31'(encArg(x0), U21(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U21(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U31(z0, z1, z2, z3), x2, x3)) -> c11(U31'(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_take(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), take(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_take(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_and(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), and(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_and(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNat(z0), x2, x3)) -> c11(U31'(encArg(x0), isNat(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNat(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNatList(z0), x2, x3)) -> c11(U31'(encArg(x0), isNatList(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNatList(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNatIList(z0), x2, x3)) -> c11(U31'(encArg(x0), isNatIList(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNatIList(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_active(z0), x1, x2, x3)) -> c11(U31'(active(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_active(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_mark(z0), x1, x2, x3)) -> c11(U31'(mark(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_mark(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_cons(z0, z1), x1, x2, x3)) -> c11(U31'(cons(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_cons(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U11(z0, z1), x1, x2, x3)) -> c11(U31'(U11(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U11(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_s(z0), x1, x2, x3)) -> c11(U31'(s(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_s(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_length(z0), x1, x2, x3)) -> c11(U31'(length(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_length(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U21(z0), x1, x2, x3)) -> c11(U31'(U21(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U21(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U31(z0, z1, z2, z3), x1, x2, x3)) -> c11(U31'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_take(z0, z1), x1, x2, x3)) -> c11(U31'(take(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_take(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_and(z0, z1), x1, x2, x3)) -> c11(U31'(and(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_and(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNat(z0), x1, x2, x3)) -> c11(U31'(isNat(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNat(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNatList(z0), x1, x2, x3)) -> c11(U31'(isNatList(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNatList(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNatIList(z0), x1, x2, x3)) -> c11(U31'(isNatIList(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNatIList(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, x1, x2, zeros)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), zeros), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, 0)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), 0), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, tt)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), tt), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, nil)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), nil), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, zeros, x3)) -> c11(U31'(encArg(x0), encArg(x1), zeros, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, 0, x3)) -> c11(U31'(encArg(x0), encArg(x1), 0, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, tt, x3)) -> c11(U31'(encArg(x0), encArg(x1), tt, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, nil, x3)) -> c11(U31'(encArg(x0), encArg(x1), nil, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, zeros, x2, x3)) -> c11(U31'(encArg(x0), zeros, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, 0, x2, x3)) -> c11(U31'(encArg(x0), 0, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, tt, x2, x3)) -> c11(U31'(encArg(x0), tt, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, nil, x2, x3)) -> c11(U31'(encArg(x0), nil, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(zeros, x1, x2, x3)) -> c11(U31'(zeros, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(0, x1, x2, x3)) -> c11(U31'(0, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(tt, x1, x2, x3)) -> c11(U31'(tt, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(nil, x1, x2, x3)) -> c11(U31'(nil, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_take(x0, cons_active(z0))) -> c12(TAKE(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_take(x0, cons_mark(z0))) -> c12(TAKE(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_take(x0, cons_cons(z0, z1))) -> c12(TAKE(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_take(x0, cons_U11(z0, z1))) -> c12(TAKE(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_take(x0, cons_s(z0))) -> c12(TAKE(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_take(x0, cons_length(z0))) -> c12(TAKE(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_take(x0, cons_U21(z0))) -> c12(TAKE(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_take(x0, cons_U31(z0, z1, z2, z3))) -> c12(TAKE(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_take(x0, cons_take(z0, z1))) -> c12(TAKE(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_take(x0, cons_and(z0, z1))) -> c12(TAKE(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_take(x0, cons_isNat(z0))) -> c12(TAKE(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_take(x0, cons_isNatList(z0))) -> c12(TAKE(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_take(x0, cons_isNatIList(z0))) -> c12(TAKE(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_take(cons_active(z0), x1)) -> c12(TAKE(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_take(cons_mark(z0), x1)) -> c12(TAKE(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_take(cons_cons(z0, z1), x1)) -> c12(TAKE(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_U11(z0, z1), x1)) -> c12(TAKE(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_s(z0), x1)) -> c12(TAKE(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_take(cons_length(z0), x1)) -> c12(TAKE(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_take(cons_U21(z0), x1)) -> c12(TAKE(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_take(cons_U31(z0, z1, z2, z3), x1)) -> c12(TAKE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_take(cons_take(z0, z1), x1)) -> c12(TAKE(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_and(z0, z1), x1)) -> c12(TAKE(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_isNat(z0), x1)) -> c12(TAKE(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_take(cons_isNatList(z0), x1)) -> c12(TAKE(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_take(cons_isNatIList(z0), x1)) -> c12(TAKE(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_take(x0, zeros)) -> c12(TAKE(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_take(x0, 0)) -> c12(TAKE(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_take(x0, tt)) -> c12(TAKE(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_take(x0, nil)) -> c12(TAKE(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_take(zeros, x1)) -> c12(TAKE(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(0, x1)) -> c12(TAKE(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(tt, x1)) -> c12(TAKE(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(nil, x1)) -> c12(TAKE(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(x0, cons_active(z0))) -> c13(AND(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_and(x0, cons_mark(z0))) -> c13(AND(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_and(x0, cons_cons(z0, z1))) -> c13(AND(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_and(x0, cons_U11(z0, z1))) -> c13(AND(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_and(x0, cons_s(z0))) -> c13(AND(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_and(x0, cons_length(z0))) -> c13(AND(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_and(x0, cons_U21(z0))) -> c13(AND(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_and(x0, cons_U31(z0, z1, z2, z3))) -> c13(AND(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_and(x0, cons_take(z0, z1))) -> c13(AND(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_and(x0, cons_and(z0, z1))) -> c13(AND(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_and(x0, cons_isNat(z0))) -> c13(AND(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_and(x0, cons_isNatList(z0))) -> c13(AND(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_and(x0, cons_isNatIList(z0))) -> c13(AND(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_and(cons_active(z0), x1)) -> c13(AND(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_and(cons_mark(z0), x1)) -> c13(AND(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_and(cons_cons(z0, z1), x1)) -> c13(AND(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_U11(z0, z1), x1)) -> c13(AND(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_s(z0), x1)) -> c13(AND(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_and(cons_length(z0), x1)) -> c13(AND(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_and(cons_U21(z0), x1)) -> c13(AND(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_and(cons_U31(z0, z1, z2, z3), x1)) -> c13(AND(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_and(cons_take(z0, z1), x1)) -> c13(AND(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_and(z0, z1), x1)) -> c13(AND(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_isNat(z0), x1)) -> c13(AND(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_and(cons_isNatList(z0), x1)) -> c13(AND(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_and(cons_isNatIList(z0), x1)) -> c13(AND(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_and(x0, zeros)) -> c13(AND(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_and(x0, 0)) -> c13(AND(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_and(x0, tt)) -> c13(AND(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_and(x0, nil)) -> c13(AND(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_and(zeros, x1)) -> c13(AND(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(0, x1)) -> c13(AND(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(tt, x1)) -> c13(AND(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(nil, x1)) -> c13(AND(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_isNat(cons_active(z0))) -> c14(ISNAT(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_isNat(cons_mark(z0))) -> c14(ISNAT(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_isNat(cons_cons(z0, z1))) -> c14(ISNAT(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_isNat(cons_U11(z0, z1))) -> c14(ISNAT(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_isNat(cons_s(z0))) -> c14(ISNAT(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_isNat(cons_length(z0))) -> c14(ISNAT(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_isNat(cons_U21(z0))) -> c14(ISNAT(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_isNat(cons_U31(z0, z1, z2, z3))) -> c14(ISNAT(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_isNat(cons_take(z0, z1))) -> c14(ISNAT(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_isNat(cons_and(z0, z1))) -> c14(ISNAT(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_isNat(cons_isNat(z0))) -> c14(ISNAT(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_isNat(cons_isNatList(z0))) -> c14(ISNAT(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_isNat(cons_isNatIList(z0))) -> c14(ISNAT(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_isNatList(cons_active(z0))) -> c15(ISNATLIST(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_isNatList(cons_mark(z0))) -> c15(ISNATLIST(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_isNatList(cons_cons(z0, z1))) -> c15(ISNATLIST(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_isNatList(cons_U11(z0, z1))) -> c15(ISNATLIST(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_isNatList(cons_s(z0))) -> c15(ISNATLIST(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_isNatList(cons_length(z0))) -> c15(ISNATLIST(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_isNatList(cons_U21(z0))) -> c15(ISNATLIST(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_isNatList(cons_U31(z0, z1, z2, z3))) -> c15(ISNATLIST(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_isNatList(cons_take(z0, z1))) -> c15(ISNATLIST(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_isNatList(cons_and(z0, z1))) -> c15(ISNATLIST(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_isNatList(cons_isNat(z0))) -> c15(ISNATLIST(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_isNatList(cons_isNatList(z0))) -> c15(ISNATLIST(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_isNatList(cons_isNatIList(z0))) -> c15(ISNATLIST(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_isNatIList(cons_active(z0))) -> c16(ISNATILIST(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_isNatIList(cons_mark(z0))) -> c16(ISNATILIST(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_isNatIList(cons_cons(z0, z1))) -> c16(ISNATILIST(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_isNatIList(cons_U11(z0, z1))) -> c16(ISNATILIST(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_isNatIList(cons_s(z0))) -> c16(ISNATILIST(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_isNatIList(cons_length(z0))) -> c16(ISNATILIST(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_isNatIList(cons_U21(z0))) -> c16(ISNATILIST(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_isNatIList(cons_U31(z0, z1, z2, z3))) -> c16(ISNATILIST(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_isNatIList(cons_take(z0, z1))) -> c16(ISNATILIST(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_isNatIList(cons_and(z0, z1))) -> c16(ISNATILIST(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_isNatIList(cons_isNat(z0))) -> c16(ISNATILIST(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_isNatIList(cons_isNatList(z0))) -> c16(ISNATILIST(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_isNatIList(cons_isNatIList(z0))) -> c16(ISNATILIST(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) MARK(cons(zeros, x1)) -> c53(ACTIVE(cons(active(zeros), x1)), CONS(mark(zeros), x1), MARK(zeros)) MARK(cons(cons(z0, z1), x1)) -> c53(ACTIVE(cons(active(cons(mark(z0), z1)), x1)), CONS(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(cons(0, x1)) -> c53(ACTIVE(cons(active(0), x1)), CONS(mark(0), x1), MARK(0)) MARK(cons(U11(z0, z1), x1)) -> c53(ACTIVE(cons(active(U11(mark(z0), z1)), x1)), CONS(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(cons(tt, x1)) -> c53(ACTIVE(cons(active(tt), x1)), CONS(mark(tt), x1), MARK(tt)) MARK(cons(s(z0), x1)) -> c53(ACTIVE(cons(active(s(mark(z0))), x1)), CONS(mark(s(z0)), x1), MARK(s(z0))) MARK(cons(length(z0), x1)) -> c53(ACTIVE(cons(active(length(mark(z0))), x1)), CONS(mark(length(z0)), x1), MARK(length(z0))) MARK(cons(U21(z0), x1)) -> c53(ACTIVE(cons(active(U21(mark(z0))), x1)), CONS(mark(U21(z0)), x1), MARK(U21(z0))) MARK(cons(nil, x1)) -> c53(ACTIVE(cons(active(nil), x1)), CONS(mark(nil), x1), MARK(nil)) MARK(cons(U31(z0, z1, z2, z3), x1)) -> c53(ACTIVE(cons(active(U31(mark(z0), z1, z2, z3)), x1)), CONS(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(cons(take(z0, z1), x1)) -> c53(ACTIVE(cons(active(take(mark(z0), mark(z1))), x1)), CONS(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(cons(and(z0, z1), x1)) -> c53(ACTIVE(cons(active(and(mark(z0), z1)), x1)), CONS(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(cons(isNat(z0), x1)) -> c53(ACTIVE(cons(active(isNat(z0)), x1)), CONS(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(cons(isNatList(z0), x1)) -> c53(ACTIVE(cons(active(isNatList(z0)), x1)), CONS(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(cons(isNatIList(z0), x1)) -> c53(ACTIVE(cons(active(isNatIList(z0)), x1)), CONS(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(cons(x0, x1)) -> c53(CONS(mark(x0), x1)) MARK(cons(z0, z1)) -> c53(CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(z0, z1)), U11'(mark(z0), z1), MARK(z0)) MARK(U11(zeros, x1)) -> c55(ACTIVE(U11(active(zeros), x1)), U11'(mark(zeros), x1), MARK(zeros)) MARK(U11(cons(z0, z1), x1)) -> c55(ACTIVE(U11(active(cons(mark(z0), z1)), x1)), U11'(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(U11(0, x1)) -> c55(ACTIVE(U11(active(0), x1)), U11'(mark(0), x1), MARK(0)) MARK(U11(U11(z0, z1), x1)) -> c55(ACTIVE(U11(active(U11(mark(z0), z1)), x1)), U11'(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(U11(tt, x1)) -> c55(ACTIVE(U11(active(tt), x1)), U11'(mark(tt), x1), MARK(tt)) MARK(U11(s(z0), x1)) -> c55(ACTIVE(U11(active(s(mark(z0))), x1)), U11'(mark(s(z0)), x1), MARK(s(z0))) MARK(U11(length(z0), x1)) -> c55(ACTIVE(U11(active(length(mark(z0))), x1)), U11'(mark(length(z0)), x1), MARK(length(z0))) MARK(U11(U21(z0), x1)) -> c55(ACTIVE(U11(active(U21(mark(z0))), x1)), U11'(mark(U21(z0)), x1), MARK(U21(z0))) MARK(U11(nil, x1)) -> c55(ACTIVE(U11(active(nil), x1)), U11'(mark(nil), x1), MARK(nil)) MARK(U11(U31(z0, z1, z2, z3), x1)) -> c55(ACTIVE(U11(active(U31(mark(z0), z1, z2, z3)), x1)), U11'(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(U11(take(z0, z1), x1)) -> c55(ACTIVE(U11(active(take(mark(z0), mark(z1))), x1)), U11'(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(U11(and(z0, z1), x1)) -> c55(ACTIVE(U11(active(and(mark(z0), z1)), x1)), U11'(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(U11(isNat(z0), x1)) -> c55(ACTIVE(U11(active(isNat(z0)), x1)), U11'(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(U11(isNatList(z0), x1)) -> c55(ACTIVE(U11(active(isNatList(z0)), x1)), U11'(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(U11(isNatIList(z0), x1)) -> c55(ACTIVE(U11(active(isNatIList(z0)), x1)), U11'(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(U11(x0, x1)) -> c55(U11'(mark(x0), x1)) MARK(s(zeros)) -> c57(ACTIVE(s(active(zeros))), S(mark(zeros)), MARK(zeros)) MARK(s(cons(z0, z1))) -> c57(ACTIVE(s(active(cons(mark(z0), z1)))), S(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(s(0)) -> c57(ACTIVE(s(active(0))), S(mark(0)), MARK(0)) MARK(s(U11(z0, z1))) -> c57(ACTIVE(s(active(U11(mark(z0), z1)))), S(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(s(tt)) -> c57(ACTIVE(s(active(tt))), S(mark(tt)), MARK(tt)) MARK(s(s(z0))) -> c57(ACTIVE(s(active(s(mark(z0))))), S(mark(s(z0))), MARK(s(z0))) MARK(s(length(z0))) -> c57(ACTIVE(s(active(length(mark(z0))))), S(mark(length(z0))), MARK(length(z0))) MARK(s(U21(z0))) -> c57(ACTIVE(s(active(U21(mark(z0))))), S(mark(U21(z0))), MARK(U21(z0))) MARK(s(nil)) -> c57(ACTIVE(s(active(nil))), S(mark(nil)), MARK(nil)) MARK(s(U31(z0, z1, z2, z3))) -> c57(ACTIVE(s(active(U31(mark(z0), z1, z2, z3)))), S(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(s(take(z0, z1))) -> c57(ACTIVE(s(active(take(mark(z0), mark(z1))))), S(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(s(and(z0, z1))) -> c57(ACTIVE(s(active(and(mark(z0), z1)))), S(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(s(isNat(z0))) -> c57(ACTIVE(s(active(isNat(z0)))), S(mark(isNat(z0))), MARK(isNat(z0))) MARK(s(isNatList(z0))) -> c57(ACTIVE(s(active(isNatList(z0)))), S(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(s(isNatIList(z0))) -> c57(ACTIVE(s(active(isNatIList(z0)))), S(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(s(z0)) -> c57(S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(z0)), LENGTH(mark(z0)), MARK(z0)) MARK(length(zeros)) -> c58(ACTIVE(length(active(zeros))), LENGTH(mark(zeros)), MARK(zeros)) MARK(length(cons(z0, z1))) -> c58(ACTIVE(length(active(cons(mark(z0), z1)))), LENGTH(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(length(0)) -> c58(ACTIVE(length(active(0))), LENGTH(mark(0)), MARK(0)) MARK(length(U11(z0, z1))) -> c58(ACTIVE(length(active(U11(mark(z0), z1)))), LENGTH(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(length(tt)) -> c58(ACTIVE(length(active(tt))), LENGTH(mark(tt)), MARK(tt)) MARK(length(s(z0))) -> c58(ACTIVE(length(active(s(mark(z0))))), LENGTH(mark(s(z0))), MARK(s(z0))) MARK(length(length(z0))) -> c58(ACTIVE(length(active(length(mark(z0))))), LENGTH(mark(length(z0))), MARK(length(z0))) MARK(length(U21(z0))) -> c58(ACTIVE(length(active(U21(mark(z0))))), LENGTH(mark(U21(z0))), MARK(U21(z0))) MARK(length(nil)) -> c58(ACTIVE(length(active(nil))), LENGTH(mark(nil)), MARK(nil)) MARK(length(U31(z0, z1, z2, z3))) -> c58(ACTIVE(length(active(U31(mark(z0), z1, z2, z3)))), LENGTH(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(length(take(z0, z1))) -> c58(ACTIVE(length(active(take(mark(z0), mark(z1))))), LENGTH(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(length(and(z0, z1))) -> c58(ACTIVE(length(active(and(mark(z0), z1)))), LENGTH(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(length(isNat(z0))) -> c58(ACTIVE(length(active(isNat(z0)))), LENGTH(mark(isNat(z0))), MARK(isNat(z0))) MARK(length(isNatList(z0))) -> c58(ACTIVE(length(active(isNatList(z0)))), LENGTH(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(length(isNatIList(z0))) -> c58(ACTIVE(length(active(isNatIList(z0)))), LENGTH(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(U21(z0)) -> c59(ACTIVE(U21(z0)), U21'(mark(z0)), MARK(z0)) MARK(U21(zeros)) -> c59(ACTIVE(U21(active(zeros))), U21'(mark(zeros)), MARK(zeros)) MARK(U21(cons(z0, z1))) -> c59(ACTIVE(U21(active(cons(mark(z0), z1)))), U21'(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(U21(0)) -> c59(ACTIVE(U21(active(0))), U21'(mark(0)), MARK(0)) MARK(U21(U11(z0, z1))) -> c59(ACTIVE(U21(active(U11(mark(z0), z1)))), U21'(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(U21(tt)) -> c59(ACTIVE(U21(active(tt))), U21'(mark(tt)), MARK(tt)) MARK(U21(s(z0))) -> c59(ACTIVE(U21(active(s(mark(z0))))), U21'(mark(s(z0))), MARK(s(z0))) MARK(U21(length(z0))) -> c59(ACTIVE(U21(active(length(mark(z0))))), U21'(mark(length(z0))), MARK(length(z0))) MARK(U21(U21(z0))) -> c59(ACTIVE(U21(active(U21(mark(z0))))), U21'(mark(U21(z0))), MARK(U21(z0))) MARK(U21(nil)) -> c59(ACTIVE(U21(active(nil))), U21'(mark(nil)), MARK(nil)) MARK(U21(U31(z0, z1, z2, z3))) -> c59(ACTIVE(U21(active(U31(mark(z0), z1, z2, z3)))), U21'(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(U21(take(z0, z1))) -> c59(ACTIVE(U21(active(take(mark(z0), mark(z1))))), U21'(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(U21(and(z0, z1))) -> c59(ACTIVE(U21(active(and(mark(z0), z1)))), U21'(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(U21(isNat(z0))) -> c59(ACTIVE(U21(active(isNat(z0)))), U21'(mark(isNat(z0))), MARK(isNat(z0))) MARK(U21(isNatList(z0))) -> c59(ACTIVE(U21(active(isNatList(z0)))), U21'(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(U21(isNatIList(z0))) -> c59(ACTIVE(U21(active(isNatIList(z0)))), U21'(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(z0, z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U31(zeros, x1, x2, x3)) -> c61(ACTIVE(U31(active(zeros), x1, x2, x3)), U31'(mark(zeros), x1, x2, x3), MARK(zeros)) MARK(U31(cons(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(cons(mark(z0), z1)), x1, x2, x3)), U31'(mark(cons(z0, z1)), x1, x2, x3), MARK(cons(z0, z1))) MARK(U31(0, x1, x2, x3)) -> c61(ACTIVE(U31(active(0), x1, x2, x3)), U31'(mark(0), x1, x2, x3), MARK(0)) MARK(U31(U11(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(U11(mark(z0), z1)), x1, x2, x3)), U31'(mark(U11(z0, z1)), x1, x2, x3), MARK(U11(z0, z1))) MARK(U31(tt, x1, x2, x3)) -> c61(ACTIVE(U31(active(tt), x1, x2, x3)), U31'(mark(tt), x1, x2, x3), MARK(tt)) MARK(U31(s(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(s(mark(z0))), x1, x2, x3)), U31'(mark(s(z0)), x1, x2, x3), MARK(s(z0))) MARK(U31(length(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(length(mark(z0))), x1, x2, x3)), U31'(mark(length(z0)), x1, x2, x3), MARK(length(z0))) MARK(U31(U21(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(U21(mark(z0))), x1, x2, x3)), U31'(mark(U21(z0)), x1, x2, x3), MARK(U21(z0))) MARK(U31(nil, x1, x2, x3)) -> c61(ACTIVE(U31(active(nil), x1, x2, x3)), U31'(mark(nil), x1, x2, x3), MARK(nil)) MARK(U31(U31(z0, z1, z2, z3), x1, x2, x3)) -> c61(ACTIVE(U31(active(U31(mark(z0), z1, z2, z3)), x1, x2, x3)), U31'(mark(U31(z0, z1, z2, z3)), x1, x2, x3), MARK(U31(z0, z1, z2, z3))) MARK(U31(take(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(take(mark(z0), mark(z1))), x1, x2, x3)), U31'(mark(take(z0, z1)), x1, x2, x3), MARK(take(z0, z1))) MARK(U31(and(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(and(mark(z0), z1)), x1, x2, x3)), U31'(mark(and(z0, z1)), x1, x2, x3), MARK(and(z0, z1))) MARK(U31(isNat(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNat(z0)), x1, x2, x3)), U31'(mark(isNat(z0)), x1, x2, x3), MARK(isNat(z0))) MARK(U31(isNatList(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNatList(z0)), x1, x2, x3)), U31'(mark(isNatList(z0)), x1, x2, x3), MARK(isNatList(z0))) MARK(U31(isNatIList(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNatIList(z0)), x1, x2, x3)), U31'(mark(isNatIList(z0)), x1, x2, x3), MARK(isNatIList(z0))) MARK(U31(x0, x1, x2, x3)) -> c61(U31'(mark(x0), x1, x2, x3)) MARK(take(z0, x1)) -> c62(ACTIVE(take(z0, mark(x1))), TAKE(mark(z0), mark(x1)), MARK(z0), MARK(x1)) MARK(take(x0, z1)) -> c62(ACTIVE(take(mark(x0), z1)), TAKE(mark(x0), mark(z1)), MARK(x0), MARK(z1)) MARK(take(x0, zeros)) -> c62(ACTIVE(take(mark(x0), active(zeros))), TAKE(mark(x0), mark(zeros)), MARK(x0), MARK(zeros)) MARK(take(x0, cons(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(cons(mark(z0), z1)))), TAKE(mark(x0), mark(cons(z0, z1))), MARK(x0), MARK(cons(z0, z1))) MARK(take(x0, 0)) -> c62(ACTIVE(take(mark(x0), active(0))), TAKE(mark(x0), mark(0)), MARK(x0), MARK(0)) MARK(take(x0, U11(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(U11(mark(z0), z1)))), TAKE(mark(x0), mark(U11(z0, z1))), MARK(x0), MARK(U11(z0, z1))) MARK(take(x0, tt)) -> c62(ACTIVE(take(mark(x0), active(tt))), TAKE(mark(x0), mark(tt)), MARK(x0), MARK(tt)) MARK(take(x0, s(z0))) -> c62(ACTIVE(take(mark(x0), active(s(mark(z0))))), TAKE(mark(x0), mark(s(z0))), MARK(x0), MARK(s(z0))) MARK(take(x0, length(z0))) -> c62(ACTIVE(take(mark(x0), active(length(mark(z0))))), TAKE(mark(x0), mark(length(z0))), MARK(x0), MARK(length(z0))) MARK(take(x0, U21(z0))) -> c62(ACTIVE(take(mark(x0), active(U21(mark(z0))))), TAKE(mark(x0), mark(U21(z0))), MARK(x0), MARK(U21(z0))) MARK(take(x0, nil)) -> c62(ACTIVE(take(mark(x0), active(nil))), TAKE(mark(x0), mark(nil)), MARK(x0), MARK(nil)) MARK(take(x0, U31(z0, z1, z2, z3))) -> c62(ACTIVE(take(mark(x0), active(U31(mark(z0), z1, z2, z3)))), TAKE(mark(x0), mark(U31(z0, z1, z2, z3))), MARK(x0), MARK(U31(z0, z1, z2, z3))) MARK(take(x0, take(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(take(mark(z0), mark(z1))))), TAKE(mark(x0), mark(take(z0, z1))), MARK(x0), MARK(take(z0, z1))) MARK(take(x0, and(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(and(mark(z0), z1)))), TAKE(mark(x0), mark(and(z0, z1))), MARK(x0), MARK(and(z0, z1))) MARK(take(x0, isNat(z0))) -> c62(ACTIVE(take(mark(x0), active(isNat(z0)))), TAKE(mark(x0), mark(isNat(z0))), MARK(x0), MARK(isNat(z0))) MARK(take(x0, isNatList(z0))) -> c62(ACTIVE(take(mark(x0), active(isNatList(z0)))), TAKE(mark(x0), mark(isNatList(z0))), MARK(x0), MARK(isNatList(z0))) MARK(take(x0, isNatIList(z0))) -> c62(ACTIVE(take(mark(x0), active(isNatIList(z0)))), TAKE(mark(x0), mark(isNatIList(z0))), MARK(x0), MARK(isNatIList(z0))) MARK(take(zeros, x1)) -> c62(ACTIVE(take(active(zeros), mark(x1))), TAKE(mark(zeros), mark(x1)), MARK(zeros), MARK(x1)) MARK(take(cons(z0, z1), x1)) -> c62(ACTIVE(take(active(cons(mark(z0), z1)), mark(x1))), TAKE(mark(cons(z0, z1)), mark(x1)), MARK(cons(z0, z1)), MARK(x1)) MARK(take(0, x1)) -> c62(ACTIVE(take(active(0), mark(x1))), TAKE(mark(0), mark(x1)), MARK(0), MARK(x1)) MARK(take(U11(z0, z1), x1)) -> c62(ACTIVE(take(active(U11(mark(z0), z1)), mark(x1))), TAKE(mark(U11(z0, z1)), mark(x1)), MARK(U11(z0, z1)), MARK(x1)) MARK(take(tt, x1)) -> c62(ACTIVE(take(active(tt), mark(x1))), TAKE(mark(tt), mark(x1)), MARK(tt), MARK(x1)) MARK(take(s(z0), x1)) -> c62(ACTIVE(take(active(s(mark(z0))), mark(x1))), TAKE(mark(s(z0)), mark(x1)), MARK(s(z0)), MARK(x1)) MARK(take(length(z0), x1)) -> c62(ACTIVE(take(active(length(mark(z0))), mark(x1))), TAKE(mark(length(z0)), mark(x1)), MARK(length(z0)), MARK(x1)) MARK(take(U21(z0), x1)) -> c62(ACTIVE(take(active(U21(mark(z0))), mark(x1))), TAKE(mark(U21(z0)), mark(x1)), MARK(U21(z0)), MARK(x1)) MARK(take(nil, x1)) -> c62(ACTIVE(take(active(nil), mark(x1))), TAKE(mark(nil), mark(x1)), MARK(nil), MARK(x1)) MARK(take(U31(z0, z1, z2, z3), x1)) -> c62(ACTIVE(take(active(U31(mark(z0), z1, z2, z3)), mark(x1))), TAKE(mark(U31(z0, z1, z2, z3)), mark(x1)), MARK(U31(z0, z1, z2, z3)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c62(ACTIVE(take(active(take(mark(z0), mark(z1))), mark(x1))), TAKE(mark(take(z0, z1)), mark(x1)), MARK(take(z0, z1)), MARK(x1)) MARK(take(and(z0, z1), x1)) -> c62(ACTIVE(take(active(and(mark(z0), z1)), mark(x1))), TAKE(mark(and(z0, z1)), mark(x1)), MARK(and(z0, z1)), MARK(x1)) MARK(take(isNat(z0), x1)) -> c62(ACTIVE(take(active(isNat(z0)), mark(x1))), TAKE(mark(isNat(z0)), mark(x1)), MARK(isNat(z0)), MARK(x1)) MARK(take(isNatList(z0), x1)) -> c62(ACTIVE(take(active(isNatList(z0)), mark(x1))), TAKE(mark(isNatList(z0)), mark(x1)), MARK(isNatList(z0)), MARK(x1)) MARK(take(isNatIList(z0), x1)) -> c62(ACTIVE(take(active(isNatIList(z0)), mark(x1))), TAKE(mark(isNatIList(z0)), mark(x1)), MARK(isNatIList(z0)), MARK(x1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(z0, z1)), AND(mark(z0), z1), MARK(z0)) MARK(and(zeros, x1)) -> c63(ACTIVE(and(active(zeros), x1)), AND(mark(zeros), x1), MARK(zeros)) MARK(and(cons(z0, z1), x1)) -> c63(ACTIVE(and(active(cons(mark(z0), z1)), x1)), AND(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(and(0, x1)) -> c63(ACTIVE(and(active(0), x1)), AND(mark(0), x1), MARK(0)) MARK(and(U11(z0, z1), x1)) -> c63(ACTIVE(and(active(U11(mark(z0), z1)), x1)), AND(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(and(tt, x1)) -> c63(ACTIVE(and(active(tt), x1)), AND(mark(tt), x1), MARK(tt)) MARK(and(s(z0), x1)) -> c63(ACTIVE(and(active(s(mark(z0))), x1)), AND(mark(s(z0)), x1), MARK(s(z0))) MARK(and(length(z0), x1)) -> c63(ACTIVE(and(active(length(mark(z0))), x1)), AND(mark(length(z0)), x1), MARK(length(z0))) MARK(and(U21(z0), x1)) -> c63(ACTIVE(and(active(U21(mark(z0))), x1)), AND(mark(U21(z0)), x1), MARK(U21(z0))) MARK(and(nil, x1)) -> c63(ACTIVE(and(active(nil), x1)), AND(mark(nil), x1), MARK(nil)) MARK(and(U31(z0, z1, z2, z3), x1)) -> c63(ACTIVE(and(active(U31(mark(z0), z1, z2, z3)), x1)), AND(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(and(take(z0, z1), x1)) -> c63(ACTIVE(and(active(take(mark(z0), mark(z1))), x1)), AND(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(and(and(z0, z1), x1)) -> c63(ACTIVE(and(active(and(mark(z0), z1)), x1)), AND(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(and(isNat(z0), x1)) -> c63(ACTIVE(and(active(isNat(z0)), x1)), AND(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(and(isNatList(z0), x1)) -> c63(ACTIVE(and(active(isNatList(z0)), x1)), AND(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(and(isNatIList(z0), x1)) -> c63(ACTIVE(and(active(isNatIList(z0)), x1)), AND(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(and(x0, x1)) -> c63(AND(mark(x0), x1)) ENCODE_ACTIVE(cons_active(z0)) -> c(ACTIVE(active(encArg(z0)))) ENCODE_ACTIVE(cons_mark(z0)) -> c(ACTIVE(mark(encArg(z0)))) ENCODE_ACTIVE(cons_cons(z0, z1)) -> c(ACTIVE(cons(encArg(z0), encArg(z1)))) ENCODE_ACTIVE(cons_U11(z0, z1)) -> c(ACTIVE(U11(encArg(z0), encArg(z1)))) ENCODE_ACTIVE(cons_s(z0)) -> c(ACTIVE(s(encArg(z0)))) ENCODE_ACTIVE(cons_length(z0)) -> c(ACTIVE(length(encArg(z0)))) ENCODE_ACTIVE(cons_U21(z0)) -> c(ACTIVE(U21(encArg(z0)))) ENCODE_ACTIVE(cons_U31(z0, z1, z2, z3)) -> c(ACTIVE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)))) ENCODE_ACTIVE(cons_take(z0, z1)) -> c(ACTIVE(take(encArg(z0), encArg(z1)))) ENCODE_ACTIVE(cons_and(z0, z1)) -> c(ACTIVE(and(encArg(z0), encArg(z1)))) ENCODE_ACTIVE(cons_isNat(z0)) -> c(ACTIVE(isNat(encArg(z0)))) ENCODE_ACTIVE(cons_isNatList(z0)) -> c(ACTIVE(isNatList(encArg(z0)))) ENCODE_ACTIVE(cons_isNatIList(z0)) -> c(ACTIVE(isNatIList(encArg(z0)))) ENCODE_MARK(cons_active(z0)) -> c(MARK(active(encArg(z0)))) ENCODE_MARK(cons_mark(z0)) -> c(MARK(mark(encArg(z0)))) ENCODE_MARK(cons_cons(z0, z1)) -> c(MARK(cons(encArg(z0), encArg(z1)))) ENCODE_MARK(cons_U11(z0, z1)) -> c(MARK(U11(encArg(z0), encArg(z1)))) ENCODE_MARK(cons_s(z0)) -> c(MARK(s(encArg(z0)))) ENCODE_MARK(cons_length(z0)) -> c(MARK(length(encArg(z0)))) ENCODE_MARK(cons_U21(z0)) -> c(MARK(U21(encArg(z0)))) ENCODE_MARK(cons_U31(z0, z1, z2, z3)) -> c(MARK(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)))) ENCODE_MARK(cons_take(z0, z1)) -> c(MARK(take(encArg(z0), encArg(z1)))) ENCODE_MARK(cons_and(z0, z1)) -> c(MARK(and(encArg(z0), encArg(z1)))) ENCODE_MARK(cons_isNat(z0)) -> c(MARK(isNat(encArg(z0)))) ENCODE_MARK(cons_isNatList(z0)) -> c(MARK(isNatList(encArg(z0)))) ENCODE_MARK(cons_isNatIList(z0)) -> c(MARK(isNatIList(encArg(z0)))) ENCODE_CONS(x0, zeros) -> c(CONS(encArg(x0), zeros)) ENCODE_CONS(x0, 0) -> c(CONS(encArg(x0), 0)) ENCODE_CONS(x0, tt) -> c(CONS(encArg(x0), tt)) ENCODE_CONS(x0, nil) -> c(CONS(encArg(x0), nil)) ENCODE_CONS(x0, cons_active(z0)) -> c(CONS(encArg(x0), active(encArg(z0)))) ENCODE_CONS(x0, cons_mark(z0)) -> c(CONS(encArg(x0), mark(encArg(z0)))) ENCODE_CONS(x0, cons_cons(z0, z1)) -> c(CONS(encArg(x0), cons(encArg(z0), encArg(z1)))) ENCODE_CONS(x0, cons_U11(z0, z1)) -> c(CONS(encArg(x0), U11(encArg(z0), encArg(z1)))) ENCODE_CONS(x0, cons_s(z0)) -> c(CONS(encArg(x0), s(encArg(z0)))) ENCODE_CONS(x0, cons_length(z0)) -> c(CONS(encArg(x0), length(encArg(z0)))) ENCODE_CONS(x0, cons_U21(z0)) -> c(CONS(encArg(x0), U21(encArg(z0)))) ENCODE_CONS(x0, cons_U31(z0, z1, z2, z3)) -> c(CONS(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)))) ENCODE_CONS(x0, cons_take(z0, z1)) -> c(CONS(encArg(x0), take(encArg(z0), encArg(z1)))) ENCODE_CONS(x0, cons_and(z0, z1)) -> c(CONS(encArg(x0), and(encArg(z0), encArg(z1)))) ENCODE_CONS(x0, cons_isNat(z0)) -> c(CONS(encArg(x0), isNat(encArg(z0)))) ENCODE_CONS(x0, cons_isNatList(z0)) -> c(CONS(encArg(x0), isNatList(encArg(z0)))) ENCODE_CONS(x0, cons_isNatIList(z0)) -> c(CONS(encArg(x0), isNatIList(encArg(z0)))) ENCODE_CONS(zeros, x1) -> c(CONS(zeros, encArg(x1))) ENCODE_CONS(0, x1) -> c(CONS(0, encArg(x1))) ENCODE_CONS(tt, x1) -> c(CONS(tt, encArg(x1))) ENCODE_CONS(nil, x1) -> c(CONS(nil, encArg(x1))) ENCODE_CONS(cons_active(z0), x1) -> c(CONS(active(encArg(z0)), encArg(x1))) ENCODE_CONS(cons_mark(z0), x1) -> c(CONS(mark(encArg(z0)), encArg(x1))) ENCODE_CONS(cons_cons(z0, z1), x1) -> c(CONS(cons(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_CONS(cons_U11(z0, z1), x1) -> c(CONS(U11(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_CONS(cons_s(z0), x1) -> c(CONS(s(encArg(z0)), encArg(x1))) ENCODE_CONS(cons_length(z0), x1) -> c(CONS(length(encArg(z0)), encArg(x1))) ENCODE_CONS(cons_U21(z0), x1) -> c(CONS(U21(encArg(z0)), encArg(x1))) ENCODE_CONS(cons_U31(z0, z1, z2, z3), x1) -> c(CONS(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1))) ENCODE_CONS(cons_take(z0, z1), x1) -> c(CONS(take(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_CONS(cons_and(z0, z1), x1) -> c(CONS(and(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_CONS(cons_isNat(z0), x1) -> c(CONS(isNat(encArg(z0)), encArg(x1))) ENCODE_CONS(cons_isNatList(z0), x1) -> c(CONS(isNatList(encArg(z0)), encArg(x1))) ENCODE_CONS(cons_isNatIList(z0), x1) -> c(CONS(isNatIList(encArg(z0)), encArg(x1))) ENCODE_U11(x0, zeros) -> c(U11'(encArg(x0), zeros)) ENCODE_U11(x0, 0) -> c(U11'(encArg(x0), 0)) ENCODE_U11(x0, tt) -> c(U11'(encArg(x0), tt)) ENCODE_U11(x0, nil) -> c(U11'(encArg(x0), nil)) ENCODE_U11(x0, cons_active(z0)) -> c(U11'(encArg(x0), active(encArg(z0)))) ENCODE_U11(x0, cons_mark(z0)) -> c(U11'(encArg(x0), mark(encArg(z0)))) ENCODE_U11(x0, cons_cons(z0, z1)) -> c(U11'(encArg(x0), cons(encArg(z0), encArg(z1)))) ENCODE_U11(x0, cons_U11(z0, z1)) -> c(U11'(encArg(x0), U11(encArg(z0), encArg(z1)))) ENCODE_U11(x0, cons_s(z0)) -> c(U11'(encArg(x0), s(encArg(z0)))) ENCODE_U11(x0, cons_length(z0)) -> c(U11'(encArg(x0), length(encArg(z0)))) ENCODE_U11(x0, cons_U21(z0)) -> c(U11'(encArg(x0), U21(encArg(z0)))) ENCODE_U11(x0, cons_U31(z0, z1, z2, z3)) -> c(U11'(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)))) ENCODE_U11(x0, cons_take(z0, z1)) -> c(U11'(encArg(x0), take(encArg(z0), encArg(z1)))) ENCODE_U11(x0, cons_and(z0, z1)) -> c(U11'(encArg(x0), and(encArg(z0), encArg(z1)))) ENCODE_U11(x0, cons_isNat(z0)) -> c(U11'(encArg(x0), isNat(encArg(z0)))) ENCODE_U11(x0, cons_isNatList(z0)) -> c(U11'(encArg(x0), isNatList(encArg(z0)))) ENCODE_U11(x0, cons_isNatIList(z0)) -> c(U11'(encArg(x0), isNatIList(encArg(z0)))) ENCODE_U11(zeros, x1) -> c(U11'(zeros, encArg(x1))) ENCODE_U11(0, x1) -> c(U11'(0, encArg(x1))) ENCODE_U11(tt, x1) -> c(U11'(tt, encArg(x1))) ENCODE_U11(nil, x1) -> c(U11'(nil, encArg(x1))) ENCODE_U11(cons_active(z0), x1) -> c(U11'(active(encArg(z0)), encArg(x1))) ENCODE_U11(cons_mark(z0), x1) -> c(U11'(mark(encArg(z0)), encArg(x1))) ENCODE_U11(cons_cons(z0, z1), x1) -> c(U11'(cons(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_U11(cons_U11(z0, z1), x1) -> c(U11'(U11(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_U11(cons_s(z0), x1) -> c(U11'(s(encArg(z0)), encArg(x1))) ENCODE_U11(cons_length(z0), x1) -> c(U11'(length(encArg(z0)), encArg(x1))) ENCODE_U11(cons_U21(z0), x1) -> c(U11'(U21(encArg(z0)), encArg(x1))) ENCODE_U11(cons_U31(z0, z1, z2, z3), x1) -> c(U11'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1))) ENCODE_U11(cons_take(z0, z1), x1) -> c(U11'(take(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_U11(cons_and(z0, z1), x1) -> c(U11'(and(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_U11(cons_isNat(z0), x1) -> c(U11'(isNat(encArg(z0)), encArg(x1))) ENCODE_U11(cons_isNatList(z0), x1) -> c(U11'(isNatList(encArg(z0)), encArg(x1))) ENCODE_U11(cons_isNatIList(z0), x1) -> c(U11'(isNatIList(encArg(z0)), encArg(x1))) ENCODE_S(cons_active(z0)) -> c(S(active(encArg(z0)))) ENCODE_S(cons_mark(z0)) -> c(S(mark(encArg(z0)))) ENCODE_S(cons_cons(z0, z1)) -> c(S(cons(encArg(z0), encArg(z1)))) ENCODE_S(cons_U11(z0, z1)) -> c(S(U11(encArg(z0), encArg(z1)))) ENCODE_S(cons_s(z0)) -> c(S(s(encArg(z0)))) ENCODE_S(cons_length(z0)) -> c(S(length(encArg(z0)))) ENCODE_S(cons_U21(z0)) -> c(S(U21(encArg(z0)))) ENCODE_S(cons_U31(z0, z1, z2, z3)) -> c(S(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)))) ENCODE_S(cons_take(z0, z1)) -> c(S(take(encArg(z0), encArg(z1)))) ENCODE_S(cons_and(z0, z1)) -> c(S(and(encArg(z0), encArg(z1)))) ENCODE_S(cons_isNat(z0)) -> c(S(isNat(encArg(z0)))) ENCODE_S(cons_isNatList(z0)) -> c(S(isNatList(encArg(z0)))) ENCODE_S(cons_isNatIList(z0)) -> c(S(isNatIList(encArg(z0)))) ENCODE_LENGTH(cons_active(z0)) -> c(LENGTH(active(encArg(z0)))) ENCODE_LENGTH(cons_mark(z0)) -> c(LENGTH(mark(encArg(z0)))) ENCODE_LENGTH(cons_cons(z0, z1)) -> c(LENGTH(cons(encArg(z0), encArg(z1)))) ENCODE_LENGTH(cons_U11(z0, z1)) -> c(LENGTH(U11(encArg(z0), encArg(z1)))) ENCODE_LENGTH(cons_s(z0)) -> c(LENGTH(s(encArg(z0)))) ENCODE_LENGTH(cons_length(z0)) -> c(LENGTH(length(encArg(z0)))) ENCODE_LENGTH(cons_U21(z0)) -> c(LENGTH(U21(encArg(z0)))) ENCODE_LENGTH(cons_U31(z0, z1, z2, z3)) -> c(LENGTH(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)))) ENCODE_LENGTH(cons_take(z0, z1)) -> c(LENGTH(take(encArg(z0), encArg(z1)))) ENCODE_LENGTH(cons_and(z0, z1)) -> c(LENGTH(and(encArg(z0), encArg(z1)))) ENCODE_LENGTH(cons_isNat(z0)) -> c(LENGTH(isNat(encArg(z0)))) ENCODE_LENGTH(cons_isNatList(z0)) -> c(LENGTH(isNatList(encArg(z0)))) ENCODE_LENGTH(cons_isNatIList(z0)) -> c(LENGTH(isNatIList(encArg(z0)))) S tuples: ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 MARK(cons(zeros, x1)) -> c53(ACTIVE(cons(active(zeros), x1)), CONS(mark(zeros), x1), MARK(zeros)) MARK(cons(cons(z0, z1), x1)) -> c53(ACTIVE(cons(active(cons(mark(z0), z1)), x1)), CONS(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(cons(0, x1)) -> c53(ACTIVE(cons(active(0), x1)), CONS(mark(0), x1), MARK(0)) MARK(cons(U11(z0, z1), x1)) -> c53(ACTIVE(cons(active(U11(mark(z0), z1)), x1)), CONS(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(cons(tt, x1)) -> c53(ACTIVE(cons(active(tt), x1)), CONS(mark(tt), x1), MARK(tt)) MARK(cons(s(z0), x1)) -> c53(ACTIVE(cons(active(s(mark(z0))), x1)), CONS(mark(s(z0)), x1), MARK(s(z0))) MARK(cons(length(z0), x1)) -> c53(ACTIVE(cons(active(length(mark(z0))), x1)), CONS(mark(length(z0)), x1), MARK(length(z0))) MARK(cons(U21(z0), x1)) -> c53(ACTIVE(cons(active(U21(mark(z0))), x1)), CONS(mark(U21(z0)), x1), MARK(U21(z0))) MARK(cons(nil, x1)) -> c53(ACTIVE(cons(active(nil), x1)), CONS(mark(nil), x1), MARK(nil)) MARK(cons(U31(z0, z1, z2, z3), x1)) -> c53(ACTIVE(cons(active(U31(mark(z0), z1, z2, z3)), x1)), CONS(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(cons(take(z0, z1), x1)) -> c53(ACTIVE(cons(active(take(mark(z0), mark(z1))), x1)), CONS(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(cons(and(z0, z1), x1)) -> c53(ACTIVE(cons(active(and(mark(z0), z1)), x1)), CONS(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(cons(isNat(z0), x1)) -> c53(ACTIVE(cons(active(isNat(z0)), x1)), CONS(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(cons(isNatList(z0), x1)) -> c53(ACTIVE(cons(active(isNatList(z0)), x1)), CONS(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(cons(isNatIList(z0), x1)) -> c53(ACTIVE(cons(active(isNatIList(z0)), x1)), CONS(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(cons(x0, x1)) -> c53(CONS(mark(x0), x1)) MARK(cons(z0, z1)) -> c53(CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(z0, z1)), U11'(mark(z0), z1), MARK(z0)) MARK(U11(zeros, x1)) -> c55(ACTIVE(U11(active(zeros), x1)), U11'(mark(zeros), x1), MARK(zeros)) MARK(U11(cons(z0, z1), x1)) -> c55(ACTIVE(U11(active(cons(mark(z0), z1)), x1)), U11'(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(U11(0, x1)) -> c55(ACTIVE(U11(active(0), x1)), U11'(mark(0), x1), MARK(0)) MARK(U11(U11(z0, z1), x1)) -> c55(ACTIVE(U11(active(U11(mark(z0), z1)), x1)), U11'(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(U11(tt, x1)) -> c55(ACTIVE(U11(active(tt), x1)), U11'(mark(tt), x1), MARK(tt)) MARK(U11(s(z0), x1)) -> c55(ACTIVE(U11(active(s(mark(z0))), x1)), U11'(mark(s(z0)), x1), MARK(s(z0))) MARK(U11(length(z0), x1)) -> c55(ACTIVE(U11(active(length(mark(z0))), x1)), U11'(mark(length(z0)), x1), MARK(length(z0))) MARK(U11(U21(z0), x1)) -> c55(ACTIVE(U11(active(U21(mark(z0))), x1)), U11'(mark(U21(z0)), x1), MARK(U21(z0))) MARK(U11(nil, x1)) -> c55(ACTIVE(U11(active(nil), x1)), U11'(mark(nil), x1), MARK(nil)) MARK(U11(U31(z0, z1, z2, z3), x1)) -> c55(ACTIVE(U11(active(U31(mark(z0), z1, z2, z3)), x1)), U11'(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(U11(take(z0, z1), x1)) -> c55(ACTIVE(U11(active(take(mark(z0), mark(z1))), x1)), U11'(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(U11(and(z0, z1), x1)) -> c55(ACTIVE(U11(active(and(mark(z0), z1)), x1)), U11'(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(U11(isNat(z0), x1)) -> c55(ACTIVE(U11(active(isNat(z0)), x1)), U11'(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(U11(isNatList(z0), x1)) -> c55(ACTIVE(U11(active(isNatList(z0)), x1)), U11'(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(U11(isNatIList(z0), x1)) -> c55(ACTIVE(U11(active(isNatIList(z0)), x1)), U11'(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(U11(x0, x1)) -> c55(U11'(mark(x0), x1)) MARK(s(zeros)) -> c57(ACTIVE(s(active(zeros))), S(mark(zeros)), MARK(zeros)) MARK(s(cons(z0, z1))) -> c57(ACTIVE(s(active(cons(mark(z0), z1)))), S(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(s(0)) -> c57(ACTIVE(s(active(0))), S(mark(0)), MARK(0)) MARK(s(U11(z0, z1))) -> c57(ACTIVE(s(active(U11(mark(z0), z1)))), S(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(s(tt)) -> c57(ACTIVE(s(active(tt))), S(mark(tt)), MARK(tt)) MARK(s(s(z0))) -> c57(ACTIVE(s(active(s(mark(z0))))), S(mark(s(z0))), MARK(s(z0))) MARK(s(length(z0))) -> c57(ACTIVE(s(active(length(mark(z0))))), S(mark(length(z0))), MARK(length(z0))) MARK(s(U21(z0))) -> c57(ACTIVE(s(active(U21(mark(z0))))), S(mark(U21(z0))), MARK(U21(z0))) MARK(s(nil)) -> c57(ACTIVE(s(active(nil))), S(mark(nil)), MARK(nil)) MARK(s(U31(z0, z1, z2, z3))) -> c57(ACTIVE(s(active(U31(mark(z0), z1, z2, z3)))), S(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(s(take(z0, z1))) -> c57(ACTIVE(s(active(take(mark(z0), mark(z1))))), S(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(s(and(z0, z1))) -> c57(ACTIVE(s(active(and(mark(z0), z1)))), S(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(s(isNat(z0))) -> c57(ACTIVE(s(active(isNat(z0)))), S(mark(isNat(z0))), MARK(isNat(z0))) MARK(s(isNatList(z0))) -> c57(ACTIVE(s(active(isNatList(z0)))), S(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(s(isNatIList(z0))) -> c57(ACTIVE(s(active(isNatIList(z0)))), S(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(s(z0)) -> c57(S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(z0)), LENGTH(mark(z0)), MARK(z0)) MARK(length(zeros)) -> c58(ACTIVE(length(active(zeros))), LENGTH(mark(zeros)), MARK(zeros)) MARK(length(cons(z0, z1))) -> c58(ACTIVE(length(active(cons(mark(z0), z1)))), LENGTH(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(length(0)) -> c58(ACTIVE(length(active(0))), LENGTH(mark(0)), MARK(0)) MARK(length(U11(z0, z1))) -> c58(ACTIVE(length(active(U11(mark(z0), z1)))), LENGTH(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(length(tt)) -> c58(ACTIVE(length(active(tt))), LENGTH(mark(tt)), MARK(tt)) MARK(length(s(z0))) -> c58(ACTIVE(length(active(s(mark(z0))))), LENGTH(mark(s(z0))), MARK(s(z0))) MARK(length(length(z0))) -> c58(ACTIVE(length(active(length(mark(z0))))), LENGTH(mark(length(z0))), MARK(length(z0))) MARK(length(U21(z0))) -> c58(ACTIVE(length(active(U21(mark(z0))))), LENGTH(mark(U21(z0))), MARK(U21(z0))) MARK(length(nil)) -> c58(ACTIVE(length(active(nil))), LENGTH(mark(nil)), MARK(nil)) MARK(length(U31(z0, z1, z2, z3))) -> c58(ACTIVE(length(active(U31(mark(z0), z1, z2, z3)))), LENGTH(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(length(take(z0, z1))) -> c58(ACTIVE(length(active(take(mark(z0), mark(z1))))), LENGTH(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(length(and(z0, z1))) -> c58(ACTIVE(length(active(and(mark(z0), z1)))), LENGTH(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(length(isNat(z0))) -> c58(ACTIVE(length(active(isNat(z0)))), LENGTH(mark(isNat(z0))), MARK(isNat(z0))) MARK(length(isNatList(z0))) -> c58(ACTIVE(length(active(isNatList(z0)))), LENGTH(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(length(isNatIList(z0))) -> c58(ACTIVE(length(active(isNatIList(z0)))), LENGTH(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(U21(z0)) -> c59(ACTIVE(U21(z0)), U21'(mark(z0)), MARK(z0)) MARK(U21(zeros)) -> c59(ACTIVE(U21(active(zeros))), U21'(mark(zeros)), MARK(zeros)) MARK(U21(cons(z0, z1))) -> c59(ACTIVE(U21(active(cons(mark(z0), z1)))), U21'(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(U21(0)) -> c59(ACTIVE(U21(active(0))), U21'(mark(0)), MARK(0)) MARK(U21(U11(z0, z1))) -> c59(ACTIVE(U21(active(U11(mark(z0), z1)))), U21'(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(U21(tt)) -> c59(ACTIVE(U21(active(tt))), U21'(mark(tt)), MARK(tt)) MARK(U21(s(z0))) -> c59(ACTIVE(U21(active(s(mark(z0))))), U21'(mark(s(z0))), MARK(s(z0))) MARK(U21(length(z0))) -> c59(ACTIVE(U21(active(length(mark(z0))))), U21'(mark(length(z0))), MARK(length(z0))) MARK(U21(U21(z0))) -> c59(ACTIVE(U21(active(U21(mark(z0))))), U21'(mark(U21(z0))), MARK(U21(z0))) MARK(U21(nil)) -> c59(ACTIVE(U21(active(nil))), U21'(mark(nil)), MARK(nil)) MARK(U21(U31(z0, z1, z2, z3))) -> c59(ACTIVE(U21(active(U31(mark(z0), z1, z2, z3)))), U21'(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(U21(take(z0, z1))) -> c59(ACTIVE(U21(active(take(mark(z0), mark(z1))))), U21'(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(U21(and(z0, z1))) -> c59(ACTIVE(U21(active(and(mark(z0), z1)))), U21'(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(U21(isNat(z0))) -> c59(ACTIVE(U21(active(isNat(z0)))), U21'(mark(isNat(z0))), MARK(isNat(z0))) MARK(U21(isNatList(z0))) -> c59(ACTIVE(U21(active(isNatList(z0)))), U21'(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(U21(isNatIList(z0))) -> c59(ACTIVE(U21(active(isNatIList(z0)))), U21'(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(z0, z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U31(zeros, x1, x2, x3)) -> c61(ACTIVE(U31(active(zeros), x1, x2, x3)), U31'(mark(zeros), x1, x2, x3), MARK(zeros)) MARK(U31(cons(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(cons(mark(z0), z1)), x1, x2, x3)), U31'(mark(cons(z0, z1)), x1, x2, x3), MARK(cons(z0, z1))) MARK(U31(0, x1, x2, x3)) -> c61(ACTIVE(U31(active(0), x1, x2, x3)), U31'(mark(0), x1, x2, x3), MARK(0)) MARK(U31(U11(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(U11(mark(z0), z1)), x1, x2, x3)), U31'(mark(U11(z0, z1)), x1, x2, x3), MARK(U11(z0, z1))) MARK(U31(tt, x1, x2, x3)) -> c61(ACTIVE(U31(active(tt), x1, x2, x3)), U31'(mark(tt), x1, x2, x3), MARK(tt)) MARK(U31(s(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(s(mark(z0))), x1, x2, x3)), U31'(mark(s(z0)), x1, x2, x3), MARK(s(z0))) MARK(U31(length(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(length(mark(z0))), x1, x2, x3)), U31'(mark(length(z0)), x1, x2, x3), MARK(length(z0))) MARK(U31(U21(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(U21(mark(z0))), x1, x2, x3)), U31'(mark(U21(z0)), x1, x2, x3), MARK(U21(z0))) MARK(U31(nil, x1, x2, x3)) -> c61(ACTIVE(U31(active(nil), x1, x2, x3)), U31'(mark(nil), x1, x2, x3), MARK(nil)) MARK(U31(U31(z0, z1, z2, z3), x1, x2, x3)) -> c61(ACTIVE(U31(active(U31(mark(z0), z1, z2, z3)), x1, x2, x3)), U31'(mark(U31(z0, z1, z2, z3)), x1, x2, x3), MARK(U31(z0, z1, z2, z3))) MARK(U31(take(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(take(mark(z0), mark(z1))), x1, x2, x3)), U31'(mark(take(z0, z1)), x1, x2, x3), MARK(take(z0, z1))) MARK(U31(and(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(and(mark(z0), z1)), x1, x2, x3)), U31'(mark(and(z0, z1)), x1, x2, x3), MARK(and(z0, z1))) MARK(U31(isNat(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNat(z0)), x1, x2, x3)), U31'(mark(isNat(z0)), x1, x2, x3), MARK(isNat(z0))) MARK(U31(isNatList(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNatList(z0)), x1, x2, x3)), U31'(mark(isNatList(z0)), x1, x2, x3), MARK(isNatList(z0))) MARK(U31(isNatIList(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNatIList(z0)), x1, x2, x3)), U31'(mark(isNatIList(z0)), x1, x2, x3), MARK(isNatIList(z0))) MARK(U31(x0, x1, x2, x3)) -> c61(U31'(mark(x0), x1, x2, x3)) MARK(take(z0, x1)) -> c62(ACTIVE(take(z0, mark(x1))), TAKE(mark(z0), mark(x1)), MARK(z0), MARK(x1)) MARK(take(x0, z1)) -> c62(ACTIVE(take(mark(x0), z1)), TAKE(mark(x0), mark(z1)), MARK(x0), MARK(z1)) MARK(take(x0, zeros)) -> c62(ACTIVE(take(mark(x0), active(zeros))), TAKE(mark(x0), mark(zeros)), MARK(x0), MARK(zeros)) MARK(take(x0, cons(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(cons(mark(z0), z1)))), TAKE(mark(x0), mark(cons(z0, z1))), MARK(x0), MARK(cons(z0, z1))) MARK(take(x0, 0)) -> c62(ACTIVE(take(mark(x0), active(0))), TAKE(mark(x0), mark(0)), MARK(x0), MARK(0)) MARK(take(x0, U11(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(U11(mark(z0), z1)))), TAKE(mark(x0), mark(U11(z0, z1))), MARK(x0), MARK(U11(z0, z1))) MARK(take(x0, tt)) -> c62(ACTIVE(take(mark(x0), active(tt))), TAKE(mark(x0), mark(tt)), MARK(x0), MARK(tt)) MARK(take(x0, s(z0))) -> c62(ACTIVE(take(mark(x0), active(s(mark(z0))))), TAKE(mark(x0), mark(s(z0))), MARK(x0), MARK(s(z0))) MARK(take(x0, length(z0))) -> c62(ACTIVE(take(mark(x0), active(length(mark(z0))))), TAKE(mark(x0), mark(length(z0))), MARK(x0), MARK(length(z0))) MARK(take(x0, U21(z0))) -> c62(ACTIVE(take(mark(x0), active(U21(mark(z0))))), TAKE(mark(x0), mark(U21(z0))), MARK(x0), MARK(U21(z0))) MARK(take(x0, nil)) -> c62(ACTIVE(take(mark(x0), active(nil))), TAKE(mark(x0), mark(nil)), MARK(x0), MARK(nil)) MARK(take(x0, U31(z0, z1, z2, z3))) -> c62(ACTIVE(take(mark(x0), active(U31(mark(z0), z1, z2, z3)))), TAKE(mark(x0), mark(U31(z0, z1, z2, z3))), MARK(x0), MARK(U31(z0, z1, z2, z3))) MARK(take(x0, take(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(take(mark(z0), mark(z1))))), TAKE(mark(x0), mark(take(z0, z1))), MARK(x0), MARK(take(z0, z1))) MARK(take(x0, and(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(and(mark(z0), z1)))), TAKE(mark(x0), mark(and(z0, z1))), MARK(x0), MARK(and(z0, z1))) MARK(take(x0, isNat(z0))) -> c62(ACTIVE(take(mark(x0), active(isNat(z0)))), TAKE(mark(x0), mark(isNat(z0))), MARK(x0), MARK(isNat(z0))) MARK(take(x0, isNatList(z0))) -> c62(ACTIVE(take(mark(x0), active(isNatList(z0)))), TAKE(mark(x0), mark(isNatList(z0))), MARK(x0), MARK(isNatList(z0))) MARK(take(x0, isNatIList(z0))) -> c62(ACTIVE(take(mark(x0), active(isNatIList(z0)))), TAKE(mark(x0), mark(isNatIList(z0))), MARK(x0), MARK(isNatIList(z0))) MARK(take(zeros, x1)) -> c62(ACTIVE(take(active(zeros), mark(x1))), TAKE(mark(zeros), mark(x1)), MARK(zeros), MARK(x1)) MARK(take(cons(z0, z1), x1)) -> c62(ACTIVE(take(active(cons(mark(z0), z1)), mark(x1))), TAKE(mark(cons(z0, z1)), mark(x1)), MARK(cons(z0, z1)), MARK(x1)) MARK(take(0, x1)) -> c62(ACTIVE(take(active(0), mark(x1))), TAKE(mark(0), mark(x1)), MARK(0), MARK(x1)) MARK(take(U11(z0, z1), x1)) -> c62(ACTIVE(take(active(U11(mark(z0), z1)), mark(x1))), TAKE(mark(U11(z0, z1)), mark(x1)), MARK(U11(z0, z1)), MARK(x1)) MARK(take(tt, x1)) -> c62(ACTIVE(take(active(tt), mark(x1))), TAKE(mark(tt), mark(x1)), MARK(tt), MARK(x1)) MARK(take(s(z0), x1)) -> c62(ACTIVE(take(active(s(mark(z0))), mark(x1))), TAKE(mark(s(z0)), mark(x1)), MARK(s(z0)), MARK(x1)) MARK(take(length(z0), x1)) -> c62(ACTIVE(take(active(length(mark(z0))), mark(x1))), TAKE(mark(length(z0)), mark(x1)), MARK(length(z0)), MARK(x1)) MARK(take(U21(z0), x1)) -> c62(ACTIVE(take(active(U21(mark(z0))), mark(x1))), TAKE(mark(U21(z0)), mark(x1)), MARK(U21(z0)), MARK(x1)) MARK(take(nil, x1)) -> c62(ACTIVE(take(active(nil), mark(x1))), TAKE(mark(nil), mark(x1)), MARK(nil), MARK(x1)) MARK(take(U31(z0, z1, z2, z3), x1)) -> c62(ACTIVE(take(active(U31(mark(z0), z1, z2, z3)), mark(x1))), TAKE(mark(U31(z0, z1, z2, z3)), mark(x1)), MARK(U31(z0, z1, z2, z3)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c62(ACTIVE(take(active(take(mark(z0), mark(z1))), mark(x1))), TAKE(mark(take(z0, z1)), mark(x1)), MARK(take(z0, z1)), MARK(x1)) MARK(take(and(z0, z1), x1)) -> c62(ACTIVE(take(active(and(mark(z0), z1)), mark(x1))), TAKE(mark(and(z0, z1)), mark(x1)), MARK(and(z0, z1)), MARK(x1)) MARK(take(isNat(z0), x1)) -> c62(ACTIVE(take(active(isNat(z0)), mark(x1))), TAKE(mark(isNat(z0)), mark(x1)), MARK(isNat(z0)), MARK(x1)) MARK(take(isNatList(z0), x1)) -> c62(ACTIVE(take(active(isNatList(z0)), mark(x1))), TAKE(mark(isNatList(z0)), mark(x1)), MARK(isNatList(z0)), MARK(x1)) MARK(take(isNatIList(z0), x1)) -> c62(ACTIVE(take(active(isNatIList(z0)), mark(x1))), TAKE(mark(isNatIList(z0)), mark(x1)), MARK(isNatIList(z0)), MARK(x1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(z0, z1)), AND(mark(z0), z1), MARK(z0)) MARK(and(zeros, x1)) -> c63(ACTIVE(and(active(zeros), x1)), AND(mark(zeros), x1), MARK(zeros)) MARK(and(cons(z0, z1), x1)) -> c63(ACTIVE(and(active(cons(mark(z0), z1)), x1)), AND(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(and(0, x1)) -> c63(ACTIVE(and(active(0), x1)), AND(mark(0), x1), MARK(0)) MARK(and(U11(z0, z1), x1)) -> c63(ACTIVE(and(active(U11(mark(z0), z1)), x1)), AND(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(and(tt, x1)) -> c63(ACTIVE(and(active(tt), x1)), AND(mark(tt), x1), MARK(tt)) MARK(and(s(z0), x1)) -> c63(ACTIVE(and(active(s(mark(z0))), x1)), AND(mark(s(z0)), x1), MARK(s(z0))) MARK(and(length(z0), x1)) -> c63(ACTIVE(and(active(length(mark(z0))), x1)), AND(mark(length(z0)), x1), MARK(length(z0))) MARK(and(U21(z0), x1)) -> c63(ACTIVE(and(active(U21(mark(z0))), x1)), AND(mark(U21(z0)), x1), MARK(U21(z0))) MARK(and(nil, x1)) -> c63(ACTIVE(and(active(nil), x1)), AND(mark(nil), x1), MARK(nil)) MARK(and(U31(z0, z1, z2, z3), x1)) -> c63(ACTIVE(and(active(U31(mark(z0), z1, z2, z3)), x1)), AND(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(and(take(z0, z1), x1)) -> c63(ACTIVE(and(active(take(mark(z0), mark(z1))), x1)), AND(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(and(and(z0, z1), x1)) -> c63(ACTIVE(and(active(and(mark(z0), z1)), x1)), AND(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(and(isNat(z0), x1)) -> c63(ACTIVE(and(active(isNat(z0)), x1)), AND(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(and(isNatList(z0), x1)) -> c63(ACTIVE(and(active(isNatList(z0)), x1)), AND(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(and(isNatIList(z0), x1)) -> c63(ACTIVE(and(active(isNatIList(z0)), x1)), AND(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(and(x0, x1)) -> c63(AND(mark(x0), x1)) K tuples:none Defined Rule Symbols: encArg_1, active_1, mark_1, cons_2, U11_2, s_1, length_1, U21_1, U31_4, take_2, and_2, isNat_1, isNatList_1, isNatIList_1 Defined Pair Symbols: ACTIVE_1, MARK_1, CONS_2, U11'_2, S_1, LENGTH_1, U21'_1, U31'_4, TAKE_2, AND_2, ISNAT_1, ISNATLIST_1, ISNATILIST_1, ENCODE_U21_1, ENCODE_U31_4, ENCODE_TAKE_2, ENCODE_AND_2, ENCODE_ISNAT_1, ENCODE_ISNATLIST_1, ENCODE_ISNATILIST_1, ENCARG_1, ENCODE_ACTIVE_1, ENCODE_MARK_1, ENCODE_CONS_2, ENCODE_U11_2, ENCODE_S_1, ENCODE_LENGTH_1 Compound Symbols: c36_1, c37_3, c38_1, c39_1, c40_2, c41_2, c42_2, c43_1, c45_1, c48_1, c52_1, c64_2, c65_2, c66_2, c67_1, c68_1, c69_1, c70_1, c71_1, c72_1, c73_1, c74_1, c75_1, c76_1, c77_1, c78_1, c79_1, c80_1, c81_1, c82_1, c83_1, c84_1, c85_1, c86_1, c87_1, c88_1, c89_1, c90_1, c91_1, c92_1, c93_1, c94_1, c95_1, c96_1, c97_1, c98_1, c99_1, c100_1, c101_1, c102_1, c34_1, c35_2, c44_3, c46_3, c47_3, c49_3, c50_2, c51_4, c54, c56, c60, c_1, c4_2, c4_1, c5_2, c5_1, c6_3, c6_2, c7_3, c7_2, c8_2, c9_2, c10_2, c11_5, c11_4, c12_3, c12_2, c13_3, c13_2, c14_2, c15_2, c16_2, c53_3, c53_1, c53_2, c55_3, c55_1, c57_3, c57_2, c58_3, c59_3, c61_3, c61_1, c62_4, c63_3, c63_1 ---------------------------------------- (133) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace ENCODE_U21(z0) -> c(U21'(encArg(z0))) by ENCODE_U21(zeros) -> c(U21'(zeros)) ENCODE_U21(0) -> c(U21'(0)) ENCODE_U21(tt) -> c(U21'(tt)) ENCODE_U21(nil) -> c(U21'(nil)) ENCODE_U21(cons_active(z0)) -> c(U21'(active(encArg(z0)))) ENCODE_U21(cons_mark(z0)) -> c(U21'(mark(encArg(z0)))) ENCODE_U21(cons_cons(z0, z1)) -> c(U21'(cons(encArg(z0), encArg(z1)))) ENCODE_U21(cons_U11(z0, z1)) -> c(U21'(U11(encArg(z0), encArg(z1)))) ENCODE_U21(cons_s(z0)) -> c(U21'(s(encArg(z0)))) ENCODE_U21(cons_length(z0)) -> c(U21'(length(encArg(z0)))) ENCODE_U21(cons_U21(z0)) -> c(U21'(U21(encArg(z0)))) ENCODE_U21(cons_U31(z0, z1, z2, z3)) -> c(U21'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)))) ENCODE_U21(cons_take(z0, z1)) -> c(U21'(take(encArg(z0), encArg(z1)))) ENCODE_U21(cons_and(z0, z1)) -> c(U21'(and(encArg(z0), encArg(z1)))) ENCODE_U21(cons_isNat(z0)) -> c(U21'(isNat(encArg(z0)))) ENCODE_U21(cons_isNatList(z0)) -> c(U21'(isNatList(encArg(z0)))) ENCODE_U21(cons_isNatIList(z0)) -> c(U21'(isNatIList(encArg(z0)))) ---------------------------------------- (134) Obligation: Complexity Dependency Tuples Problem Rules: encArg(zeros) -> zeros encArg(0) -> 0 encArg(tt) -> tt encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_U11(z0, z1)) -> U11(encArg(z0), encArg(z1)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_length(z0)) -> length(encArg(z0)) encArg(cons_U21(z0)) -> U21(encArg(z0)) encArg(cons_U31(z0, z1, z2, z3)) -> U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_isNat(z0)) -> isNat(encArg(z0)) encArg(cons_isNatList(z0)) -> isNatList(encArg(z0)) encArg(cons_isNatIList(z0)) -> isNatIList(encArg(z0)) active(zeros) -> mark(cons(0, zeros)) active(U11(tt, z0)) -> mark(s(length(z0))) active(U21(tt)) -> mark(nil) active(U31(tt, z0, z1, z2)) -> mark(cons(z2, take(z1, z0))) active(and(tt, z0)) -> mark(z0) active(isNat(0)) -> mark(tt) active(isNat(length(z0))) -> mark(isNatList(z0)) active(isNat(s(z0))) -> mark(isNat(z0)) active(isNatIList(z0)) -> mark(isNatList(z0)) active(isNatIList(zeros)) -> mark(tt) active(isNatIList(cons(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(isNatList(nil)) -> mark(tt) active(isNatList(cons(z0, z1))) -> mark(and(isNat(z0), isNatList(z1))) active(isNatList(take(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(length(nil)) -> mark(0) active(length(cons(z0, z1))) -> mark(U11(and(isNatList(z1), isNat(z0)), z1)) active(take(0, z0)) -> mark(U21(isNatIList(z0))) active(take(s(z0), cons(z1, z2))) -> mark(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)) mark(zeros) -> active(zeros) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(0) -> active(0) mark(U11(z0, z1)) -> active(U11(mark(z0), z1)) mark(tt) -> active(tt) mark(s(z0)) -> active(s(mark(z0))) mark(length(z0)) -> active(length(mark(z0))) mark(U21(z0)) -> active(U21(mark(z0))) mark(nil) -> active(nil) mark(U31(z0, z1, z2, z3)) -> active(U31(mark(z0), z1, z2, z3)) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(isNat(z0)) -> active(isNat(z0)) mark(isNatList(z0)) -> active(isNatList(z0)) mark(isNatIList(z0)) -> active(isNatIList(z0)) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) U11(mark(z0), z1) -> U11(z0, z1) U11(z0, mark(z1)) -> U11(z0, z1) U11(active(z0), z1) -> U11(z0, z1) U11(z0, active(z1)) -> U11(z0, z1) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) length(mark(z0)) -> length(z0) length(active(z0)) -> length(z0) U21(mark(z0)) -> U21(z0) U21(active(z0)) -> U21(z0) U31(mark(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, mark(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, mark(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, mark(z3)) -> U31(z0, z1, z2, z3) U31(active(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, active(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, active(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, active(z3)) -> U31(z0, z1, z2, z3) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) isNat(mark(z0)) -> isNat(z0) isNat(active(z0)) -> isNat(z0) isNatList(mark(z0)) -> isNatList(z0) isNatList(active(z0)) -> isNatList(z0) isNatIList(mark(z0)) -> isNatIList(z0) isNatIList(active(z0)) -> isNatIList(z0) Tuples: ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 ENCODE_U31(z0, z1, z2, z3) -> c(U31'(encArg(z0), encArg(z1), encArg(z2), encArg(z3))) ENCODE_TAKE(z0, z1) -> c(TAKE(encArg(z0), encArg(z1))) ENCODE_AND(z0, z1) -> c(AND(encArg(z0), encArg(z1))) ENCODE_ISNAT(z0) -> c(ISNAT(encArg(z0))) ENCODE_ISNATLIST(z0) -> c(ISNATLIST(encArg(z0))) ENCODE_ISNATILIST(z0) -> c(ISNATILIST(encArg(z0))) ENCARG(cons_active(cons_active(z0))) -> c4(ACTIVE(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_active(cons_mark(z0))) -> c4(ACTIVE(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_active(cons_cons(z0, z1))) -> c4(ACTIVE(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_active(cons_U11(z0, z1))) -> c4(ACTIVE(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_active(cons_s(z0))) -> c4(ACTIVE(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_active(cons_length(z0))) -> c4(ACTIVE(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_active(cons_U21(z0))) -> c4(ACTIVE(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_active(cons_U31(z0, z1, z2, z3))) -> c4(ACTIVE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_active(cons_take(z0, z1))) -> c4(ACTIVE(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_active(cons_and(z0, z1))) -> c4(ACTIVE(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_active(cons_isNat(z0))) -> c4(ACTIVE(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_active(cons_isNatList(z0))) -> c4(ACTIVE(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_active(cons_isNatIList(z0))) -> c4(ACTIVE(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_active(zeros)) -> c4(ACTIVE(zeros)) ENCARG(cons_mark(cons_active(z0))) -> c5(MARK(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_mark(cons_mark(z0))) -> c5(MARK(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_mark(cons_cons(z0, z1))) -> c5(MARK(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_mark(cons_U11(z0, z1))) -> c5(MARK(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_mark(cons_s(z0))) -> c5(MARK(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_mark(cons_length(z0))) -> c5(MARK(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_mark(cons_U21(z0))) -> c5(MARK(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_mark(cons_U31(z0, z1, z2, z3))) -> c5(MARK(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_mark(cons_take(z0, z1))) -> c5(MARK(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(cons_and(z0, z1))) -> c5(MARK(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_mark(cons_isNat(z0))) -> c5(MARK(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_mark(cons_isNatList(z0))) -> c5(MARK(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_mark(cons_isNatIList(z0))) -> c5(MARK(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_mark(zeros)) -> c5(MARK(zeros)) ENCARG(cons_mark(0)) -> c5(MARK(0)) ENCARG(cons_mark(tt)) -> c5(MARK(tt)) ENCARG(cons_mark(nil)) -> c5(MARK(nil)) ENCARG(cons_cons(x0, cons_active(z0))) -> c6(CONS(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_cons(x0, cons_mark(z0))) -> c6(CONS(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_cons(x0, cons_cons(z0, z1))) -> c6(CONS(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_cons(x0, cons_U11(z0, z1))) -> c6(CONS(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_cons(x0, cons_s(z0))) -> c6(CONS(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_cons(x0, cons_length(z0))) -> c6(CONS(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_cons(x0, cons_U21(z0))) -> c6(CONS(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_cons(x0, cons_U31(z0, z1, z2, z3))) -> c6(CONS(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_cons(x0, cons_take(z0, z1))) -> c6(CONS(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_cons(x0, cons_and(z0, z1))) -> c6(CONS(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_cons(x0, cons_isNat(z0))) -> c6(CONS(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_cons(x0, cons_isNatList(z0))) -> c6(CONS(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_cons(x0, cons_isNatIList(z0))) -> c6(CONS(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_cons(cons_active(z0), x1)) -> c6(CONS(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_mark(z0), x1)) -> c6(CONS(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_cons(z0, z1), x1)) -> c6(CONS(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_U11(z0, z1), x1)) -> c6(CONS(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_s(z0), x1)) -> c6(CONS(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_length(z0), x1)) -> c6(CONS(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U21(z0), x1)) -> c6(CONS(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U31(z0, z1, z2, z3), x1)) -> c6(CONS(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_cons(cons_take(z0, z1), x1)) -> c6(CONS(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_and(z0, z1), x1)) -> c6(CONS(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_isNat(z0), x1)) -> c6(CONS(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_isNatList(z0), x1)) -> c6(CONS(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_isNatIList(z0), x1)) -> c6(CONS(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_cons(x0, zeros)) -> c6(CONS(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_cons(x0, 0)) -> c6(CONS(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_cons(x0, tt)) -> c6(CONS(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_cons(x0, nil)) -> c6(CONS(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_cons(zeros, x1)) -> c6(CONS(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(0, x1)) -> c6(CONS(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(tt, x1)) -> c6(CONS(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(nil, x1)) -> c6(CONS(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(x0, cons_active(z0))) -> c7(U11'(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_U11(x0, cons_mark(z0))) -> c7(U11'(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_U11(x0, cons_cons(z0, z1))) -> c7(U11'(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U11(x0, cons_U11(z0, z1))) -> c7(U11'(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U11(x0, cons_s(z0))) -> c7(U11'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_U11(x0, cons_length(z0))) -> c7(U11'(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_U11(x0, cons_U21(z0))) -> c7(U11'(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_U11(x0, cons_U31(z0, z1, z2, z3))) -> c7(U11'(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U11(x0, cons_take(z0, z1))) -> c7(U11'(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_U11(x0, cons_and(z0, z1))) -> c7(U11'(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_U11(x0, cons_isNat(z0))) -> c7(U11'(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_U11(x0, cons_isNatList(z0))) -> c7(U11'(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_U11(x0, cons_isNatIList(z0))) -> c7(U11'(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U11(cons_active(z0), x1)) -> c7(U11'(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_mark(z0), x1)) -> c7(U11'(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_cons(z0, z1), x1)) -> c7(U11'(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_U11(z0, z1), x1)) -> c7(U11'(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_s(z0), x1)) -> c7(U11'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_length(z0), x1)) -> c7(U11'(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_U21(z0), x1)) -> c7(U11'(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_U31(z0, z1, z2, z3), x1)) -> c7(U11'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_U11(cons_take(z0, z1), x1)) -> c7(U11'(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_and(z0, z1), x1)) -> c7(U11'(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_isNat(z0), x1)) -> c7(U11'(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_isNatList(z0), x1)) -> c7(U11'(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_isNatIList(z0), x1)) -> c7(U11'(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_U11(x0, zeros)) -> c7(U11'(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_U11(x0, 0)) -> c7(U11'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_U11(x0, tt)) -> c7(U11'(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_U11(x0, nil)) -> c7(U11'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_U11(zeros, x1)) -> c7(U11'(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(0, x1)) -> c7(U11'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(tt, x1)) -> c7(U11'(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(nil, x1)) -> c7(U11'(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_s(cons_active(z0))) -> c8(S(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_s(cons_mark(z0))) -> c8(S(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_s(cons_cons(z0, z1))) -> c8(S(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_s(cons_U11(z0, z1))) -> c8(S(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_s(cons_s(z0))) -> c8(S(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_length(z0))) -> c8(S(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_s(cons_U21(z0))) -> c8(S(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_s(cons_U31(z0, z1, z2, z3))) -> c8(S(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_s(cons_take(z0, z1))) -> c8(S(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_s(cons_and(z0, z1))) -> c8(S(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_s(cons_isNat(z0))) -> c8(S(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_s(cons_isNatList(z0))) -> c8(S(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_s(cons_isNatIList(z0))) -> c8(S(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_length(cons_active(z0))) -> c9(LENGTH(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_length(cons_mark(z0))) -> c9(LENGTH(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_length(cons_cons(z0, z1))) -> c9(LENGTH(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_length(cons_U11(z0, z1))) -> c9(LENGTH(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_length(cons_s(z0))) -> c9(LENGTH(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_length(cons_length(z0))) -> c9(LENGTH(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_length(cons_U21(z0))) -> c9(LENGTH(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_length(cons_U31(z0, z1, z2, z3))) -> c9(LENGTH(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_length(cons_take(z0, z1))) -> c9(LENGTH(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_length(cons_and(z0, z1))) -> c9(LENGTH(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_length(cons_isNat(z0))) -> c9(LENGTH(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_length(cons_isNatList(z0))) -> c9(LENGTH(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_length(cons_isNatIList(z0))) -> c9(LENGTH(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U21(cons_active(z0))) -> c10(U21'(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_U21(cons_mark(z0))) -> c10(U21'(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_U21(cons_cons(z0, z1))) -> c10(U21'(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U21(cons_U11(z0, z1))) -> c10(U21'(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U21(cons_s(z0))) -> c10(U21'(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_U21(cons_length(z0))) -> c10(U21'(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_U21(cons_U21(z0))) -> c10(U21'(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_U21(cons_U31(z0, z1, z2, z3))) -> c10(U21'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U21(cons_take(z0, z1))) -> c10(U21'(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_U21(cons_and(z0, z1))) -> c10(U21'(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_U21(cons_isNat(z0))) -> c10(U21'(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_U21(cons_isNatList(z0))) -> c10(U21'(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_U21(cons_isNatIList(z0))) -> c10(U21'(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U31(x0, x1, x2, cons_active(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), active(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_active(z0))) ENCARG(cons_U31(x0, x1, x2, cons_mark(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), mark(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_mark(z0))) ENCARG(cons_U31(x0, x1, x2, cons_cons(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_U11(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_s(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), s(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_s(z0))) ENCARG(cons_U31(x0, x1, x2, cons_length(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), length(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_length(z0))) ENCARG(cons_U31(x0, x1, x2, cons_U21(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U21(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U21(z0))) ENCARG(cons_U31(x0, x1, x2, cons_U31(z0, z1, z2, z3))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U31(x0, x1, x2, cons_take(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_take(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_and(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_and(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_isNat(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNat(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNat(z0))) ENCARG(cons_U31(x0, x1, x2, cons_isNatList(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNatList(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNatList(z0))) ENCARG(cons_U31(x0, x1, x2, cons_isNatIList(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U31(x0, x1, cons_active(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), active(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_active(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_mark(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), mark(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_mark(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_cons(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), cons(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_cons(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U11(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), U11(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U11(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_s(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), s(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_s(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_length(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), length(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_length(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U21(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), U21(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U21(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U31(z0, z1, z2, z3), x3)) -> c11(U31'(encArg(x0), encArg(x1), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_take(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), take(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_take(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_and(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), and(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_and(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNat(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNat(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNat(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNatList(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNatList(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNatList(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNatIList(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNatIList(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNatIList(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, cons_active(z0), x2, x3)) -> c11(U31'(encArg(x0), active(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_active(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_mark(z0), x2, x3)) -> c11(U31'(encArg(x0), mark(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_mark(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_cons(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), cons(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_cons(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U11(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), U11(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U11(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_s(z0), x2, x3)) -> c11(U31'(encArg(x0), s(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_s(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_length(z0), x2, x3)) -> c11(U31'(encArg(x0), length(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_length(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U21(z0), x2, x3)) -> c11(U31'(encArg(x0), U21(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U21(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U31(z0, z1, z2, z3), x2, x3)) -> c11(U31'(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_take(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), take(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_take(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_and(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), and(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_and(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNat(z0), x2, x3)) -> c11(U31'(encArg(x0), isNat(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNat(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNatList(z0), x2, x3)) -> c11(U31'(encArg(x0), isNatList(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNatList(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNatIList(z0), x2, x3)) -> c11(U31'(encArg(x0), isNatIList(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNatIList(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_active(z0), x1, x2, x3)) -> c11(U31'(active(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_active(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_mark(z0), x1, x2, x3)) -> c11(U31'(mark(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_mark(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_cons(z0, z1), x1, x2, x3)) -> c11(U31'(cons(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_cons(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U11(z0, z1), x1, x2, x3)) -> c11(U31'(U11(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U11(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_s(z0), x1, x2, x3)) -> c11(U31'(s(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_s(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_length(z0), x1, x2, x3)) -> c11(U31'(length(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_length(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U21(z0), x1, x2, x3)) -> c11(U31'(U21(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U21(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U31(z0, z1, z2, z3), x1, x2, x3)) -> c11(U31'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_take(z0, z1), x1, x2, x3)) -> c11(U31'(take(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_take(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_and(z0, z1), x1, x2, x3)) -> c11(U31'(and(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_and(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNat(z0), x1, x2, x3)) -> c11(U31'(isNat(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNat(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNatList(z0), x1, x2, x3)) -> c11(U31'(isNatList(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNatList(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNatIList(z0), x1, x2, x3)) -> c11(U31'(isNatIList(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNatIList(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, x1, x2, zeros)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), zeros), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, 0)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), 0), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, tt)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), tt), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, nil)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), nil), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, zeros, x3)) -> c11(U31'(encArg(x0), encArg(x1), zeros, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, 0, x3)) -> c11(U31'(encArg(x0), encArg(x1), 0, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, tt, x3)) -> c11(U31'(encArg(x0), encArg(x1), tt, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, nil, x3)) -> c11(U31'(encArg(x0), encArg(x1), nil, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, zeros, x2, x3)) -> c11(U31'(encArg(x0), zeros, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, 0, x2, x3)) -> c11(U31'(encArg(x0), 0, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, tt, x2, x3)) -> c11(U31'(encArg(x0), tt, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, nil, x2, x3)) -> c11(U31'(encArg(x0), nil, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(zeros, x1, x2, x3)) -> c11(U31'(zeros, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(0, x1, x2, x3)) -> c11(U31'(0, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(tt, x1, x2, x3)) -> c11(U31'(tt, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(nil, x1, x2, x3)) -> c11(U31'(nil, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_take(x0, cons_active(z0))) -> c12(TAKE(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_take(x0, cons_mark(z0))) -> c12(TAKE(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_take(x0, cons_cons(z0, z1))) -> c12(TAKE(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_take(x0, cons_U11(z0, z1))) -> c12(TAKE(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_take(x0, cons_s(z0))) -> c12(TAKE(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_take(x0, cons_length(z0))) -> c12(TAKE(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_take(x0, cons_U21(z0))) -> c12(TAKE(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_take(x0, cons_U31(z0, z1, z2, z3))) -> c12(TAKE(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_take(x0, cons_take(z0, z1))) -> c12(TAKE(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_take(x0, cons_and(z0, z1))) -> c12(TAKE(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_take(x0, cons_isNat(z0))) -> c12(TAKE(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_take(x0, cons_isNatList(z0))) -> c12(TAKE(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_take(x0, cons_isNatIList(z0))) -> c12(TAKE(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_take(cons_active(z0), x1)) -> c12(TAKE(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_take(cons_mark(z0), x1)) -> c12(TAKE(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_take(cons_cons(z0, z1), x1)) -> c12(TAKE(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_U11(z0, z1), x1)) -> c12(TAKE(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_s(z0), x1)) -> c12(TAKE(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_take(cons_length(z0), x1)) -> c12(TAKE(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_take(cons_U21(z0), x1)) -> c12(TAKE(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_take(cons_U31(z0, z1, z2, z3), x1)) -> c12(TAKE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_take(cons_take(z0, z1), x1)) -> c12(TAKE(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_and(z0, z1), x1)) -> c12(TAKE(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_isNat(z0), x1)) -> c12(TAKE(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_take(cons_isNatList(z0), x1)) -> c12(TAKE(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_take(cons_isNatIList(z0), x1)) -> c12(TAKE(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_take(x0, zeros)) -> c12(TAKE(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_take(x0, 0)) -> c12(TAKE(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_take(x0, tt)) -> c12(TAKE(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_take(x0, nil)) -> c12(TAKE(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_take(zeros, x1)) -> c12(TAKE(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(0, x1)) -> c12(TAKE(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(tt, x1)) -> c12(TAKE(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(nil, x1)) -> c12(TAKE(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(x0, cons_active(z0))) -> c13(AND(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_and(x0, cons_mark(z0))) -> c13(AND(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_and(x0, cons_cons(z0, z1))) -> c13(AND(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_and(x0, cons_U11(z0, z1))) -> c13(AND(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_and(x0, cons_s(z0))) -> c13(AND(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_and(x0, cons_length(z0))) -> c13(AND(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_and(x0, cons_U21(z0))) -> c13(AND(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_and(x0, cons_U31(z0, z1, z2, z3))) -> c13(AND(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_and(x0, cons_take(z0, z1))) -> c13(AND(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_and(x0, cons_and(z0, z1))) -> c13(AND(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_and(x0, cons_isNat(z0))) -> c13(AND(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_and(x0, cons_isNatList(z0))) -> c13(AND(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_and(x0, cons_isNatIList(z0))) -> c13(AND(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_and(cons_active(z0), x1)) -> c13(AND(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_and(cons_mark(z0), x1)) -> c13(AND(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_and(cons_cons(z0, z1), x1)) -> c13(AND(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_U11(z0, z1), x1)) -> c13(AND(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_s(z0), x1)) -> c13(AND(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_and(cons_length(z0), x1)) -> c13(AND(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_and(cons_U21(z0), x1)) -> c13(AND(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_and(cons_U31(z0, z1, z2, z3), x1)) -> c13(AND(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_and(cons_take(z0, z1), x1)) -> c13(AND(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_and(z0, z1), x1)) -> c13(AND(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_isNat(z0), x1)) -> c13(AND(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_and(cons_isNatList(z0), x1)) -> c13(AND(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_and(cons_isNatIList(z0), x1)) -> c13(AND(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_and(x0, zeros)) -> c13(AND(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_and(x0, 0)) -> c13(AND(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_and(x0, tt)) -> c13(AND(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_and(x0, nil)) -> c13(AND(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_and(zeros, x1)) -> c13(AND(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(0, x1)) -> c13(AND(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(tt, x1)) -> c13(AND(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(nil, x1)) -> c13(AND(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_isNat(cons_active(z0))) -> c14(ISNAT(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_isNat(cons_mark(z0))) -> c14(ISNAT(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_isNat(cons_cons(z0, z1))) -> c14(ISNAT(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_isNat(cons_U11(z0, z1))) -> c14(ISNAT(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_isNat(cons_s(z0))) -> c14(ISNAT(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_isNat(cons_length(z0))) -> c14(ISNAT(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_isNat(cons_U21(z0))) -> c14(ISNAT(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_isNat(cons_U31(z0, z1, z2, z3))) -> c14(ISNAT(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_isNat(cons_take(z0, z1))) -> c14(ISNAT(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_isNat(cons_and(z0, z1))) -> c14(ISNAT(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_isNat(cons_isNat(z0))) -> c14(ISNAT(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_isNat(cons_isNatList(z0))) -> c14(ISNAT(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_isNat(cons_isNatIList(z0))) -> c14(ISNAT(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_isNatList(cons_active(z0))) -> c15(ISNATLIST(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_isNatList(cons_mark(z0))) -> c15(ISNATLIST(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_isNatList(cons_cons(z0, z1))) -> c15(ISNATLIST(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_isNatList(cons_U11(z0, z1))) -> c15(ISNATLIST(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_isNatList(cons_s(z0))) -> c15(ISNATLIST(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_isNatList(cons_length(z0))) -> c15(ISNATLIST(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_isNatList(cons_U21(z0))) -> c15(ISNATLIST(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_isNatList(cons_U31(z0, z1, z2, z3))) -> c15(ISNATLIST(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_isNatList(cons_take(z0, z1))) -> c15(ISNATLIST(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_isNatList(cons_and(z0, z1))) -> c15(ISNATLIST(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_isNatList(cons_isNat(z0))) -> c15(ISNATLIST(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_isNatList(cons_isNatList(z0))) -> c15(ISNATLIST(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_isNatList(cons_isNatIList(z0))) -> c15(ISNATLIST(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_isNatIList(cons_active(z0))) -> c16(ISNATILIST(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_isNatIList(cons_mark(z0))) -> c16(ISNATILIST(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_isNatIList(cons_cons(z0, z1))) -> c16(ISNATILIST(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_isNatIList(cons_U11(z0, z1))) -> c16(ISNATILIST(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_isNatIList(cons_s(z0))) -> c16(ISNATILIST(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_isNatIList(cons_length(z0))) -> c16(ISNATILIST(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_isNatIList(cons_U21(z0))) -> c16(ISNATILIST(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_isNatIList(cons_U31(z0, z1, z2, z3))) -> c16(ISNATILIST(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_isNatIList(cons_take(z0, z1))) -> c16(ISNATILIST(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_isNatIList(cons_and(z0, z1))) -> c16(ISNATILIST(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_isNatIList(cons_isNat(z0))) -> c16(ISNATILIST(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_isNatIList(cons_isNatList(z0))) -> c16(ISNATILIST(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_isNatIList(cons_isNatIList(z0))) -> c16(ISNATILIST(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) MARK(cons(zeros, x1)) -> c53(ACTIVE(cons(active(zeros), x1)), CONS(mark(zeros), x1), MARK(zeros)) MARK(cons(cons(z0, z1), x1)) -> c53(ACTIVE(cons(active(cons(mark(z0), z1)), x1)), CONS(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(cons(0, x1)) -> c53(ACTIVE(cons(active(0), x1)), CONS(mark(0), x1), MARK(0)) MARK(cons(U11(z0, z1), x1)) -> c53(ACTIVE(cons(active(U11(mark(z0), z1)), x1)), CONS(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(cons(tt, x1)) -> c53(ACTIVE(cons(active(tt), x1)), CONS(mark(tt), x1), MARK(tt)) MARK(cons(s(z0), x1)) -> c53(ACTIVE(cons(active(s(mark(z0))), x1)), CONS(mark(s(z0)), x1), MARK(s(z0))) MARK(cons(length(z0), x1)) -> c53(ACTIVE(cons(active(length(mark(z0))), x1)), CONS(mark(length(z0)), x1), MARK(length(z0))) MARK(cons(U21(z0), x1)) -> c53(ACTIVE(cons(active(U21(mark(z0))), x1)), CONS(mark(U21(z0)), x1), MARK(U21(z0))) MARK(cons(nil, x1)) -> c53(ACTIVE(cons(active(nil), x1)), CONS(mark(nil), x1), MARK(nil)) MARK(cons(U31(z0, z1, z2, z3), x1)) -> c53(ACTIVE(cons(active(U31(mark(z0), z1, z2, z3)), x1)), CONS(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(cons(take(z0, z1), x1)) -> c53(ACTIVE(cons(active(take(mark(z0), mark(z1))), x1)), CONS(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(cons(and(z0, z1), x1)) -> c53(ACTIVE(cons(active(and(mark(z0), z1)), x1)), CONS(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(cons(isNat(z0), x1)) -> c53(ACTIVE(cons(active(isNat(z0)), x1)), CONS(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(cons(isNatList(z0), x1)) -> c53(ACTIVE(cons(active(isNatList(z0)), x1)), CONS(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(cons(isNatIList(z0), x1)) -> c53(ACTIVE(cons(active(isNatIList(z0)), x1)), CONS(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(cons(x0, x1)) -> c53(CONS(mark(x0), x1)) MARK(cons(z0, z1)) -> c53(CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(z0, z1)), U11'(mark(z0), z1), MARK(z0)) MARK(U11(zeros, x1)) -> c55(ACTIVE(U11(active(zeros), x1)), U11'(mark(zeros), x1), MARK(zeros)) MARK(U11(cons(z0, z1), x1)) -> c55(ACTIVE(U11(active(cons(mark(z0), z1)), x1)), U11'(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(U11(0, x1)) -> c55(ACTIVE(U11(active(0), x1)), U11'(mark(0), x1), MARK(0)) MARK(U11(U11(z0, z1), x1)) -> c55(ACTIVE(U11(active(U11(mark(z0), z1)), x1)), U11'(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(U11(tt, x1)) -> c55(ACTIVE(U11(active(tt), x1)), U11'(mark(tt), x1), MARK(tt)) MARK(U11(s(z0), x1)) -> c55(ACTIVE(U11(active(s(mark(z0))), x1)), U11'(mark(s(z0)), x1), MARK(s(z0))) MARK(U11(length(z0), x1)) -> c55(ACTIVE(U11(active(length(mark(z0))), x1)), U11'(mark(length(z0)), x1), MARK(length(z0))) MARK(U11(U21(z0), x1)) -> c55(ACTIVE(U11(active(U21(mark(z0))), x1)), U11'(mark(U21(z0)), x1), MARK(U21(z0))) MARK(U11(nil, x1)) -> c55(ACTIVE(U11(active(nil), x1)), U11'(mark(nil), x1), MARK(nil)) MARK(U11(U31(z0, z1, z2, z3), x1)) -> c55(ACTIVE(U11(active(U31(mark(z0), z1, z2, z3)), x1)), U11'(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(U11(take(z0, z1), x1)) -> c55(ACTIVE(U11(active(take(mark(z0), mark(z1))), x1)), U11'(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(U11(and(z0, z1), x1)) -> c55(ACTIVE(U11(active(and(mark(z0), z1)), x1)), U11'(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(U11(isNat(z0), x1)) -> c55(ACTIVE(U11(active(isNat(z0)), x1)), U11'(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(U11(isNatList(z0), x1)) -> c55(ACTIVE(U11(active(isNatList(z0)), x1)), U11'(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(U11(isNatIList(z0), x1)) -> c55(ACTIVE(U11(active(isNatIList(z0)), x1)), U11'(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(U11(x0, x1)) -> c55(U11'(mark(x0), x1)) MARK(s(zeros)) -> c57(ACTIVE(s(active(zeros))), S(mark(zeros)), MARK(zeros)) MARK(s(cons(z0, z1))) -> c57(ACTIVE(s(active(cons(mark(z0), z1)))), S(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(s(0)) -> c57(ACTIVE(s(active(0))), S(mark(0)), MARK(0)) MARK(s(U11(z0, z1))) -> c57(ACTIVE(s(active(U11(mark(z0), z1)))), S(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(s(tt)) -> c57(ACTIVE(s(active(tt))), S(mark(tt)), MARK(tt)) MARK(s(s(z0))) -> c57(ACTIVE(s(active(s(mark(z0))))), S(mark(s(z0))), MARK(s(z0))) MARK(s(length(z0))) -> c57(ACTIVE(s(active(length(mark(z0))))), S(mark(length(z0))), MARK(length(z0))) MARK(s(U21(z0))) -> c57(ACTIVE(s(active(U21(mark(z0))))), S(mark(U21(z0))), MARK(U21(z0))) MARK(s(nil)) -> c57(ACTIVE(s(active(nil))), S(mark(nil)), MARK(nil)) MARK(s(U31(z0, z1, z2, z3))) -> c57(ACTIVE(s(active(U31(mark(z0), z1, z2, z3)))), S(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(s(take(z0, z1))) -> c57(ACTIVE(s(active(take(mark(z0), mark(z1))))), S(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(s(and(z0, z1))) -> c57(ACTIVE(s(active(and(mark(z0), z1)))), S(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(s(isNat(z0))) -> c57(ACTIVE(s(active(isNat(z0)))), S(mark(isNat(z0))), MARK(isNat(z0))) MARK(s(isNatList(z0))) -> c57(ACTIVE(s(active(isNatList(z0)))), S(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(s(isNatIList(z0))) -> c57(ACTIVE(s(active(isNatIList(z0)))), S(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(s(z0)) -> c57(S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(z0)), LENGTH(mark(z0)), MARK(z0)) MARK(length(zeros)) -> c58(ACTIVE(length(active(zeros))), LENGTH(mark(zeros)), MARK(zeros)) MARK(length(cons(z0, z1))) -> c58(ACTIVE(length(active(cons(mark(z0), z1)))), LENGTH(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(length(0)) -> c58(ACTIVE(length(active(0))), LENGTH(mark(0)), MARK(0)) MARK(length(U11(z0, z1))) -> c58(ACTIVE(length(active(U11(mark(z0), z1)))), LENGTH(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(length(tt)) -> c58(ACTIVE(length(active(tt))), LENGTH(mark(tt)), MARK(tt)) MARK(length(s(z0))) -> c58(ACTIVE(length(active(s(mark(z0))))), LENGTH(mark(s(z0))), MARK(s(z0))) MARK(length(length(z0))) -> c58(ACTIVE(length(active(length(mark(z0))))), LENGTH(mark(length(z0))), MARK(length(z0))) MARK(length(U21(z0))) -> c58(ACTIVE(length(active(U21(mark(z0))))), LENGTH(mark(U21(z0))), MARK(U21(z0))) MARK(length(nil)) -> c58(ACTIVE(length(active(nil))), LENGTH(mark(nil)), MARK(nil)) MARK(length(U31(z0, z1, z2, z3))) -> c58(ACTIVE(length(active(U31(mark(z0), z1, z2, z3)))), LENGTH(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(length(take(z0, z1))) -> c58(ACTIVE(length(active(take(mark(z0), mark(z1))))), LENGTH(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(length(and(z0, z1))) -> c58(ACTIVE(length(active(and(mark(z0), z1)))), LENGTH(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(length(isNat(z0))) -> c58(ACTIVE(length(active(isNat(z0)))), LENGTH(mark(isNat(z0))), MARK(isNat(z0))) MARK(length(isNatList(z0))) -> c58(ACTIVE(length(active(isNatList(z0)))), LENGTH(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(length(isNatIList(z0))) -> c58(ACTIVE(length(active(isNatIList(z0)))), LENGTH(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(U21(z0)) -> c59(ACTIVE(U21(z0)), U21'(mark(z0)), MARK(z0)) MARK(U21(zeros)) -> c59(ACTIVE(U21(active(zeros))), U21'(mark(zeros)), MARK(zeros)) MARK(U21(cons(z0, z1))) -> c59(ACTIVE(U21(active(cons(mark(z0), z1)))), U21'(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(U21(0)) -> c59(ACTIVE(U21(active(0))), U21'(mark(0)), MARK(0)) MARK(U21(U11(z0, z1))) -> c59(ACTIVE(U21(active(U11(mark(z0), z1)))), U21'(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(U21(tt)) -> c59(ACTIVE(U21(active(tt))), U21'(mark(tt)), MARK(tt)) MARK(U21(s(z0))) -> c59(ACTIVE(U21(active(s(mark(z0))))), U21'(mark(s(z0))), MARK(s(z0))) MARK(U21(length(z0))) -> c59(ACTIVE(U21(active(length(mark(z0))))), U21'(mark(length(z0))), MARK(length(z0))) MARK(U21(U21(z0))) -> c59(ACTIVE(U21(active(U21(mark(z0))))), U21'(mark(U21(z0))), MARK(U21(z0))) MARK(U21(nil)) -> c59(ACTIVE(U21(active(nil))), U21'(mark(nil)), MARK(nil)) MARK(U21(U31(z0, z1, z2, z3))) -> c59(ACTIVE(U21(active(U31(mark(z0), z1, z2, z3)))), U21'(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(U21(take(z0, z1))) -> c59(ACTIVE(U21(active(take(mark(z0), mark(z1))))), U21'(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(U21(and(z0, z1))) -> c59(ACTIVE(U21(active(and(mark(z0), z1)))), U21'(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(U21(isNat(z0))) -> c59(ACTIVE(U21(active(isNat(z0)))), U21'(mark(isNat(z0))), MARK(isNat(z0))) MARK(U21(isNatList(z0))) -> c59(ACTIVE(U21(active(isNatList(z0)))), U21'(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(U21(isNatIList(z0))) -> c59(ACTIVE(U21(active(isNatIList(z0)))), U21'(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(z0, z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U31(zeros, x1, x2, x3)) -> c61(ACTIVE(U31(active(zeros), x1, x2, x3)), U31'(mark(zeros), x1, x2, x3), MARK(zeros)) MARK(U31(cons(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(cons(mark(z0), z1)), x1, x2, x3)), U31'(mark(cons(z0, z1)), x1, x2, x3), MARK(cons(z0, z1))) MARK(U31(0, x1, x2, x3)) -> c61(ACTIVE(U31(active(0), x1, x2, x3)), U31'(mark(0), x1, x2, x3), MARK(0)) MARK(U31(U11(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(U11(mark(z0), z1)), x1, x2, x3)), U31'(mark(U11(z0, z1)), x1, x2, x3), MARK(U11(z0, z1))) MARK(U31(tt, x1, x2, x3)) -> c61(ACTIVE(U31(active(tt), x1, x2, x3)), U31'(mark(tt), x1, x2, x3), MARK(tt)) MARK(U31(s(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(s(mark(z0))), x1, x2, x3)), U31'(mark(s(z0)), x1, x2, x3), MARK(s(z0))) MARK(U31(length(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(length(mark(z0))), x1, x2, x3)), U31'(mark(length(z0)), x1, x2, x3), MARK(length(z0))) MARK(U31(U21(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(U21(mark(z0))), x1, x2, x3)), U31'(mark(U21(z0)), x1, x2, x3), MARK(U21(z0))) MARK(U31(nil, x1, x2, x3)) -> c61(ACTIVE(U31(active(nil), x1, x2, x3)), U31'(mark(nil), x1, x2, x3), MARK(nil)) MARK(U31(U31(z0, z1, z2, z3), x1, x2, x3)) -> c61(ACTIVE(U31(active(U31(mark(z0), z1, z2, z3)), x1, x2, x3)), U31'(mark(U31(z0, z1, z2, z3)), x1, x2, x3), MARK(U31(z0, z1, z2, z3))) MARK(U31(take(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(take(mark(z0), mark(z1))), x1, x2, x3)), U31'(mark(take(z0, z1)), x1, x2, x3), MARK(take(z0, z1))) MARK(U31(and(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(and(mark(z0), z1)), x1, x2, x3)), U31'(mark(and(z0, z1)), x1, x2, x3), MARK(and(z0, z1))) MARK(U31(isNat(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNat(z0)), x1, x2, x3)), U31'(mark(isNat(z0)), x1, x2, x3), MARK(isNat(z0))) MARK(U31(isNatList(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNatList(z0)), x1, x2, x3)), U31'(mark(isNatList(z0)), x1, x2, x3), MARK(isNatList(z0))) MARK(U31(isNatIList(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNatIList(z0)), x1, x2, x3)), U31'(mark(isNatIList(z0)), x1, x2, x3), MARK(isNatIList(z0))) MARK(U31(x0, x1, x2, x3)) -> c61(U31'(mark(x0), x1, x2, x3)) MARK(take(z0, x1)) -> c62(ACTIVE(take(z0, mark(x1))), TAKE(mark(z0), mark(x1)), MARK(z0), MARK(x1)) MARK(take(x0, z1)) -> c62(ACTIVE(take(mark(x0), z1)), TAKE(mark(x0), mark(z1)), MARK(x0), MARK(z1)) MARK(take(x0, zeros)) -> c62(ACTIVE(take(mark(x0), active(zeros))), TAKE(mark(x0), mark(zeros)), MARK(x0), MARK(zeros)) MARK(take(x0, cons(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(cons(mark(z0), z1)))), TAKE(mark(x0), mark(cons(z0, z1))), MARK(x0), MARK(cons(z0, z1))) MARK(take(x0, 0)) -> c62(ACTIVE(take(mark(x0), active(0))), TAKE(mark(x0), mark(0)), MARK(x0), MARK(0)) MARK(take(x0, U11(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(U11(mark(z0), z1)))), TAKE(mark(x0), mark(U11(z0, z1))), MARK(x0), MARK(U11(z0, z1))) MARK(take(x0, tt)) -> c62(ACTIVE(take(mark(x0), active(tt))), TAKE(mark(x0), mark(tt)), MARK(x0), MARK(tt)) MARK(take(x0, s(z0))) -> c62(ACTIVE(take(mark(x0), active(s(mark(z0))))), TAKE(mark(x0), mark(s(z0))), MARK(x0), MARK(s(z0))) MARK(take(x0, length(z0))) -> c62(ACTIVE(take(mark(x0), active(length(mark(z0))))), TAKE(mark(x0), mark(length(z0))), MARK(x0), MARK(length(z0))) MARK(take(x0, U21(z0))) -> c62(ACTIVE(take(mark(x0), active(U21(mark(z0))))), TAKE(mark(x0), mark(U21(z0))), MARK(x0), MARK(U21(z0))) MARK(take(x0, nil)) -> c62(ACTIVE(take(mark(x0), active(nil))), TAKE(mark(x0), mark(nil)), MARK(x0), MARK(nil)) MARK(take(x0, U31(z0, z1, z2, z3))) -> c62(ACTIVE(take(mark(x0), active(U31(mark(z0), z1, z2, z3)))), TAKE(mark(x0), mark(U31(z0, z1, z2, z3))), MARK(x0), MARK(U31(z0, z1, z2, z3))) MARK(take(x0, take(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(take(mark(z0), mark(z1))))), TAKE(mark(x0), mark(take(z0, z1))), MARK(x0), MARK(take(z0, z1))) MARK(take(x0, and(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(and(mark(z0), z1)))), TAKE(mark(x0), mark(and(z0, z1))), MARK(x0), MARK(and(z0, z1))) MARK(take(x0, isNat(z0))) -> c62(ACTIVE(take(mark(x0), active(isNat(z0)))), TAKE(mark(x0), mark(isNat(z0))), MARK(x0), MARK(isNat(z0))) MARK(take(x0, isNatList(z0))) -> c62(ACTIVE(take(mark(x0), active(isNatList(z0)))), TAKE(mark(x0), mark(isNatList(z0))), MARK(x0), MARK(isNatList(z0))) MARK(take(x0, isNatIList(z0))) -> c62(ACTIVE(take(mark(x0), active(isNatIList(z0)))), TAKE(mark(x0), mark(isNatIList(z0))), MARK(x0), MARK(isNatIList(z0))) MARK(take(zeros, x1)) -> c62(ACTIVE(take(active(zeros), mark(x1))), TAKE(mark(zeros), mark(x1)), MARK(zeros), MARK(x1)) MARK(take(cons(z0, z1), x1)) -> c62(ACTIVE(take(active(cons(mark(z0), z1)), mark(x1))), TAKE(mark(cons(z0, z1)), mark(x1)), MARK(cons(z0, z1)), MARK(x1)) MARK(take(0, x1)) -> c62(ACTIVE(take(active(0), mark(x1))), TAKE(mark(0), mark(x1)), MARK(0), MARK(x1)) MARK(take(U11(z0, z1), x1)) -> c62(ACTIVE(take(active(U11(mark(z0), z1)), mark(x1))), TAKE(mark(U11(z0, z1)), mark(x1)), MARK(U11(z0, z1)), MARK(x1)) MARK(take(tt, x1)) -> c62(ACTIVE(take(active(tt), mark(x1))), TAKE(mark(tt), mark(x1)), MARK(tt), MARK(x1)) MARK(take(s(z0), x1)) -> c62(ACTIVE(take(active(s(mark(z0))), mark(x1))), TAKE(mark(s(z0)), mark(x1)), MARK(s(z0)), MARK(x1)) MARK(take(length(z0), x1)) -> c62(ACTIVE(take(active(length(mark(z0))), mark(x1))), TAKE(mark(length(z0)), mark(x1)), MARK(length(z0)), MARK(x1)) MARK(take(U21(z0), x1)) -> c62(ACTIVE(take(active(U21(mark(z0))), mark(x1))), TAKE(mark(U21(z0)), mark(x1)), MARK(U21(z0)), MARK(x1)) MARK(take(nil, x1)) -> c62(ACTIVE(take(active(nil), mark(x1))), TAKE(mark(nil), mark(x1)), MARK(nil), MARK(x1)) MARK(take(U31(z0, z1, z2, z3), x1)) -> c62(ACTIVE(take(active(U31(mark(z0), z1, z2, z3)), mark(x1))), TAKE(mark(U31(z0, z1, z2, z3)), mark(x1)), MARK(U31(z0, z1, z2, z3)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c62(ACTIVE(take(active(take(mark(z0), mark(z1))), mark(x1))), TAKE(mark(take(z0, z1)), mark(x1)), MARK(take(z0, z1)), MARK(x1)) MARK(take(and(z0, z1), x1)) -> c62(ACTIVE(take(active(and(mark(z0), z1)), mark(x1))), TAKE(mark(and(z0, z1)), mark(x1)), MARK(and(z0, z1)), MARK(x1)) MARK(take(isNat(z0), x1)) -> c62(ACTIVE(take(active(isNat(z0)), mark(x1))), TAKE(mark(isNat(z0)), mark(x1)), MARK(isNat(z0)), MARK(x1)) MARK(take(isNatList(z0), x1)) -> c62(ACTIVE(take(active(isNatList(z0)), mark(x1))), TAKE(mark(isNatList(z0)), mark(x1)), MARK(isNatList(z0)), MARK(x1)) MARK(take(isNatIList(z0), x1)) -> c62(ACTIVE(take(active(isNatIList(z0)), mark(x1))), TAKE(mark(isNatIList(z0)), mark(x1)), MARK(isNatIList(z0)), MARK(x1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(z0, z1)), AND(mark(z0), z1), MARK(z0)) MARK(and(zeros, x1)) -> c63(ACTIVE(and(active(zeros), x1)), AND(mark(zeros), x1), MARK(zeros)) MARK(and(cons(z0, z1), x1)) -> c63(ACTIVE(and(active(cons(mark(z0), z1)), x1)), AND(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(and(0, x1)) -> c63(ACTIVE(and(active(0), x1)), AND(mark(0), x1), MARK(0)) MARK(and(U11(z0, z1), x1)) -> c63(ACTIVE(and(active(U11(mark(z0), z1)), x1)), AND(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(and(tt, x1)) -> c63(ACTIVE(and(active(tt), x1)), AND(mark(tt), x1), MARK(tt)) MARK(and(s(z0), x1)) -> c63(ACTIVE(and(active(s(mark(z0))), x1)), AND(mark(s(z0)), x1), MARK(s(z0))) MARK(and(length(z0), x1)) -> c63(ACTIVE(and(active(length(mark(z0))), x1)), AND(mark(length(z0)), x1), MARK(length(z0))) MARK(and(U21(z0), x1)) -> c63(ACTIVE(and(active(U21(mark(z0))), x1)), AND(mark(U21(z0)), x1), MARK(U21(z0))) MARK(and(nil, x1)) -> c63(ACTIVE(and(active(nil), x1)), AND(mark(nil), x1), MARK(nil)) MARK(and(U31(z0, z1, z2, z3), x1)) -> c63(ACTIVE(and(active(U31(mark(z0), z1, z2, z3)), x1)), AND(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(and(take(z0, z1), x1)) -> c63(ACTIVE(and(active(take(mark(z0), mark(z1))), x1)), AND(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(and(and(z0, z1), x1)) -> c63(ACTIVE(and(active(and(mark(z0), z1)), x1)), AND(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(and(isNat(z0), x1)) -> c63(ACTIVE(and(active(isNat(z0)), x1)), AND(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(and(isNatList(z0), x1)) -> c63(ACTIVE(and(active(isNatList(z0)), x1)), AND(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(and(isNatIList(z0), x1)) -> c63(ACTIVE(and(active(isNatIList(z0)), x1)), AND(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(and(x0, x1)) -> c63(AND(mark(x0), x1)) ENCODE_ACTIVE(cons_active(z0)) -> c(ACTIVE(active(encArg(z0)))) ENCODE_ACTIVE(cons_mark(z0)) -> c(ACTIVE(mark(encArg(z0)))) ENCODE_ACTIVE(cons_cons(z0, z1)) -> c(ACTIVE(cons(encArg(z0), encArg(z1)))) ENCODE_ACTIVE(cons_U11(z0, z1)) -> c(ACTIVE(U11(encArg(z0), encArg(z1)))) ENCODE_ACTIVE(cons_s(z0)) -> c(ACTIVE(s(encArg(z0)))) ENCODE_ACTIVE(cons_length(z0)) -> c(ACTIVE(length(encArg(z0)))) ENCODE_ACTIVE(cons_U21(z0)) -> c(ACTIVE(U21(encArg(z0)))) ENCODE_ACTIVE(cons_U31(z0, z1, z2, z3)) -> c(ACTIVE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)))) ENCODE_ACTIVE(cons_take(z0, z1)) -> c(ACTIVE(take(encArg(z0), encArg(z1)))) ENCODE_ACTIVE(cons_and(z0, z1)) -> c(ACTIVE(and(encArg(z0), encArg(z1)))) ENCODE_ACTIVE(cons_isNat(z0)) -> c(ACTIVE(isNat(encArg(z0)))) ENCODE_ACTIVE(cons_isNatList(z0)) -> c(ACTIVE(isNatList(encArg(z0)))) ENCODE_ACTIVE(cons_isNatIList(z0)) -> c(ACTIVE(isNatIList(encArg(z0)))) ENCODE_MARK(cons_active(z0)) -> c(MARK(active(encArg(z0)))) ENCODE_MARK(cons_mark(z0)) -> c(MARK(mark(encArg(z0)))) ENCODE_MARK(cons_cons(z0, z1)) -> c(MARK(cons(encArg(z0), encArg(z1)))) ENCODE_MARK(cons_U11(z0, z1)) -> c(MARK(U11(encArg(z0), encArg(z1)))) ENCODE_MARK(cons_s(z0)) -> c(MARK(s(encArg(z0)))) ENCODE_MARK(cons_length(z0)) -> c(MARK(length(encArg(z0)))) ENCODE_MARK(cons_U21(z0)) -> c(MARK(U21(encArg(z0)))) ENCODE_MARK(cons_U31(z0, z1, z2, z3)) -> c(MARK(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)))) ENCODE_MARK(cons_take(z0, z1)) -> c(MARK(take(encArg(z0), encArg(z1)))) ENCODE_MARK(cons_and(z0, z1)) -> c(MARK(and(encArg(z0), encArg(z1)))) ENCODE_MARK(cons_isNat(z0)) -> c(MARK(isNat(encArg(z0)))) ENCODE_MARK(cons_isNatList(z0)) -> c(MARK(isNatList(encArg(z0)))) ENCODE_MARK(cons_isNatIList(z0)) -> c(MARK(isNatIList(encArg(z0)))) ENCODE_CONS(x0, zeros) -> c(CONS(encArg(x0), zeros)) ENCODE_CONS(x0, 0) -> c(CONS(encArg(x0), 0)) ENCODE_CONS(x0, tt) -> c(CONS(encArg(x0), tt)) ENCODE_CONS(x0, nil) -> c(CONS(encArg(x0), nil)) ENCODE_CONS(x0, cons_active(z0)) -> c(CONS(encArg(x0), active(encArg(z0)))) ENCODE_CONS(x0, cons_mark(z0)) -> c(CONS(encArg(x0), mark(encArg(z0)))) ENCODE_CONS(x0, cons_cons(z0, z1)) -> c(CONS(encArg(x0), cons(encArg(z0), encArg(z1)))) ENCODE_CONS(x0, cons_U11(z0, z1)) -> c(CONS(encArg(x0), U11(encArg(z0), encArg(z1)))) ENCODE_CONS(x0, cons_s(z0)) -> c(CONS(encArg(x0), s(encArg(z0)))) ENCODE_CONS(x0, cons_length(z0)) -> c(CONS(encArg(x0), length(encArg(z0)))) ENCODE_CONS(x0, cons_U21(z0)) -> c(CONS(encArg(x0), U21(encArg(z0)))) ENCODE_CONS(x0, cons_U31(z0, z1, z2, z3)) -> c(CONS(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)))) ENCODE_CONS(x0, cons_take(z0, z1)) -> c(CONS(encArg(x0), take(encArg(z0), encArg(z1)))) ENCODE_CONS(x0, cons_and(z0, z1)) -> c(CONS(encArg(x0), and(encArg(z0), encArg(z1)))) ENCODE_CONS(x0, cons_isNat(z0)) -> c(CONS(encArg(x0), isNat(encArg(z0)))) ENCODE_CONS(x0, cons_isNatList(z0)) -> c(CONS(encArg(x0), isNatList(encArg(z0)))) ENCODE_CONS(x0, cons_isNatIList(z0)) -> c(CONS(encArg(x0), isNatIList(encArg(z0)))) ENCODE_CONS(zeros, x1) -> c(CONS(zeros, encArg(x1))) ENCODE_CONS(0, x1) -> c(CONS(0, encArg(x1))) ENCODE_CONS(tt, x1) -> c(CONS(tt, encArg(x1))) ENCODE_CONS(nil, x1) -> c(CONS(nil, encArg(x1))) ENCODE_CONS(cons_active(z0), x1) -> c(CONS(active(encArg(z0)), encArg(x1))) ENCODE_CONS(cons_mark(z0), x1) -> c(CONS(mark(encArg(z0)), encArg(x1))) ENCODE_CONS(cons_cons(z0, z1), x1) -> c(CONS(cons(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_CONS(cons_U11(z0, z1), x1) -> c(CONS(U11(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_CONS(cons_s(z0), x1) -> c(CONS(s(encArg(z0)), encArg(x1))) ENCODE_CONS(cons_length(z0), x1) -> c(CONS(length(encArg(z0)), encArg(x1))) ENCODE_CONS(cons_U21(z0), x1) -> c(CONS(U21(encArg(z0)), encArg(x1))) ENCODE_CONS(cons_U31(z0, z1, z2, z3), x1) -> c(CONS(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1))) ENCODE_CONS(cons_take(z0, z1), x1) -> c(CONS(take(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_CONS(cons_and(z0, z1), x1) -> c(CONS(and(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_CONS(cons_isNat(z0), x1) -> c(CONS(isNat(encArg(z0)), encArg(x1))) ENCODE_CONS(cons_isNatList(z0), x1) -> c(CONS(isNatList(encArg(z0)), encArg(x1))) ENCODE_CONS(cons_isNatIList(z0), x1) -> c(CONS(isNatIList(encArg(z0)), encArg(x1))) ENCODE_U11(x0, zeros) -> c(U11'(encArg(x0), zeros)) ENCODE_U11(x0, 0) -> c(U11'(encArg(x0), 0)) ENCODE_U11(x0, tt) -> c(U11'(encArg(x0), tt)) ENCODE_U11(x0, nil) -> c(U11'(encArg(x0), nil)) ENCODE_U11(x0, cons_active(z0)) -> c(U11'(encArg(x0), active(encArg(z0)))) ENCODE_U11(x0, cons_mark(z0)) -> c(U11'(encArg(x0), mark(encArg(z0)))) ENCODE_U11(x0, cons_cons(z0, z1)) -> c(U11'(encArg(x0), cons(encArg(z0), encArg(z1)))) ENCODE_U11(x0, cons_U11(z0, z1)) -> c(U11'(encArg(x0), U11(encArg(z0), encArg(z1)))) ENCODE_U11(x0, cons_s(z0)) -> c(U11'(encArg(x0), s(encArg(z0)))) ENCODE_U11(x0, cons_length(z0)) -> c(U11'(encArg(x0), length(encArg(z0)))) ENCODE_U11(x0, cons_U21(z0)) -> c(U11'(encArg(x0), U21(encArg(z0)))) ENCODE_U11(x0, cons_U31(z0, z1, z2, z3)) -> c(U11'(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)))) ENCODE_U11(x0, cons_take(z0, z1)) -> c(U11'(encArg(x0), take(encArg(z0), encArg(z1)))) ENCODE_U11(x0, cons_and(z0, z1)) -> c(U11'(encArg(x0), and(encArg(z0), encArg(z1)))) ENCODE_U11(x0, cons_isNat(z0)) -> c(U11'(encArg(x0), isNat(encArg(z0)))) ENCODE_U11(x0, cons_isNatList(z0)) -> c(U11'(encArg(x0), isNatList(encArg(z0)))) ENCODE_U11(x0, cons_isNatIList(z0)) -> c(U11'(encArg(x0), isNatIList(encArg(z0)))) ENCODE_U11(zeros, x1) -> c(U11'(zeros, encArg(x1))) ENCODE_U11(0, x1) -> c(U11'(0, encArg(x1))) ENCODE_U11(tt, x1) -> c(U11'(tt, encArg(x1))) ENCODE_U11(nil, x1) -> c(U11'(nil, encArg(x1))) ENCODE_U11(cons_active(z0), x1) -> c(U11'(active(encArg(z0)), encArg(x1))) ENCODE_U11(cons_mark(z0), x1) -> c(U11'(mark(encArg(z0)), encArg(x1))) ENCODE_U11(cons_cons(z0, z1), x1) -> c(U11'(cons(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_U11(cons_U11(z0, z1), x1) -> c(U11'(U11(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_U11(cons_s(z0), x1) -> c(U11'(s(encArg(z0)), encArg(x1))) ENCODE_U11(cons_length(z0), x1) -> c(U11'(length(encArg(z0)), encArg(x1))) ENCODE_U11(cons_U21(z0), x1) -> c(U11'(U21(encArg(z0)), encArg(x1))) ENCODE_U11(cons_U31(z0, z1, z2, z3), x1) -> c(U11'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1))) ENCODE_U11(cons_take(z0, z1), x1) -> c(U11'(take(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_U11(cons_and(z0, z1), x1) -> c(U11'(and(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_U11(cons_isNat(z0), x1) -> c(U11'(isNat(encArg(z0)), encArg(x1))) ENCODE_U11(cons_isNatList(z0), x1) -> c(U11'(isNatList(encArg(z0)), encArg(x1))) ENCODE_U11(cons_isNatIList(z0), x1) -> c(U11'(isNatIList(encArg(z0)), encArg(x1))) ENCODE_S(cons_active(z0)) -> c(S(active(encArg(z0)))) ENCODE_S(cons_mark(z0)) -> c(S(mark(encArg(z0)))) ENCODE_S(cons_cons(z0, z1)) -> c(S(cons(encArg(z0), encArg(z1)))) ENCODE_S(cons_U11(z0, z1)) -> c(S(U11(encArg(z0), encArg(z1)))) ENCODE_S(cons_s(z0)) -> c(S(s(encArg(z0)))) ENCODE_S(cons_length(z0)) -> c(S(length(encArg(z0)))) ENCODE_S(cons_U21(z0)) -> c(S(U21(encArg(z0)))) ENCODE_S(cons_U31(z0, z1, z2, z3)) -> c(S(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)))) ENCODE_S(cons_take(z0, z1)) -> c(S(take(encArg(z0), encArg(z1)))) ENCODE_S(cons_and(z0, z1)) -> c(S(and(encArg(z0), encArg(z1)))) ENCODE_S(cons_isNat(z0)) -> c(S(isNat(encArg(z0)))) ENCODE_S(cons_isNatList(z0)) -> c(S(isNatList(encArg(z0)))) ENCODE_S(cons_isNatIList(z0)) -> c(S(isNatIList(encArg(z0)))) ENCODE_LENGTH(cons_active(z0)) -> c(LENGTH(active(encArg(z0)))) ENCODE_LENGTH(cons_mark(z0)) -> c(LENGTH(mark(encArg(z0)))) ENCODE_LENGTH(cons_cons(z0, z1)) -> c(LENGTH(cons(encArg(z0), encArg(z1)))) ENCODE_LENGTH(cons_U11(z0, z1)) -> c(LENGTH(U11(encArg(z0), encArg(z1)))) ENCODE_LENGTH(cons_s(z0)) -> c(LENGTH(s(encArg(z0)))) ENCODE_LENGTH(cons_length(z0)) -> c(LENGTH(length(encArg(z0)))) ENCODE_LENGTH(cons_U21(z0)) -> c(LENGTH(U21(encArg(z0)))) ENCODE_LENGTH(cons_U31(z0, z1, z2, z3)) -> c(LENGTH(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)))) ENCODE_LENGTH(cons_take(z0, z1)) -> c(LENGTH(take(encArg(z0), encArg(z1)))) ENCODE_LENGTH(cons_and(z0, z1)) -> c(LENGTH(and(encArg(z0), encArg(z1)))) ENCODE_LENGTH(cons_isNat(z0)) -> c(LENGTH(isNat(encArg(z0)))) ENCODE_LENGTH(cons_isNatList(z0)) -> c(LENGTH(isNatList(encArg(z0)))) ENCODE_LENGTH(cons_isNatIList(z0)) -> c(LENGTH(isNatIList(encArg(z0)))) ENCODE_U21(zeros) -> c(U21'(zeros)) ENCODE_U21(0) -> c(U21'(0)) ENCODE_U21(tt) -> c(U21'(tt)) ENCODE_U21(nil) -> c(U21'(nil)) ENCODE_U21(cons_active(z0)) -> c(U21'(active(encArg(z0)))) ENCODE_U21(cons_mark(z0)) -> c(U21'(mark(encArg(z0)))) ENCODE_U21(cons_cons(z0, z1)) -> c(U21'(cons(encArg(z0), encArg(z1)))) ENCODE_U21(cons_U11(z0, z1)) -> c(U21'(U11(encArg(z0), encArg(z1)))) ENCODE_U21(cons_s(z0)) -> c(U21'(s(encArg(z0)))) ENCODE_U21(cons_length(z0)) -> c(U21'(length(encArg(z0)))) ENCODE_U21(cons_U21(z0)) -> c(U21'(U21(encArg(z0)))) ENCODE_U21(cons_U31(z0, z1, z2, z3)) -> c(U21'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)))) ENCODE_U21(cons_take(z0, z1)) -> c(U21'(take(encArg(z0), encArg(z1)))) ENCODE_U21(cons_and(z0, z1)) -> c(U21'(and(encArg(z0), encArg(z1)))) ENCODE_U21(cons_isNat(z0)) -> c(U21'(isNat(encArg(z0)))) ENCODE_U21(cons_isNatList(z0)) -> c(U21'(isNatList(encArg(z0)))) ENCODE_U21(cons_isNatIList(z0)) -> c(U21'(isNatIList(encArg(z0)))) S tuples: ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 MARK(cons(zeros, x1)) -> c53(ACTIVE(cons(active(zeros), x1)), CONS(mark(zeros), x1), MARK(zeros)) MARK(cons(cons(z0, z1), x1)) -> c53(ACTIVE(cons(active(cons(mark(z0), z1)), x1)), CONS(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(cons(0, x1)) -> c53(ACTIVE(cons(active(0), x1)), CONS(mark(0), x1), MARK(0)) MARK(cons(U11(z0, z1), x1)) -> c53(ACTIVE(cons(active(U11(mark(z0), z1)), x1)), CONS(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(cons(tt, x1)) -> c53(ACTIVE(cons(active(tt), x1)), CONS(mark(tt), x1), MARK(tt)) MARK(cons(s(z0), x1)) -> c53(ACTIVE(cons(active(s(mark(z0))), x1)), CONS(mark(s(z0)), x1), MARK(s(z0))) MARK(cons(length(z0), x1)) -> c53(ACTIVE(cons(active(length(mark(z0))), x1)), CONS(mark(length(z0)), x1), MARK(length(z0))) MARK(cons(U21(z0), x1)) -> c53(ACTIVE(cons(active(U21(mark(z0))), x1)), CONS(mark(U21(z0)), x1), MARK(U21(z0))) MARK(cons(nil, x1)) -> c53(ACTIVE(cons(active(nil), x1)), CONS(mark(nil), x1), MARK(nil)) MARK(cons(U31(z0, z1, z2, z3), x1)) -> c53(ACTIVE(cons(active(U31(mark(z0), z1, z2, z3)), x1)), CONS(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(cons(take(z0, z1), x1)) -> c53(ACTIVE(cons(active(take(mark(z0), mark(z1))), x1)), CONS(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(cons(and(z0, z1), x1)) -> c53(ACTIVE(cons(active(and(mark(z0), z1)), x1)), CONS(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(cons(isNat(z0), x1)) -> c53(ACTIVE(cons(active(isNat(z0)), x1)), CONS(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(cons(isNatList(z0), x1)) -> c53(ACTIVE(cons(active(isNatList(z0)), x1)), CONS(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(cons(isNatIList(z0), x1)) -> c53(ACTIVE(cons(active(isNatIList(z0)), x1)), CONS(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(cons(x0, x1)) -> c53(CONS(mark(x0), x1)) MARK(cons(z0, z1)) -> c53(CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(z0, z1)), U11'(mark(z0), z1), MARK(z0)) MARK(U11(zeros, x1)) -> c55(ACTIVE(U11(active(zeros), x1)), U11'(mark(zeros), x1), MARK(zeros)) MARK(U11(cons(z0, z1), x1)) -> c55(ACTIVE(U11(active(cons(mark(z0), z1)), x1)), U11'(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(U11(0, x1)) -> c55(ACTIVE(U11(active(0), x1)), U11'(mark(0), x1), MARK(0)) MARK(U11(U11(z0, z1), x1)) -> c55(ACTIVE(U11(active(U11(mark(z0), z1)), x1)), U11'(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(U11(tt, x1)) -> c55(ACTIVE(U11(active(tt), x1)), U11'(mark(tt), x1), MARK(tt)) MARK(U11(s(z0), x1)) -> c55(ACTIVE(U11(active(s(mark(z0))), x1)), U11'(mark(s(z0)), x1), MARK(s(z0))) MARK(U11(length(z0), x1)) -> c55(ACTIVE(U11(active(length(mark(z0))), x1)), U11'(mark(length(z0)), x1), MARK(length(z0))) MARK(U11(U21(z0), x1)) -> c55(ACTIVE(U11(active(U21(mark(z0))), x1)), U11'(mark(U21(z0)), x1), MARK(U21(z0))) MARK(U11(nil, x1)) -> c55(ACTIVE(U11(active(nil), x1)), U11'(mark(nil), x1), MARK(nil)) MARK(U11(U31(z0, z1, z2, z3), x1)) -> c55(ACTIVE(U11(active(U31(mark(z0), z1, z2, z3)), x1)), U11'(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(U11(take(z0, z1), x1)) -> c55(ACTIVE(U11(active(take(mark(z0), mark(z1))), x1)), U11'(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(U11(and(z0, z1), x1)) -> c55(ACTIVE(U11(active(and(mark(z0), z1)), x1)), U11'(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(U11(isNat(z0), x1)) -> c55(ACTIVE(U11(active(isNat(z0)), x1)), U11'(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(U11(isNatList(z0), x1)) -> c55(ACTIVE(U11(active(isNatList(z0)), x1)), U11'(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(U11(isNatIList(z0), x1)) -> c55(ACTIVE(U11(active(isNatIList(z0)), x1)), U11'(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(U11(x0, x1)) -> c55(U11'(mark(x0), x1)) MARK(s(zeros)) -> c57(ACTIVE(s(active(zeros))), S(mark(zeros)), MARK(zeros)) MARK(s(cons(z0, z1))) -> c57(ACTIVE(s(active(cons(mark(z0), z1)))), S(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(s(0)) -> c57(ACTIVE(s(active(0))), S(mark(0)), MARK(0)) MARK(s(U11(z0, z1))) -> c57(ACTIVE(s(active(U11(mark(z0), z1)))), S(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(s(tt)) -> c57(ACTIVE(s(active(tt))), S(mark(tt)), MARK(tt)) MARK(s(s(z0))) -> c57(ACTIVE(s(active(s(mark(z0))))), S(mark(s(z0))), MARK(s(z0))) MARK(s(length(z0))) -> c57(ACTIVE(s(active(length(mark(z0))))), S(mark(length(z0))), MARK(length(z0))) MARK(s(U21(z0))) -> c57(ACTIVE(s(active(U21(mark(z0))))), S(mark(U21(z0))), MARK(U21(z0))) MARK(s(nil)) -> c57(ACTIVE(s(active(nil))), S(mark(nil)), MARK(nil)) MARK(s(U31(z0, z1, z2, z3))) -> c57(ACTIVE(s(active(U31(mark(z0), z1, z2, z3)))), S(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(s(take(z0, z1))) -> c57(ACTIVE(s(active(take(mark(z0), mark(z1))))), S(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(s(and(z0, z1))) -> c57(ACTIVE(s(active(and(mark(z0), z1)))), S(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(s(isNat(z0))) -> c57(ACTIVE(s(active(isNat(z0)))), S(mark(isNat(z0))), MARK(isNat(z0))) MARK(s(isNatList(z0))) -> c57(ACTIVE(s(active(isNatList(z0)))), S(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(s(isNatIList(z0))) -> c57(ACTIVE(s(active(isNatIList(z0)))), S(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(s(z0)) -> c57(S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(z0)), LENGTH(mark(z0)), MARK(z0)) MARK(length(zeros)) -> c58(ACTIVE(length(active(zeros))), LENGTH(mark(zeros)), MARK(zeros)) MARK(length(cons(z0, z1))) -> c58(ACTIVE(length(active(cons(mark(z0), z1)))), LENGTH(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(length(0)) -> c58(ACTIVE(length(active(0))), LENGTH(mark(0)), MARK(0)) MARK(length(U11(z0, z1))) -> c58(ACTIVE(length(active(U11(mark(z0), z1)))), LENGTH(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(length(tt)) -> c58(ACTIVE(length(active(tt))), LENGTH(mark(tt)), MARK(tt)) MARK(length(s(z0))) -> c58(ACTIVE(length(active(s(mark(z0))))), LENGTH(mark(s(z0))), MARK(s(z0))) MARK(length(length(z0))) -> c58(ACTIVE(length(active(length(mark(z0))))), LENGTH(mark(length(z0))), MARK(length(z0))) MARK(length(U21(z0))) -> c58(ACTIVE(length(active(U21(mark(z0))))), LENGTH(mark(U21(z0))), MARK(U21(z0))) MARK(length(nil)) -> c58(ACTIVE(length(active(nil))), LENGTH(mark(nil)), MARK(nil)) MARK(length(U31(z0, z1, z2, z3))) -> c58(ACTIVE(length(active(U31(mark(z0), z1, z2, z3)))), LENGTH(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(length(take(z0, z1))) -> c58(ACTIVE(length(active(take(mark(z0), mark(z1))))), LENGTH(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(length(and(z0, z1))) -> c58(ACTIVE(length(active(and(mark(z0), z1)))), LENGTH(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(length(isNat(z0))) -> c58(ACTIVE(length(active(isNat(z0)))), LENGTH(mark(isNat(z0))), MARK(isNat(z0))) MARK(length(isNatList(z0))) -> c58(ACTIVE(length(active(isNatList(z0)))), LENGTH(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(length(isNatIList(z0))) -> c58(ACTIVE(length(active(isNatIList(z0)))), LENGTH(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(U21(z0)) -> c59(ACTIVE(U21(z0)), U21'(mark(z0)), MARK(z0)) MARK(U21(zeros)) -> c59(ACTIVE(U21(active(zeros))), U21'(mark(zeros)), MARK(zeros)) MARK(U21(cons(z0, z1))) -> c59(ACTIVE(U21(active(cons(mark(z0), z1)))), U21'(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(U21(0)) -> c59(ACTIVE(U21(active(0))), U21'(mark(0)), MARK(0)) MARK(U21(U11(z0, z1))) -> c59(ACTIVE(U21(active(U11(mark(z0), z1)))), U21'(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(U21(tt)) -> c59(ACTIVE(U21(active(tt))), U21'(mark(tt)), MARK(tt)) MARK(U21(s(z0))) -> c59(ACTIVE(U21(active(s(mark(z0))))), U21'(mark(s(z0))), MARK(s(z0))) MARK(U21(length(z0))) -> c59(ACTIVE(U21(active(length(mark(z0))))), U21'(mark(length(z0))), MARK(length(z0))) MARK(U21(U21(z0))) -> c59(ACTIVE(U21(active(U21(mark(z0))))), U21'(mark(U21(z0))), MARK(U21(z0))) MARK(U21(nil)) -> c59(ACTIVE(U21(active(nil))), U21'(mark(nil)), MARK(nil)) MARK(U21(U31(z0, z1, z2, z3))) -> c59(ACTIVE(U21(active(U31(mark(z0), z1, z2, z3)))), U21'(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(U21(take(z0, z1))) -> c59(ACTIVE(U21(active(take(mark(z0), mark(z1))))), U21'(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(U21(and(z0, z1))) -> c59(ACTIVE(U21(active(and(mark(z0), z1)))), U21'(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(U21(isNat(z0))) -> c59(ACTIVE(U21(active(isNat(z0)))), U21'(mark(isNat(z0))), MARK(isNat(z0))) MARK(U21(isNatList(z0))) -> c59(ACTIVE(U21(active(isNatList(z0)))), U21'(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(U21(isNatIList(z0))) -> c59(ACTIVE(U21(active(isNatIList(z0)))), U21'(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(z0, z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U31(zeros, x1, x2, x3)) -> c61(ACTIVE(U31(active(zeros), x1, x2, x3)), U31'(mark(zeros), x1, x2, x3), MARK(zeros)) MARK(U31(cons(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(cons(mark(z0), z1)), x1, x2, x3)), U31'(mark(cons(z0, z1)), x1, x2, x3), MARK(cons(z0, z1))) MARK(U31(0, x1, x2, x3)) -> c61(ACTIVE(U31(active(0), x1, x2, x3)), U31'(mark(0), x1, x2, x3), MARK(0)) MARK(U31(U11(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(U11(mark(z0), z1)), x1, x2, x3)), U31'(mark(U11(z0, z1)), x1, x2, x3), MARK(U11(z0, z1))) MARK(U31(tt, x1, x2, x3)) -> c61(ACTIVE(U31(active(tt), x1, x2, x3)), U31'(mark(tt), x1, x2, x3), MARK(tt)) MARK(U31(s(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(s(mark(z0))), x1, x2, x3)), U31'(mark(s(z0)), x1, x2, x3), MARK(s(z0))) MARK(U31(length(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(length(mark(z0))), x1, x2, x3)), U31'(mark(length(z0)), x1, x2, x3), MARK(length(z0))) MARK(U31(U21(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(U21(mark(z0))), x1, x2, x3)), U31'(mark(U21(z0)), x1, x2, x3), MARK(U21(z0))) MARK(U31(nil, x1, x2, x3)) -> c61(ACTIVE(U31(active(nil), x1, x2, x3)), U31'(mark(nil), x1, x2, x3), MARK(nil)) MARK(U31(U31(z0, z1, z2, z3), x1, x2, x3)) -> c61(ACTIVE(U31(active(U31(mark(z0), z1, z2, z3)), x1, x2, x3)), U31'(mark(U31(z0, z1, z2, z3)), x1, x2, x3), MARK(U31(z0, z1, z2, z3))) MARK(U31(take(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(take(mark(z0), mark(z1))), x1, x2, x3)), U31'(mark(take(z0, z1)), x1, x2, x3), MARK(take(z0, z1))) MARK(U31(and(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(and(mark(z0), z1)), x1, x2, x3)), U31'(mark(and(z0, z1)), x1, x2, x3), MARK(and(z0, z1))) MARK(U31(isNat(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNat(z0)), x1, x2, x3)), U31'(mark(isNat(z0)), x1, x2, x3), MARK(isNat(z0))) MARK(U31(isNatList(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNatList(z0)), x1, x2, x3)), U31'(mark(isNatList(z0)), x1, x2, x3), MARK(isNatList(z0))) MARK(U31(isNatIList(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNatIList(z0)), x1, x2, x3)), U31'(mark(isNatIList(z0)), x1, x2, x3), MARK(isNatIList(z0))) MARK(U31(x0, x1, x2, x3)) -> c61(U31'(mark(x0), x1, x2, x3)) MARK(take(z0, x1)) -> c62(ACTIVE(take(z0, mark(x1))), TAKE(mark(z0), mark(x1)), MARK(z0), MARK(x1)) MARK(take(x0, z1)) -> c62(ACTIVE(take(mark(x0), z1)), TAKE(mark(x0), mark(z1)), MARK(x0), MARK(z1)) MARK(take(x0, zeros)) -> c62(ACTIVE(take(mark(x0), active(zeros))), TAKE(mark(x0), mark(zeros)), MARK(x0), MARK(zeros)) MARK(take(x0, cons(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(cons(mark(z0), z1)))), TAKE(mark(x0), mark(cons(z0, z1))), MARK(x0), MARK(cons(z0, z1))) MARK(take(x0, 0)) -> c62(ACTIVE(take(mark(x0), active(0))), TAKE(mark(x0), mark(0)), MARK(x0), MARK(0)) MARK(take(x0, U11(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(U11(mark(z0), z1)))), TAKE(mark(x0), mark(U11(z0, z1))), MARK(x0), MARK(U11(z0, z1))) MARK(take(x0, tt)) -> c62(ACTIVE(take(mark(x0), active(tt))), TAKE(mark(x0), mark(tt)), MARK(x0), MARK(tt)) MARK(take(x0, s(z0))) -> c62(ACTIVE(take(mark(x0), active(s(mark(z0))))), TAKE(mark(x0), mark(s(z0))), MARK(x0), MARK(s(z0))) MARK(take(x0, length(z0))) -> c62(ACTIVE(take(mark(x0), active(length(mark(z0))))), TAKE(mark(x0), mark(length(z0))), MARK(x0), MARK(length(z0))) MARK(take(x0, U21(z0))) -> c62(ACTIVE(take(mark(x0), active(U21(mark(z0))))), TAKE(mark(x0), mark(U21(z0))), MARK(x0), MARK(U21(z0))) MARK(take(x0, nil)) -> c62(ACTIVE(take(mark(x0), active(nil))), TAKE(mark(x0), mark(nil)), MARK(x0), MARK(nil)) MARK(take(x0, U31(z0, z1, z2, z3))) -> c62(ACTIVE(take(mark(x0), active(U31(mark(z0), z1, z2, z3)))), TAKE(mark(x0), mark(U31(z0, z1, z2, z3))), MARK(x0), MARK(U31(z0, z1, z2, z3))) MARK(take(x0, take(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(take(mark(z0), mark(z1))))), TAKE(mark(x0), mark(take(z0, z1))), MARK(x0), MARK(take(z0, z1))) MARK(take(x0, and(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(and(mark(z0), z1)))), TAKE(mark(x0), mark(and(z0, z1))), MARK(x0), MARK(and(z0, z1))) MARK(take(x0, isNat(z0))) -> c62(ACTIVE(take(mark(x0), active(isNat(z0)))), TAKE(mark(x0), mark(isNat(z0))), MARK(x0), MARK(isNat(z0))) MARK(take(x0, isNatList(z0))) -> c62(ACTIVE(take(mark(x0), active(isNatList(z0)))), TAKE(mark(x0), mark(isNatList(z0))), MARK(x0), MARK(isNatList(z0))) MARK(take(x0, isNatIList(z0))) -> c62(ACTIVE(take(mark(x0), active(isNatIList(z0)))), TAKE(mark(x0), mark(isNatIList(z0))), MARK(x0), MARK(isNatIList(z0))) MARK(take(zeros, x1)) -> c62(ACTIVE(take(active(zeros), mark(x1))), TAKE(mark(zeros), mark(x1)), MARK(zeros), MARK(x1)) MARK(take(cons(z0, z1), x1)) -> c62(ACTIVE(take(active(cons(mark(z0), z1)), mark(x1))), TAKE(mark(cons(z0, z1)), mark(x1)), MARK(cons(z0, z1)), MARK(x1)) MARK(take(0, x1)) -> c62(ACTIVE(take(active(0), mark(x1))), TAKE(mark(0), mark(x1)), MARK(0), MARK(x1)) MARK(take(U11(z0, z1), x1)) -> c62(ACTIVE(take(active(U11(mark(z0), z1)), mark(x1))), TAKE(mark(U11(z0, z1)), mark(x1)), MARK(U11(z0, z1)), MARK(x1)) MARK(take(tt, x1)) -> c62(ACTIVE(take(active(tt), mark(x1))), TAKE(mark(tt), mark(x1)), MARK(tt), MARK(x1)) MARK(take(s(z0), x1)) -> c62(ACTIVE(take(active(s(mark(z0))), mark(x1))), TAKE(mark(s(z0)), mark(x1)), MARK(s(z0)), MARK(x1)) MARK(take(length(z0), x1)) -> c62(ACTIVE(take(active(length(mark(z0))), mark(x1))), TAKE(mark(length(z0)), mark(x1)), MARK(length(z0)), MARK(x1)) MARK(take(U21(z0), x1)) -> c62(ACTIVE(take(active(U21(mark(z0))), mark(x1))), TAKE(mark(U21(z0)), mark(x1)), MARK(U21(z0)), MARK(x1)) MARK(take(nil, x1)) -> c62(ACTIVE(take(active(nil), mark(x1))), TAKE(mark(nil), mark(x1)), MARK(nil), MARK(x1)) MARK(take(U31(z0, z1, z2, z3), x1)) -> c62(ACTIVE(take(active(U31(mark(z0), z1, z2, z3)), mark(x1))), TAKE(mark(U31(z0, z1, z2, z3)), mark(x1)), MARK(U31(z0, z1, z2, z3)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c62(ACTIVE(take(active(take(mark(z0), mark(z1))), mark(x1))), TAKE(mark(take(z0, z1)), mark(x1)), MARK(take(z0, z1)), MARK(x1)) MARK(take(and(z0, z1), x1)) -> c62(ACTIVE(take(active(and(mark(z0), z1)), mark(x1))), TAKE(mark(and(z0, z1)), mark(x1)), MARK(and(z0, z1)), MARK(x1)) MARK(take(isNat(z0), x1)) -> c62(ACTIVE(take(active(isNat(z0)), mark(x1))), TAKE(mark(isNat(z0)), mark(x1)), MARK(isNat(z0)), MARK(x1)) MARK(take(isNatList(z0), x1)) -> c62(ACTIVE(take(active(isNatList(z0)), mark(x1))), TAKE(mark(isNatList(z0)), mark(x1)), MARK(isNatList(z0)), MARK(x1)) MARK(take(isNatIList(z0), x1)) -> c62(ACTIVE(take(active(isNatIList(z0)), mark(x1))), TAKE(mark(isNatIList(z0)), mark(x1)), MARK(isNatIList(z0)), MARK(x1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(z0, z1)), AND(mark(z0), z1), MARK(z0)) MARK(and(zeros, x1)) -> c63(ACTIVE(and(active(zeros), x1)), AND(mark(zeros), x1), MARK(zeros)) MARK(and(cons(z0, z1), x1)) -> c63(ACTIVE(and(active(cons(mark(z0), z1)), x1)), AND(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(and(0, x1)) -> c63(ACTIVE(and(active(0), x1)), AND(mark(0), x1), MARK(0)) MARK(and(U11(z0, z1), x1)) -> c63(ACTIVE(and(active(U11(mark(z0), z1)), x1)), AND(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(and(tt, x1)) -> c63(ACTIVE(and(active(tt), x1)), AND(mark(tt), x1), MARK(tt)) MARK(and(s(z0), x1)) -> c63(ACTIVE(and(active(s(mark(z0))), x1)), AND(mark(s(z0)), x1), MARK(s(z0))) MARK(and(length(z0), x1)) -> c63(ACTIVE(and(active(length(mark(z0))), x1)), AND(mark(length(z0)), x1), MARK(length(z0))) MARK(and(U21(z0), x1)) -> c63(ACTIVE(and(active(U21(mark(z0))), x1)), AND(mark(U21(z0)), x1), MARK(U21(z0))) MARK(and(nil, x1)) -> c63(ACTIVE(and(active(nil), x1)), AND(mark(nil), x1), MARK(nil)) MARK(and(U31(z0, z1, z2, z3), x1)) -> c63(ACTIVE(and(active(U31(mark(z0), z1, z2, z3)), x1)), AND(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(and(take(z0, z1), x1)) -> c63(ACTIVE(and(active(take(mark(z0), mark(z1))), x1)), AND(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(and(and(z0, z1), x1)) -> c63(ACTIVE(and(active(and(mark(z0), z1)), x1)), AND(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(and(isNat(z0), x1)) -> c63(ACTIVE(and(active(isNat(z0)), x1)), AND(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(and(isNatList(z0), x1)) -> c63(ACTIVE(and(active(isNatList(z0)), x1)), AND(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(and(isNatIList(z0), x1)) -> c63(ACTIVE(and(active(isNatIList(z0)), x1)), AND(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(and(x0, x1)) -> c63(AND(mark(x0), x1)) K tuples:none Defined Rule Symbols: encArg_1, active_1, mark_1, cons_2, U11_2, s_1, length_1, U21_1, U31_4, take_2, and_2, isNat_1, isNatList_1, isNatIList_1 Defined Pair Symbols: ACTIVE_1, MARK_1, CONS_2, U11'_2, S_1, LENGTH_1, U21'_1, U31'_4, TAKE_2, AND_2, ISNAT_1, ISNATLIST_1, ISNATILIST_1, ENCODE_U31_4, ENCODE_TAKE_2, ENCODE_AND_2, ENCODE_ISNAT_1, ENCODE_ISNATLIST_1, ENCODE_ISNATILIST_1, ENCARG_1, ENCODE_ACTIVE_1, ENCODE_MARK_1, ENCODE_CONS_2, ENCODE_U11_2, ENCODE_S_1, ENCODE_LENGTH_1, ENCODE_U21_1 Compound Symbols: c36_1, c37_3, c38_1, c39_1, c40_2, c41_2, c42_2, c43_1, c45_1, c48_1, c52_1, c64_2, c65_2, c66_2, c67_1, c68_1, c69_1, c70_1, c71_1, c72_1, c73_1, c74_1, c75_1, c76_1, c77_1, c78_1, c79_1, c80_1, c81_1, c82_1, c83_1, c84_1, c85_1, c86_1, c87_1, c88_1, c89_1, c90_1, c91_1, c92_1, c93_1, c94_1, c95_1, c96_1, c97_1, c98_1, c99_1, c100_1, c101_1, c102_1, c34_1, c35_2, c44_3, c46_3, c47_3, c49_3, c50_2, c51_4, c54, c56, c60, c_1, c4_2, c4_1, c5_2, c5_1, c6_3, c6_2, c7_3, c7_2, c8_2, c9_2, c10_2, c11_5, c11_4, c12_3, c12_2, c13_3, c13_2, c14_2, c15_2, c16_2, c53_3, c53_1, c53_2, c55_3, c55_1, c57_3, c57_2, c58_3, c59_3, c61_3, c61_1, c62_4, c63_3, c63_1 ---------------------------------------- (135) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 4 trailing nodes: ENCODE_U21(zeros) -> c(U21'(zeros)) ENCODE_U21(0) -> c(U21'(0)) ENCODE_U21(nil) -> c(U21'(nil)) ENCODE_U21(tt) -> c(U21'(tt)) ---------------------------------------- (136) Obligation: Complexity Dependency Tuples Problem Rules: encArg(zeros) -> zeros encArg(0) -> 0 encArg(tt) -> tt encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_U11(z0, z1)) -> U11(encArg(z0), encArg(z1)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_length(z0)) -> length(encArg(z0)) encArg(cons_U21(z0)) -> U21(encArg(z0)) encArg(cons_U31(z0, z1, z2, z3)) -> U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_isNat(z0)) -> isNat(encArg(z0)) encArg(cons_isNatList(z0)) -> isNatList(encArg(z0)) encArg(cons_isNatIList(z0)) -> isNatIList(encArg(z0)) active(zeros) -> mark(cons(0, zeros)) active(U11(tt, z0)) -> mark(s(length(z0))) active(U21(tt)) -> mark(nil) active(U31(tt, z0, z1, z2)) -> mark(cons(z2, take(z1, z0))) active(and(tt, z0)) -> mark(z0) active(isNat(0)) -> mark(tt) active(isNat(length(z0))) -> mark(isNatList(z0)) active(isNat(s(z0))) -> mark(isNat(z0)) active(isNatIList(z0)) -> mark(isNatList(z0)) active(isNatIList(zeros)) -> mark(tt) active(isNatIList(cons(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(isNatList(nil)) -> mark(tt) active(isNatList(cons(z0, z1))) -> mark(and(isNat(z0), isNatList(z1))) active(isNatList(take(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(length(nil)) -> mark(0) active(length(cons(z0, z1))) -> mark(U11(and(isNatList(z1), isNat(z0)), z1)) active(take(0, z0)) -> mark(U21(isNatIList(z0))) active(take(s(z0), cons(z1, z2))) -> mark(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)) mark(zeros) -> active(zeros) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(0) -> active(0) mark(U11(z0, z1)) -> active(U11(mark(z0), z1)) mark(tt) -> active(tt) mark(s(z0)) -> active(s(mark(z0))) mark(length(z0)) -> active(length(mark(z0))) mark(U21(z0)) -> active(U21(mark(z0))) mark(nil) -> active(nil) mark(U31(z0, z1, z2, z3)) -> active(U31(mark(z0), z1, z2, z3)) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(isNat(z0)) -> active(isNat(z0)) mark(isNatList(z0)) -> active(isNatList(z0)) mark(isNatIList(z0)) -> active(isNatIList(z0)) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) U11(mark(z0), z1) -> U11(z0, z1) U11(z0, mark(z1)) -> U11(z0, z1) U11(active(z0), z1) -> U11(z0, z1) U11(z0, active(z1)) -> U11(z0, z1) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) length(mark(z0)) -> length(z0) length(active(z0)) -> length(z0) U21(mark(z0)) -> U21(z0) U21(active(z0)) -> U21(z0) U31(mark(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, mark(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, mark(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, mark(z3)) -> U31(z0, z1, z2, z3) U31(active(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, active(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, active(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, active(z3)) -> U31(z0, z1, z2, z3) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) isNat(mark(z0)) -> isNat(z0) isNat(active(z0)) -> isNat(z0) isNatList(mark(z0)) -> isNatList(z0) isNatList(active(z0)) -> isNatList(z0) isNatIList(mark(z0)) -> isNatIList(z0) isNatIList(active(z0)) -> isNatIList(z0) Tuples: ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 ENCODE_U31(z0, z1, z2, z3) -> c(U31'(encArg(z0), encArg(z1), encArg(z2), encArg(z3))) ENCODE_TAKE(z0, z1) -> c(TAKE(encArg(z0), encArg(z1))) ENCODE_AND(z0, z1) -> c(AND(encArg(z0), encArg(z1))) ENCODE_ISNAT(z0) -> c(ISNAT(encArg(z0))) ENCODE_ISNATLIST(z0) -> c(ISNATLIST(encArg(z0))) ENCODE_ISNATILIST(z0) -> c(ISNATILIST(encArg(z0))) ENCARG(cons_active(cons_active(z0))) -> c4(ACTIVE(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_active(cons_mark(z0))) -> c4(ACTIVE(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_active(cons_cons(z0, z1))) -> c4(ACTIVE(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_active(cons_U11(z0, z1))) -> c4(ACTIVE(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_active(cons_s(z0))) -> c4(ACTIVE(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_active(cons_length(z0))) -> c4(ACTIVE(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_active(cons_U21(z0))) -> c4(ACTIVE(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_active(cons_U31(z0, z1, z2, z3))) -> c4(ACTIVE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_active(cons_take(z0, z1))) -> c4(ACTIVE(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_active(cons_and(z0, z1))) -> c4(ACTIVE(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_active(cons_isNat(z0))) -> c4(ACTIVE(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_active(cons_isNatList(z0))) -> c4(ACTIVE(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_active(cons_isNatIList(z0))) -> c4(ACTIVE(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_active(zeros)) -> c4(ACTIVE(zeros)) ENCARG(cons_mark(cons_active(z0))) -> c5(MARK(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_mark(cons_mark(z0))) -> c5(MARK(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_mark(cons_cons(z0, z1))) -> c5(MARK(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_mark(cons_U11(z0, z1))) -> c5(MARK(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_mark(cons_s(z0))) -> c5(MARK(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_mark(cons_length(z0))) -> c5(MARK(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_mark(cons_U21(z0))) -> c5(MARK(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_mark(cons_U31(z0, z1, z2, z3))) -> c5(MARK(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_mark(cons_take(z0, z1))) -> c5(MARK(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(cons_and(z0, z1))) -> c5(MARK(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_mark(cons_isNat(z0))) -> c5(MARK(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_mark(cons_isNatList(z0))) -> c5(MARK(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_mark(cons_isNatIList(z0))) -> c5(MARK(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_mark(zeros)) -> c5(MARK(zeros)) ENCARG(cons_mark(0)) -> c5(MARK(0)) ENCARG(cons_mark(tt)) -> c5(MARK(tt)) ENCARG(cons_mark(nil)) -> c5(MARK(nil)) ENCARG(cons_cons(x0, cons_active(z0))) -> c6(CONS(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_cons(x0, cons_mark(z0))) -> c6(CONS(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_cons(x0, cons_cons(z0, z1))) -> c6(CONS(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_cons(x0, cons_U11(z0, z1))) -> c6(CONS(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_cons(x0, cons_s(z0))) -> c6(CONS(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_cons(x0, cons_length(z0))) -> c6(CONS(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_cons(x0, cons_U21(z0))) -> c6(CONS(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_cons(x0, cons_U31(z0, z1, z2, z3))) -> c6(CONS(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_cons(x0, cons_take(z0, z1))) -> c6(CONS(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_cons(x0, cons_and(z0, z1))) -> c6(CONS(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_cons(x0, cons_isNat(z0))) -> c6(CONS(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_cons(x0, cons_isNatList(z0))) -> c6(CONS(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_cons(x0, cons_isNatIList(z0))) -> c6(CONS(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_cons(cons_active(z0), x1)) -> c6(CONS(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_mark(z0), x1)) -> c6(CONS(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_cons(z0, z1), x1)) -> c6(CONS(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_U11(z0, z1), x1)) -> c6(CONS(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_s(z0), x1)) -> c6(CONS(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_length(z0), x1)) -> c6(CONS(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U21(z0), x1)) -> c6(CONS(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U31(z0, z1, z2, z3), x1)) -> c6(CONS(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_cons(cons_take(z0, z1), x1)) -> c6(CONS(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_and(z0, z1), x1)) -> c6(CONS(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_isNat(z0), x1)) -> c6(CONS(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_isNatList(z0), x1)) -> c6(CONS(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_isNatIList(z0), x1)) -> c6(CONS(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_cons(x0, zeros)) -> c6(CONS(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_cons(x0, 0)) -> c6(CONS(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_cons(x0, tt)) -> c6(CONS(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_cons(x0, nil)) -> c6(CONS(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_cons(zeros, x1)) -> c6(CONS(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(0, x1)) -> c6(CONS(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(tt, x1)) -> c6(CONS(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(nil, x1)) -> c6(CONS(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(x0, cons_active(z0))) -> c7(U11'(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_U11(x0, cons_mark(z0))) -> c7(U11'(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_U11(x0, cons_cons(z0, z1))) -> c7(U11'(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U11(x0, cons_U11(z0, z1))) -> c7(U11'(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U11(x0, cons_s(z0))) -> c7(U11'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_U11(x0, cons_length(z0))) -> c7(U11'(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_U11(x0, cons_U21(z0))) -> c7(U11'(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_U11(x0, cons_U31(z0, z1, z2, z3))) -> c7(U11'(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U11(x0, cons_take(z0, z1))) -> c7(U11'(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_U11(x0, cons_and(z0, z1))) -> c7(U11'(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_U11(x0, cons_isNat(z0))) -> c7(U11'(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_U11(x0, cons_isNatList(z0))) -> c7(U11'(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_U11(x0, cons_isNatIList(z0))) -> c7(U11'(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U11(cons_active(z0), x1)) -> c7(U11'(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_mark(z0), x1)) -> c7(U11'(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_cons(z0, z1), x1)) -> c7(U11'(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_U11(z0, z1), x1)) -> c7(U11'(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_s(z0), x1)) -> c7(U11'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_length(z0), x1)) -> c7(U11'(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_U21(z0), x1)) -> c7(U11'(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_U31(z0, z1, z2, z3), x1)) -> c7(U11'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_U11(cons_take(z0, z1), x1)) -> c7(U11'(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_and(z0, z1), x1)) -> c7(U11'(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_isNat(z0), x1)) -> c7(U11'(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_isNatList(z0), x1)) -> c7(U11'(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_isNatIList(z0), x1)) -> c7(U11'(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_U11(x0, zeros)) -> c7(U11'(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_U11(x0, 0)) -> c7(U11'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_U11(x0, tt)) -> c7(U11'(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_U11(x0, nil)) -> c7(U11'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_U11(zeros, x1)) -> c7(U11'(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(0, x1)) -> c7(U11'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(tt, x1)) -> c7(U11'(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(nil, x1)) -> c7(U11'(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_s(cons_active(z0))) -> c8(S(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_s(cons_mark(z0))) -> c8(S(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_s(cons_cons(z0, z1))) -> c8(S(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_s(cons_U11(z0, z1))) -> c8(S(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_s(cons_s(z0))) -> c8(S(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_length(z0))) -> c8(S(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_s(cons_U21(z0))) -> c8(S(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_s(cons_U31(z0, z1, z2, z3))) -> c8(S(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_s(cons_take(z0, z1))) -> c8(S(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_s(cons_and(z0, z1))) -> c8(S(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_s(cons_isNat(z0))) -> c8(S(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_s(cons_isNatList(z0))) -> c8(S(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_s(cons_isNatIList(z0))) -> c8(S(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_length(cons_active(z0))) -> c9(LENGTH(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_length(cons_mark(z0))) -> c9(LENGTH(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_length(cons_cons(z0, z1))) -> c9(LENGTH(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_length(cons_U11(z0, z1))) -> c9(LENGTH(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_length(cons_s(z0))) -> c9(LENGTH(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_length(cons_length(z0))) -> c9(LENGTH(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_length(cons_U21(z0))) -> c9(LENGTH(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_length(cons_U31(z0, z1, z2, z3))) -> c9(LENGTH(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_length(cons_take(z0, z1))) -> c9(LENGTH(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_length(cons_and(z0, z1))) -> c9(LENGTH(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_length(cons_isNat(z0))) -> c9(LENGTH(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_length(cons_isNatList(z0))) -> c9(LENGTH(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_length(cons_isNatIList(z0))) -> c9(LENGTH(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U21(cons_active(z0))) -> c10(U21'(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_U21(cons_mark(z0))) -> c10(U21'(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_U21(cons_cons(z0, z1))) -> c10(U21'(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U21(cons_U11(z0, z1))) -> c10(U21'(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U21(cons_s(z0))) -> c10(U21'(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_U21(cons_length(z0))) -> c10(U21'(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_U21(cons_U21(z0))) -> c10(U21'(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_U21(cons_U31(z0, z1, z2, z3))) -> c10(U21'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U21(cons_take(z0, z1))) -> c10(U21'(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_U21(cons_and(z0, z1))) -> c10(U21'(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_U21(cons_isNat(z0))) -> c10(U21'(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_U21(cons_isNatList(z0))) -> c10(U21'(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_U21(cons_isNatIList(z0))) -> c10(U21'(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U31(x0, x1, x2, cons_active(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), active(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_active(z0))) ENCARG(cons_U31(x0, x1, x2, cons_mark(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), mark(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_mark(z0))) ENCARG(cons_U31(x0, x1, x2, cons_cons(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_U11(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_s(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), s(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_s(z0))) ENCARG(cons_U31(x0, x1, x2, cons_length(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), length(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_length(z0))) ENCARG(cons_U31(x0, x1, x2, cons_U21(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U21(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U21(z0))) ENCARG(cons_U31(x0, x1, x2, cons_U31(z0, z1, z2, z3))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U31(x0, x1, x2, cons_take(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_take(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_and(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_and(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_isNat(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNat(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNat(z0))) ENCARG(cons_U31(x0, x1, x2, cons_isNatList(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNatList(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNatList(z0))) ENCARG(cons_U31(x0, x1, x2, cons_isNatIList(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U31(x0, x1, cons_active(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), active(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_active(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_mark(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), mark(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_mark(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_cons(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), cons(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_cons(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U11(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), U11(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U11(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_s(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), s(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_s(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_length(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), length(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_length(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U21(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), U21(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U21(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U31(z0, z1, z2, z3), x3)) -> c11(U31'(encArg(x0), encArg(x1), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_take(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), take(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_take(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_and(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), and(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_and(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNat(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNat(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNat(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNatList(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNatList(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNatList(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNatIList(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNatIList(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNatIList(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, cons_active(z0), x2, x3)) -> c11(U31'(encArg(x0), active(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_active(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_mark(z0), x2, x3)) -> c11(U31'(encArg(x0), mark(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_mark(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_cons(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), cons(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_cons(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U11(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), U11(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U11(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_s(z0), x2, x3)) -> c11(U31'(encArg(x0), s(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_s(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_length(z0), x2, x3)) -> c11(U31'(encArg(x0), length(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_length(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U21(z0), x2, x3)) -> c11(U31'(encArg(x0), U21(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U21(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U31(z0, z1, z2, z3), x2, x3)) -> c11(U31'(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_take(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), take(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_take(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_and(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), and(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_and(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNat(z0), x2, x3)) -> c11(U31'(encArg(x0), isNat(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNat(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNatList(z0), x2, x3)) -> c11(U31'(encArg(x0), isNatList(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNatList(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNatIList(z0), x2, x3)) -> c11(U31'(encArg(x0), isNatIList(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNatIList(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_active(z0), x1, x2, x3)) -> c11(U31'(active(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_active(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_mark(z0), x1, x2, x3)) -> c11(U31'(mark(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_mark(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_cons(z0, z1), x1, x2, x3)) -> c11(U31'(cons(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_cons(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U11(z0, z1), x1, x2, x3)) -> c11(U31'(U11(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U11(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_s(z0), x1, x2, x3)) -> c11(U31'(s(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_s(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_length(z0), x1, x2, x3)) -> c11(U31'(length(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_length(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U21(z0), x1, x2, x3)) -> c11(U31'(U21(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U21(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U31(z0, z1, z2, z3), x1, x2, x3)) -> c11(U31'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_take(z0, z1), x1, x2, x3)) -> c11(U31'(take(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_take(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_and(z0, z1), x1, x2, x3)) -> c11(U31'(and(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_and(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNat(z0), x1, x2, x3)) -> c11(U31'(isNat(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNat(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNatList(z0), x1, x2, x3)) -> c11(U31'(isNatList(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNatList(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNatIList(z0), x1, x2, x3)) -> c11(U31'(isNatIList(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNatIList(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, x1, x2, zeros)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), zeros), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, 0)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), 0), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, tt)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), tt), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, nil)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), nil), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, zeros, x3)) -> c11(U31'(encArg(x0), encArg(x1), zeros, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, 0, x3)) -> c11(U31'(encArg(x0), encArg(x1), 0, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, tt, x3)) -> c11(U31'(encArg(x0), encArg(x1), tt, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, nil, x3)) -> c11(U31'(encArg(x0), encArg(x1), nil, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, zeros, x2, x3)) -> c11(U31'(encArg(x0), zeros, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, 0, x2, x3)) -> c11(U31'(encArg(x0), 0, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, tt, x2, x3)) -> c11(U31'(encArg(x0), tt, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, nil, x2, x3)) -> c11(U31'(encArg(x0), nil, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(zeros, x1, x2, x3)) -> c11(U31'(zeros, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(0, x1, x2, x3)) -> c11(U31'(0, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(tt, x1, x2, x3)) -> c11(U31'(tt, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(nil, x1, x2, x3)) -> c11(U31'(nil, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_take(x0, cons_active(z0))) -> c12(TAKE(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_take(x0, cons_mark(z0))) -> c12(TAKE(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_take(x0, cons_cons(z0, z1))) -> c12(TAKE(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_take(x0, cons_U11(z0, z1))) -> c12(TAKE(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_take(x0, cons_s(z0))) -> c12(TAKE(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_take(x0, cons_length(z0))) -> c12(TAKE(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_take(x0, cons_U21(z0))) -> c12(TAKE(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_take(x0, cons_U31(z0, z1, z2, z3))) -> c12(TAKE(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_take(x0, cons_take(z0, z1))) -> c12(TAKE(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_take(x0, cons_and(z0, z1))) -> c12(TAKE(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_take(x0, cons_isNat(z0))) -> c12(TAKE(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_take(x0, cons_isNatList(z0))) -> c12(TAKE(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_take(x0, cons_isNatIList(z0))) -> c12(TAKE(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_take(cons_active(z0), x1)) -> c12(TAKE(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_take(cons_mark(z0), x1)) -> c12(TAKE(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_take(cons_cons(z0, z1), x1)) -> c12(TAKE(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_U11(z0, z1), x1)) -> c12(TAKE(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_s(z0), x1)) -> c12(TAKE(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_take(cons_length(z0), x1)) -> c12(TAKE(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_take(cons_U21(z0), x1)) -> c12(TAKE(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_take(cons_U31(z0, z1, z2, z3), x1)) -> c12(TAKE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_take(cons_take(z0, z1), x1)) -> c12(TAKE(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_and(z0, z1), x1)) -> c12(TAKE(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_isNat(z0), x1)) -> c12(TAKE(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_take(cons_isNatList(z0), x1)) -> c12(TAKE(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_take(cons_isNatIList(z0), x1)) -> c12(TAKE(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_take(x0, zeros)) -> c12(TAKE(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_take(x0, 0)) -> c12(TAKE(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_take(x0, tt)) -> c12(TAKE(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_take(x0, nil)) -> c12(TAKE(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_take(zeros, x1)) -> c12(TAKE(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(0, x1)) -> c12(TAKE(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(tt, x1)) -> c12(TAKE(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(nil, x1)) -> c12(TAKE(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(x0, cons_active(z0))) -> c13(AND(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_and(x0, cons_mark(z0))) -> c13(AND(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_and(x0, cons_cons(z0, z1))) -> c13(AND(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_and(x0, cons_U11(z0, z1))) -> c13(AND(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_and(x0, cons_s(z0))) -> c13(AND(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_and(x0, cons_length(z0))) -> c13(AND(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_and(x0, cons_U21(z0))) -> c13(AND(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_and(x0, cons_U31(z0, z1, z2, z3))) -> c13(AND(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_and(x0, cons_take(z0, z1))) -> c13(AND(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_and(x0, cons_and(z0, z1))) -> c13(AND(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_and(x0, cons_isNat(z0))) -> c13(AND(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_and(x0, cons_isNatList(z0))) -> c13(AND(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_and(x0, cons_isNatIList(z0))) -> c13(AND(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_and(cons_active(z0), x1)) -> c13(AND(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_and(cons_mark(z0), x1)) -> c13(AND(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_and(cons_cons(z0, z1), x1)) -> c13(AND(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_U11(z0, z1), x1)) -> c13(AND(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_s(z0), x1)) -> c13(AND(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_and(cons_length(z0), x1)) -> c13(AND(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_and(cons_U21(z0), x1)) -> c13(AND(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_and(cons_U31(z0, z1, z2, z3), x1)) -> c13(AND(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_and(cons_take(z0, z1), x1)) -> c13(AND(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_and(z0, z1), x1)) -> c13(AND(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_isNat(z0), x1)) -> c13(AND(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_and(cons_isNatList(z0), x1)) -> c13(AND(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_and(cons_isNatIList(z0), x1)) -> c13(AND(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_and(x0, zeros)) -> c13(AND(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_and(x0, 0)) -> c13(AND(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_and(x0, tt)) -> c13(AND(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_and(x0, nil)) -> c13(AND(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_and(zeros, x1)) -> c13(AND(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(0, x1)) -> c13(AND(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(tt, x1)) -> c13(AND(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(nil, x1)) -> c13(AND(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_isNat(cons_active(z0))) -> c14(ISNAT(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_isNat(cons_mark(z0))) -> c14(ISNAT(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_isNat(cons_cons(z0, z1))) -> c14(ISNAT(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_isNat(cons_U11(z0, z1))) -> c14(ISNAT(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_isNat(cons_s(z0))) -> c14(ISNAT(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_isNat(cons_length(z0))) -> c14(ISNAT(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_isNat(cons_U21(z0))) -> c14(ISNAT(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_isNat(cons_U31(z0, z1, z2, z3))) -> c14(ISNAT(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_isNat(cons_take(z0, z1))) -> c14(ISNAT(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_isNat(cons_and(z0, z1))) -> c14(ISNAT(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_isNat(cons_isNat(z0))) -> c14(ISNAT(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_isNat(cons_isNatList(z0))) -> c14(ISNAT(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_isNat(cons_isNatIList(z0))) -> c14(ISNAT(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_isNatList(cons_active(z0))) -> c15(ISNATLIST(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_isNatList(cons_mark(z0))) -> c15(ISNATLIST(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_isNatList(cons_cons(z0, z1))) -> c15(ISNATLIST(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_isNatList(cons_U11(z0, z1))) -> c15(ISNATLIST(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_isNatList(cons_s(z0))) -> c15(ISNATLIST(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_isNatList(cons_length(z0))) -> c15(ISNATLIST(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_isNatList(cons_U21(z0))) -> c15(ISNATLIST(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_isNatList(cons_U31(z0, z1, z2, z3))) -> c15(ISNATLIST(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_isNatList(cons_take(z0, z1))) -> c15(ISNATLIST(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_isNatList(cons_and(z0, z1))) -> c15(ISNATLIST(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_isNatList(cons_isNat(z0))) -> c15(ISNATLIST(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_isNatList(cons_isNatList(z0))) -> c15(ISNATLIST(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_isNatList(cons_isNatIList(z0))) -> c15(ISNATLIST(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_isNatIList(cons_active(z0))) -> c16(ISNATILIST(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_isNatIList(cons_mark(z0))) -> c16(ISNATILIST(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_isNatIList(cons_cons(z0, z1))) -> c16(ISNATILIST(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_isNatIList(cons_U11(z0, z1))) -> c16(ISNATILIST(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_isNatIList(cons_s(z0))) -> c16(ISNATILIST(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_isNatIList(cons_length(z0))) -> c16(ISNATILIST(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_isNatIList(cons_U21(z0))) -> c16(ISNATILIST(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_isNatIList(cons_U31(z0, z1, z2, z3))) -> c16(ISNATILIST(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_isNatIList(cons_take(z0, z1))) -> c16(ISNATILIST(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_isNatIList(cons_and(z0, z1))) -> c16(ISNATILIST(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_isNatIList(cons_isNat(z0))) -> c16(ISNATILIST(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_isNatIList(cons_isNatList(z0))) -> c16(ISNATILIST(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_isNatIList(cons_isNatIList(z0))) -> c16(ISNATILIST(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) MARK(cons(zeros, x1)) -> c53(ACTIVE(cons(active(zeros), x1)), CONS(mark(zeros), x1), MARK(zeros)) MARK(cons(cons(z0, z1), x1)) -> c53(ACTIVE(cons(active(cons(mark(z0), z1)), x1)), CONS(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(cons(0, x1)) -> c53(ACTIVE(cons(active(0), x1)), CONS(mark(0), x1), MARK(0)) MARK(cons(U11(z0, z1), x1)) -> c53(ACTIVE(cons(active(U11(mark(z0), z1)), x1)), CONS(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(cons(tt, x1)) -> c53(ACTIVE(cons(active(tt), x1)), CONS(mark(tt), x1), MARK(tt)) MARK(cons(s(z0), x1)) -> c53(ACTIVE(cons(active(s(mark(z0))), x1)), CONS(mark(s(z0)), x1), MARK(s(z0))) MARK(cons(length(z0), x1)) -> c53(ACTIVE(cons(active(length(mark(z0))), x1)), CONS(mark(length(z0)), x1), MARK(length(z0))) MARK(cons(U21(z0), x1)) -> c53(ACTIVE(cons(active(U21(mark(z0))), x1)), CONS(mark(U21(z0)), x1), MARK(U21(z0))) MARK(cons(nil, x1)) -> c53(ACTIVE(cons(active(nil), x1)), CONS(mark(nil), x1), MARK(nil)) MARK(cons(U31(z0, z1, z2, z3), x1)) -> c53(ACTIVE(cons(active(U31(mark(z0), z1, z2, z3)), x1)), CONS(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(cons(take(z0, z1), x1)) -> c53(ACTIVE(cons(active(take(mark(z0), mark(z1))), x1)), CONS(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(cons(and(z0, z1), x1)) -> c53(ACTIVE(cons(active(and(mark(z0), z1)), x1)), CONS(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(cons(isNat(z0), x1)) -> c53(ACTIVE(cons(active(isNat(z0)), x1)), CONS(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(cons(isNatList(z0), x1)) -> c53(ACTIVE(cons(active(isNatList(z0)), x1)), CONS(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(cons(isNatIList(z0), x1)) -> c53(ACTIVE(cons(active(isNatIList(z0)), x1)), CONS(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(cons(x0, x1)) -> c53(CONS(mark(x0), x1)) MARK(cons(z0, z1)) -> c53(CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(z0, z1)), U11'(mark(z0), z1), MARK(z0)) MARK(U11(zeros, x1)) -> c55(ACTIVE(U11(active(zeros), x1)), U11'(mark(zeros), x1), MARK(zeros)) MARK(U11(cons(z0, z1), x1)) -> c55(ACTIVE(U11(active(cons(mark(z0), z1)), x1)), U11'(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(U11(0, x1)) -> c55(ACTIVE(U11(active(0), x1)), U11'(mark(0), x1), MARK(0)) MARK(U11(U11(z0, z1), x1)) -> c55(ACTIVE(U11(active(U11(mark(z0), z1)), x1)), U11'(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(U11(tt, x1)) -> c55(ACTIVE(U11(active(tt), x1)), U11'(mark(tt), x1), MARK(tt)) MARK(U11(s(z0), x1)) -> c55(ACTIVE(U11(active(s(mark(z0))), x1)), U11'(mark(s(z0)), x1), MARK(s(z0))) MARK(U11(length(z0), x1)) -> c55(ACTIVE(U11(active(length(mark(z0))), x1)), U11'(mark(length(z0)), x1), MARK(length(z0))) MARK(U11(U21(z0), x1)) -> c55(ACTIVE(U11(active(U21(mark(z0))), x1)), U11'(mark(U21(z0)), x1), MARK(U21(z0))) MARK(U11(nil, x1)) -> c55(ACTIVE(U11(active(nil), x1)), U11'(mark(nil), x1), MARK(nil)) MARK(U11(U31(z0, z1, z2, z3), x1)) -> c55(ACTIVE(U11(active(U31(mark(z0), z1, z2, z3)), x1)), U11'(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(U11(take(z0, z1), x1)) -> c55(ACTIVE(U11(active(take(mark(z0), mark(z1))), x1)), U11'(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(U11(and(z0, z1), x1)) -> c55(ACTIVE(U11(active(and(mark(z0), z1)), x1)), U11'(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(U11(isNat(z0), x1)) -> c55(ACTIVE(U11(active(isNat(z0)), x1)), U11'(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(U11(isNatList(z0), x1)) -> c55(ACTIVE(U11(active(isNatList(z0)), x1)), U11'(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(U11(isNatIList(z0), x1)) -> c55(ACTIVE(U11(active(isNatIList(z0)), x1)), U11'(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(U11(x0, x1)) -> c55(U11'(mark(x0), x1)) MARK(s(zeros)) -> c57(ACTIVE(s(active(zeros))), S(mark(zeros)), MARK(zeros)) MARK(s(cons(z0, z1))) -> c57(ACTIVE(s(active(cons(mark(z0), z1)))), S(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(s(0)) -> c57(ACTIVE(s(active(0))), S(mark(0)), MARK(0)) MARK(s(U11(z0, z1))) -> c57(ACTIVE(s(active(U11(mark(z0), z1)))), S(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(s(tt)) -> c57(ACTIVE(s(active(tt))), S(mark(tt)), MARK(tt)) MARK(s(s(z0))) -> c57(ACTIVE(s(active(s(mark(z0))))), S(mark(s(z0))), MARK(s(z0))) MARK(s(length(z0))) -> c57(ACTIVE(s(active(length(mark(z0))))), S(mark(length(z0))), MARK(length(z0))) MARK(s(U21(z0))) -> c57(ACTIVE(s(active(U21(mark(z0))))), S(mark(U21(z0))), MARK(U21(z0))) MARK(s(nil)) -> c57(ACTIVE(s(active(nil))), S(mark(nil)), MARK(nil)) MARK(s(U31(z0, z1, z2, z3))) -> c57(ACTIVE(s(active(U31(mark(z0), z1, z2, z3)))), S(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(s(take(z0, z1))) -> c57(ACTIVE(s(active(take(mark(z0), mark(z1))))), S(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(s(and(z0, z1))) -> c57(ACTIVE(s(active(and(mark(z0), z1)))), S(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(s(isNat(z0))) -> c57(ACTIVE(s(active(isNat(z0)))), S(mark(isNat(z0))), MARK(isNat(z0))) MARK(s(isNatList(z0))) -> c57(ACTIVE(s(active(isNatList(z0)))), S(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(s(isNatIList(z0))) -> c57(ACTIVE(s(active(isNatIList(z0)))), S(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(s(z0)) -> c57(S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(z0)), LENGTH(mark(z0)), MARK(z0)) MARK(length(zeros)) -> c58(ACTIVE(length(active(zeros))), LENGTH(mark(zeros)), MARK(zeros)) MARK(length(cons(z0, z1))) -> c58(ACTIVE(length(active(cons(mark(z0), z1)))), LENGTH(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(length(0)) -> c58(ACTIVE(length(active(0))), LENGTH(mark(0)), MARK(0)) MARK(length(U11(z0, z1))) -> c58(ACTIVE(length(active(U11(mark(z0), z1)))), LENGTH(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(length(tt)) -> c58(ACTIVE(length(active(tt))), LENGTH(mark(tt)), MARK(tt)) MARK(length(s(z0))) -> c58(ACTIVE(length(active(s(mark(z0))))), LENGTH(mark(s(z0))), MARK(s(z0))) MARK(length(length(z0))) -> c58(ACTIVE(length(active(length(mark(z0))))), LENGTH(mark(length(z0))), MARK(length(z0))) MARK(length(U21(z0))) -> c58(ACTIVE(length(active(U21(mark(z0))))), LENGTH(mark(U21(z0))), MARK(U21(z0))) MARK(length(nil)) -> c58(ACTIVE(length(active(nil))), LENGTH(mark(nil)), MARK(nil)) MARK(length(U31(z0, z1, z2, z3))) -> c58(ACTIVE(length(active(U31(mark(z0), z1, z2, z3)))), LENGTH(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(length(take(z0, z1))) -> c58(ACTIVE(length(active(take(mark(z0), mark(z1))))), LENGTH(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(length(and(z0, z1))) -> c58(ACTIVE(length(active(and(mark(z0), z1)))), LENGTH(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(length(isNat(z0))) -> c58(ACTIVE(length(active(isNat(z0)))), LENGTH(mark(isNat(z0))), MARK(isNat(z0))) MARK(length(isNatList(z0))) -> c58(ACTIVE(length(active(isNatList(z0)))), LENGTH(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(length(isNatIList(z0))) -> c58(ACTIVE(length(active(isNatIList(z0)))), LENGTH(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(U21(z0)) -> c59(ACTIVE(U21(z0)), U21'(mark(z0)), MARK(z0)) MARK(U21(zeros)) -> c59(ACTIVE(U21(active(zeros))), U21'(mark(zeros)), MARK(zeros)) MARK(U21(cons(z0, z1))) -> c59(ACTIVE(U21(active(cons(mark(z0), z1)))), U21'(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(U21(0)) -> c59(ACTIVE(U21(active(0))), U21'(mark(0)), MARK(0)) MARK(U21(U11(z0, z1))) -> c59(ACTIVE(U21(active(U11(mark(z0), z1)))), U21'(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(U21(tt)) -> c59(ACTIVE(U21(active(tt))), U21'(mark(tt)), MARK(tt)) MARK(U21(s(z0))) -> c59(ACTIVE(U21(active(s(mark(z0))))), U21'(mark(s(z0))), MARK(s(z0))) MARK(U21(length(z0))) -> c59(ACTIVE(U21(active(length(mark(z0))))), U21'(mark(length(z0))), MARK(length(z0))) MARK(U21(U21(z0))) -> c59(ACTIVE(U21(active(U21(mark(z0))))), U21'(mark(U21(z0))), MARK(U21(z0))) MARK(U21(nil)) -> c59(ACTIVE(U21(active(nil))), U21'(mark(nil)), MARK(nil)) MARK(U21(U31(z0, z1, z2, z3))) -> c59(ACTIVE(U21(active(U31(mark(z0), z1, z2, z3)))), U21'(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(U21(take(z0, z1))) -> c59(ACTIVE(U21(active(take(mark(z0), mark(z1))))), U21'(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(U21(and(z0, z1))) -> c59(ACTIVE(U21(active(and(mark(z0), z1)))), U21'(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(U21(isNat(z0))) -> c59(ACTIVE(U21(active(isNat(z0)))), U21'(mark(isNat(z0))), MARK(isNat(z0))) MARK(U21(isNatList(z0))) -> c59(ACTIVE(U21(active(isNatList(z0)))), U21'(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(U21(isNatIList(z0))) -> c59(ACTIVE(U21(active(isNatIList(z0)))), U21'(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(z0, z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U31(zeros, x1, x2, x3)) -> c61(ACTIVE(U31(active(zeros), x1, x2, x3)), U31'(mark(zeros), x1, x2, x3), MARK(zeros)) MARK(U31(cons(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(cons(mark(z0), z1)), x1, x2, x3)), U31'(mark(cons(z0, z1)), x1, x2, x3), MARK(cons(z0, z1))) MARK(U31(0, x1, x2, x3)) -> c61(ACTIVE(U31(active(0), x1, x2, x3)), U31'(mark(0), x1, x2, x3), MARK(0)) MARK(U31(U11(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(U11(mark(z0), z1)), x1, x2, x3)), U31'(mark(U11(z0, z1)), x1, x2, x3), MARK(U11(z0, z1))) MARK(U31(tt, x1, x2, x3)) -> c61(ACTIVE(U31(active(tt), x1, x2, x3)), U31'(mark(tt), x1, x2, x3), MARK(tt)) MARK(U31(s(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(s(mark(z0))), x1, x2, x3)), U31'(mark(s(z0)), x1, x2, x3), MARK(s(z0))) MARK(U31(length(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(length(mark(z0))), x1, x2, x3)), U31'(mark(length(z0)), x1, x2, x3), MARK(length(z0))) MARK(U31(U21(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(U21(mark(z0))), x1, x2, x3)), U31'(mark(U21(z0)), x1, x2, x3), MARK(U21(z0))) MARK(U31(nil, x1, x2, x3)) -> c61(ACTIVE(U31(active(nil), x1, x2, x3)), U31'(mark(nil), x1, x2, x3), MARK(nil)) MARK(U31(U31(z0, z1, z2, z3), x1, x2, x3)) -> c61(ACTIVE(U31(active(U31(mark(z0), z1, z2, z3)), x1, x2, x3)), U31'(mark(U31(z0, z1, z2, z3)), x1, x2, x3), MARK(U31(z0, z1, z2, z3))) MARK(U31(take(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(take(mark(z0), mark(z1))), x1, x2, x3)), U31'(mark(take(z0, z1)), x1, x2, x3), MARK(take(z0, z1))) MARK(U31(and(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(and(mark(z0), z1)), x1, x2, x3)), U31'(mark(and(z0, z1)), x1, x2, x3), MARK(and(z0, z1))) MARK(U31(isNat(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNat(z0)), x1, x2, x3)), U31'(mark(isNat(z0)), x1, x2, x3), MARK(isNat(z0))) MARK(U31(isNatList(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNatList(z0)), x1, x2, x3)), U31'(mark(isNatList(z0)), x1, x2, x3), MARK(isNatList(z0))) MARK(U31(isNatIList(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNatIList(z0)), x1, x2, x3)), U31'(mark(isNatIList(z0)), x1, x2, x3), MARK(isNatIList(z0))) MARK(U31(x0, x1, x2, x3)) -> c61(U31'(mark(x0), x1, x2, x3)) MARK(take(z0, x1)) -> c62(ACTIVE(take(z0, mark(x1))), TAKE(mark(z0), mark(x1)), MARK(z0), MARK(x1)) MARK(take(x0, z1)) -> c62(ACTIVE(take(mark(x0), z1)), TAKE(mark(x0), mark(z1)), MARK(x0), MARK(z1)) MARK(take(x0, zeros)) -> c62(ACTIVE(take(mark(x0), active(zeros))), TAKE(mark(x0), mark(zeros)), MARK(x0), MARK(zeros)) MARK(take(x0, cons(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(cons(mark(z0), z1)))), TAKE(mark(x0), mark(cons(z0, z1))), MARK(x0), MARK(cons(z0, z1))) MARK(take(x0, 0)) -> c62(ACTIVE(take(mark(x0), active(0))), TAKE(mark(x0), mark(0)), MARK(x0), MARK(0)) MARK(take(x0, U11(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(U11(mark(z0), z1)))), TAKE(mark(x0), mark(U11(z0, z1))), MARK(x0), MARK(U11(z0, z1))) MARK(take(x0, tt)) -> c62(ACTIVE(take(mark(x0), active(tt))), TAKE(mark(x0), mark(tt)), MARK(x0), MARK(tt)) MARK(take(x0, s(z0))) -> c62(ACTIVE(take(mark(x0), active(s(mark(z0))))), TAKE(mark(x0), mark(s(z0))), MARK(x0), MARK(s(z0))) MARK(take(x0, length(z0))) -> c62(ACTIVE(take(mark(x0), active(length(mark(z0))))), TAKE(mark(x0), mark(length(z0))), MARK(x0), MARK(length(z0))) MARK(take(x0, U21(z0))) -> c62(ACTIVE(take(mark(x0), active(U21(mark(z0))))), TAKE(mark(x0), mark(U21(z0))), MARK(x0), MARK(U21(z0))) MARK(take(x0, nil)) -> c62(ACTIVE(take(mark(x0), active(nil))), TAKE(mark(x0), mark(nil)), MARK(x0), MARK(nil)) MARK(take(x0, U31(z0, z1, z2, z3))) -> c62(ACTIVE(take(mark(x0), active(U31(mark(z0), z1, z2, z3)))), TAKE(mark(x0), mark(U31(z0, z1, z2, z3))), MARK(x0), MARK(U31(z0, z1, z2, z3))) MARK(take(x0, take(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(take(mark(z0), mark(z1))))), TAKE(mark(x0), mark(take(z0, z1))), MARK(x0), MARK(take(z0, z1))) MARK(take(x0, and(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(and(mark(z0), z1)))), TAKE(mark(x0), mark(and(z0, z1))), MARK(x0), MARK(and(z0, z1))) MARK(take(x0, isNat(z0))) -> c62(ACTIVE(take(mark(x0), active(isNat(z0)))), TAKE(mark(x0), mark(isNat(z0))), MARK(x0), MARK(isNat(z0))) MARK(take(x0, isNatList(z0))) -> c62(ACTIVE(take(mark(x0), active(isNatList(z0)))), TAKE(mark(x0), mark(isNatList(z0))), MARK(x0), MARK(isNatList(z0))) MARK(take(x0, isNatIList(z0))) -> c62(ACTIVE(take(mark(x0), active(isNatIList(z0)))), TAKE(mark(x0), mark(isNatIList(z0))), MARK(x0), MARK(isNatIList(z0))) MARK(take(zeros, x1)) -> c62(ACTIVE(take(active(zeros), mark(x1))), TAKE(mark(zeros), mark(x1)), MARK(zeros), MARK(x1)) MARK(take(cons(z0, z1), x1)) -> c62(ACTIVE(take(active(cons(mark(z0), z1)), mark(x1))), TAKE(mark(cons(z0, z1)), mark(x1)), MARK(cons(z0, z1)), MARK(x1)) MARK(take(0, x1)) -> c62(ACTIVE(take(active(0), mark(x1))), TAKE(mark(0), mark(x1)), MARK(0), MARK(x1)) MARK(take(U11(z0, z1), x1)) -> c62(ACTIVE(take(active(U11(mark(z0), z1)), mark(x1))), TAKE(mark(U11(z0, z1)), mark(x1)), MARK(U11(z0, z1)), MARK(x1)) MARK(take(tt, x1)) -> c62(ACTIVE(take(active(tt), mark(x1))), TAKE(mark(tt), mark(x1)), MARK(tt), MARK(x1)) MARK(take(s(z0), x1)) -> c62(ACTIVE(take(active(s(mark(z0))), mark(x1))), TAKE(mark(s(z0)), mark(x1)), MARK(s(z0)), MARK(x1)) MARK(take(length(z0), x1)) -> c62(ACTIVE(take(active(length(mark(z0))), mark(x1))), TAKE(mark(length(z0)), mark(x1)), MARK(length(z0)), MARK(x1)) MARK(take(U21(z0), x1)) -> c62(ACTIVE(take(active(U21(mark(z0))), mark(x1))), TAKE(mark(U21(z0)), mark(x1)), MARK(U21(z0)), MARK(x1)) MARK(take(nil, x1)) -> c62(ACTIVE(take(active(nil), mark(x1))), TAKE(mark(nil), mark(x1)), MARK(nil), MARK(x1)) MARK(take(U31(z0, z1, z2, z3), x1)) -> c62(ACTIVE(take(active(U31(mark(z0), z1, z2, z3)), mark(x1))), TAKE(mark(U31(z0, z1, z2, z3)), mark(x1)), MARK(U31(z0, z1, z2, z3)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c62(ACTIVE(take(active(take(mark(z0), mark(z1))), mark(x1))), TAKE(mark(take(z0, z1)), mark(x1)), MARK(take(z0, z1)), MARK(x1)) MARK(take(and(z0, z1), x1)) -> c62(ACTIVE(take(active(and(mark(z0), z1)), mark(x1))), TAKE(mark(and(z0, z1)), mark(x1)), MARK(and(z0, z1)), MARK(x1)) MARK(take(isNat(z0), x1)) -> c62(ACTIVE(take(active(isNat(z0)), mark(x1))), TAKE(mark(isNat(z0)), mark(x1)), MARK(isNat(z0)), MARK(x1)) MARK(take(isNatList(z0), x1)) -> c62(ACTIVE(take(active(isNatList(z0)), mark(x1))), TAKE(mark(isNatList(z0)), mark(x1)), MARK(isNatList(z0)), MARK(x1)) MARK(take(isNatIList(z0), x1)) -> c62(ACTIVE(take(active(isNatIList(z0)), mark(x1))), TAKE(mark(isNatIList(z0)), mark(x1)), MARK(isNatIList(z0)), MARK(x1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(z0, z1)), AND(mark(z0), z1), MARK(z0)) MARK(and(zeros, x1)) -> c63(ACTIVE(and(active(zeros), x1)), AND(mark(zeros), x1), MARK(zeros)) MARK(and(cons(z0, z1), x1)) -> c63(ACTIVE(and(active(cons(mark(z0), z1)), x1)), AND(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(and(0, x1)) -> c63(ACTIVE(and(active(0), x1)), AND(mark(0), x1), MARK(0)) MARK(and(U11(z0, z1), x1)) -> c63(ACTIVE(and(active(U11(mark(z0), z1)), x1)), AND(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(and(tt, x1)) -> c63(ACTIVE(and(active(tt), x1)), AND(mark(tt), x1), MARK(tt)) MARK(and(s(z0), x1)) -> c63(ACTIVE(and(active(s(mark(z0))), x1)), AND(mark(s(z0)), x1), MARK(s(z0))) MARK(and(length(z0), x1)) -> c63(ACTIVE(and(active(length(mark(z0))), x1)), AND(mark(length(z0)), x1), MARK(length(z0))) MARK(and(U21(z0), x1)) -> c63(ACTIVE(and(active(U21(mark(z0))), x1)), AND(mark(U21(z0)), x1), MARK(U21(z0))) MARK(and(nil, x1)) -> c63(ACTIVE(and(active(nil), x1)), AND(mark(nil), x1), MARK(nil)) MARK(and(U31(z0, z1, z2, z3), x1)) -> c63(ACTIVE(and(active(U31(mark(z0), z1, z2, z3)), x1)), AND(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(and(take(z0, z1), x1)) -> c63(ACTIVE(and(active(take(mark(z0), mark(z1))), x1)), AND(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(and(and(z0, z1), x1)) -> c63(ACTIVE(and(active(and(mark(z0), z1)), x1)), AND(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(and(isNat(z0), x1)) -> c63(ACTIVE(and(active(isNat(z0)), x1)), AND(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(and(isNatList(z0), x1)) -> c63(ACTIVE(and(active(isNatList(z0)), x1)), AND(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(and(isNatIList(z0), x1)) -> c63(ACTIVE(and(active(isNatIList(z0)), x1)), AND(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(and(x0, x1)) -> c63(AND(mark(x0), x1)) ENCODE_ACTIVE(cons_active(z0)) -> c(ACTIVE(active(encArg(z0)))) ENCODE_ACTIVE(cons_mark(z0)) -> c(ACTIVE(mark(encArg(z0)))) ENCODE_ACTIVE(cons_cons(z0, z1)) -> c(ACTIVE(cons(encArg(z0), encArg(z1)))) ENCODE_ACTIVE(cons_U11(z0, z1)) -> c(ACTIVE(U11(encArg(z0), encArg(z1)))) ENCODE_ACTIVE(cons_s(z0)) -> c(ACTIVE(s(encArg(z0)))) ENCODE_ACTIVE(cons_length(z0)) -> c(ACTIVE(length(encArg(z0)))) ENCODE_ACTIVE(cons_U21(z0)) -> c(ACTIVE(U21(encArg(z0)))) ENCODE_ACTIVE(cons_U31(z0, z1, z2, z3)) -> c(ACTIVE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)))) ENCODE_ACTIVE(cons_take(z0, z1)) -> c(ACTIVE(take(encArg(z0), encArg(z1)))) ENCODE_ACTIVE(cons_and(z0, z1)) -> c(ACTIVE(and(encArg(z0), encArg(z1)))) ENCODE_ACTIVE(cons_isNat(z0)) -> c(ACTIVE(isNat(encArg(z0)))) ENCODE_ACTIVE(cons_isNatList(z0)) -> c(ACTIVE(isNatList(encArg(z0)))) ENCODE_ACTIVE(cons_isNatIList(z0)) -> c(ACTIVE(isNatIList(encArg(z0)))) ENCODE_MARK(cons_active(z0)) -> c(MARK(active(encArg(z0)))) ENCODE_MARK(cons_mark(z0)) -> c(MARK(mark(encArg(z0)))) ENCODE_MARK(cons_cons(z0, z1)) -> c(MARK(cons(encArg(z0), encArg(z1)))) ENCODE_MARK(cons_U11(z0, z1)) -> c(MARK(U11(encArg(z0), encArg(z1)))) ENCODE_MARK(cons_s(z0)) -> c(MARK(s(encArg(z0)))) ENCODE_MARK(cons_length(z0)) -> c(MARK(length(encArg(z0)))) ENCODE_MARK(cons_U21(z0)) -> c(MARK(U21(encArg(z0)))) ENCODE_MARK(cons_U31(z0, z1, z2, z3)) -> c(MARK(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)))) ENCODE_MARK(cons_take(z0, z1)) -> c(MARK(take(encArg(z0), encArg(z1)))) ENCODE_MARK(cons_and(z0, z1)) -> c(MARK(and(encArg(z0), encArg(z1)))) ENCODE_MARK(cons_isNat(z0)) -> c(MARK(isNat(encArg(z0)))) ENCODE_MARK(cons_isNatList(z0)) -> c(MARK(isNatList(encArg(z0)))) ENCODE_MARK(cons_isNatIList(z0)) -> c(MARK(isNatIList(encArg(z0)))) ENCODE_CONS(x0, zeros) -> c(CONS(encArg(x0), zeros)) ENCODE_CONS(x0, 0) -> c(CONS(encArg(x0), 0)) ENCODE_CONS(x0, tt) -> c(CONS(encArg(x0), tt)) ENCODE_CONS(x0, nil) -> c(CONS(encArg(x0), nil)) ENCODE_CONS(x0, cons_active(z0)) -> c(CONS(encArg(x0), active(encArg(z0)))) ENCODE_CONS(x0, cons_mark(z0)) -> c(CONS(encArg(x0), mark(encArg(z0)))) ENCODE_CONS(x0, cons_cons(z0, z1)) -> c(CONS(encArg(x0), cons(encArg(z0), encArg(z1)))) ENCODE_CONS(x0, cons_U11(z0, z1)) -> c(CONS(encArg(x0), U11(encArg(z0), encArg(z1)))) ENCODE_CONS(x0, cons_s(z0)) -> c(CONS(encArg(x0), s(encArg(z0)))) ENCODE_CONS(x0, cons_length(z0)) -> c(CONS(encArg(x0), length(encArg(z0)))) ENCODE_CONS(x0, cons_U21(z0)) -> c(CONS(encArg(x0), U21(encArg(z0)))) ENCODE_CONS(x0, cons_U31(z0, z1, z2, z3)) -> c(CONS(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)))) ENCODE_CONS(x0, cons_take(z0, z1)) -> c(CONS(encArg(x0), take(encArg(z0), encArg(z1)))) ENCODE_CONS(x0, cons_and(z0, z1)) -> c(CONS(encArg(x0), and(encArg(z0), encArg(z1)))) ENCODE_CONS(x0, cons_isNat(z0)) -> c(CONS(encArg(x0), isNat(encArg(z0)))) ENCODE_CONS(x0, cons_isNatList(z0)) -> c(CONS(encArg(x0), isNatList(encArg(z0)))) ENCODE_CONS(x0, cons_isNatIList(z0)) -> c(CONS(encArg(x0), isNatIList(encArg(z0)))) ENCODE_CONS(zeros, x1) -> c(CONS(zeros, encArg(x1))) ENCODE_CONS(0, x1) -> c(CONS(0, encArg(x1))) ENCODE_CONS(tt, x1) -> c(CONS(tt, encArg(x1))) ENCODE_CONS(nil, x1) -> c(CONS(nil, encArg(x1))) ENCODE_CONS(cons_active(z0), x1) -> c(CONS(active(encArg(z0)), encArg(x1))) ENCODE_CONS(cons_mark(z0), x1) -> c(CONS(mark(encArg(z0)), encArg(x1))) ENCODE_CONS(cons_cons(z0, z1), x1) -> c(CONS(cons(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_CONS(cons_U11(z0, z1), x1) -> c(CONS(U11(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_CONS(cons_s(z0), x1) -> c(CONS(s(encArg(z0)), encArg(x1))) ENCODE_CONS(cons_length(z0), x1) -> c(CONS(length(encArg(z0)), encArg(x1))) ENCODE_CONS(cons_U21(z0), x1) -> c(CONS(U21(encArg(z0)), encArg(x1))) ENCODE_CONS(cons_U31(z0, z1, z2, z3), x1) -> c(CONS(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1))) ENCODE_CONS(cons_take(z0, z1), x1) -> c(CONS(take(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_CONS(cons_and(z0, z1), x1) -> c(CONS(and(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_CONS(cons_isNat(z0), x1) -> c(CONS(isNat(encArg(z0)), encArg(x1))) ENCODE_CONS(cons_isNatList(z0), x1) -> c(CONS(isNatList(encArg(z0)), encArg(x1))) ENCODE_CONS(cons_isNatIList(z0), x1) -> c(CONS(isNatIList(encArg(z0)), encArg(x1))) ENCODE_U11(x0, zeros) -> c(U11'(encArg(x0), zeros)) ENCODE_U11(x0, 0) -> c(U11'(encArg(x0), 0)) ENCODE_U11(x0, tt) -> c(U11'(encArg(x0), tt)) ENCODE_U11(x0, nil) -> c(U11'(encArg(x0), nil)) ENCODE_U11(x0, cons_active(z0)) -> c(U11'(encArg(x0), active(encArg(z0)))) ENCODE_U11(x0, cons_mark(z0)) -> c(U11'(encArg(x0), mark(encArg(z0)))) ENCODE_U11(x0, cons_cons(z0, z1)) -> c(U11'(encArg(x0), cons(encArg(z0), encArg(z1)))) ENCODE_U11(x0, cons_U11(z0, z1)) -> c(U11'(encArg(x0), U11(encArg(z0), encArg(z1)))) ENCODE_U11(x0, cons_s(z0)) -> c(U11'(encArg(x0), s(encArg(z0)))) ENCODE_U11(x0, cons_length(z0)) -> c(U11'(encArg(x0), length(encArg(z0)))) ENCODE_U11(x0, cons_U21(z0)) -> c(U11'(encArg(x0), U21(encArg(z0)))) ENCODE_U11(x0, cons_U31(z0, z1, z2, z3)) -> c(U11'(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)))) ENCODE_U11(x0, cons_take(z0, z1)) -> c(U11'(encArg(x0), take(encArg(z0), encArg(z1)))) ENCODE_U11(x0, cons_and(z0, z1)) -> c(U11'(encArg(x0), and(encArg(z0), encArg(z1)))) ENCODE_U11(x0, cons_isNat(z0)) -> c(U11'(encArg(x0), isNat(encArg(z0)))) ENCODE_U11(x0, cons_isNatList(z0)) -> c(U11'(encArg(x0), isNatList(encArg(z0)))) ENCODE_U11(x0, cons_isNatIList(z0)) -> c(U11'(encArg(x0), isNatIList(encArg(z0)))) ENCODE_U11(zeros, x1) -> c(U11'(zeros, encArg(x1))) ENCODE_U11(0, x1) -> c(U11'(0, encArg(x1))) ENCODE_U11(tt, x1) -> c(U11'(tt, encArg(x1))) ENCODE_U11(nil, x1) -> c(U11'(nil, encArg(x1))) ENCODE_U11(cons_active(z0), x1) -> c(U11'(active(encArg(z0)), encArg(x1))) ENCODE_U11(cons_mark(z0), x1) -> c(U11'(mark(encArg(z0)), encArg(x1))) ENCODE_U11(cons_cons(z0, z1), x1) -> c(U11'(cons(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_U11(cons_U11(z0, z1), x1) -> c(U11'(U11(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_U11(cons_s(z0), x1) -> c(U11'(s(encArg(z0)), encArg(x1))) ENCODE_U11(cons_length(z0), x1) -> c(U11'(length(encArg(z0)), encArg(x1))) ENCODE_U11(cons_U21(z0), x1) -> c(U11'(U21(encArg(z0)), encArg(x1))) ENCODE_U11(cons_U31(z0, z1, z2, z3), x1) -> c(U11'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1))) ENCODE_U11(cons_take(z0, z1), x1) -> c(U11'(take(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_U11(cons_and(z0, z1), x1) -> c(U11'(and(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_U11(cons_isNat(z0), x1) -> c(U11'(isNat(encArg(z0)), encArg(x1))) ENCODE_U11(cons_isNatList(z0), x1) -> c(U11'(isNatList(encArg(z0)), encArg(x1))) ENCODE_U11(cons_isNatIList(z0), x1) -> c(U11'(isNatIList(encArg(z0)), encArg(x1))) ENCODE_S(cons_active(z0)) -> c(S(active(encArg(z0)))) ENCODE_S(cons_mark(z0)) -> c(S(mark(encArg(z0)))) ENCODE_S(cons_cons(z0, z1)) -> c(S(cons(encArg(z0), encArg(z1)))) ENCODE_S(cons_U11(z0, z1)) -> c(S(U11(encArg(z0), encArg(z1)))) ENCODE_S(cons_s(z0)) -> c(S(s(encArg(z0)))) ENCODE_S(cons_length(z0)) -> c(S(length(encArg(z0)))) ENCODE_S(cons_U21(z0)) -> c(S(U21(encArg(z0)))) ENCODE_S(cons_U31(z0, z1, z2, z3)) -> c(S(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)))) ENCODE_S(cons_take(z0, z1)) -> c(S(take(encArg(z0), encArg(z1)))) ENCODE_S(cons_and(z0, z1)) -> c(S(and(encArg(z0), encArg(z1)))) ENCODE_S(cons_isNat(z0)) -> c(S(isNat(encArg(z0)))) ENCODE_S(cons_isNatList(z0)) -> c(S(isNatList(encArg(z0)))) ENCODE_S(cons_isNatIList(z0)) -> c(S(isNatIList(encArg(z0)))) ENCODE_LENGTH(cons_active(z0)) -> c(LENGTH(active(encArg(z0)))) ENCODE_LENGTH(cons_mark(z0)) -> c(LENGTH(mark(encArg(z0)))) ENCODE_LENGTH(cons_cons(z0, z1)) -> c(LENGTH(cons(encArg(z0), encArg(z1)))) ENCODE_LENGTH(cons_U11(z0, z1)) -> c(LENGTH(U11(encArg(z0), encArg(z1)))) ENCODE_LENGTH(cons_s(z0)) -> c(LENGTH(s(encArg(z0)))) ENCODE_LENGTH(cons_length(z0)) -> c(LENGTH(length(encArg(z0)))) ENCODE_LENGTH(cons_U21(z0)) -> c(LENGTH(U21(encArg(z0)))) ENCODE_LENGTH(cons_U31(z0, z1, z2, z3)) -> c(LENGTH(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)))) ENCODE_LENGTH(cons_take(z0, z1)) -> c(LENGTH(take(encArg(z0), encArg(z1)))) ENCODE_LENGTH(cons_and(z0, z1)) -> c(LENGTH(and(encArg(z0), encArg(z1)))) ENCODE_LENGTH(cons_isNat(z0)) -> c(LENGTH(isNat(encArg(z0)))) ENCODE_LENGTH(cons_isNatList(z0)) -> c(LENGTH(isNatList(encArg(z0)))) ENCODE_LENGTH(cons_isNatIList(z0)) -> c(LENGTH(isNatIList(encArg(z0)))) ENCODE_U21(cons_active(z0)) -> c(U21'(active(encArg(z0)))) ENCODE_U21(cons_mark(z0)) -> c(U21'(mark(encArg(z0)))) ENCODE_U21(cons_cons(z0, z1)) -> c(U21'(cons(encArg(z0), encArg(z1)))) ENCODE_U21(cons_U11(z0, z1)) -> c(U21'(U11(encArg(z0), encArg(z1)))) ENCODE_U21(cons_s(z0)) -> c(U21'(s(encArg(z0)))) ENCODE_U21(cons_length(z0)) -> c(U21'(length(encArg(z0)))) ENCODE_U21(cons_U21(z0)) -> c(U21'(U21(encArg(z0)))) ENCODE_U21(cons_U31(z0, z1, z2, z3)) -> c(U21'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)))) ENCODE_U21(cons_take(z0, z1)) -> c(U21'(take(encArg(z0), encArg(z1)))) ENCODE_U21(cons_and(z0, z1)) -> c(U21'(and(encArg(z0), encArg(z1)))) ENCODE_U21(cons_isNat(z0)) -> c(U21'(isNat(encArg(z0)))) ENCODE_U21(cons_isNatList(z0)) -> c(U21'(isNatList(encArg(z0)))) ENCODE_U21(cons_isNatIList(z0)) -> c(U21'(isNatIList(encArg(z0)))) S tuples: ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 MARK(cons(zeros, x1)) -> c53(ACTIVE(cons(active(zeros), x1)), CONS(mark(zeros), x1), MARK(zeros)) MARK(cons(cons(z0, z1), x1)) -> c53(ACTIVE(cons(active(cons(mark(z0), z1)), x1)), CONS(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(cons(0, x1)) -> c53(ACTIVE(cons(active(0), x1)), CONS(mark(0), x1), MARK(0)) MARK(cons(U11(z0, z1), x1)) -> c53(ACTIVE(cons(active(U11(mark(z0), z1)), x1)), CONS(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(cons(tt, x1)) -> c53(ACTIVE(cons(active(tt), x1)), CONS(mark(tt), x1), MARK(tt)) MARK(cons(s(z0), x1)) -> c53(ACTIVE(cons(active(s(mark(z0))), x1)), CONS(mark(s(z0)), x1), MARK(s(z0))) MARK(cons(length(z0), x1)) -> c53(ACTIVE(cons(active(length(mark(z0))), x1)), CONS(mark(length(z0)), x1), MARK(length(z0))) MARK(cons(U21(z0), x1)) -> c53(ACTIVE(cons(active(U21(mark(z0))), x1)), CONS(mark(U21(z0)), x1), MARK(U21(z0))) MARK(cons(nil, x1)) -> c53(ACTIVE(cons(active(nil), x1)), CONS(mark(nil), x1), MARK(nil)) MARK(cons(U31(z0, z1, z2, z3), x1)) -> c53(ACTIVE(cons(active(U31(mark(z0), z1, z2, z3)), x1)), CONS(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(cons(take(z0, z1), x1)) -> c53(ACTIVE(cons(active(take(mark(z0), mark(z1))), x1)), CONS(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(cons(and(z0, z1), x1)) -> c53(ACTIVE(cons(active(and(mark(z0), z1)), x1)), CONS(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(cons(isNat(z0), x1)) -> c53(ACTIVE(cons(active(isNat(z0)), x1)), CONS(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(cons(isNatList(z0), x1)) -> c53(ACTIVE(cons(active(isNatList(z0)), x1)), CONS(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(cons(isNatIList(z0), x1)) -> c53(ACTIVE(cons(active(isNatIList(z0)), x1)), CONS(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(cons(x0, x1)) -> c53(CONS(mark(x0), x1)) MARK(cons(z0, z1)) -> c53(CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(z0, z1)), U11'(mark(z0), z1), MARK(z0)) MARK(U11(zeros, x1)) -> c55(ACTIVE(U11(active(zeros), x1)), U11'(mark(zeros), x1), MARK(zeros)) MARK(U11(cons(z0, z1), x1)) -> c55(ACTIVE(U11(active(cons(mark(z0), z1)), x1)), U11'(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(U11(0, x1)) -> c55(ACTIVE(U11(active(0), x1)), U11'(mark(0), x1), MARK(0)) MARK(U11(U11(z0, z1), x1)) -> c55(ACTIVE(U11(active(U11(mark(z0), z1)), x1)), U11'(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(U11(tt, x1)) -> c55(ACTIVE(U11(active(tt), x1)), U11'(mark(tt), x1), MARK(tt)) MARK(U11(s(z0), x1)) -> c55(ACTIVE(U11(active(s(mark(z0))), x1)), U11'(mark(s(z0)), x1), MARK(s(z0))) MARK(U11(length(z0), x1)) -> c55(ACTIVE(U11(active(length(mark(z0))), x1)), U11'(mark(length(z0)), x1), MARK(length(z0))) MARK(U11(U21(z0), x1)) -> c55(ACTIVE(U11(active(U21(mark(z0))), x1)), U11'(mark(U21(z0)), x1), MARK(U21(z0))) MARK(U11(nil, x1)) -> c55(ACTIVE(U11(active(nil), x1)), U11'(mark(nil), x1), MARK(nil)) MARK(U11(U31(z0, z1, z2, z3), x1)) -> c55(ACTIVE(U11(active(U31(mark(z0), z1, z2, z3)), x1)), U11'(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(U11(take(z0, z1), x1)) -> c55(ACTIVE(U11(active(take(mark(z0), mark(z1))), x1)), U11'(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(U11(and(z0, z1), x1)) -> c55(ACTIVE(U11(active(and(mark(z0), z1)), x1)), U11'(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(U11(isNat(z0), x1)) -> c55(ACTIVE(U11(active(isNat(z0)), x1)), U11'(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(U11(isNatList(z0), x1)) -> c55(ACTIVE(U11(active(isNatList(z0)), x1)), U11'(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(U11(isNatIList(z0), x1)) -> c55(ACTIVE(U11(active(isNatIList(z0)), x1)), U11'(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(U11(x0, x1)) -> c55(U11'(mark(x0), x1)) MARK(s(zeros)) -> c57(ACTIVE(s(active(zeros))), S(mark(zeros)), MARK(zeros)) MARK(s(cons(z0, z1))) -> c57(ACTIVE(s(active(cons(mark(z0), z1)))), S(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(s(0)) -> c57(ACTIVE(s(active(0))), S(mark(0)), MARK(0)) MARK(s(U11(z0, z1))) -> c57(ACTIVE(s(active(U11(mark(z0), z1)))), S(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(s(tt)) -> c57(ACTIVE(s(active(tt))), S(mark(tt)), MARK(tt)) MARK(s(s(z0))) -> c57(ACTIVE(s(active(s(mark(z0))))), S(mark(s(z0))), MARK(s(z0))) MARK(s(length(z0))) -> c57(ACTIVE(s(active(length(mark(z0))))), S(mark(length(z0))), MARK(length(z0))) MARK(s(U21(z0))) -> c57(ACTIVE(s(active(U21(mark(z0))))), S(mark(U21(z0))), MARK(U21(z0))) MARK(s(nil)) -> c57(ACTIVE(s(active(nil))), S(mark(nil)), MARK(nil)) MARK(s(U31(z0, z1, z2, z3))) -> c57(ACTIVE(s(active(U31(mark(z0), z1, z2, z3)))), S(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(s(take(z0, z1))) -> c57(ACTIVE(s(active(take(mark(z0), mark(z1))))), S(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(s(and(z0, z1))) -> c57(ACTIVE(s(active(and(mark(z0), z1)))), S(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(s(isNat(z0))) -> c57(ACTIVE(s(active(isNat(z0)))), S(mark(isNat(z0))), MARK(isNat(z0))) MARK(s(isNatList(z0))) -> c57(ACTIVE(s(active(isNatList(z0)))), S(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(s(isNatIList(z0))) -> c57(ACTIVE(s(active(isNatIList(z0)))), S(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(s(z0)) -> c57(S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(z0)), LENGTH(mark(z0)), MARK(z0)) MARK(length(zeros)) -> c58(ACTIVE(length(active(zeros))), LENGTH(mark(zeros)), MARK(zeros)) MARK(length(cons(z0, z1))) -> c58(ACTIVE(length(active(cons(mark(z0), z1)))), LENGTH(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(length(0)) -> c58(ACTIVE(length(active(0))), LENGTH(mark(0)), MARK(0)) MARK(length(U11(z0, z1))) -> c58(ACTIVE(length(active(U11(mark(z0), z1)))), LENGTH(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(length(tt)) -> c58(ACTIVE(length(active(tt))), LENGTH(mark(tt)), MARK(tt)) MARK(length(s(z0))) -> c58(ACTIVE(length(active(s(mark(z0))))), LENGTH(mark(s(z0))), MARK(s(z0))) MARK(length(length(z0))) -> c58(ACTIVE(length(active(length(mark(z0))))), LENGTH(mark(length(z0))), MARK(length(z0))) MARK(length(U21(z0))) -> c58(ACTIVE(length(active(U21(mark(z0))))), LENGTH(mark(U21(z0))), MARK(U21(z0))) MARK(length(nil)) -> c58(ACTIVE(length(active(nil))), LENGTH(mark(nil)), MARK(nil)) MARK(length(U31(z0, z1, z2, z3))) -> c58(ACTIVE(length(active(U31(mark(z0), z1, z2, z3)))), LENGTH(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(length(take(z0, z1))) -> c58(ACTIVE(length(active(take(mark(z0), mark(z1))))), LENGTH(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(length(and(z0, z1))) -> c58(ACTIVE(length(active(and(mark(z0), z1)))), LENGTH(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(length(isNat(z0))) -> c58(ACTIVE(length(active(isNat(z0)))), LENGTH(mark(isNat(z0))), MARK(isNat(z0))) MARK(length(isNatList(z0))) -> c58(ACTIVE(length(active(isNatList(z0)))), LENGTH(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(length(isNatIList(z0))) -> c58(ACTIVE(length(active(isNatIList(z0)))), LENGTH(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(U21(z0)) -> c59(ACTIVE(U21(z0)), U21'(mark(z0)), MARK(z0)) MARK(U21(zeros)) -> c59(ACTIVE(U21(active(zeros))), U21'(mark(zeros)), MARK(zeros)) MARK(U21(cons(z0, z1))) -> c59(ACTIVE(U21(active(cons(mark(z0), z1)))), U21'(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(U21(0)) -> c59(ACTIVE(U21(active(0))), U21'(mark(0)), MARK(0)) MARK(U21(U11(z0, z1))) -> c59(ACTIVE(U21(active(U11(mark(z0), z1)))), U21'(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(U21(tt)) -> c59(ACTIVE(U21(active(tt))), U21'(mark(tt)), MARK(tt)) MARK(U21(s(z0))) -> c59(ACTIVE(U21(active(s(mark(z0))))), U21'(mark(s(z0))), MARK(s(z0))) MARK(U21(length(z0))) -> c59(ACTIVE(U21(active(length(mark(z0))))), U21'(mark(length(z0))), MARK(length(z0))) MARK(U21(U21(z0))) -> c59(ACTIVE(U21(active(U21(mark(z0))))), U21'(mark(U21(z0))), MARK(U21(z0))) MARK(U21(nil)) -> c59(ACTIVE(U21(active(nil))), U21'(mark(nil)), MARK(nil)) MARK(U21(U31(z0, z1, z2, z3))) -> c59(ACTIVE(U21(active(U31(mark(z0), z1, z2, z3)))), U21'(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(U21(take(z0, z1))) -> c59(ACTIVE(U21(active(take(mark(z0), mark(z1))))), U21'(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(U21(and(z0, z1))) -> c59(ACTIVE(U21(active(and(mark(z0), z1)))), U21'(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(U21(isNat(z0))) -> c59(ACTIVE(U21(active(isNat(z0)))), U21'(mark(isNat(z0))), MARK(isNat(z0))) MARK(U21(isNatList(z0))) -> c59(ACTIVE(U21(active(isNatList(z0)))), U21'(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(U21(isNatIList(z0))) -> c59(ACTIVE(U21(active(isNatIList(z0)))), U21'(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(z0, z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U31(zeros, x1, x2, x3)) -> c61(ACTIVE(U31(active(zeros), x1, x2, x3)), U31'(mark(zeros), x1, x2, x3), MARK(zeros)) MARK(U31(cons(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(cons(mark(z0), z1)), x1, x2, x3)), U31'(mark(cons(z0, z1)), x1, x2, x3), MARK(cons(z0, z1))) MARK(U31(0, x1, x2, x3)) -> c61(ACTIVE(U31(active(0), x1, x2, x3)), U31'(mark(0), x1, x2, x3), MARK(0)) MARK(U31(U11(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(U11(mark(z0), z1)), x1, x2, x3)), U31'(mark(U11(z0, z1)), x1, x2, x3), MARK(U11(z0, z1))) MARK(U31(tt, x1, x2, x3)) -> c61(ACTIVE(U31(active(tt), x1, x2, x3)), U31'(mark(tt), x1, x2, x3), MARK(tt)) MARK(U31(s(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(s(mark(z0))), x1, x2, x3)), U31'(mark(s(z0)), x1, x2, x3), MARK(s(z0))) MARK(U31(length(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(length(mark(z0))), x1, x2, x3)), U31'(mark(length(z0)), x1, x2, x3), MARK(length(z0))) MARK(U31(U21(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(U21(mark(z0))), x1, x2, x3)), U31'(mark(U21(z0)), x1, x2, x3), MARK(U21(z0))) MARK(U31(nil, x1, x2, x3)) -> c61(ACTIVE(U31(active(nil), x1, x2, x3)), U31'(mark(nil), x1, x2, x3), MARK(nil)) MARK(U31(U31(z0, z1, z2, z3), x1, x2, x3)) -> c61(ACTIVE(U31(active(U31(mark(z0), z1, z2, z3)), x1, x2, x3)), U31'(mark(U31(z0, z1, z2, z3)), x1, x2, x3), MARK(U31(z0, z1, z2, z3))) MARK(U31(take(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(take(mark(z0), mark(z1))), x1, x2, x3)), U31'(mark(take(z0, z1)), x1, x2, x3), MARK(take(z0, z1))) MARK(U31(and(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(and(mark(z0), z1)), x1, x2, x3)), U31'(mark(and(z0, z1)), x1, x2, x3), MARK(and(z0, z1))) MARK(U31(isNat(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNat(z0)), x1, x2, x3)), U31'(mark(isNat(z0)), x1, x2, x3), MARK(isNat(z0))) MARK(U31(isNatList(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNatList(z0)), x1, x2, x3)), U31'(mark(isNatList(z0)), x1, x2, x3), MARK(isNatList(z0))) MARK(U31(isNatIList(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNatIList(z0)), x1, x2, x3)), U31'(mark(isNatIList(z0)), x1, x2, x3), MARK(isNatIList(z0))) MARK(U31(x0, x1, x2, x3)) -> c61(U31'(mark(x0), x1, x2, x3)) MARK(take(z0, x1)) -> c62(ACTIVE(take(z0, mark(x1))), TAKE(mark(z0), mark(x1)), MARK(z0), MARK(x1)) MARK(take(x0, z1)) -> c62(ACTIVE(take(mark(x0), z1)), TAKE(mark(x0), mark(z1)), MARK(x0), MARK(z1)) MARK(take(x0, zeros)) -> c62(ACTIVE(take(mark(x0), active(zeros))), TAKE(mark(x0), mark(zeros)), MARK(x0), MARK(zeros)) MARK(take(x0, cons(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(cons(mark(z0), z1)))), TAKE(mark(x0), mark(cons(z0, z1))), MARK(x0), MARK(cons(z0, z1))) MARK(take(x0, 0)) -> c62(ACTIVE(take(mark(x0), active(0))), TAKE(mark(x0), mark(0)), MARK(x0), MARK(0)) MARK(take(x0, U11(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(U11(mark(z0), z1)))), TAKE(mark(x0), mark(U11(z0, z1))), MARK(x0), MARK(U11(z0, z1))) MARK(take(x0, tt)) -> c62(ACTIVE(take(mark(x0), active(tt))), TAKE(mark(x0), mark(tt)), MARK(x0), MARK(tt)) MARK(take(x0, s(z0))) -> c62(ACTIVE(take(mark(x0), active(s(mark(z0))))), TAKE(mark(x0), mark(s(z0))), MARK(x0), MARK(s(z0))) MARK(take(x0, length(z0))) -> c62(ACTIVE(take(mark(x0), active(length(mark(z0))))), TAKE(mark(x0), mark(length(z0))), MARK(x0), MARK(length(z0))) MARK(take(x0, U21(z0))) -> c62(ACTIVE(take(mark(x0), active(U21(mark(z0))))), TAKE(mark(x0), mark(U21(z0))), MARK(x0), MARK(U21(z0))) MARK(take(x0, nil)) -> c62(ACTIVE(take(mark(x0), active(nil))), TAKE(mark(x0), mark(nil)), MARK(x0), MARK(nil)) MARK(take(x0, U31(z0, z1, z2, z3))) -> c62(ACTIVE(take(mark(x0), active(U31(mark(z0), z1, z2, z3)))), TAKE(mark(x0), mark(U31(z0, z1, z2, z3))), MARK(x0), MARK(U31(z0, z1, z2, z3))) MARK(take(x0, take(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(take(mark(z0), mark(z1))))), TAKE(mark(x0), mark(take(z0, z1))), MARK(x0), MARK(take(z0, z1))) MARK(take(x0, and(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(and(mark(z0), z1)))), TAKE(mark(x0), mark(and(z0, z1))), MARK(x0), MARK(and(z0, z1))) MARK(take(x0, isNat(z0))) -> c62(ACTIVE(take(mark(x0), active(isNat(z0)))), TAKE(mark(x0), mark(isNat(z0))), MARK(x0), MARK(isNat(z0))) MARK(take(x0, isNatList(z0))) -> c62(ACTIVE(take(mark(x0), active(isNatList(z0)))), TAKE(mark(x0), mark(isNatList(z0))), MARK(x0), MARK(isNatList(z0))) MARK(take(x0, isNatIList(z0))) -> c62(ACTIVE(take(mark(x0), active(isNatIList(z0)))), TAKE(mark(x0), mark(isNatIList(z0))), MARK(x0), MARK(isNatIList(z0))) MARK(take(zeros, x1)) -> c62(ACTIVE(take(active(zeros), mark(x1))), TAKE(mark(zeros), mark(x1)), MARK(zeros), MARK(x1)) MARK(take(cons(z0, z1), x1)) -> c62(ACTIVE(take(active(cons(mark(z0), z1)), mark(x1))), TAKE(mark(cons(z0, z1)), mark(x1)), MARK(cons(z0, z1)), MARK(x1)) MARK(take(0, x1)) -> c62(ACTIVE(take(active(0), mark(x1))), TAKE(mark(0), mark(x1)), MARK(0), MARK(x1)) MARK(take(U11(z0, z1), x1)) -> c62(ACTIVE(take(active(U11(mark(z0), z1)), mark(x1))), TAKE(mark(U11(z0, z1)), mark(x1)), MARK(U11(z0, z1)), MARK(x1)) MARK(take(tt, x1)) -> c62(ACTIVE(take(active(tt), mark(x1))), TAKE(mark(tt), mark(x1)), MARK(tt), MARK(x1)) MARK(take(s(z0), x1)) -> c62(ACTIVE(take(active(s(mark(z0))), mark(x1))), TAKE(mark(s(z0)), mark(x1)), MARK(s(z0)), MARK(x1)) MARK(take(length(z0), x1)) -> c62(ACTIVE(take(active(length(mark(z0))), mark(x1))), TAKE(mark(length(z0)), mark(x1)), MARK(length(z0)), MARK(x1)) MARK(take(U21(z0), x1)) -> c62(ACTIVE(take(active(U21(mark(z0))), mark(x1))), TAKE(mark(U21(z0)), mark(x1)), MARK(U21(z0)), MARK(x1)) MARK(take(nil, x1)) -> c62(ACTIVE(take(active(nil), mark(x1))), TAKE(mark(nil), mark(x1)), MARK(nil), MARK(x1)) MARK(take(U31(z0, z1, z2, z3), x1)) -> c62(ACTIVE(take(active(U31(mark(z0), z1, z2, z3)), mark(x1))), TAKE(mark(U31(z0, z1, z2, z3)), mark(x1)), MARK(U31(z0, z1, z2, z3)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c62(ACTIVE(take(active(take(mark(z0), mark(z1))), mark(x1))), TAKE(mark(take(z0, z1)), mark(x1)), MARK(take(z0, z1)), MARK(x1)) MARK(take(and(z0, z1), x1)) -> c62(ACTIVE(take(active(and(mark(z0), z1)), mark(x1))), TAKE(mark(and(z0, z1)), mark(x1)), MARK(and(z0, z1)), MARK(x1)) MARK(take(isNat(z0), x1)) -> c62(ACTIVE(take(active(isNat(z0)), mark(x1))), TAKE(mark(isNat(z0)), mark(x1)), MARK(isNat(z0)), MARK(x1)) MARK(take(isNatList(z0), x1)) -> c62(ACTIVE(take(active(isNatList(z0)), mark(x1))), TAKE(mark(isNatList(z0)), mark(x1)), MARK(isNatList(z0)), MARK(x1)) MARK(take(isNatIList(z0), x1)) -> c62(ACTIVE(take(active(isNatIList(z0)), mark(x1))), TAKE(mark(isNatIList(z0)), mark(x1)), MARK(isNatIList(z0)), MARK(x1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(z0, z1)), AND(mark(z0), z1), MARK(z0)) MARK(and(zeros, x1)) -> c63(ACTIVE(and(active(zeros), x1)), AND(mark(zeros), x1), MARK(zeros)) MARK(and(cons(z0, z1), x1)) -> c63(ACTIVE(and(active(cons(mark(z0), z1)), x1)), AND(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(and(0, x1)) -> c63(ACTIVE(and(active(0), x1)), AND(mark(0), x1), MARK(0)) MARK(and(U11(z0, z1), x1)) -> c63(ACTIVE(and(active(U11(mark(z0), z1)), x1)), AND(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(and(tt, x1)) -> c63(ACTIVE(and(active(tt), x1)), AND(mark(tt), x1), MARK(tt)) MARK(and(s(z0), x1)) -> c63(ACTIVE(and(active(s(mark(z0))), x1)), AND(mark(s(z0)), x1), MARK(s(z0))) MARK(and(length(z0), x1)) -> c63(ACTIVE(and(active(length(mark(z0))), x1)), AND(mark(length(z0)), x1), MARK(length(z0))) MARK(and(U21(z0), x1)) -> c63(ACTIVE(and(active(U21(mark(z0))), x1)), AND(mark(U21(z0)), x1), MARK(U21(z0))) MARK(and(nil, x1)) -> c63(ACTIVE(and(active(nil), x1)), AND(mark(nil), x1), MARK(nil)) MARK(and(U31(z0, z1, z2, z3), x1)) -> c63(ACTIVE(and(active(U31(mark(z0), z1, z2, z3)), x1)), AND(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(and(take(z0, z1), x1)) -> c63(ACTIVE(and(active(take(mark(z0), mark(z1))), x1)), AND(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(and(and(z0, z1), x1)) -> c63(ACTIVE(and(active(and(mark(z0), z1)), x1)), AND(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(and(isNat(z0), x1)) -> c63(ACTIVE(and(active(isNat(z0)), x1)), AND(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(and(isNatList(z0), x1)) -> c63(ACTIVE(and(active(isNatList(z0)), x1)), AND(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(and(isNatIList(z0), x1)) -> c63(ACTIVE(and(active(isNatIList(z0)), x1)), AND(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(and(x0, x1)) -> c63(AND(mark(x0), x1)) K tuples:none Defined Rule Symbols: encArg_1, active_1, mark_1, cons_2, U11_2, s_1, length_1, U21_1, U31_4, take_2, and_2, isNat_1, isNatList_1, isNatIList_1 Defined Pair Symbols: ACTIVE_1, MARK_1, CONS_2, U11'_2, S_1, LENGTH_1, U21'_1, U31'_4, TAKE_2, AND_2, ISNAT_1, ISNATLIST_1, ISNATILIST_1, ENCODE_U31_4, ENCODE_TAKE_2, ENCODE_AND_2, ENCODE_ISNAT_1, ENCODE_ISNATLIST_1, ENCODE_ISNATILIST_1, ENCARG_1, ENCODE_ACTIVE_1, ENCODE_MARK_1, ENCODE_CONS_2, ENCODE_U11_2, ENCODE_S_1, ENCODE_LENGTH_1, ENCODE_U21_1 Compound Symbols: c36_1, c37_3, c38_1, c39_1, c40_2, c41_2, c42_2, c43_1, c45_1, c48_1, c52_1, c64_2, c65_2, c66_2, c67_1, c68_1, c69_1, c70_1, c71_1, c72_1, c73_1, c74_1, c75_1, c76_1, c77_1, c78_1, c79_1, c80_1, c81_1, c82_1, c83_1, c84_1, c85_1, c86_1, c87_1, c88_1, c89_1, c90_1, c91_1, c92_1, c93_1, c94_1, c95_1, c96_1, c97_1, c98_1, c99_1, c100_1, c101_1, c102_1, c34_1, c35_2, c44_3, c46_3, c47_3, c49_3, c50_2, c51_4, c54, c56, c60, c_1, c4_2, c4_1, c5_2, c5_1, c6_3, c6_2, c7_3, c7_2, c8_2, c9_2, c10_2, c11_5, c11_4, c12_3, c12_2, c13_3, c13_2, c14_2, c15_2, c16_2, c53_3, c53_1, c53_2, c55_3, c55_1, c57_3, c57_2, c58_3, c59_3, c61_3, c61_1, c62_4, c63_3, c63_1 ---------------------------------------- (137) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace ENCODE_U31(z0, z1, z2, z3) -> c(U31'(encArg(z0), encArg(z1), encArg(z2), encArg(z3))) by ENCODE_U31(x0, x1, x2, zeros) -> c(U31'(encArg(x0), encArg(x1), encArg(x2), zeros)) ENCODE_U31(x0, x1, x2, 0) -> c(U31'(encArg(x0), encArg(x1), encArg(x2), 0)) ENCODE_U31(x0, x1, x2, tt) -> c(U31'(encArg(x0), encArg(x1), encArg(x2), tt)) ENCODE_U31(x0, x1, x2, nil) -> c(U31'(encArg(x0), encArg(x1), encArg(x2), nil)) ENCODE_U31(x0, x1, x2, cons_active(z0)) -> c(U31'(encArg(x0), encArg(x1), encArg(x2), active(encArg(z0)))) ENCODE_U31(x0, x1, x2, cons_mark(z0)) -> c(U31'(encArg(x0), encArg(x1), encArg(x2), mark(encArg(z0)))) ENCODE_U31(x0, x1, x2, cons_cons(z0, z1)) -> c(U31'(encArg(x0), encArg(x1), encArg(x2), cons(encArg(z0), encArg(z1)))) ENCODE_U31(x0, x1, x2, cons_U11(z0, z1)) -> c(U31'(encArg(x0), encArg(x1), encArg(x2), U11(encArg(z0), encArg(z1)))) ENCODE_U31(x0, x1, x2, cons_s(z0)) -> c(U31'(encArg(x0), encArg(x1), encArg(x2), s(encArg(z0)))) ENCODE_U31(x0, x1, x2, cons_length(z0)) -> c(U31'(encArg(x0), encArg(x1), encArg(x2), length(encArg(z0)))) ENCODE_U31(x0, x1, x2, cons_U21(z0)) -> c(U31'(encArg(x0), encArg(x1), encArg(x2), U21(encArg(z0)))) ENCODE_U31(x0, x1, x2, cons_U31(z0, z1, z2, z3)) -> c(U31'(encArg(x0), encArg(x1), encArg(x2), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)))) ENCODE_U31(x0, x1, x2, cons_take(z0, z1)) -> c(U31'(encArg(x0), encArg(x1), encArg(x2), take(encArg(z0), encArg(z1)))) ENCODE_U31(x0, x1, x2, cons_and(z0, z1)) -> c(U31'(encArg(x0), encArg(x1), encArg(x2), and(encArg(z0), encArg(z1)))) ENCODE_U31(x0, x1, x2, cons_isNat(z0)) -> c(U31'(encArg(x0), encArg(x1), encArg(x2), isNat(encArg(z0)))) ENCODE_U31(x0, x1, x2, cons_isNatList(z0)) -> c(U31'(encArg(x0), encArg(x1), encArg(x2), isNatList(encArg(z0)))) ENCODE_U31(x0, x1, x2, cons_isNatIList(z0)) -> c(U31'(encArg(x0), encArg(x1), encArg(x2), isNatIList(encArg(z0)))) ENCODE_U31(x0, x1, zeros, x3) -> c(U31'(encArg(x0), encArg(x1), zeros, encArg(x3))) ENCODE_U31(x0, x1, 0, x3) -> c(U31'(encArg(x0), encArg(x1), 0, encArg(x3))) ENCODE_U31(x0, x1, tt, x3) -> c(U31'(encArg(x0), encArg(x1), tt, encArg(x3))) ENCODE_U31(x0, x1, nil, x3) -> c(U31'(encArg(x0), encArg(x1), nil, encArg(x3))) ENCODE_U31(x0, x1, cons_active(z0), x3) -> c(U31'(encArg(x0), encArg(x1), active(encArg(z0)), encArg(x3))) ENCODE_U31(x0, x1, cons_mark(z0), x3) -> c(U31'(encArg(x0), encArg(x1), mark(encArg(z0)), encArg(x3))) ENCODE_U31(x0, x1, cons_cons(z0, z1), x3) -> c(U31'(encArg(x0), encArg(x1), cons(encArg(z0), encArg(z1)), encArg(x3))) ENCODE_U31(x0, x1, cons_U11(z0, z1), x3) -> c(U31'(encArg(x0), encArg(x1), U11(encArg(z0), encArg(z1)), encArg(x3))) ENCODE_U31(x0, x1, cons_s(z0), x3) -> c(U31'(encArg(x0), encArg(x1), s(encArg(z0)), encArg(x3))) ENCODE_U31(x0, x1, cons_length(z0), x3) -> c(U31'(encArg(x0), encArg(x1), length(encArg(z0)), encArg(x3))) ENCODE_U31(x0, x1, cons_U21(z0), x3) -> c(U31'(encArg(x0), encArg(x1), U21(encArg(z0)), encArg(x3))) ENCODE_U31(x0, x1, cons_U31(z0, z1, z2, z3), x3) -> c(U31'(encArg(x0), encArg(x1), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x3))) ENCODE_U31(x0, x1, cons_take(z0, z1), x3) -> c(U31'(encArg(x0), encArg(x1), take(encArg(z0), encArg(z1)), encArg(x3))) ENCODE_U31(x0, x1, cons_and(z0, z1), x3) -> c(U31'(encArg(x0), encArg(x1), and(encArg(z0), encArg(z1)), encArg(x3))) ENCODE_U31(x0, x1, cons_isNat(z0), x3) -> c(U31'(encArg(x0), encArg(x1), isNat(encArg(z0)), encArg(x3))) ENCODE_U31(x0, x1, cons_isNatList(z0), x3) -> c(U31'(encArg(x0), encArg(x1), isNatList(encArg(z0)), encArg(x3))) ENCODE_U31(x0, x1, cons_isNatIList(z0), x3) -> c(U31'(encArg(x0), encArg(x1), isNatIList(encArg(z0)), encArg(x3))) ENCODE_U31(x0, zeros, x2, x3) -> c(U31'(encArg(x0), zeros, encArg(x2), encArg(x3))) ENCODE_U31(x0, 0, x2, x3) -> c(U31'(encArg(x0), 0, encArg(x2), encArg(x3))) ENCODE_U31(x0, tt, x2, x3) -> c(U31'(encArg(x0), tt, encArg(x2), encArg(x3))) ENCODE_U31(x0, nil, x2, x3) -> c(U31'(encArg(x0), nil, encArg(x2), encArg(x3))) ENCODE_U31(x0, cons_active(z0), x2, x3) -> c(U31'(encArg(x0), active(encArg(z0)), encArg(x2), encArg(x3))) ENCODE_U31(x0, cons_mark(z0), x2, x3) -> c(U31'(encArg(x0), mark(encArg(z0)), encArg(x2), encArg(x3))) ENCODE_U31(x0, cons_cons(z0, z1), x2, x3) -> c(U31'(encArg(x0), cons(encArg(z0), encArg(z1)), encArg(x2), encArg(x3))) ENCODE_U31(x0, cons_U11(z0, z1), x2, x3) -> c(U31'(encArg(x0), U11(encArg(z0), encArg(z1)), encArg(x2), encArg(x3))) ENCODE_U31(x0, cons_s(z0), x2, x3) -> c(U31'(encArg(x0), s(encArg(z0)), encArg(x2), encArg(x3))) ENCODE_U31(x0, cons_length(z0), x2, x3) -> c(U31'(encArg(x0), length(encArg(z0)), encArg(x2), encArg(x3))) ENCODE_U31(x0, cons_U21(z0), x2, x3) -> c(U31'(encArg(x0), U21(encArg(z0)), encArg(x2), encArg(x3))) ENCODE_U31(x0, cons_U31(z0, z1, z2, z3), x2, x3) -> c(U31'(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x2), encArg(x3))) ENCODE_U31(x0, cons_take(z0, z1), x2, x3) -> c(U31'(encArg(x0), take(encArg(z0), encArg(z1)), encArg(x2), encArg(x3))) ENCODE_U31(x0, cons_and(z0, z1), x2, x3) -> c(U31'(encArg(x0), and(encArg(z0), encArg(z1)), encArg(x2), encArg(x3))) ENCODE_U31(x0, cons_isNat(z0), x2, x3) -> c(U31'(encArg(x0), isNat(encArg(z0)), encArg(x2), encArg(x3))) ENCODE_U31(x0, cons_isNatList(z0), x2, x3) -> c(U31'(encArg(x0), isNatList(encArg(z0)), encArg(x2), encArg(x3))) ENCODE_U31(x0, cons_isNatIList(z0), x2, x3) -> c(U31'(encArg(x0), isNatIList(encArg(z0)), encArg(x2), encArg(x3))) ENCODE_U31(zeros, x1, x2, x3) -> c(U31'(zeros, encArg(x1), encArg(x2), encArg(x3))) ENCODE_U31(0, x1, x2, x3) -> c(U31'(0, encArg(x1), encArg(x2), encArg(x3))) ENCODE_U31(tt, x1, x2, x3) -> c(U31'(tt, encArg(x1), encArg(x2), encArg(x3))) ENCODE_U31(nil, x1, x2, x3) -> c(U31'(nil, encArg(x1), encArg(x2), encArg(x3))) ENCODE_U31(cons_active(z0), x1, x2, x3) -> c(U31'(active(encArg(z0)), encArg(x1), encArg(x2), encArg(x3))) ENCODE_U31(cons_mark(z0), x1, x2, x3) -> c(U31'(mark(encArg(z0)), encArg(x1), encArg(x2), encArg(x3))) ENCODE_U31(cons_cons(z0, z1), x1, x2, x3) -> c(U31'(cons(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3))) ENCODE_U31(cons_U11(z0, z1), x1, x2, x3) -> c(U31'(U11(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3))) ENCODE_U31(cons_s(z0), x1, x2, x3) -> c(U31'(s(encArg(z0)), encArg(x1), encArg(x2), encArg(x3))) ENCODE_U31(cons_length(z0), x1, x2, x3) -> c(U31'(length(encArg(z0)), encArg(x1), encArg(x2), encArg(x3))) ENCODE_U31(cons_U21(z0), x1, x2, x3) -> c(U31'(U21(encArg(z0)), encArg(x1), encArg(x2), encArg(x3))) ENCODE_U31(cons_U31(z0, z1, z2, z3), x1, x2, x3) -> c(U31'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1), encArg(x2), encArg(x3))) ENCODE_U31(cons_take(z0, z1), x1, x2, x3) -> c(U31'(take(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3))) ENCODE_U31(cons_and(z0, z1), x1, x2, x3) -> c(U31'(and(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3))) ENCODE_U31(cons_isNat(z0), x1, x2, x3) -> c(U31'(isNat(encArg(z0)), encArg(x1), encArg(x2), encArg(x3))) ENCODE_U31(cons_isNatList(z0), x1, x2, x3) -> c(U31'(isNatList(encArg(z0)), encArg(x1), encArg(x2), encArg(x3))) ENCODE_U31(cons_isNatIList(z0), x1, x2, x3) -> c(U31'(isNatIList(encArg(z0)), encArg(x1), encArg(x2), encArg(x3))) ---------------------------------------- (138) Obligation: Complexity Dependency Tuples Problem Rules: encArg(zeros) -> zeros encArg(0) -> 0 encArg(tt) -> tt encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_U11(z0, z1)) -> U11(encArg(z0), encArg(z1)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_length(z0)) -> length(encArg(z0)) encArg(cons_U21(z0)) -> U21(encArg(z0)) encArg(cons_U31(z0, z1, z2, z3)) -> U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_isNat(z0)) -> isNat(encArg(z0)) encArg(cons_isNatList(z0)) -> isNatList(encArg(z0)) encArg(cons_isNatIList(z0)) -> isNatIList(encArg(z0)) active(zeros) -> mark(cons(0, zeros)) active(U11(tt, z0)) -> mark(s(length(z0))) active(U21(tt)) -> mark(nil) active(U31(tt, z0, z1, z2)) -> mark(cons(z2, take(z1, z0))) active(and(tt, z0)) -> mark(z0) active(isNat(0)) -> mark(tt) active(isNat(length(z0))) -> mark(isNatList(z0)) active(isNat(s(z0))) -> mark(isNat(z0)) active(isNatIList(z0)) -> mark(isNatList(z0)) active(isNatIList(zeros)) -> mark(tt) active(isNatIList(cons(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(isNatList(nil)) -> mark(tt) active(isNatList(cons(z0, z1))) -> mark(and(isNat(z0), isNatList(z1))) active(isNatList(take(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(length(nil)) -> mark(0) active(length(cons(z0, z1))) -> mark(U11(and(isNatList(z1), isNat(z0)), z1)) active(take(0, z0)) -> mark(U21(isNatIList(z0))) active(take(s(z0), cons(z1, z2))) -> mark(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)) mark(zeros) -> active(zeros) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(0) -> active(0) mark(U11(z0, z1)) -> active(U11(mark(z0), z1)) mark(tt) -> active(tt) mark(s(z0)) -> active(s(mark(z0))) mark(length(z0)) -> active(length(mark(z0))) mark(U21(z0)) -> active(U21(mark(z0))) mark(nil) -> active(nil) mark(U31(z0, z1, z2, z3)) -> active(U31(mark(z0), z1, z2, z3)) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(isNat(z0)) -> active(isNat(z0)) mark(isNatList(z0)) -> active(isNatList(z0)) mark(isNatIList(z0)) -> active(isNatIList(z0)) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) U11(mark(z0), z1) -> U11(z0, z1) U11(z0, mark(z1)) -> U11(z0, z1) U11(active(z0), z1) -> U11(z0, z1) U11(z0, active(z1)) -> U11(z0, z1) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) length(mark(z0)) -> length(z0) length(active(z0)) -> length(z0) U21(mark(z0)) -> U21(z0) U21(active(z0)) -> U21(z0) U31(mark(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, mark(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, mark(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, mark(z3)) -> U31(z0, z1, z2, z3) U31(active(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, active(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, active(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, active(z3)) -> U31(z0, z1, z2, z3) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) isNat(mark(z0)) -> isNat(z0) isNat(active(z0)) -> isNat(z0) isNatList(mark(z0)) -> isNatList(z0) isNatList(active(z0)) -> isNatList(z0) isNatIList(mark(z0)) -> isNatIList(z0) isNatIList(active(z0)) -> isNatIList(z0) Tuples: ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 ENCODE_TAKE(z0, z1) -> c(TAKE(encArg(z0), encArg(z1))) ENCODE_AND(z0, z1) -> c(AND(encArg(z0), encArg(z1))) ENCODE_ISNAT(z0) -> c(ISNAT(encArg(z0))) ENCODE_ISNATLIST(z0) -> c(ISNATLIST(encArg(z0))) ENCODE_ISNATILIST(z0) -> c(ISNATILIST(encArg(z0))) ENCARG(cons_active(cons_active(z0))) -> c4(ACTIVE(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_active(cons_mark(z0))) -> c4(ACTIVE(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_active(cons_cons(z0, z1))) -> c4(ACTIVE(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_active(cons_U11(z0, z1))) -> c4(ACTIVE(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_active(cons_s(z0))) -> c4(ACTIVE(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_active(cons_length(z0))) -> c4(ACTIVE(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_active(cons_U21(z0))) -> c4(ACTIVE(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_active(cons_U31(z0, z1, z2, z3))) -> c4(ACTIVE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_active(cons_take(z0, z1))) -> c4(ACTIVE(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_active(cons_and(z0, z1))) -> c4(ACTIVE(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_active(cons_isNat(z0))) -> c4(ACTIVE(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_active(cons_isNatList(z0))) -> c4(ACTIVE(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_active(cons_isNatIList(z0))) -> c4(ACTIVE(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_active(zeros)) -> c4(ACTIVE(zeros)) ENCARG(cons_mark(cons_active(z0))) -> c5(MARK(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_mark(cons_mark(z0))) -> c5(MARK(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_mark(cons_cons(z0, z1))) -> c5(MARK(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_mark(cons_U11(z0, z1))) -> c5(MARK(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_mark(cons_s(z0))) -> c5(MARK(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_mark(cons_length(z0))) -> c5(MARK(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_mark(cons_U21(z0))) -> c5(MARK(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_mark(cons_U31(z0, z1, z2, z3))) -> c5(MARK(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_mark(cons_take(z0, z1))) -> c5(MARK(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(cons_and(z0, z1))) -> c5(MARK(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_mark(cons_isNat(z0))) -> c5(MARK(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_mark(cons_isNatList(z0))) -> c5(MARK(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_mark(cons_isNatIList(z0))) -> c5(MARK(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_mark(zeros)) -> c5(MARK(zeros)) ENCARG(cons_mark(0)) -> c5(MARK(0)) ENCARG(cons_mark(tt)) -> c5(MARK(tt)) ENCARG(cons_mark(nil)) -> c5(MARK(nil)) ENCARG(cons_cons(x0, cons_active(z0))) -> c6(CONS(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_cons(x0, cons_mark(z0))) -> c6(CONS(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_cons(x0, cons_cons(z0, z1))) -> c6(CONS(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_cons(x0, cons_U11(z0, z1))) -> c6(CONS(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_cons(x0, cons_s(z0))) -> c6(CONS(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_cons(x0, cons_length(z0))) -> c6(CONS(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_cons(x0, cons_U21(z0))) -> c6(CONS(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_cons(x0, cons_U31(z0, z1, z2, z3))) -> c6(CONS(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_cons(x0, cons_take(z0, z1))) -> c6(CONS(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_cons(x0, cons_and(z0, z1))) -> c6(CONS(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_cons(x0, cons_isNat(z0))) -> c6(CONS(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_cons(x0, cons_isNatList(z0))) -> c6(CONS(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_cons(x0, cons_isNatIList(z0))) -> c6(CONS(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_cons(cons_active(z0), x1)) -> c6(CONS(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_mark(z0), x1)) -> c6(CONS(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_cons(z0, z1), x1)) -> c6(CONS(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_U11(z0, z1), x1)) -> c6(CONS(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_s(z0), x1)) -> c6(CONS(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_length(z0), x1)) -> c6(CONS(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U21(z0), x1)) -> c6(CONS(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U31(z0, z1, z2, z3), x1)) -> c6(CONS(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_cons(cons_take(z0, z1), x1)) -> c6(CONS(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_and(z0, z1), x1)) -> c6(CONS(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_isNat(z0), x1)) -> c6(CONS(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_isNatList(z0), x1)) -> c6(CONS(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_isNatIList(z0), x1)) -> c6(CONS(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_cons(x0, zeros)) -> c6(CONS(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_cons(x0, 0)) -> c6(CONS(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_cons(x0, tt)) -> c6(CONS(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_cons(x0, nil)) -> c6(CONS(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_cons(zeros, x1)) -> c6(CONS(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(0, x1)) -> c6(CONS(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(tt, x1)) -> c6(CONS(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(nil, x1)) -> c6(CONS(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(x0, cons_active(z0))) -> c7(U11'(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_U11(x0, cons_mark(z0))) -> c7(U11'(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_U11(x0, cons_cons(z0, z1))) -> c7(U11'(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U11(x0, cons_U11(z0, z1))) -> c7(U11'(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U11(x0, cons_s(z0))) -> c7(U11'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_U11(x0, cons_length(z0))) -> c7(U11'(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_U11(x0, cons_U21(z0))) -> c7(U11'(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_U11(x0, cons_U31(z0, z1, z2, z3))) -> c7(U11'(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U11(x0, cons_take(z0, z1))) -> c7(U11'(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_U11(x0, cons_and(z0, z1))) -> c7(U11'(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_U11(x0, cons_isNat(z0))) -> c7(U11'(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_U11(x0, cons_isNatList(z0))) -> c7(U11'(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_U11(x0, cons_isNatIList(z0))) -> c7(U11'(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U11(cons_active(z0), x1)) -> c7(U11'(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_mark(z0), x1)) -> c7(U11'(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_cons(z0, z1), x1)) -> c7(U11'(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_U11(z0, z1), x1)) -> c7(U11'(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_s(z0), x1)) -> c7(U11'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_length(z0), x1)) -> c7(U11'(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_U21(z0), x1)) -> c7(U11'(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_U31(z0, z1, z2, z3), x1)) -> c7(U11'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_U11(cons_take(z0, z1), x1)) -> c7(U11'(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_and(z0, z1), x1)) -> c7(U11'(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_isNat(z0), x1)) -> c7(U11'(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_isNatList(z0), x1)) -> c7(U11'(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_isNatIList(z0), x1)) -> c7(U11'(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_U11(x0, zeros)) -> c7(U11'(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_U11(x0, 0)) -> c7(U11'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_U11(x0, tt)) -> c7(U11'(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_U11(x0, nil)) -> c7(U11'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_U11(zeros, x1)) -> c7(U11'(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(0, x1)) -> c7(U11'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(tt, x1)) -> c7(U11'(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(nil, x1)) -> c7(U11'(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_s(cons_active(z0))) -> c8(S(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_s(cons_mark(z0))) -> c8(S(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_s(cons_cons(z0, z1))) -> c8(S(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_s(cons_U11(z0, z1))) -> c8(S(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_s(cons_s(z0))) -> c8(S(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_length(z0))) -> c8(S(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_s(cons_U21(z0))) -> c8(S(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_s(cons_U31(z0, z1, z2, z3))) -> c8(S(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_s(cons_take(z0, z1))) -> c8(S(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_s(cons_and(z0, z1))) -> c8(S(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_s(cons_isNat(z0))) -> c8(S(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_s(cons_isNatList(z0))) -> c8(S(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_s(cons_isNatIList(z0))) -> c8(S(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_length(cons_active(z0))) -> c9(LENGTH(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_length(cons_mark(z0))) -> c9(LENGTH(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_length(cons_cons(z0, z1))) -> c9(LENGTH(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_length(cons_U11(z0, z1))) -> c9(LENGTH(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_length(cons_s(z0))) -> c9(LENGTH(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_length(cons_length(z0))) -> c9(LENGTH(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_length(cons_U21(z0))) -> c9(LENGTH(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_length(cons_U31(z0, z1, z2, z3))) -> c9(LENGTH(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_length(cons_take(z0, z1))) -> c9(LENGTH(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_length(cons_and(z0, z1))) -> c9(LENGTH(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_length(cons_isNat(z0))) -> c9(LENGTH(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_length(cons_isNatList(z0))) -> c9(LENGTH(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_length(cons_isNatIList(z0))) -> c9(LENGTH(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U21(cons_active(z0))) -> c10(U21'(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_U21(cons_mark(z0))) -> c10(U21'(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_U21(cons_cons(z0, z1))) -> c10(U21'(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U21(cons_U11(z0, z1))) -> c10(U21'(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U21(cons_s(z0))) -> c10(U21'(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_U21(cons_length(z0))) -> c10(U21'(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_U21(cons_U21(z0))) -> c10(U21'(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_U21(cons_U31(z0, z1, z2, z3))) -> c10(U21'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U21(cons_take(z0, z1))) -> c10(U21'(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_U21(cons_and(z0, z1))) -> c10(U21'(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_U21(cons_isNat(z0))) -> c10(U21'(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_U21(cons_isNatList(z0))) -> c10(U21'(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_U21(cons_isNatIList(z0))) -> c10(U21'(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U31(x0, x1, x2, cons_active(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), active(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_active(z0))) ENCARG(cons_U31(x0, x1, x2, cons_mark(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), mark(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_mark(z0))) ENCARG(cons_U31(x0, x1, x2, cons_cons(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_U11(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_s(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), s(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_s(z0))) ENCARG(cons_U31(x0, x1, x2, cons_length(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), length(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_length(z0))) ENCARG(cons_U31(x0, x1, x2, cons_U21(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U21(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U21(z0))) ENCARG(cons_U31(x0, x1, x2, cons_U31(z0, z1, z2, z3))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U31(x0, x1, x2, cons_take(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_take(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_and(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_and(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_isNat(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNat(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNat(z0))) ENCARG(cons_U31(x0, x1, x2, cons_isNatList(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNatList(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNatList(z0))) ENCARG(cons_U31(x0, x1, x2, cons_isNatIList(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U31(x0, x1, cons_active(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), active(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_active(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_mark(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), mark(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_mark(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_cons(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), cons(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_cons(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U11(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), U11(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U11(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_s(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), s(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_s(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_length(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), length(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_length(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U21(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), U21(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U21(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U31(z0, z1, z2, z3), x3)) -> c11(U31'(encArg(x0), encArg(x1), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_take(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), take(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_take(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_and(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), and(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_and(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNat(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNat(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNat(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNatList(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNatList(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNatList(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNatIList(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNatIList(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNatIList(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, cons_active(z0), x2, x3)) -> c11(U31'(encArg(x0), active(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_active(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_mark(z0), x2, x3)) -> c11(U31'(encArg(x0), mark(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_mark(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_cons(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), cons(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_cons(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U11(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), U11(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U11(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_s(z0), x2, x3)) -> c11(U31'(encArg(x0), s(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_s(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_length(z0), x2, x3)) -> c11(U31'(encArg(x0), length(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_length(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U21(z0), x2, x3)) -> c11(U31'(encArg(x0), U21(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U21(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U31(z0, z1, z2, z3), x2, x3)) -> c11(U31'(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_take(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), take(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_take(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_and(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), and(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_and(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNat(z0), x2, x3)) -> c11(U31'(encArg(x0), isNat(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNat(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNatList(z0), x2, x3)) -> c11(U31'(encArg(x0), isNatList(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNatList(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNatIList(z0), x2, x3)) -> c11(U31'(encArg(x0), isNatIList(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNatIList(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_active(z0), x1, x2, x3)) -> c11(U31'(active(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_active(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_mark(z0), x1, x2, x3)) -> c11(U31'(mark(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_mark(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_cons(z0, z1), x1, x2, x3)) -> c11(U31'(cons(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_cons(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U11(z0, z1), x1, x2, x3)) -> c11(U31'(U11(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U11(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_s(z0), x1, x2, x3)) -> c11(U31'(s(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_s(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_length(z0), x1, x2, x3)) -> c11(U31'(length(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_length(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U21(z0), x1, x2, x3)) -> c11(U31'(U21(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U21(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U31(z0, z1, z2, z3), x1, x2, x3)) -> c11(U31'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_take(z0, z1), x1, x2, x3)) -> c11(U31'(take(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_take(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_and(z0, z1), x1, x2, x3)) -> c11(U31'(and(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_and(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNat(z0), x1, x2, x3)) -> c11(U31'(isNat(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNat(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNatList(z0), x1, x2, x3)) -> c11(U31'(isNatList(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNatList(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNatIList(z0), x1, x2, x3)) -> c11(U31'(isNatIList(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNatIList(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, x1, x2, zeros)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), zeros), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, 0)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), 0), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, tt)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), tt), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, nil)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), nil), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, zeros, x3)) -> c11(U31'(encArg(x0), encArg(x1), zeros, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, 0, x3)) -> c11(U31'(encArg(x0), encArg(x1), 0, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, tt, x3)) -> c11(U31'(encArg(x0), encArg(x1), tt, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, nil, x3)) -> c11(U31'(encArg(x0), encArg(x1), nil, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, zeros, x2, x3)) -> c11(U31'(encArg(x0), zeros, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, 0, x2, x3)) -> c11(U31'(encArg(x0), 0, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, tt, x2, x3)) -> c11(U31'(encArg(x0), tt, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, nil, x2, x3)) -> c11(U31'(encArg(x0), nil, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(zeros, x1, x2, x3)) -> c11(U31'(zeros, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(0, x1, x2, x3)) -> c11(U31'(0, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(tt, x1, x2, x3)) -> c11(U31'(tt, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(nil, x1, x2, x3)) -> c11(U31'(nil, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_take(x0, cons_active(z0))) -> c12(TAKE(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_take(x0, cons_mark(z0))) -> c12(TAKE(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_take(x0, cons_cons(z0, z1))) -> c12(TAKE(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_take(x0, cons_U11(z0, z1))) -> c12(TAKE(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_take(x0, cons_s(z0))) -> c12(TAKE(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_take(x0, cons_length(z0))) -> c12(TAKE(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_take(x0, cons_U21(z0))) -> c12(TAKE(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_take(x0, cons_U31(z0, z1, z2, z3))) -> c12(TAKE(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_take(x0, cons_take(z0, z1))) -> c12(TAKE(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_take(x0, cons_and(z0, z1))) -> c12(TAKE(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_take(x0, cons_isNat(z0))) -> c12(TAKE(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_take(x0, cons_isNatList(z0))) -> c12(TAKE(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_take(x0, cons_isNatIList(z0))) -> c12(TAKE(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_take(cons_active(z0), x1)) -> c12(TAKE(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_take(cons_mark(z0), x1)) -> c12(TAKE(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_take(cons_cons(z0, z1), x1)) -> c12(TAKE(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_U11(z0, z1), x1)) -> c12(TAKE(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_s(z0), x1)) -> c12(TAKE(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_take(cons_length(z0), x1)) -> c12(TAKE(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_take(cons_U21(z0), x1)) -> c12(TAKE(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_take(cons_U31(z0, z1, z2, z3), x1)) -> c12(TAKE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_take(cons_take(z0, z1), x1)) -> c12(TAKE(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_and(z0, z1), x1)) -> c12(TAKE(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_isNat(z0), x1)) -> c12(TAKE(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_take(cons_isNatList(z0), x1)) -> c12(TAKE(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_take(cons_isNatIList(z0), x1)) -> c12(TAKE(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_take(x0, zeros)) -> c12(TAKE(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_take(x0, 0)) -> c12(TAKE(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_take(x0, tt)) -> c12(TAKE(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_take(x0, nil)) -> c12(TAKE(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_take(zeros, x1)) -> c12(TAKE(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(0, x1)) -> c12(TAKE(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(tt, x1)) -> c12(TAKE(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(nil, x1)) -> c12(TAKE(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(x0, cons_active(z0))) -> c13(AND(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_and(x0, cons_mark(z0))) -> c13(AND(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_and(x0, cons_cons(z0, z1))) -> c13(AND(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_and(x0, cons_U11(z0, z1))) -> c13(AND(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_and(x0, cons_s(z0))) -> c13(AND(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_and(x0, cons_length(z0))) -> c13(AND(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_and(x0, cons_U21(z0))) -> c13(AND(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_and(x0, cons_U31(z0, z1, z2, z3))) -> c13(AND(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_and(x0, cons_take(z0, z1))) -> c13(AND(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_and(x0, cons_and(z0, z1))) -> c13(AND(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_and(x0, cons_isNat(z0))) -> c13(AND(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_and(x0, cons_isNatList(z0))) -> c13(AND(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_and(x0, cons_isNatIList(z0))) -> c13(AND(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_and(cons_active(z0), x1)) -> c13(AND(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_and(cons_mark(z0), x1)) -> c13(AND(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_and(cons_cons(z0, z1), x1)) -> c13(AND(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_U11(z0, z1), x1)) -> c13(AND(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_s(z0), x1)) -> c13(AND(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_and(cons_length(z0), x1)) -> c13(AND(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_and(cons_U21(z0), x1)) -> c13(AND(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_and(cons_U31(z0, z1, z2, z3), x1)) -> c13(AND(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_and(cons_take(z0, z1), x1)) -> c13(AND(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_and(z0, z1), x1)) -> c13(AND(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_isNat(z0), x1)) -> c13(AND(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_and(cons_isNatList(z0), x1)) -> c13(AND(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_and(cons_isNatIList(z0), x1)) -> c13(AND(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_and(x0, zeros)) -> c13(AND(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_and(x0, 0)) -> c13(AND(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_and(x0, tt)) -> c13(AND(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_and(x0, nil)) -> c13(AND(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_and(zeros, x1)) -> c13(AND(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(0, x1)) -> c13(AND(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(tt, x1)) -> c13(AND(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(nil, x1)) -> c13(AND(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_isNat(cons_active(z0))) -> c14(ISNAT(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_isNat(cons_mark(z0))) -> c14(ISNAT(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_isNat(cons_cons(z0, z1))) -> c14(ISNAT(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_isNat(cons_U11(z0, z1))) -> c14(ISNAT(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_isNat(cons_s(z0))) -> c14(ISNAT(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_isNat(cons_length(z0))) -> c14(ISNAT(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_isNat(cons_U21(z0))) -> c14(ISNAT(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_isNat(cons_U31(z0, z1, z2, z3))) -> c14(ISNAT(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_isNat(cons_take(z0, z1))) -> c14(ISNAT(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_isNat(cons_and(z0, z1))) -> c14(ISNAT(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_isNat(cons_isNat(z0))) -> c14(ISNAT(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_isNat(cons_isNatList(z0))) -> c14(ISNAT(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_isNat(cons_isNatIList(z0))) -> c14(ISNAT(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_isNatList(cons_active(z0))) -> c15(ISNATLIST(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_isNatList(cons_mark(z0))) -> c15(ISNATLIST(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_isNatList(cons_cons(z0, z1))) -> c15(ISNATLIST(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_isNatList(cons_U11(z0, z1))) -> c15(ISNATLIST(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_isNatList(cons_s(z0))) -> c15(ISNATLIST(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_isNatList(cons_length(z0))) -> c15(ISNATLIST(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_isNatList(cons_U21(z0))) -> c15(ISNATLIST(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_isNatList(cons_U31(z0, z1, z2, z3))) -> c15(ISNATLIST(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_isNatList(cons_take(z0, z1))) -> c15(ISNATLIST(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_isNatList(cons_and(z0, z1))) -> c15(ISNATLIST(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_isNatList(cons_isNat(z0))) -> c15(ISNATLIST(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_isNatList(cons_isNatList(z0))) -> c15(ISNATLIST(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_isNatList(cons_isNatIList(z0))) -> c15(ISNATLIST(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_isNatIList(cons_active(z0))) -> c16(ISNATILIST(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_isNatIList(cons_mark(z0))) -> c16(ISNATILIST(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_isNatIList(cons_cons(z0, z1))) -> c16(ISNATILIST(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_isNatIList(cons_U11(z0, z1))) -> c16(ISNATILIST(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_isNatIList(cons_s(z0))) -> c16(ISNATILIST(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_isNatIList(cons_length(z0))) -> c16(ISNATILIST(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_isNatIList(cons_U21(z0))) -> c16(ISNATILIST(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_isNatIList(cons_U31(z0, z1, z2, z3))) -> c16(ISNATILIST(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_isNatIList(cons_take(z0, z1))) -> c16(ISNATILIST(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_isNatIList(cons_and(z0, z1))) -> c16(ISNATILIST(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_isNatIList(cons_isNat(z0))) -> c16(ISNATILIST(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_isNatIList(cons_isNatList(z0))) -> c16(ISNATILIST(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_isNatIList(cons_isNatIList(z0))) -> c16(ISNATILIST(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) MARK(cons(zeros, x1)) -> c53(ACTIVE(cons(active(zeros), x1)), CONS(mark(zeros), x1), MARK(zeros)) MARK(cons(cons(z0, z1), x1)) -> c53(ACTIVE(cons(active(cons(mark(z0), z1)), x1)), CONS(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(cons(0, x1)) -> c53(ACTIVE(cons(active(0), x1)), CONS(mark(0), x1), MARK(0)) MARK(cons(U11(z0, z1), x1)) -> c53(ACTIVE(cons(active(U11(mark(z0), z1)), x1)), CONS(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(cons(tt, x1)) -> c53(ACTIVE(cons(active(tt), x1)), CONS(mark(tt), x1), MARK(tt)) MARK(cons(s(z0), x1)) -> c53(ACTIVE(cons(active(s(mark(z0))), x1)), CONS(mark(s(z0)), x1), MARK(s(z0))) MARK(cons(length(z0), x1)) -> c53(ACTIVE(cons(active(length(mark(z0))), x1)), CONS(mark(length(z0)), x1), MARK(length(z0))) MARK(cons(U21(z0), x1)) -> c53(ACTIVE(cons(active(U21(mark(z0))), x1)), CONS(mark(U21(z0)), x1), MARK(U21(z0))) MARK(cons(nil, x1)) -> c53(ACTIVE(cons(active(nil), x1)), CONS(mark(nil), x1), MARK(nil)) MARK(cons(U31(z0, z1, z2, z3), x1)) -> c53(ACTIVE(cons(active(U31(mark(z0), z1, z2, z3)), x1)), CONS(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(cons(take(z0, z1), x1)) -> c53(ACTIVE(cons(active(take(mark(z0), mark(z1))), x1)), CONS(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(cons(and(z0, z1), x1)) -> c53(ACTIVE(cons(active(and(mark(z0), z1)), x1)), CONS(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(cons(isNat(z0), x1)) -> c53(ACTIVE(cons(active(isNat(z0)), x1)), CONS(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(cons(isNatList(z0), x1)) -> c53(ACTIVE(cons(active(isNatList(z0)), x1)), CONS(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(cons(isNatIList(z0), x1)) -> c53(ACTIVE(cons(active(isNatIList(z0)), x1)), CONS(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(cons(x0, x1)) -> c53(CONS(mark(x0), x1)) MARK(cons(z0, z1)) -> c53(CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(z0, z1)), U11'(mark(z0), z1), MARK(z0)) MARK(U11(zeros, x1)) -> c55(ACTIVE(U11(active(zeros), x1)), U11'(mark(zeros), x1), MARK(zeros)) MARK(U11(cons(z0, z1), x1)) -> c55(ACTIVE(U11(active(cons(mark(z0), z1)), x1)), U11'(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(U11(0, x1)) -> c55(ACTIVE(U11(active(0), x1)), U11'(mark(0), x1), MARK(0)) MARK(U11(U11(z0, z1), x1)) -> c55(ACTIVE(U11(active(U11(mark(z0), z1)), x1)), U11'(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(U11(tt, x1)) -> c55(ACTIVE(U11(active(tt), x1)), U11'(mark(tt), x1), MARK(tt)) MARK(U11(s(z0), x1)) -> c55(ACTIVE(U11(active(s(mark(z0))), x1)), U11'(mark(s(z0)), x1), MARK(s(z0))) MARK(U11(length(z0), x1)) -> c55(ACTIVE(U11(active(length(mark(z0))), x1)), U11'(mark(length(z0)), x1), MARK(length(z0))) MARK(U11(U21(z0), x1)) -> c55(ACTIVE(U11(active(U21(mark(z0))), x1)), U11'(mark(U21(z0)), x1), MARK(U21(z0))) MARK(U11(nil, x1)) -> c55(ACTIVE(U11(active(nil), x1)), U11'(mark(nil), x1), MARK(nil)) MARK(U11(U31(z0, z1, z2, z3), x1)) -> c55(ACTIVE(U11(active(U31(mark(z0), z1, z2, z3)), x1)), U11'(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(U11(take(z0, z1), x1)) -> c55(ACTIVE(U11(active(take(mark(z0), mark(z1))), x1)), U11'(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(U11(and(z0, z1), x1)) -> c55(ACTIVE(U11(active(and(mark(z0), z1)), x1)), U11'(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(U11(isNat(z0), x1)) -> c55(ACTIVE(U11(active(isNat(z0)), x1)), U11'(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(U11(isNatList(z0), x1)) -> c55(ACTIVE(U11(active(isNatList(z0)), x1)), U11'(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(U11(isNatIList(z0), x1)) -> c55(ACTIVE(U11(active(isNatIList(z0)), x1)), U11'(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(U11(x0, x1)) -> c55(U11'(mark(x0), x1)) MARK(s(zeros)) -> c57(ACTIVE(s(active(zeros))), S(mark(zeros)), MARK(zeros)) MARK(s(cons(z0, z1))) -> c57(ACTIVE(s(active(cons(mark(z0), z1)))), S(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(s(0)) -> c57(ACTIVE(s(active(0))), S(mark(0)), MARK(0)) MARK(s(U11(z0, z1))) -> c57(ACTIVE(s(active(U11(mark(z0), z1)))), S(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(s(tt)) -> c57(ACTIVE(s(active(tt))), S(mark(tt)), MARK(tt)) MARK(s(s(z0))) -> c57(ACTIVE(s(active(s(mark(z0))))), S(mark(s(z0))), MARK(s(z0))) MARK(s(length(z0))) -> c57(ACTIVE(s(active(length(mark(z0))))), S(mark(length(z0))), MARK(length(z0))) MARK(s(U21(z0))) -> c57(ACTIVE(s(active(U21(mark(z0))))), S(mark(U21(z0))), MARK(U21(z0))) MARK(s(nil)) -> c57(ACTIVE(s(active(nil))), S(mark(nil)), MARK(nil)) MARK(s(U31(z0, z1, z2, z3))) -> c57(ACTIVE(s(active(U31(mark(z0), z1, z2, z3)))), S(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(s(take(z0, z1))) -> c57(ACTIVE(s(active(take(mark(z0), mark(z1))))), S(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(s(and(z0, z1))) -> c57(ACTIVE(s(active(and(mark(z0), z1)))), S(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(s(isNat(z0))) -> c57(ACTIVE(s(active(isNat(z0)))), S(mark(isNat(z0))), MARK(isNat(z0))) MARK(s(isNatList(z0))) -> c57(ACTIVE(s(active(isNatList(z0)))), S(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(s(isNatIList(z0))) -> c57(ACTIVE(s(active(isNatIList(z0)))), S(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(s(z0)) -> c57(S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(z0)), LENGTH(mark(z0)), MARK(z0)) MARK(length(zeros)) -> c58(ACTIVE(length(active(zeros))), LENGTH(mark(zeros)), MARK(zeros)) MARK(length(cons(z0, z1))) -> c58(ACTIVE(length(active(cons(mark(z0), z1)))), LENGTH(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(length(0)) -> c58(ACTIVE(length(active(0))), LENGTH(mark(0)), MARK(0)) MARK(length(U11(z0, z1))) -> c58(ACTIVE(length(active(U11(mark(z0), z1)))), LENGTH(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(length(tt)) -> c58(ACTIVE(length(active(tt))), LENGTH(mark(tt)), MARK(tt)) MARK(length(s(z0))) -> c58(ACTIVE(length(active(s(mark(z0))))), LENGTH(mark(s(z0))), MARK(s(z0))) MARK(length(length(z0))) -> c58(ACTIVE(length(active(length(mark(z0))))), LENGTH(mark(length(z0))), MARK(length(z0))) MARK(length(U21(z0))) -> c58(ACTIVE(length(active(U21(mark(z0))))), LENGTH(mark(U21(z0))), MARK(U21(z0))) MARK(length(nil)) -> c58(ACTIVE(length(active(nil))), LENGTH(mark(nil)), MARK(nil)) MARK(length(U31(z0, z1, z2, z3))) -> c58(ACTIVE(length(active(U31(mark(z0), z1, z2, z3)))), LENGTH(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(length(take(z0, z1))) -> c58(ACTIVE(length(active(take(mark(z0), mark(z1))))), LENGTH(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(length(and(z0, z1))) -> c58(ACTIVE(length(active(and(mark(z0), z1)))), LENGTH(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(length(isNat(z0))) -> c58(ACTIVE(length(active(isNat(z0)))), LENGTH(mark(isNat(z0))), MARK(isNat(z0))) MARK(length(isNatList(z0))) -> c58(ACTIVE(length(active(isNatList(z0)))), LENGTH(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(length(isNatIList(z0))) -> c58(ACTIVE(length(active(isNatIList(z0)))), LENGTH(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(U21(z0)) -> c59(ACTIVE(U21(z0)), U21'(mark(z0)), MARK(z0)) MARK(U21(zeros)) -> c59(ACTIVE(U21(active(zeros))), U21'(mark(zeros)), MARK(zeros)) MARK(U21(cons(z0, z1))) -> c59(ACTIVE(U21(active(cons(mark(z0), z1)))), U21'(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(U21(0)) -> c59(ACTIVE(U21(active(0))), U21'(mark(0)), MARK(0)) MARK(U21(U11(z0, z1))) -> c59(ACTIVE(U21(active(U11(mark(z0), z1)))), U21'(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(U21(tt)) -> c59(ACTIVE(U21(active(tt))), U21'(mark(tt)), MARK(tt)) MARK(U21(s(z0))) -> c59(ACTIVE(U21(active(s(mark(z0))))), U21'(mark(s(z0))), MARK(s(z0))) MARK(U21(length(z0))) -> c59(ACTIVE(U21(active(length(mark(z0))))), U21'(mark(length(z0))), MARK(length(z0))) MARK(U21(U21(z0))) -> c59(ACTIVE(U21(active(U21(mark(z0))))), U21'(mark(U21(z0))), MARK(U21(z0))) MARK(U21(nil)) -> c59(ACTIVE(U21(active(nil))), U21'(mark(nil)), MARK(nil)) MARK(U21(U31(z0, z1, z2, z3))) -> c59(ACTIVE(U21(active(U31(mark(z0), z1, z2, z3)))), U21'(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(U21(take(z0, z1))) -> c59(ACTIVE(U21(active(take(mark(z0), mark(z1))))), U21'(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(U21(and(z0, z1))) -> c59(ACTIVE(U21(active(and(mark(z0), z1)))), U21'(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(U21(isNat(z0))) -> c59(ACTIVE(U21(active(isNat(z0)))), U21'(mark(isNat(z0))), MARK(isNat(z0))) MARK(U21(isNatList(z0))) -> c59(ACTIVE(U21(active(isNatList(z0)))), U21'(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(U21(isNatIList(z0))) -> c59(ACTIVE(U21(active(isNatIList(z0)))), U21'(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(z0, z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U31(zeros, x1, x2, x3)) -> c61(ACTIVE(U31(active(zeros), x1, x2, x3)), U31'(mark(zeros), x1, x2, x3), MARK(zeros)) MARK(U31(cons(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(cons(mark(z0), z1)), x1, x2, x3)), U31'(mark(cons(z0, z1)), x1, x2, x3), MARK(cons(z0, z1))) MARK(U31(0, x1, x2, x3)) -> c61(ACTIVE(U31(active(0), x1, x2, x3)), U31'(mark(0), x1, x2, x3), MARK(0)) MARK(U31(U11(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(U11(mark(z0), z1)), x1, x2, x3)), U31'(mark(U11(z0, z1)), x1, x2, x3), MARK(U11(z0, z1))) MARK(U31(tt, x1, x2, x3)) -> c61(ACTIVE(U31(active(tt), x1, x2, x3)), U31'(mark(tt), x1, x2, x3), MARK(tt)) MARK(U31(s(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(s(mark(z0))), x1, x2, x3)), U31'(mark(s(z0)), x1, x2, x3), MARK(s(z0))) MARK(U31(length(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(length(mark(z0))), x1, x2, x3)), U31'(mark(length(z0)), x1, x2, x3), MARK(length(z0))) MARK(U31(U21(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(U21(mark(z0))), x1, x2, x3)), U31'(mark(U21(z0)), x1, x2, x3), MARK(U21(z0))) MARK(U31(nil, x1, x2, x3)) -> c61(ACTIVE(U31(active(nil), x1, x2, x3)), U31'(mark(nil), x1, x2, x3), MARK(nil)) MARK(U31(U31(z0, z1, z2, z3), x1, x2, x3)) -> c61(ACTIVE(U31(active(U31(mark(z0), z1, z2, z3)), x1, x2, x3)), U31'(mark(U31(z0, z1, z2, z3)), x1, x2, x3), MARK(U31(z0, z1, z2, z3))) MARK(U31(take(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(take(mark(z0), mark(z1))), x1, x2, x3)), U31'(mark(take(z0, z1)), x1, x2, x3), MARK(take(z0, z1))) MARK(U31(and(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(and(mark(z0), z1)), x1, x2, x3)), U31'(mark(and(z0, z1)), x1, x2, x3), MARK(and(z0, z1))) MARK(U31(isNat(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNat(z0)), x1, x2, x3)), U31'(mark(isNat(z0)), x1, x2, x3), MARK(isNat(z0))) MARK(U31(isNatList(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNatList(z0)), x1, x2, x3)), U31'(mark(isNatList(z0)), x1, x2, x3), MARK(isNatList(z0))) MARK(U31(isNatIList(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNatIList(z0)), x1, x2, x3)), U31'(mark(isNatIList(z0)), x1, x2, x3), MARK(isNatIList(z0))) MARK(U31(x0, x1, x2, x3)) -> c61(U31'(mark(x0), x1, x2, x3)) MARK(take(z0, x1)) -> c62(ACTIVE(take(z0, mark(x1))), TAKE(mark(z0), mark(x1)), MARK(z0), MARK(x1)) MARK(take(x0, z1)) -> c62(ACTIVE(take(mark(x0), z1)), TAKE(mark(x0), mark(z1)), MARK(x0), MARK(z1)) MARK(take(x0, zeros)) -> c62(ACTIVE(take(mark(x0), active(zeros))), TAKE(mark(x0), mark(zeros)), MARK(x0), MARK(zeros)) MARK(take(x0, cons(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(cons(mark(z0), z1)))), TAKE(mark(x0), mark(cons(z0, z1))), MARK(x0), MARK(cons(z0, z1))) MARK(take(x0, 0)) -> c62(ACTIVE(take(mark(x0), active(0))), TAKE(mark(x0), mark(0)), MARK(x0), MARK(0)) MARK(take(x0, U11(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(U11(mark(z0), z1)))), TAKE(mark(x0), mark(U11(z0, z1))), MARK(x0), MARK(U11(z0, z1))) MARK(take(x0, tt)) -> c62(ACTIVE(take(mark(x0), active(tt))), TAKE(mark(x0), mark(tt)), MARK(x0), MARK(tt)) MARK(take(x0, s(z0))) -> c62(ACTIVE(take(mark(x0), active(s(mark(z0))))), TAKE(mark(x0), mark(s(z0))), MARK(x0), MARK(s(z0))) MARK(take(x0, length(z0))) -> c62(ACTIVE(take(mark(x0), active(length(mark(z0))))), TAKE(mark(x0), mark(length(z0))), MARK(x0), MARK(length(z0))) MARK(take(x0, U21(z0))) -> c62(ACTIVE(take(mark(x0), active(U21(mark(z0))))), TAKE(mark(x0), mark(U21(z0))), MARK(x0), MARK(U21(z0))) MARK(take(x0, nil)) -> c62(ACTIVE(take(mark(x0), active(nil))), TAKE(mark(x0), mark(nil)), MARK(x0), MARK(nil)) MARK(take(x0, U31(z0, z1, z2, z3))) -> c62(ACTIVE(take(mark(x0), active(U31(mark(z0), z1, z2, z3)))), TAKE(mark(x0), mark(U31(z0, z1, z2, z3))), MARK(x0), MARK(U31(z0, z1, z2, z3))) MARK(take(x0, take(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(take(mark(z0), mark(z1))))), TAKE(mark(x0), mark(take(z0, z1))), MARK(x0), MARK(take(z0, z1))) MARK(take(x0, and(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(and(mark(z0), z1)))), TAKE(mark(x0), mark(and(z0, z1))), MARK(x0), MARK(and(z0, z1))) MARK(take(x0, isNat(z0))) -> c62(ACTIVE(take(mark(x0), active(isNat(z0)))), TAKE(mark(x0), mark(isNat(z0))), MARK(x0), MARK(isNat(z0))) MARK(take(x0, isNatList(z0))) -> c62(ACTIVE(take(mark(x0), active(isNatList(z0)))), TAKE(mark(x0), mark(isNatList(z0))), MARK(x0), MARK(isNatList(z0))) MARK(take(x0, isNatIList(z0))) -> c62(ACTIVE(take(mark(x0), active(isNatIList(z0)))), TAKE(mark(x0), mark(isNatIList(z0))), MARK(x0), MARK(isNatIList(z0))) MARK(take(zeros, x1)) -> c62(ACTIVE(take(active(zeros), mark(x1))), TAKE(mark(zeros), mark(x1)), MARK(zeros), MARK(x1)) MARK(take(cons(z0, z1), x1)) -> c62(ACTIVE(take(active(cons(mark(z0), z1)), mark(x1))), TAKE(mark(cons(z0, z1)), mark(x1)), MARK(cons(z0, z1)), MARK(x1)) MARK(take(0, x1)) -> c62(ACTIVE(take(active(0), mark(x1))), TAKE(mark(0), mark(x1)), MARK(0), MARK(x1)) MARK(take(U11(z0, z1), x1)) -> c62(ACTIVE(take(active(U11(mark(z0), z1)), mark(x1))), TAKE(mark(U11(z0, z1)), mark(x1)), MARK(U11(z0, z1)), MARK(x1)) MARK(take(tt, x1)) -> c62(ACTIVE(take(active(tt), mark(x1))), TAKE(mark(tt), mark(x1)), MARK(tt), MARK(x1)) MARK(take(s(z0), x1)) -> c62(ACTIVE(take(active(s(mark(z0))), mark(x1))), TAKE(mark(s(z0)), mark(x1)), MARK(s(z0)), MARK(x1)) MARK(take(length(z0), x1)) -> c62(ACTIVE(take(active(length(mark(z0))), mark(x1))), TAKE(mark(length(z0)), mark(x1)), MARK(length(z0)), MARK(x1)) MARK(take(U21(z0), x1)) -> c62(ACTIVE(take(active(U21(mark(z0))), mark(x1))), TAKE(mark(U21(z0)), mark(x1)), MARK(U21(z0)), MARK(x1)) MARK(take(nil, x1)) -> c62(ACTIVE(take(active(nil), mark(x1))), TAKE(mark(nil), mark(x1)), MARK(nil), MARK(x1)) MARK(take(U31(z0, z1, z2, z3), x1)) -> c62(ACTIVE(take(active(U31(mark(z0), z1, z2, z3)), mark(x1))), TAKE(mark(U31(z0, z1, z2, z3)), mark(x1)), MARK(U31(z0, z1, z2, z3)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c62(ACTIVE(take(active(take(mark(z0), mark(z1))), mark(x1))), TAKE(mark(take(z0, z1)), mark(x1)), MARK(take(z0, z1)), MARK(x1)) MARK(take(and(z0, z1), x1)) -> c62(ACTIVE(take(active(and(mark(z0), z1)), mark(x1))), TAKE(mark(and(z0, z1)), mark(x1)), MARK(and(z0, z1)), MARK(x1)) MARK(take(isNat(z0), x1)) -> c62(ACTIVE(take(active(isNat(z0)), mark(x1))), TAKE(mark(isNat(z0)), mark(x1)), MARK(isNat(z0)), MARK(x1)) MARK(take(isNatList(z0), x1)) -> c62(ACTIVE(take(active(isNatList(z0)), mark(x1))), TAKE(mark(isNatList(z0)), mark(x1)), MARK(isNatList(z0)), MARK(x1)) MARK(take(isNatIList(z0), x1)) -> c62(ACTIVE(take(active(isNatIList(z0)), mark(x1))), TAKE(mark(isNatIList(z0)), mark(x1)), MARK(isNatIList(z0)), MARK(x1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(z0, z1)), AND(mark(z0), z1), MARK(z0)) MARK(and(zeros, x1)) -> c63(ACTIVE(and(active(zeros), x1)), AND(mark(zeros), x1), MARK(zeros)) MARK(and(cons(z0, z1), x1)) -> c63(ACTIVE(and(active(cons(mark(z0), z1)), x1)), AND(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(and(0, x1)) -> c63(ACTIVE(and(active(0), x1)), AND(mark(0), x1), MARK(0)) MARK(and(U11(z0, z1), x1)) -> c63(ACTIVE(and(active(U11(mark(z0), z1)), x1)), AND(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(and(tt, x1)) -> c63(ACTIVE(and(active(tt), x1)), AND(mark(tt), x1), MARK(tt)) MARK(and(s(z0), x1)) -> c63(ACTIVE(and(active(s(mark(z0))), x1)), AND(mark(s(z0)), x1), MARK(s(z0))) MARK(and(length(z0), x1)) -> c63(ACTIVE(and(active(length(mark(z0))), x1)), AND(mark(length(z0)), x1), MARK(length(z0))) MARK(and(U21(z0), x1)) -> c63(ACTIVE(and(active(U21(mark(z0))), x1)), AND(mark(U21(z0)), x1), MARK(U21(z0))) MARK(and(nil, x1)) -> c63(ACTIVE(and(active(nil), x1)), AND(mark(nil), x1), MARK(nil)) MARK(and(U31(z0, z1, z2, z3), x1)) -> c63(ACTIVE(and(active(U31(mark(z0), z1, z2, z3)), x1)), AND(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(and(take(z0, z1), x1)) -> c63(ACTIVE(and(active(take(mark(z0), mark(z1))), x1)), AND(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(and(and(z0, z1), x1)) -> c63(ACTIVE(and(active(and(mark(z0), z1)), x1)), AND(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(and(isNat(z0), x1)) -> c63(ACTIVE(and(active(isNat(z0)), x1)), AND(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(and(isNatList(z0), x1)) -> c63(ACTIVE(and(active(isNatList(z0)), x1)), AND(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(and(isNatIList(z0), x1)) -> c63(ACTIVE(and(active(isNatIList(z0)), x1)), AND(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(and(x0, x1)) -> c63(AND(mark(x0), x1)) ENCODE_ACTIVE(cons_active(z0)) -> c(ACTIVE(active(encArg(z0)))) ENCODE_ACTIVE(cons_mark(z0)) -> c(ACTIVE(mark(encArg(z0)))) ENCODE_ACTIVE(cons_cons(z0, z1)) -> c(ACTIVE(cons(encArg(z0), encArg(z1)))) ENCODE_ACTIVE(cons_U11(z0, z1)) -> c(ACTIVE(U11(encArg(z0), encArg(z1)))) ENCODE_ACTIVE(cons_s(z0)) -> c(ACTIVE(s(encArg(z0)))) ENCODE_ACTIVE(cons_length(z0)) -> c(ACTIVE(length(encArg(z0)))) ENCODE_ACTIVE(cons_U21(z0)) -> c(ACTIVE(U21(encArg(z0)))) ENCODE_ACTIVE(cons_U31(z0, z1, z2, z3)) -> c(ACTIVE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)))) ENCODE_ACTIVE(cons_take(z0, z1)) -> c(ACTIVE(take(encArg(z0), encArg(z1)))) ENCODE_ACTIVE(cons_and(z0, z1)) -> c(ACTIVE(and(encArg(z0), encArg(z1)))) ENCODE_ACTIVE(cons_isNat(z0)) -> c(ACTIVE(isNat(encArg(z0)))) ENCODE_ACTIVE(cons_isNatList(z0)) -> c(ACTIVE(isNatList(encArg(z0)))) ENCODE_ACTIVE(cons_isNatIList(z0)) -> c(ACTIVE(isNatIList(encArg(z0)))) ENCODE_MARK(cons_active(z0)) -> c(MARK(active(encArg(z0)))) ENCODE_MARK(cons_mark(z0)) -> c(MARK(mark(encArg(z0)))) ENCODE_MARK(cons_cons(z0, z1)) -> c(MARK(cons(encArg(z0), encArg(z1)))) ENCODE_MARK(cons_U11(z0, z1)) -> c(MARK(U11(encArg(z0), encArg(z1)))) ENCODE_MARK(cons_s(z0)) -> c(MARK(s(encArg(z0)))) ENCODE_MARK(cons_length(z0)) -> c(MARK(length(encArg(z0)))) ENCODE_MARK(cons_U21(z0)) -> c(MARK(U21(encArg(z0)))) ENCODE_MARK(cons_U31(z0, z1, z2, z3)) -> c(MARK(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)))) ENCODE_MARK(cons_take(z0, z1)) -> c(MARK(take(encArg(z0), encArg(z1)))) ENCODE_MARK(cons_and(z0, z1)) -> c(MARK(and(encArg(z0), encArg(z1)))) ENCODE_MARK(cons_isNat(z0)) -> c(MARK(isNat(encArg(z0)))) ENCODE_MARK(cons_isNatList(z0)) -> c(MARK(isNatList(encArg(z0)))) ENCODE_MARK(cons_isNatIList(z0)) -> c(MARK(isNatIList(encArg(z0)))) ENCODE_CONS(x0, zeros) -> c(CONS(encArg(x0), zeros)) ENCODE_CONS(x0, 0) -> c(CONS(encArg(x0), 0)) ENCODE_CONS(x0, tt) -> c(CONS(encArg(x0), tt)) ENCODE_CONS(x0, nil) -> c(CONS(encArg(x0), nil)) ENCODE_CONS(x0, cons_active(z0)) -> c(CONS(encArg(x0), active(encArg(z0)))) ENCODE_CONS(x0, cons_mark(z0)) -> c(CONS(encArg(x0), mark(encArg(z0)))) ENCODE_CONS(x0, cons_cons(z0, z1)) -> c(CONS(encArg(x0), cons(encArg(z0), encArg(z1)))) ENCODE_CONS(x0, cons_U11(z0, z1)) -> c(CONS(encArg(x0), U11(encArg(z0), encArg(z1)))) ENCODE_CONS(x0, cons_s(z0)) -> c(CONS(encArg(x0), s(encArg(z0)))) ENCODE_CONS(x0, cons_length(z0)) -> c(CONS(encArg(x0), length(encArg(z0)))) ENCODE_CONS(x0, cons_U21(z0)) -> c(CONS(encArg(x0), U21(encArg(z0)))) ENCODE_CONS(x0, cons_U31(z0, z1, z2, z3)) -> c(CONS(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)))) ENCODE_CONS(x0, cons_take(z0, z1)) -> c(CONS(encArg(x0), take(encArg(z0), encArg(z1)))) ENCODE_CONS(x0, cons_and(z0, z1)) -> c(CONS(encArg(x0), and(encArg(z0), encArg(z1)))) ENCODE_CONS(x0, cons_isNat(z0)) -> c(CONS(encArg(x0), isNat(encArg(z0)))) ENCODE_CONS(x0, cons_isNatList(z0)) -> c(CONS(encArg(x0), isNatList(encArg(z0)))) ENCODE_CONS(x0, cons_isNatIList(z0)) -> c(CONS(encArg(x0), isNatIList(encArg(z0)))) ENCODE_CONS(zeros, x1) -> c(CONS(zeros, encArg(x1))) ENCODE_CONS(0, x1) -> c(CONS(0, encArg(x1))) ENCODE_CONS(tt, x1) -> c(CONS(tt, encArg(x1))) ENCODE_CONS(nil, x1) -> c(CONS(nil, encArg(x1))) ENCODE_CONS(cons_active(z0), x1) -> c(CONS(active(encArg(z0)), encArg(x1))) ENCODE_CONS(cons_mark(z0), x1) -> c(CONS(mark(encArg(z0)), encArg(x1))) ENCODE_CONS(cons_cons(z0, z1), x1) -> c(CONS(cons(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_CONS(cons_U11(z0, z1), x1) -> c(CONS(U11(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_CONS(cons_s(z0), x1) -> c(CONS(s(encArg(z0)), encArg(x1))) ENCODE_CONS(cons_length(z0), x1) -> c(CONS(length(encArg(z0)), encArg(x1))) ENCODE_CONS(cons_U21(z0), x1) -> c(CONS(U21(encArg(z0)), encArg(x1))) ENCODE_CONS(cons_U31(z0, z1, z2, z3), x1) -> c(CONS(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1))) ENCODE_CONS(cons_take(z0, z1), x1) -> c(CONS(take(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_CONS(cons_and(z0, z1), x1) -> c(CONS(and(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_CONS(cons_isNat(z0), x1) -> c(CONS(isNat(encArg(z0)), encArg(x1))) ENCODE_CONS(cons_isNatList(z0), x1) -> c(CONS(isNatList(encArg(z0)), encArg(x1))) ENCODE_CONS(cons_isNatIList(z0), x1) -> c(CONS(isNatIList(encArg(z0)), encArg(x1))) ENCODE_U11(x0, zeros) -> c(U11'(encArg(x0), zeros)) ENCODE_U11(x0, 0) -> c(U11'(encArg(x0), 0)) ENCODE_U11(x0, tt) -> c(U11'(encArg(x0), tt)) ENCODE_U11(x0, nil) -> c(U11'(encArg(x0), nil)) ENCODE_U11(x0, cons_active(z0)) -> c(U11'(encArg(x0), active(encArg(z0)))) ENCODE_U11(x0, cons_mark(z0)) -> c(U11'(encArg(x0), mark(encArg(z0)))) ENCODE_U11(x0, cons_cons(z0, z1)) -> c(U11'(encArg(x0), cons(encArg(z0), encArg(z1)))) ENCODE_U11(x0, cons_U11(z0, z1)) -> c(U11'(encArg(x0), U11(encArg(z0), encArg(z1)))) ENCODE_U11(x0, cons_s(z0)) -> c(U11'(encArg(x0), s(encArg(z0)))) ENCODE_U11(x0, cons_length(z0)) -> c(U11'(encArg(x0), length(encArg(z0)))) ENCODE_U11(x0, cons_U21(z0)) -> c(U11'(encArg(x0), U21(encArg(z0)))) ENCODE_U11(x0, cons_U31(z0, z1, z2, z3)) -> c(U11'(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)))) ENCODE_U11(x0, cons_take(z0, z1)) -> c(U11'(encArg(x0), take(encArg(z0), encArg(z1)))) ENCODE_U11(x0, cons_and(z0, z1)) -> c(U11'(encArg(x0), and(encArg(z0), encArg(z1)))) ENCODE_U11(x0, cons_isNat(z0)) -> c(U11'(encArg(x0), isNat(encArg(z0)))) ENCODE_U11(x0, cons_isNatList(z0)) -> c(U11'(encArg(x0), isNatList(encArg(z0)))) ENCODE_U11(x0, cons_isNatIList(z0)) -> c(U11'(encArg(x0), isNatIList(encArg(z0)))) ENCODE_U11(zeros, x1) -> c(U11'(zeros, encArg(x1))) ENCODE_U11(0, x1) -> c(U11'(0, encArg(x1))) ENCODE_U11(tt, x1) -> c(U11'(tt, encArg(x1))) ENCODE_U11(nil, x1) -> c(U11'(nil, encArg(x1))) ENCODE_U11(cons_active(z0), x1) -> c(U11'(active(encArg(z0)), encArg(x1))) ENCODE_U11(cons_mark(z0), x1) -> c(U11'(mark(encArg(z0)), encArg(x1))) ENCODE_U11(cons_cons(z0, z1), x1) -> c(U11'(cons(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_U11(cons_U11(z0, z1), x1) -> c(U11'(U11(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_U11(cons_s(z0), x1) -> c(U11'(s(encArg(z0)), encArg(x1))) ENCODE_U11(cons_length(z0), x1) -> c(U11'(length(encArg(z0)), encArg(x1))) ENCODE_U11(cons_U21(z0), x1) -> c(U11'(U21(encArg(z0)), encArg(x1))) ENCODE_U11(cons_U31(z0, z1, z2, z3), x1) -> c(U11'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1))) ENCODE_U11(cons_take(z0, z1), x1) -> c(U11'(take(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_U11(cons_and(z0, z1), x1) -> c(U11'(and(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_U11(cons_isNat(z0), x1) -> c(U11'(isNat(encArg(z0)), encArg(x1))) ENCODE_U11(cons_isNatList(z0), x1) -> c(U11'(isNatList(encArg(z0)), encArg(x1))) ENCODE_U11(cons_isNatIList(z0), x1) -> c(U11'(isNatIList(encArg(z0)), encArg(x1))) ENCODE_S(cons_active(z0)) -> c(S(active(encArg(z0)))) ENCODE_S(cons_mark(z0)) -> c(S(mark(encArg(z0)))) ENCODE_S(cons_cons(z0, z1)) -> c(S(cons(encArg(z0), encArg(z1)))) ENCODE_S(cons_U11(z0, z1)) -> c(S(U11(encArg(z0), encArg(z1)))) ENCODE_S(cons_s(z0)) -> c(S(s(encArg(z0)))) ENCODE_S(cons_length(z0)) -> c(S(length(encArg(z0)))) ENCODE_S(cons_U21(z0)) -> c(S(U21(encArg(z0)))) ENCODE_S(cons_U31(z0, z1, z2, z3)) -> c(S(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)))) ENCODE_S(cons_take(z0, z1)) -> c(S(take(encArg(z0), encArg(z1)))) ENCODE_S(cons_and(z0, z1)) -> c(S(and(encArg(z0), encArg(z1)))) ENCODE_S(cons_isNat(z0)) -> c(S(isNat(encArg(z0)))) ENCODE_S(cons_isNatList(z0)) -> c(S(isNatList(encArg(z0)))) ENCODE_S(cons_isNatIList(z0)) -> c(S(isNatIList(encArg(z0)))) ENCODE_LENGTH(cons_active(z0)) -> c(LENGTH(active(encArg(z0)))) ENCODE_LENGTH(cons_mark(z0)) -> c(LENGTH(mark(encArg(z0)))) ENCODE_LENGTH(cons_cons(z0, z1)) -> c(LENGTH(cons(encArg(z0), encArg(z1)))) ENCODE_LENGTH(cons_U11(z0, z1)) -> c(LENGTH(U11(encArg(z0), encArg(z1)))) ENCODE_LENGTH(cons_s(z0)) -> c(LENGTH(s(encArg(z0)))) ENCODE_LENGTH(cons_length(z0)) -> c(LENGTH(length(encArg(z0)))) ENCODE_LENGTH(cons_U21(z0)) -> c(LENGTH(U21(encArg(z0)))) ENCODE_LENGTH(cons_U31(z0, z1, z2, z3)) -> c(LENGTH(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)))) ENCODE_LENGTH(cons_take(z0, z1)) -> c(LENGTH(take(encArg(z0), encArg(z1)))) ENCODE_LENGTH(cons_and(z0, z1)) -> c(LENGTH(and(encArg(z0), encArg(z1)))) ENCODE_LENGTH(cons_isNat(z0)) -> c(LENGTH(isNat(encArg(z0)))) ENCODE_LENGTH(cons_isNatList(z0)) -> c(LENGTH(isNatList(encArg(z0)))) ENCODE_LENGTH(cons_isNatIList(z0)) -> c(LENGTH(isNatIList(encArg(z0)))) ENCODE_U21(cons_active(z0)) -> c(U21'(active(encArg(z0)))) ENCODE_U21(cons_mark(z0)) -> c(U21'(mark(encArg(z0)))) ENCODE_U21(cons_cons(z0, z1)) -> c(U21'(cons(encArg(z0), encArg(z1)))) ENCODE_U21(cons_U11(z0, z1)) -> c(U21'(U11(encArg(z0), encArg(z1)))) ENCODE_U21(cons_s(z0)) -> c(U21'(s(encArg(z0)))) ENCODE_U21(cons_length(z0)) -> c(U21'(length(encArg(z0)))) ENCODE_U21(cons_U21(z0)) -> c(U21'(U21(encArg(z0)))) ENCODE_U21(cons_U31(z0, z1, z2, z3)) -> c(U21'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)))) ENCODE_U21(cons_take(z0, z1)) -> c(U21'(take(encArg(z0), encArg(z1)))) ENCODE_U21(cons_and(z0, z1)) -> c(U21'(and(encArg(z0), encArg(z1)))) ENCODE_U21(cons_isNat(z0)) -> c(U21'(isNat(encArg(z0)))) ENCODE_U21(cons_isNatList(z0)) -> c(U21'(isNatList(encArg(z0)))) ENCODE_U21(cons_isNatIList(z0)) -> c(U21'(isNatIList(encArg(z0)))) ENCODE_U31(x0, x1, x2, zeros) -> c(U31'(encArg(x0), encArg(x1), encArg(x2), zeros)) ENCODE_U31(x0, x1, x2, 0) -> c(U31'(encArg(x0), encArg(x1), encArg(x2), 0)) ENCODE_U31(x0, x1, x2, tt) -> c(U31'(encArg(x0), encArg(x1), encArg(x2), tt)) ENCODE_U31(x0, x1, x2, nil) -> c(U31'(encArg(x0), encArg(x1), encArg(x2), nil)) ENCODE_U31(x0, x1, x2, cons_active(z0)) -> c(U31'(encArg(x0), encArg(x1), encArg(x2), active(encArg(z0)))) ENCODE_U31(x0, x1, x2, cons_mark(z0)) -> c(U31'(encArg(x0), encArg(x1), encArg(x2), mark(encArg(z0)))) ENCODE_U31(x0, x1, x2, cons_cons(z0, z1)) -> c(U31'(encArg(x0), encArg(x1), encArg(x2), cons(encArg(z0), encArg(z1)))) ENCODE_U31(x0, x1, x2, cons_U11(z0, z1)) -> c(U31'(encArg(x0), encArg(x1), encArg(x2), U11(encArg(z0), encArg(z1)))) ENCODE_U31(x0, x1, x2, cons_s(z0)) -> c(U31'(encArg(x0), encArg(x1), encArg(x2), s(encArg(z0)))) ENCODE_U31(x0, x1, x2, cons_length(z0)) -> c(U31'(encArg(x0), encArg(x1), encArg(x2), length(encArg(z0)))) ENCODE_U31(x0, x1, x2, cons_U21(z0)) -> c(U31'(encArg(x0), encArg(x1), encArg(x2), U21(encArg(z0)))) ENCODE_U31(x0, x1, x2, cons_U31(z0, z1, z2, z3)) -> c(U31'(encArg(x0), encArg(x1), encArg(x2), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)))) ENCODE_U31(x0, x1, x2, cons_take(z0, z1)) -> c(U31'(encArg(x0), encArg(x1), encArg(x2), take(encArg(z0), encArg(z1)))) ENCODE_U31(x0, x1, x2, cons_and(z0, z1)) -> c(U31'(encArg(x0), encArg(x1), encArg(x2), and(encArg(z0), encArg(z1)))) ENCODE_U31(x0, x1, x2, cons_isNat(z0)) -> c(U31'(encArg(x0), encArg(x1), encArg(x2), isNat(encArg(z0)))) ENCODE_U31(x0, x1, x2, cons_isNatList(z0)) -> c(U31'(encArg(x0), encArg(x1), encArg(x2), isNatList(encArg(z0)))) ENCODE_U31(x0, x1, x2, cons_isNatIList(z0)) -> c(U31'(encArg(x0), encArg(x1), encArg(x2), isNatIList(encArg(z0)))) ENCODE_U31(x0, x1, zeros, x3) -> c(U31'(encArg(x0), encArg(x1), zeros, encArg(x3))) ENCODE_U31(x0, x1, 0, x3) -> c(U31'(encArg(x0), encArg(x1), 0, encArg(x3))) ENCODE_U31(x0, x1, tt, x3) -> c(U31'(encArg(x0), encArg(x1), tt, encArg(x3))) ENCODE_U31(x0, x1, nil, x3) -> c(U31'(encArg(x0), encArg(x1), nil, encArg(x3))) ENCODE_U31(x0, x1, cons_active(z0), x3) -> c(U31'(encArg(x0), encArg(x1), active(encArg(z0)), encArg(x3))) ENCODE_U31(x0, x1, cons_mark(z0), x3) -> c(U31'(encArg(x0), encArg(x1), mark(encArg(z0)), encArg(x3))) ENCODE_U31(x0, x1, cons_cons(z0, z1), x3) -> c(U31'(encArg(x0), encArg(x1), cons(encArg(z0), encArg(z1)), encArg(x3))) ENCODE_U31(x0, x1, cons_U11(z0, z1), x3) -> c(U31'(encArg(x0), encArg(x1), U11(encArg(z0), encArg(z1)), encArg(x3))) ENCODE_U31(x0, x1, cons_s(z0), x3) -> c(U31'(encArg(x0), encArg(x1), s(encArg(z0)), encArg(x3))) ENCODE_U31(x0, x1, cons_length(z0), x3) -> c(U31'(encArg(x0), encArg(x1), length(encArg(z0)), encArg(x3))) ENCODE_U31(x0, x1, cons_U21(z0), x3) -> c(U31'(encArg(x0), encArg(x1), U21(encArg(z0)), encArg(x3))) ENCODE_U31(x0, x1, cons_U31(z0, z1, z2, z3), x3) -> c(U31'(encArg(x0), encArg(x1), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x3))) ENCODE_U31(x0, x1, cons_take(z0, z1), x3) -> c(U31'(encArg(x0), encArg(x1), take(encArg(z0), encArg(z1)), encArg(x3))) ENCODE_U31(x0, x1, cons_and(z0, z1), x3) -> c(U31'(encArg(x0), encArg(x1), and(encArg(z0), encArg(z1)), encArg(x3))) ENCODE_U31(x0, x1, cons_isNat(z0), x3) -> c(U31'(encArg(x0), encArg(x1), isNat(encArg(z0)), encArg(x3))) ENCODE_U31(x0, x1, cons_isNatList(z0), x3) -> c(U31'(encArg(x0), encArg(x1), isNatList(encArg(z0)), encArg(x3))) ENCODE_U31(x0, x1, cons_isNatIList(z0), x3) -> c(U31'(encArg(x0), encArg(x1), isNatIList(encArg(z0)), encArg(x3))) ENCODE_U31(x0, zeros, x2, x3) -> c(U31'(encArg(x0), zeros, encArg(x2), encArg(x3))) ENCODE_U31(x0, 0, x2, x3) -> c(U31'(encArg(x0), 0, encArg(x2), encArg(x3))) ENCODE_U31(x0, tt, x2, x3) -> c(U31'(encArg(x0), tt, encArg(x2), encArg(x3))) ENCODE_U31(x0, nil, x2, x3) -> c(U31'(encArg(x0), nil, encArg(x2), encArg(x3))) ENCODE_U31(x0, cons_active(z0), x2, x3) -> c(U31'(encArg(x0), active(encArg(z0)), encArg(x2), encArg(x3))) ENCODE_U31(x0, cons_mark(z0), x2, x3) -> c(U31'(encArg(x0), mark(encArg(z0)), encArg(x2), encArg(x3))) ENCODE_U31(x0, cons_cons(z0, z1), x2, x3) -> c(U31'(encArg(x0), cons(encArg(z0), encArg(z1)), encArg(x2), encArg(x3))) ENCODE_U31(x0, cons_U11(z0, z1), x2, x3) -> c(U31'(encArg(x0), U11(encArg(z0), encArg(z1)), encArg(x2), encArg(x3))) ENCODE_U31(x0, cons_s(z0), x2, x3) -> c(U31'(encArg(x0), s(encArg(z0)), encArg(x2), encArg(x3))) ENCODE_U31(x0, cons_length(z0), x2, x3) -> c(U31'(encArg(x0), length(encArg(z0)), encArg(x2), encArg(x3))) ENCODE_U31(x0, cons_U21(z0), x2, x3) -> c(U31'(encArg(x0), U21(encArg(z0)), encArg(x2), encArg(x3))) ENCODE_U31(x0, cons_U31(z0, z1, z2, z3), x2, x3) -> c(U31'(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x2), encArg(x3))) ENCODE_U31(x0, cons_take(z0, z1), x2, x3) -> c(U31'(encArg(x0), take(encArg(z0), encArg(z1)), encArg(x2), encArg(x3))) ENCODE_U31(x0, cons_and(z0, z1), x2, x3) -> c(U31'(encArg(x0), and(encArg(z0), encArg(z1)), encArg(x2), encArg(x3))) ENCODE_U31(x0, cons_isNat(z0), x2, x3) -> c(U31'(encArg(x0), isNat(encArg(z0)), encArg(x2), encArg(x3))) ENCODE_U31(x0, cons_isNatList(z0), x2, x3) -> c(U31'(encArg(x0), isNatList(encArg(z0)), encArg(x2), encArg(x3))) ENCODE_U31(x0, cons_isNatIList(z0), x2, x3) -> c(U31'(encArg(x0), isNatIList(encArg(z0)), encArg(x2), encArg(x3))) ENCODE_U31(zeros, x1, x2, x3) -> c(U31'(zeros, encArg(x1), encArg(x2), encArg(x3))) ENCODE_U31(0, x1, x2, x3) -> c(U31'(0, encArg(x1), encArg(x2), encArg(x3))) ENCODE_U31(tt, x1, x2, x3) -> c(U31'(tt, encArg(x1), encArg(x2), encArg(x3))) ENCODE_U31(nil, x1, x2, x3) -> c(U31'(nil, encArg(x1), encArg(x2), encArg(x3))) ENCODE_U31(cons_active(z0), x1, x2, x3) -> c(U31'(active(encArg(z0)), encArg(x1), encArg(x2), encArg(x3))) ENCODE_U31(cons_mark(z0), x1, x2, x3) -> c(U31'(mark(encArg(z0)), encArg(x1), encArg(x2), encArg(x3))) ENCODE_U31(cons_cons(z0, z1), x1, x2, x3) -> c(U31'(cons(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3))) ENCODE_U31(cons_U11(z0, z1), x1, x2, x3) -> c(U31'(U11(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3))) ENCODE_U31(cons_s(z0), x1, x2, x3) -> c(U31'(s(encArg(z0)), encArg(x1), encArg(x2), encArg(x3))) ENCODE_U31(cons_length(z0), x1, x2, x3) -> c(U31'(length(encArg(z0)), encArg(x1), encArg(x2), encArg(x3))) ENCODE_U31(cons_U21(z0), x1, x2, x3) -> c(U31'(U21(encArg(z0)), encArg(x1), encArg(x2), encArg(x3))) ENCODE_U31(cons_U31(z0, z1, z2, z3), x1, x2, x3) -> c(U31'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1), encArg(x2), encArg(x3))) ENCODE_U31(cons_take(z0, z1), x1, x2, x3) -> c(U31'(take(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3))) ENCODE_U31(cons_and(z0, z1), x1, x2, x3) -> c(U31'(and(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3))) ENCODE_U31(cons_isNat(z0), x1, x2, x3) -> c(U31'(isNat(encArg(z0)), encArg(x1), encArg(x2), encArg(x3))) ENCODE_U31(cons_isNatList(z0), x1, x2, x3) -> c(U31'(isNatList(encArg(z0)), encArg(x1), encArg(x2), encArg(x3))) ENCODE_U31(cons_isNatIList(z0), x1, x2, x3) -> c(U31'(isNatIList(encArg(z0)), encArg(x1), encArg(x2), encArg(x3))) S tuples: ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 MARK(cons(zeros, x1)) -> c53(ACTIVE(cons(active(zeros), x1)), CONS(mark(zeros), x1), MARK(zeros)) MARK(cons(cons(z0, z1), x1)) -> c53(ACTIVE(cons(active(cons(mark(z0), z1)), x1)), CONS(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(cons(0, x1)) -> c53(ACTIVE(cons(active(0), x1)), CONS(mark(0), x1), MARK(0)) MARK(cons(U11(z0, z1), x1)) -> c53(ACTIVE(cons(active(U11(mark(z0), z1)), x1)), CONS(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(cons(tt, x1)) -> c53(ACTIVE(cons(active(tt), x1)), CONS(mark(tt), x1), MARK(tt)) MARK(cons(s(z0), x1)) -> c53(ACTIVE(cons(active(s(mark(z0))), x1)), CONS(mark(s(z0)), x1), MARK(s(z0))) MARK(cons(length(z0), x1)) -> c53(ACTIVE(cons(active(length(mark(z0))), x1)), CONS(mark(length(z0)), x1), MARK(length(z0))) MARK(cons(U21(z0), x1)) -> c53(ACTIVE(cons(active(U21(mark(z0))), x1)), CONS(mark(U21(z0)), x1), MARK(U21(z0))) MARK(cons(nil, x1)) -> c53(ACTIVE(cons(active(nil), x1)), CONS(mark(nil), x1), MARK(nil)) MARK(cons(U31(z0, z1, z2, z3), x1)) -> c53(ACTIVE(cons(active(U31(mark(z0), z1, z2, z3)), x1)), CONS(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(cons(take(z0, z1), x1)) -> c53(ACTIVE(cons(active(take(mark(z0), mark(z1))), x1)), CONS(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(cons(and(z0, z1), x1)) -> c53(ACTIVE(cons(active(and(mark(z0), z1)), x1)), CONS(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(cons(isNat(z0), x1)) -> c53(ACTIVE(cons(active(isNat(z0)), x1)), CONS(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(cons(isNatList(z0), x1)) -> c53(ACTIVE(cons(active(isNatList(z0)), x1)), CONS(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(cons(isNatIList(z0), x1)) -> c53(ACTIVE(cons(active(isNatIList(z0)), x1)), CONS(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(cons(x0, x1)) -> c53(CONS(mark(x0), x1)) MARK(cons(z0, z1)) -> c53(CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(z0, z1)), U11'(mark(z0), z1), MARK(z0)) MARK(U11(zeros, x1)) -> c55(ACTIVE(U11(active(zeros), x1)), U11'(mark(zeros), x1), MARK(zeros)) MARK(U11(cons(z0, z1), x1)) -> c55(ACTIVE(U11(active(cons(mark(z0), z1)), x1)), U11'(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(U11(0, x1)) -> c55(ACTIVE(U11(active(0), x1)), U11'(mark(0), x1), MARK(0)) MARK(U11(U11(z0, z1), x1)) -> c55(ACTIVE(U11(active(U11(mark(z0), z1)), x1)), U11'(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(U11(tt, x1)) -> c55(ACTIVE(U11(active(tt), x1)), U11'(mark(tt), x1), MARK(tt)) MARK(U11(s(z0), x1)) -> c55(ACTIVE(U11(active(s(mark(z0))), x1)), U11'(mark(s(z0)), x1), MARK(s(z0))) MARK(U11(length(z0), x1)) -> c55(ACTIVE(U11(active(length(mark(z0))), x1)), U11'(mark(length(z0)), x1), MARK(length(z0))) MARK(U11(U21(z0), x1)) -> c55(ACTIVE(U11(active(U21(mark(z0))), x1)), U11'(mark(U21(z0)), x1), MARK(U21(z0))) MARK(U11(nil, x1)) -> c55(ACTIVE(U11(active(nil), x1)), U11'(mark(nil), x1), MARK(nil)) MARK(U11(U31(z0, z1, z2, z3), x1)) -> c55(ACTIVE(U11(active(U31(mark(z0), z1, z2, z3)), x1)), U11'(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(U11(take(z0, z1), x1)) -> c55(ACTIVE(U11(active(take(mark(z0), mark(z1))), x1)), U11'(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(U11(and(z0, z1), x1)) -> c55(ACTIVE(U11(active(and(mark(z0), z1)), x1)), U11'(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(U11(isNat(z0), x1)) -> c55(ACTIVE(U11(active(isNat(z0)), x1)), U11'(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(U11(isNatList(z0), x1)) -> c55(ACTIVE(U11(active(isNatList(z0)), x1)), U11'(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(U11(isNatIList(z0), x1)) -> c55(ACTIVE(U11(active(isNatIList(z0)), x1)), U11'(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(U11(x0, x1)) -> c55(U11'(mark(x0), x1)) MARK(s(zeros)) -> c57(ACTIVE(s(active(zeros))), S(mark(zeros)), MARK(zeros)) MARK(s(cons(z0, z1))) -> c57(ACTIVE(s(active(cons(mark(z0), z1)))), S(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(s(0)) -> c57(ACTIVE(s(active(0))), S(mark(0)), MARK(0)) MARK(s(U11(z0, z1))) -> c57(ACTIVE(s(active(U11(mark(z0), z1)))), S(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(s(tt)) -> c57(ACTIVE(s(active(tt))), S(mark(tt)), MARK(tt)) MARK(s(s(z0))) -> c57(ACTIVE(s(active(s(mark(z0))))), S(mark(s(z0))), MARK(s(z0))) MARK(s(length(z0))) -> c57(ACTIVE(s(active(length(mark(z0))))), S(mark(length(z0))), MARK(length(z0))) MARK(s(U21(z0))) -> c57(ACTIVE(s(active(U21(mark(z0))))), S(mark(U21(z0))), MARK(U21(z0))) MARK(s(nil)) -> c57(ACTIVE(s(active(nil))), S(mark(nil)), MARK(nil)) MARK(s(U31(z0, z1, z2, z3))) -> c57(ACTIVE(s(active(U31(mark(z0), z1, z2, z3)))), S(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(s(take(z0, z1))) -> c57(ACTIVE(s(active(take(mark(z0), mark(z1))))), S(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(s(and(z0, z1))) -> c57(ACTIVE(s(active(and(mark(z0), z1)))), S(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(s(isNat(z0))) -> c57(ACTIVE(s(active(isNat(z0)))), S(mark(isNat(z0))), MARK(isNat(z0))) MARK(s(isNatList(z0))) -> c57(ACTIVE(s(active(isNatList(z0)))), S(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(s(isNatIList(z0))) -> c57(ACTIVE(s(active(isNatIList(z0)))), S(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(s(z0)) -> c57(S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(z0)), LENGTH(mark(z0)), MARK(z0)) MARK(length(zeros)) -> c58(ACTIVE(length(active(zeros))), LENGTH(mark(zeros)), MARK(zeros)) MARK(length(cons(z0, z1))) -> c58(ACTIVE(length(active(cons(mark(z0), z1)))), LENGTH(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(length(0)) -> c58(ACTIVE(length(active(0))), LENGTH(mark(0)), MARK(0)) MARK(length(U11(z0, z1))) -> c58(ACTIVE(length(active(U11(mark(z0), z1)))), LENGTH(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(length(tt)) -> c58(ACTIVE(length(active(tt))), LENGTH(mark(tt)), MARK(tt)) MARK(length(s(z0))) -> c58(ACTIVE(length(active(s(mark(z0))))), LENGTH(mark(s(z0))), MARK(s(z0))) MARK(length(length(z0))) -> c58(ACTIVE(length(active(length(mark(z0))))), LENGTH(mark(length(z0))), MARK(length(z0))) MARK(length(U21(z0))) -> c58(ACTIVE(length(active(U21(mark(z0))))), LENGTH(mark(U21(z0))), MARK(U21(z0))) MARK(length(nil)) -> c58(ACTIVE(length(active(nil))), LENGTH(mark(nil)), MARK(nil)) MARK(length(U31(z0, z1, z2, z3))) -> c58(ACTIVE(length(active(U31(mark(z0), z1, z2, z3)))), LENGTH(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(length(take(z0, z1))) -> c58(ACTIVE(length(active(take(mark(z0), mark(z1))))), LENGTH(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(length(and(z0, z1))) -> c58(ACTIVE(length(active(and(mark(z0), z1)))), LENGTH(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(length(isNat(z0))) -> c58(ACTIVE(length(active(isNat(z0)))), LENGTH(mark(isNat(z0))), MARK(isNat(z0))) MARK(length(isNatList(z0))) -> c58(ACTIVE(length(active(isNatList(z0)))), LENGTH(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(length(isNatIList(z0))) -> c58(ACTIVE(length(active(isNatIList(z0)))), LENGTH(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(U21(z0)) -> c59(ACTIVE(U21(z0)), U21'(mark(z0)), MARK(z0)) MARK(U21(zeros)) -> c59(ACTIVE(U21(active(zeros))), U21'(mark(zeros)), MARK(zeros)) MARK(U21(cons(z0, z1))) -> c59(ACTIVE(U21(active(cons(mark(z0), z1)))), U21'(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(U21(0)) -> c59(ACTIVE(U21(active(0))), U21'(mark(0)), MARK(0)) MARK(U21(U11(z0, z1))) -> c59(ACTIVE(U21(active(U11(mark(z0), z1)))), U21'(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(U21(tt)) -> c59(ACTIVE(U21(active(tt))), U21'(mark(tt)), MARK(tt)) MARK(U21(s(z0))) -> c59(ACTIVE(U21(active(s(mark(z0))))), U21'(mark(s(z0))), MARK(s(z0))) MARK(U21(length(z0))) -> c59(ACTIVE(U21(active(length(mark(z0))))), U21'(mark(length(z0))), MARK(length(z0))) MARK(U21(U21(z0))) -> c59(ACTIVE(U21(active(U21(mark(z0))))), U21'(mark(U21(z0))), MARK(U21(z0))) MARK(U21(nil)) -> c59(ACTIVE(U21(active(nil))), U21'(mark(nil)), MARK(nil)) MARK(U21(U31(z0, z1, z2, z3))) -> c59(ACTIVE(U21(active(U31(mark(z0), z1, z2, z3)))), U21'(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(U21(take(z0, z1))) -> c59(ACTIVE(U21(active(take(mark(z0), mark(z1))))), U21'(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(U21(and(z0, z1))) -> c59(ACTIVE(U21(active(and(mark(z0), z1)))), U21'(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(U21(isNat(z0))) -> c59(ACTIVE(U21(active(isNat(z0)))), U21'(mark(isNat(z0))), MARK(isNat(z0))) MARK(U21(isNatList(z0))) -> c59(ACTIVE(U21(active(isNatList(z0)))), U21'(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(U21(isNatIList(z0))) -> c59(ACTIVE(U21(active(isNatIList(z0)))), U21'(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(z0, z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U31(zeros, x1, x2, x3)) -> c61(ACTIVE(U31(active(zeros), x1, x2, x3)), U31'(mark(zeros), x1, x2, x3), MARK(zeros)) MARK(U31(cons(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(cons(mark(z0), z1)), x1, x2, x3)), U31'(mark(cons(z0, z1)), x1, x2, x3), MARK(cons(z0, z1))) MARK(U31(0, x1, x2, x3)) -> c61(ACTIVE(U31(active(0), x1, x2, x3)), U31'(mark(0), x1, x2, x3), MARK(0)) MARK(U31(U11(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(U11(mark(z0), z1)), x1, x2, x3)), U31'(mark(U11(z0, z1)), x1, x2, x3), MARK(U11(z0, z1))) MARK(U31(tt, x1, x2, x3)) -> c61(ACTIVE(U31(active(tt), x1, x2, x3)), U31'(mark(tt), x1, x2, x3), MARK(tt)) MARK(U31(s(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(s(mark(z0))), x1, x2, x3)), U31'(mark(s(z0)), x1, x2, x3), MARK(s(z0))) MARK(U31(length(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(length(mark(z0))), x1, x2, x3)), U31'(mark(length(z0)), x1, x2, x3), MARK(length(z0))) MARK(U31(U21(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(U21(mark(z0))), x1, x2, x3)), U31'(mark(U21(z0)), x1, x2, x3), MARK(U21(z0))) MARK(U31(nil, x1, x2, x3)) -> c61(ACTIVE(U31(active(nil), x1, x2, x3)), U31'(mark(nil), x1, x2, x3), MARK(nil)) MARK(U31(U31(z0, z1, z2, z3), x1, x2, x3)) -> c61(ACTIVE(U31(active(U31(mark(z0), z1, z2, z3)), x1, x2, x3)), U31'(mark(U31(z0, z1, z2, z3)), x1, x2, x3), MARK(U31(z0, z1, z2, z3))) MARK(U31(take(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(take(mark(z0), mark(z1))), x1, x2, x3)), U31'(mark(take(z0, z1)), x1, x2, x3), MARK(take(z0, z1))) MARK(U31(and(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(and(mark(z0), z1)), x1, x2, x3)), U31'(mark(and(z0, z1)), x1, x2, x3), MARK(and(z0, z1))) MARK(U31(isNat(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNat(z0)), x1, x2, x3)), U31'(mark(isNat(z0)), x1, x2, x3), MARK(isNat(z0))) MARK(U31(isNatList(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNatList(z0)), x1, x2, x3)), U31'(mark(isNatList(z0)), x1, x2, x3), MARK(isNatList(z0))) MARK(U31(isNatIList(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNatIList(z0)), x1, x2, x3)), U31'(mark(isNatIList(z0)), x1, x2, x3), MARK(isNatIList(z0))) MARK(U31(x0, x1, x2, x3)) -> c61(U31'(mark(x0), x1, x2, x3)) MARK(take(z0, x1)) -> c62(ACTIVE(take(z0, mark(x1))), TAKE(mark(z0), mark(x1)), MARK(z0), MARK(x1)) MARK(take(x0, z1)) -> c62(ACTIVE(take(mark(x0), z1)), TAKE(mark(x0), mark(z1)), MARK(x0), MARK(z1)) MARK(take(x0, zeros)) -> c62(ACTIVE(take(mark(x0), active(zeros))), TAKE(mark(x0), mark(zeros)), MARK(x0), MARK(zeros)) MARK(take(x0, cons(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(cons(mark(z0), z1)))), TAKE(mark(x0), mark(cons(z0, z1))), MARK(x0), MARK(cons(z0, z1))) MARK(take(x0, 0)) -> c62(ACTIVE(take(mark(x0), active(0))), TAKE(mark(x0), mark(0)), MARK(x0), MARK(0)) MARK(take(x0, U11(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(U11(mark(z0), z1)))), TAKE(mark(x0), mark(U11(z0, z1))), MARK(x0), MARK(U11(z0, z1))) MARK(take(x0, tt)) -> c62(ACTIVE(take(mark(x0), active(tt))), TAKE(mark(x0), mark(tt)), MARK(x0), MARK(tt)) MARK(take(x0, s(z0))) -> c62(ACTIVE(take(mark(x0), active(s(mark(z0))))), TAKE(mark(x0), mark(s(z0))), MARK(x0), MARK(s(z0))) MARK(take(x0, length(z0))) -> c62(ACTIVE(take(mark(x0), active(length(mark(z0))))), TAKE(mark(x0), mark(length(z0))), MARK(x0), MARK(length(z0))) MARK(take(x0, U21(z0))) -> c62(ACTIVE(take(mark(x0), active(U21(mark(z0))))), TAKE(mark(x0), mark(U21(z0))), MARK(x0), MARK(U21(z0))) MARK(take(x0, nil)) -> c62(ACTIVE(take(mark(x0), active(nil))), TAKE(mark(x0), mark(nil)), MARK(x0), MARK(nil)) MARK(take(x0, U31(z0, z1, z2, z3))) -> c62(ACTIVE(take(mark(x0), active(U31(mark(z0), z1, z2, z3)))), TAKE(mark(x0), mark(U31(z0, z1, z2, z3))), MARK(x0), MARK(U31(z0, z1, z2, z3))) MARK(take(x0, take(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(take(mark(z0), mark(z1))))), TAKE(mark(x0), mark(take(z0, z1))), MARK(x0), MARK(take(z0, z1))) MARK(take(x0, and(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(and(mark(z0), z1)))), TAKE(mark(x0), mark(and(z0, z1))), MARK(x0), MARK(and(z0, z1))) MARK(take(x0, isNat(z0))) -> c62(ACTIVE(take(mark(x0), active(isNat(z0)))), TAKE(mark(x0), mark(isNat(z0))), MARK(x0), MARK(isNat(z0))) MARK(take(x0, isNatList(z0))) -> c62(ACTIVE(take(mark(x0), active(isNatList(z0)))), TAKE(mark(x0), mark(isNatList(z0))), MARK(x0), MARK(isNatList(z0))) MARK(take(x0, isNatIList(z0))) -> c62(ACTIVE(take(mark(x0), active(isNatIList(z0)))), TAKE(mark(x0), mark(isNatIList(z0))), MARK(x0), MARK(isNatIList(z0))) MARK(take(zeros, x1)) -> c62(ACTIVE(take(active(zeros), mark(x1))), TAKE(mark(zeros), mark(x1)), MARK(zeros), MARK(x1)) MARK(take(cons(z0, z1), x1)) -> c62(ACTIVE(take(active(cons(mark(z0), z1)), mark(x1))), TAKE(mark(cons(z0, z1)), mark(x1)), MARK(cons(z0, z1)), MARK(x1)) MARK(take(0, x1)) -> c62(ACTIVE(take(active(0), mark(x1))), TAKE(mark(0), mark(x1)), MARK(0), MARK(x1)) MARK(take(U11(z0, z1), x1)) -> c62(ACTIVE(take(active(U11(mark(z0), z1)), mark(x1))), TAKE(mark(U11(z0, z1)), mark(x1)), MARK(U11(z0, z1)), MARK(x1)) MARK(take(tt, x1)) -> c62(ACTIVE(take(active(tt), mark(x1))), TAKE(mark(tt), mark(x1)), MARK(tt), MARK(x1)) MARK(take(s(z0), x1)) -> c62(ACTIVE(take(active(s(mark(z0))), mark(x1))), TAKE(mark(s(z0)), mark(x1)), MARK(s(z0)), MARK(x1)) MARK(take(length(z0), x1)) -> c62(ACTIVE(take(active(length(mark(z0))), mark(x1))), TAKE(mark(length(z0)), mark(x1)), MARK(length(z0)), MARK(x1)) MARK(take(U21(z0), x1)) -> c62(ACTIVE(take(active(U21(mark(z0))), mark(x1))), TAKE(mark(U21(z0)), mark(x1)), MARK(U21(z0)), MARK(x1)) MARK(take(nil, x1)) -> c62(ACTIVE(take(active(nil), mark(x1))), TAKE(mark(nil), mark(x1)), MARK(nil), MARK(x1)) MARK(take(U31(z0, z1, z2, z3), x1)) -> c62(ACTIVE(take(active(U31(mark(z0), z1, z2, z3)), mark(x1))), TAKE(mark(U31(z0, z1, z2, z3)), mark(x1)), MARK(U31(z0, z1, z2, z3)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c62(ACTIVE(take(active(take(mark(z0), mark(z1))), mark(x1))), TAKE(mark(take(z0, z1)), mark(x1)), MARK(take(z0, z1)), MARK(x1)) MARK(take(and(z0, z1), x1)) -> c62(ACTIVE(take(active(and(mark(z0), z1)), mark(x1))), TAKE(mark(and(z0, z1)), mark(x1)), MARK(and(z0, z1)), MARK(x1)) MARK(take(isNat(z0), x1)) -> c62(ACTIVE(take(active(isNat(z0)), mark(x1))), TAKE(mark(isNat(z0)), mark(x1)), MARK(isNat(z0)), MARK(x1)) MARK(take(isNatList(z0), x1)) -> c62(ACTIVE(take(active(isNatList(z0)), mark(x1))), TAKE(mark(isNatList(z0)), mark(x1)), MARK(isNatList(z0)), MARK(x1)) MARK(take(isNatIList(z0), x1)) -> c62(ACTIVE(take(active(isNatIList(z0)), mark(x1))), TAKE(mark(isNatIList(z0)), mark(x1)), MARK(isNatIList(z0)), MARK(x1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(z0, z1)), AND(mark(z0), z1), MARK(z0)) MARK(and(zeros, x1)) -> c63(ACTIVE(and(active(zeros), x1)), AND(mark(zeros), x1), MARK(zeros)) MARK(and(cons(z0, z1), x1)) -> c63(ACTIVE(and(active(cons(mark(z0), z1)), x1)), AND(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(and(0, x1)) -> c63(ACTIVE(and(active(0), x1)), AND(mark(0), x1), MARK(0)) MARK(and(U11(z0, z1), x1)) -> c63(ACTIVE(and(active(U11(mark(z0), z1)), x1)), AND(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(and(tt, x1)) -> c63(ACTIVE(and(active(tt), x1)), AND(mark(tt), x1), MARK(tt)) MARK(and(s(z0), x1)) -> c63(ACTIVE(and(active(s(mark(z0))), x1)), AND(mark(s(z0)), x1), MARK(s(z0))) MARK(and(length(z0), x1)) -> c63(ACTIVE(and(active(length(mark(z0))), x1)), AND(mark(length(z0)), x1), MARK(length(z0))) MARK(and(U21(z0), x1)) -> c63(ACTIVE(and(active(U21(mark(z0))), x1)), AND(mark(U21(z0)), x1), MARK(U21(z0))) MARK(and(nil, x1)) -> c63(ACTIVE(and(active(nil), x1)), AND(mark(nil), x1), MARK(nil)) MARK(and(U31(z0, z1, z2, z3), x1)) -> c63(ACTIVE(and(active(U31(mark(z0), z1, z2, z3)), x1)), AND(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(and(take(z0, z1), x1)) -> c63(ACTIVE(and(active(take(mark(z0), mark(z1))), x1)), AND(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(and(and(z0, z1), x1)) -> c63(ACTIVE(and(active(and(mark(z0), z1)), x1)), AND(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(and(isNat(z0), x1)) -> c63(ACTIVE(and(active(isNat(z0)), x1)), AND(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(and(isNatList(z0), x1)) -> c63(ACTIVE(and(active(isNatList(z0)), x1)), AND(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(and(isNatIList(z0), x1)) -> c63(ACTIVE(and(active(isNatIList(z0)), x1)), AND(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(and(x0, x1)) -> c63(AND(mark(x0), x1)) K tuples:none Defined Rule Symbols: encArg_1, active_1, mark_1, cons_2, U11_2, s_1, length_1, U21_1, U31_4, take_2, and_2, isNat_1, isNatList_1, isNatIList_1 Defined Pair Symbols: ACTIVE_1, MARK_1, CONS_2, U11'_2, S_1, LENGTH_1, U21'_1, U31'_4, TAKE_2, AND_2, ISNAT_1, ISNATLIST_1, ISNATILIST_1, ENCODE_TAKE_2, ENCODE_AND_2, ENCODE_ISNAT_1, ENCODE_ISNATLIST_1, ENCODE_ISNATILIST_1, ENCARG_1, ENCODE_ACTIVE_1, ENCODE_MARK_1, ENCODE_CONS_2, ENCODE_U11_2, ENCODE_S_1, ENCODE_LENGTH_1, ENCODE_U21_1, ENCODE_U31_4 Compound Symbols: c36_1, c37_3, c38_1, c39_1, c40_2, c41_2, c42_2, c43_1, c45_1, c48_1, c52_1, c64_2, c65_2, c66_2, c67_1, c68_1, c69_1, c70_1, c71_1, c72_1, c73_1, c74_1, c75_1, c76_1, c77_1, c78_1, c79_1, c80_1, c81_1, c82_1, c83_1, c84_1, c85_1, c86_1, c87_1, c88_1, c89_1, c90_1, c91_1, c92_1, c93_1, c94_1, c95_1, c96_1, c97_1, c98_1, c99_1, c100_1, c101_1, c102_1, c34_1, c35_2, c44_3, c46_3, c47_3, c49_3, c50_2, c51_4, c54, c56, c60, c_1, c4_2, c4_1, c5_2, c5_1, c6_3, c6_2, c7_3, c7_2, c8_2, c9_2, c10_2, c11_5, c11_4, c12_3, c12_2, c13_3, c13_2, c14_2, c15_2, c16_2, c53_3, c53_1, c53_2, c55_3, c55_1, c57_3, c57_2, c58_3, c59_3, c61_3, c61_1, c62_4, c63_3, c63_1 ---------------------------------------- (139) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace ENCODE_TAKE(z0, z1) -> c(TAKE(encArg(z0), encArg(z1))) by ENCODE_TAKE(x0, zeros) -> c(TAKE(encArg(x0), zeros)) ENCODE_TAKE(x0, 0) -> c(TAKE(encArg(x0), 0)) ENCODE_TAKE(x0, tt) -> c(TAKE(encArg(x0), tt)) ENCODE_TAKE(x0, nil) -> c(TAKE(encArg(x0), nil)) ENCODE_TAKE(x0, cons_active(z0)) -> c(TAKE(encArg(x0), active(encArg(z0)))) ENCODE_TAKE(x0, cons_mark(z0)) -> c(TAKE(encArg(x0), mark(encArg(z0)))) ENCODE_TAKE(x0, cons_cons(z0, z1)) -> c(TAKE(encArg(x0), cons(encArg(z0), encArg(z1)))) ENCODE_TAKE(x0, cons_U11(z0, z1)) -> c(TAKE(encArg(x0), U11(encArg(z0), encArg(z1)))) ENCODE_TAKE(x0, cons_s(z0)) -> c(TAKE(encArg(x0), s(encArg(z0)))) ENCODE_TAKE(x0, cons_length(z0)) -> c(TAKE(encArg(x0), length(encArg(z0)))) ENCODE_TAKE(x0, cons_U21(z0)) -> c(TAKE(encArg(x0), U21(encArg(z0)))) ENCODE_TAKE(x0, cons_U31(z0, z1, z2, z3)) -> c(TAKE(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)))) ENCODE_TAKE(x0, cons_take(z0, z1)) -> c(TAKE(encArg(x0), take(encArg(z0), encArg(z1)))) ENCODE_TAKE(x0, cons_and(z0, z1)) -> c(TAKE(encArg(x0), and(encArg(z0), encArg(z1)))) ENCODE_TAKE(x0, cons_isNat(z0)) -> c(TAKE(encArg(x0), isNat(encArg(z0)))) ENCODE_TAKE(x0, cons_isNatList(z0)) -> c(TAKE(encArg(x0), isNatList(encArg(z0)))) ENCODE_TAKE(x0, cons_isNatIList(z0)) -> c(TAKE(encArg(x0), isNatIList(encArg(z0)))) ENCODE_TAKE(zeros, x1) -> c(TAKE(zeros, encArg(x1))) ENCODE_TAKE(0, x1) -> c(TAKE(0, encArg(x1))) ENCODE_TAKE(tt, x1) -> c(TAKE(tt, encArg(x1))) ENCODE_TAKE(nil, x1) -> c(TAKE(nil, encArg(x1))) ENCODE_TAKE(cons_active(z0), x1) -> c(TAKE(active(encArg(z0)), encArg(x1))) ENCODE_TAKE(cons_mark(z0), x1) -> c(TAKE(mark(encArg(z0)), encArg(x1))) ENCODE_TAKE(cons_cons(z0, z1), x1) -> c(TAKE(cons(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_TAKE(cons_U11(z0, z1), x1) -> c(TAKE(U11(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_TAKE(cons_s(z0), x1) -> c(TAKE(s(encArg(z0)), encArg(x1))) ENCODE_TAKE(cons_length(z0), x1) -> c(TAKE(length(encArg(z0)), encArg(x1))) ENCODE_TAKE(cons_U21(z0), x1) -> c(TAKE(U21(encArg(z0)), encArg(x1))) ENCODE_TAKE(cons_U31(z0, z1, z2, z3), x1) -> c(TAKE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1))) ENCODE_TAKE(cons_take(z0, z1), x1) -> c(TAKE(take(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_TAKE(cons_and(z0, z1), x1) -> c(TAKE(and(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_TAKE(cons_isNat(z0), x1) -> c(TAKE(isNat(encArg(z0)), encArg(x1))) ENCODE_TAKE(cons_isNatList(z0), x1) -> c(TAKE(isNatList(encArg(z0)), encArg(x1))) ENCODE_TAKE(cons_isNatIList(z0), x1) -> c(TAKE(isNatIList(encArg(z0)), encArg(x1))) ---------------------------------------- (140) Obligation: Complexity Dependency Tuples Problem Rules: encArg(zeros) -> zeros encArg(0) -> 0 encArg(tt) -> tt encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_U11(z0, z1)) -> U11(encArg(z0), encArg(z1)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_length(z0)) -> length(encArg(z0)) encArg(cons_U21(z0)) -> U21(encArg(z0)) encArg(cons_U31(z0, z1, z2, z3)) -> U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_isNat(z0)) -> isNat(encArg(z0)) encArg(cons_isNatList(z0)) -> isNatList(encArg(z0)) encArg(cons_isNatIList(z0)) -> isNatIList(encArg(z0)) active(zeros) -> mark(cons(0, zeros)) active(U11(tt, z0)) -> mark(s(length(z0))) active(U21(tt)) -> mark(nil) active(U31(tt, z0, z1, z2)) -> mark(cons(z2, take(z1, z0))) active(and(tt, z0)) -> mark(z0) active(isNat(0)) -> mark(tt) active(isNat(length(z0))) -> mark(isNatList(z0)) active(isNat(s(z0))) -> mark(isNat(z0)) active(isNatIList(z0)) -> mark(isNatList(z0)) active(isNatIList(zeros)) -> mark(tt) active(isNatIList(cons(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(isNatList(nil)) -> mark(tt) active(isNatList(cons(z0, z1))) -> mark(and(isNat(z0), isNatList(z1))) active(isNatList(take(z0, z1))) -> mark(and(isNat(z0), isNatIList(z1))) active(length(nil)) -> mark(0) active(length(cons(z0, z1))) -> mark(U11(and(isNatList(z1), isNat(z0)), z1)) active(take(0, z0)) -> mark(U21(isNatIList(z0))) active(take(s(z0), cons(z1, z2))) -> mark(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)) mark(zeros) -> active(zeros) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(0) -> active(0) mark(U11(z0, z1)) -> active(U11(mark(z0), z1)) mark(tt) -> active(tt) mark(s(z0)) -> active(s(mark(z0))) mark(length(z0)) -> active(length(mark(z0))) mark(U21(z0)) -> active(U21(mark(z0))) mark(nil) -> active(nil) mark(U31(z0, z1, z2, z3)) -> active(U31(mark(z0), z1, z2, z3)) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(isNat(z0)) -> active(isNat(z0)) mark(isNatList(z0)) -> active(isNatList(z0)) mark(isNatIList(z0)) -> active(isNatIList(z0)) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) U11(mark(z0), z1) -> U11(z0, z1) U11(z0, mark(z1)) -> U11(z0, z1) U11(active(z0), z1) -> U11(z0, z1) U11(z0, active(z1)) -> U11(z0, z1) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) length(mark(z0)) -> length(z0) length(active(z0)) -> length(z0) U21(mark(z0)) -> U21(z0) U21(active(z0)) -> U21(z0) U31(mark(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, mark(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, mark(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, mark(z3)) -> U31(z0, z1, z2, z3) U31(active(z0), z1, z2, z3) -> U31(z0, z1, z2, z3) U31(z0, active(z1), z2, z3) -> U31(z0, z1, z2, z3) U31(z0, z1, active(z2), z3) -> U31(z0, z1, z2, z3) U31(z0, z1, z2, active(z3)) -> U31(z0, z1, z2, z3) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) isNat(mark(z0)) -> isNat(z0) isNat(active(z0)) -> isNat(z0) isNatList(mark(z0)) -> isNatList(z0) isNatList(active(z0)) -> isNatList(z0) isNatIList(mark(z0)) -> isNatIList(z0) isNatIList(active(z0)) -> isNatIList(z0) Tuples: ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 ENCODE_AND(z0, z1) -> c(AND(encArg(z0), encArg(z1))) ENCODE_ISNAT(z0) -> c(ISNAT(encArg(z0))) ENCODE_ISNATLIST(z0) -> c(ISNATLIST(encArg(z0))) ENCODE_ISNATILIST(z0) -> c(ISNATILIST(encArg(z0))) ENCARG(cons_active(cons_active(z0))) -> c4(ACTIVE(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_active(cons_mark(z0))) -> c4(ACTIVE(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_active(cons_cons(z0, z1))) -> c4(ACTIVE(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_active(cons_U11(z0, z1))) -> c4(ACTIVE(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_active(cons_s(z0))) -> c4(ACTIVE(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_active(cons_length(z0))) -> c4(ACTIVE(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_active(cons_U21(z0))) -> c4(ACTIVE(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_active(cons_U31(z0, z1, z2, z3))) -> c4(ACTIVE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_active(cons_take(z0, z1))) -> c4(ACTIVE(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_active(cons_and(z0, z1))) -> c4(ACTIVE(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_active(cons_isNat(z0))) -> c4(ACTIVE(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_active(cons_isNatList(z0))) -> c4(ACTIVE(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_active(cons_isNatIList(z0))) -> c4(ACTIVE(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_active(zeros)) -> c4(ACTIVE(zeros)) ENCARG(cons_mark(cons_active(z0))) -> c5(MARK(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_mark(cons_mark(z0))) -> c5(MARK(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_mark(cons_cons(z0, z1))) -> c5(MARK(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_mark(cons_U11(z0, z1))) -> c5(MARK(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_mark(cons_s(z0))) -> c5(MARK(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_mark(cons_length(z0))) -> c5(MARK(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_mark(cons_U21(z0))) -> c5(MARK(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_mark(cons_U31(z0, z1, z2, z3))) -> c5(MARK(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_mark(cons_take(z0, z1))) -> c5(MARK(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(cons_and(z0, z1))) -> c5(MARK(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_mark(cons_isNat(z0))) -> c5(MARK(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_mark(cons_isNatList(z0))) -> c5(MARK(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_mark(cons_isNatIList(z0))) -> c5(MARK(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_mark(zeros)) -> c5(MARK(zeros)) ENCARG(cons_mark(0)) -> c5(MARK(0)) ENCARG(cons_mark(tt)) -> c5(MARK(tt)) ENCARG(cons_mark(nil)) -> c5(MARK(nil)) ENCARG(cons_cons(x0, cons_active(z0))) -> c6(CONS(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_cons(x0, cons_mark(z0))) -> c6(CONS(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_cons(x0, cons_cons(z0, z1))) -> c6(CONS(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_cons(x0, cons_U11(z0, z1))) -> c6(CONS(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_cons(x0, cons_s(z0))) -> c6(CONS(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_cons(x0, cons_length(z0))) -> c6(CONS(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_cons(x0, cons_U21(z0))) -> c6(CONS(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_cons(x0, cons_U31(z0, z1, z2, z3))) -> c6(CONS(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_cons(x0, cons_take(z0, z1))) -> c6(CONS(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_cons(x0, cons_and(z0, z1))) -> c6(CONS(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_cons(x0, cons_isNat(z0))) -> c6(CONS(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_cons(x0, cons_isNatList(z0))) -> c6(CONS(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_cons(x0, cons_isNatIList(z0))) -> c6(CONS(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_cons(cons_active(z0), x1)) -> c6(CONS(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_mark(z0), x1)) -> c6(CONS(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_cons(z0, z1), x1)) -> c6(CONS(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_U11(z0, z1), x1)) -> c6(CONS(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_s(z0), x1)) -> c6(CONS(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_length(z0), x1)) -> c6(CONS(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U21(z0), x1)) -> c6(CONS(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U31(z0, z1, z2, z3), x1)) -> c6(CONS(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_cons(cons_take(z0, z1), x1)) -> c6(CONS(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_and(z0, z1), x1)) -> c6(CONS(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_isNat(z0), x1)) -> c6(CONS(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_isNatList(z0), x1)) -> c6(CONS(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_isNatIList(z0), x1)) -> c6(CONS(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_cons(x0, zeros)) -> c6(CONS(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_cons(x0, 0)) -> c6(CONS(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_cons(x0, tt)) -> c6(CONS(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_cons(x0, nil)) -> c6(CONS(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_cons(zeros, x1)) -> c6(CONS(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(0, x1)) -> c6(CONS(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(tt, x1)) -> c6(CONS(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(nil, x1)) -> c6(CONS(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(x0, cons_active(z0))) -> c7(U11'(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_U11(x0, cons_mark(z0))) -> c7(U11'(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_U11(x0, cons_cons(z0, z1))) -> c7(U11'(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U11(x0, cons_U11(z0, z1))) -> c7(U11'(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U11(x0, cons_s(z0))) -> c7(U11'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_U11(x0, cons_length(z0))) -> c7(U11'(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_U11(x0, cons_U21(z0))) -> c7(U11'(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_U11(x0, cons_U31(z0, z1, z2, z3))) -> c7(U11'(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U11(x0, cons_take(z0, z1))) -> c7(U11'(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_U11(x0, cons_and(z0, z1))) -> c7(U11'(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_U11(x0, cons_isNat(z0))) -> c7(U11'(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_U11(x0, cons_isNatList(z0))) -> c7(U11'(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_U11(x0, cons_isNatIList(z0))) -> c7(U11'(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U11(cons_active(z0), x1)) -> c7(U11'(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_mark(z0), x1)) -> c7(U11'(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_cons(z0, z1), x1)) -> c7(U11'(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_U11(z0, z1), x1)) -> c7(U11'(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_s(z0), x1)) -> c7(U11'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_length(z0), x1)) -> c7(U11'(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_U21(z0), x1)) -> c7(U11'(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_U31(z0, z1, z2, z3), x1)) -> c7(U11'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_U11(cons_take(z0, z1), x1)) -> c7(U11'(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_and(z0, z1), x1)) -> c7(U11'(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_U11(cons_isNat(z0), x1)) -> c7(U11'(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_isNatList(z0), x1)) -> c7(U11'(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_U11(cons_isNatIList(z0), x1)) -> c7(U11'(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_U11(x0, zeros)) -> c7(U11'(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_U11(x0, 0)) -> c7(U11'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_U11(x0, tt)) -> c7(U11'(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_U11(x0, nil)) -> c7(U11'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_U11(zeros, x1)) -> c7(U11'(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(0, x1)) -> c7(U11'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(tt, x1)) -> c7(U11'(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_U11(nil, x1)) -> c7(U11'(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_s(cons_active(z0))) -> c8(S(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_s(cons_mark(z0))) -> c8(S(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_s(cons_cons(z0, z1))) -> c8(S(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_s(cons_U11(z0, z1))) -> c8(S(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_s(cons_s(z0))) -> c8(S(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_length(z0))) -> c8(S(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_s(cons_U21(z0))) -> c8(S(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_s(cons_U31(z0, z1, z2, z3))) -> c8(S(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_s(cons_take(z0, z1))) -> c8(S(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_s(cons_and(z0, z1))) -> c8(S(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_s(cons_isNat(z0))) -> c8(S(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_s(cons_isNatList(z0))) -> c8(S(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_s(cons_isNatIList(z0))) -> c8(S(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_length(cons_active(z0))) -> c9(LENGTH(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_length(cons_mark(z0))) -> c9(LENGTH(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_length(cons_cons(z0, z1))) -> c9(LENGTH(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_length(cons_U11(z0, z1))) -> c9(LENGTH(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_length(cons_s(z0))) -> c9(LENGTH(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_length(cons_length(z0))) -> c9(LENGTH(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_length(cons_U21(z0))) -> c9(LENGTH(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_length(cons_U31(z0, z1, z2, z3))) -> c9(LENGTH(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_length(cons_take(z0, z1))) -> c9(LENGTH(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_length(cons_and(z0, z1))) -> c9(LENGTH(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_length(cons_isNat(z0))) -> c9(LENGTH(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_length(cons_isNatList(z0))) -> c9(LENGTH(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_length(cons_isNatIList(z0))) -> c9(LENGTH(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U21(cons_active(z0))) -> c10(U21'(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_U21(cons_mark(z0))) -> c10(U21'(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_U21(cons_cons(z0, z1))) -> c10(U21'(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U21(cons_U11(z0, z1))) -> c10(U21'(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U21(cons_s(z0))) -> c10(U21'(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_U21(cons_length(z0))) -> c10(U21'(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_U21(cons_U21(z0))) -> c10(U21'(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_U21(cons_U31(z0, z1, z2, z3))) -> c10(U21'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U21(cons_take(z0, z1))) -> c10(U21'(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_U21(cons_and(z0, z1))) -> c10(U21'(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_U21(cons_isNat(z0))) -> c10(U21'(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_U21(cons_isNatList(z0))) -> c10(U21'(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_U21(cons_isNatIList(z0))) -> c10(U21'(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U31(x0, x1, x2, cons_active(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), active(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_active(z0))) ENCARG(cons_U31(x0, x1, x2, cons_mark(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), mark(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_mark(z0))) ENCARG(cons_U31(x0, x1, x2, cons_cons(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_U11(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U11(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_s(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), s(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_s(z0))) ENCARG(cons_U31(x0, x1, x2, cons_length(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), length(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_length(z0))) ENCARG(cons_U31(x0, x1, x2, cons_U21(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U21(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U21(z0))) ENCARG(cons_U31(x0, x1, x2, cons_U31(z0, z1, z2, z3))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_U31(x0, x1, x2, cons_take(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_take(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_and(z0, z1))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_and(z0, z1))) ENCARG(cons_U31(x0, x1, x2, cons_isNat(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNat(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNat(z0))) ENCARG(cons_U31(x0, x1, x2, cons_isNatList(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNatList(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNatList(z0))) ENCARG(cons_U31(x0, x1, x2, cons_isNatIList(z0))) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_isNatIList(z0))) ENCARG(cons_U31(x0, x1, cons_active(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), active(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_active(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_mark(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), mark(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_mark(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_cons(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), cons(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_cons(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U11(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), U11(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U11(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_s(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), s(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_s(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_length(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), length(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_length(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U21(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), U21(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U21(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_U31(z0, z1, z2, z3), x3)) -> c11(U31'(encArg(x0), encArg(x1), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_take(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), take(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_take(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_and(z0, z1), x3)) -> c11(U31'(encArg(x0), encArg(x1), and(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_and(z0, z1)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNat(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNat(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNat(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNatList(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNatList(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNatList(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, x1, cons_isNatIList(z0), x3)) -> c11(U31'(encArg(x0), encArg(x1), isNatIList(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_isNatIList(z0)), ENCARG(x3)) ENCARG(cons_U31(x0, cons_active(z0), x2, x3)) -> c11(U31'(encArg(x0), active(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_active(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_mark(z0), x2, x3)) -> c11(U31'(encArg(x0), mark(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_mark(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_cons(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), cons(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_cons(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U11(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), U11(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U11(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_s(z0), x2, x3)) -> c11(U31'(encArg(x0), s(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_s(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_length(z0), x2, x3)) -> c11(U31'(encArg(x0), length(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_length(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U21(z0), x2, x3)) -> c11(U31'(encArg(x0), U21(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U21(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_U31(z0, z1, z2, z3), x2, x3)) -> c11(U31'(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_take(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), take(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_take(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_and(z0, z1), x2, x3)) -> c11(U31'(encArg(x0), and(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_and(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNat(z0), x2, x3)) -> c11(U31'(encArg(x0), isNat(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNat(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNatList(z0), x2, x3)) -> c11(U31'(encArg(x0), isNatList(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNatList(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, cons_isNatIList(z0), x2, x3)) -> c11(U31'(encArg(x0), isNatIList(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_isNatIList(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_active(z0), x1, x2, x3)) -> c11(U31'(active(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_active(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_mark(z0), x1, x2, x3)) -> c11(U31'(mark(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_mark(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_cons(z0, z1), x1, x2, x3)) -> c11(U31'(cons(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_cons(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U11(z0, z1), x1, x2, x3)) -> c11(U31'(U11(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U11(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_s(z0), x1, x2, x3)) -> c11(U31'(s(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_s(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_length(z0), x1, x2, x3)) -> c11(U31'(length(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_length(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U21(z0), x1, x2, x3)) -> c11(U31'(U21(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U21(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_U31(z0, z1, z2, z3), x1, x2, x3)) -> c11(U31'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_take(z0, z1), x1, x2, x3)) -> c11(U31'(take(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_take(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_and(z0, z1), x1, x2, x3)) -> c11(U31'(and(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_and(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNat(z0), x1, x2, x3)) -> c11(U31'(isNat(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNat(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNatList(z0), x1, x2, x3)) -> c11(U31'(isNatList(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNatList(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(cons_isNatIList(z0), x1, x2, x3)) -> c11(U31'(isNatIList(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_isNatIList(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, x1, x2, zeros)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), zeros), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, 0)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), 0), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, tt)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), tt), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, x2, nil)) -> c11(U31'(encArg(x0), encArg(x1), encArg(x2), nil), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U31(x0, x1, zeros, x3)) -> c11(U31'(encArg(x0), encArg(x1), zeros, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, 0, x3)) -> c11(U31'(encArg(x0), encArg(x1), 0, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, tt, x3)) -> c11(U31'(encArg(x0), encArg(x1), tt, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, x1, nil, x3)) -> c11(U31'(encArg(x0), encArg(x1), nil, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U31(x0, zeros, x2, x3)) -> c11(U31'(encArg(x0), zeros, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, 0, x2, x3)) -> c11(U31'(encArg(x0), 0, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, tt, x2, x3)) -> c11(U31'(encArg(x0), tt, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(x0, nil, x2, x3)) -> c11(U31'(encArg(x0), nil, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(zeros, x1, x2, x3)) -> c11(U31'(zeros, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(0, x1, x2, x3)) -> c11(U31'(0, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(tt, x1, x2, x3)) -> c11(U31'(tt, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U31(nil, x1, x2, x3)) -> c11(U31'(nil, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_take(x0, cons_active(z0))) -> c12(TAKE(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_take(x0, cons_mark(z0))) -> c12(TAKE(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_take(x0, cons_cons(z0, z1))) -> c12(TAKE(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_take(x0, cons_U11(z0, z1))) -> c12(TAKE(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_take(x0, cons_s(z0))) -> c12(TAKE(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_take(x0, cons_length(z0))) -> c12(TAKE(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_take(x0, cons_U21(z0))) -> c12(TAKE(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_take(x0, cons_U31(z0, z1, z2, z3))) -> c12(TAKE(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_take(x0, cons_take(z0, z1))) -> c12(TAKE(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_take(x0, cons_and(z0, z1))) -> c12(TAKE(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_take(x0, cons_isNat(z0))) -> c12(TAKE(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_take(x0, cons_isNatList(z0))) -> c12(TAKE(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_take(x0, cons_isNatIList(z0))) -> c12(TAKE(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_take(cons_active(z0), x1)) -> c12(TAKE(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_take(cons_mark(z0), x1)) -> c12(TAKE(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_take(cons_cons(z0, z1), x1)) -> c12(TAKE(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_U11(z0, z1), x1)) -> c12(TAKE(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_s(z0), x1)) -> c12(TAKE(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_take(cons_length(z0), x1)) -> c12(TAKE(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_take(cons_U21(z0), x1)) -> c12(TAKE(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_take(cons_U31(z0, z1, z2, z3), x1)) -> c12(TAKE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_take(cons_take(z0, z1), x1)) -> c12(TAKE(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_and(z0, z1), x1)) -> c12(TAKE(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_isNat(z0), x1)) -> c12(TAKE(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_take(cons_isNatList(z0), x1)) -> c12(TAKE(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_take(cons_isNatIList(z0), x1)) -> c12(TAKE(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_take(x0, zeros)) -> c12(TAKE(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_take(x0, 0)) -> c12(TAKE(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_take(x0, tt)) -> c12(TAKE(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_take(x0, nil)) -> c12(TAKE(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_take(zeros, x1)) -> c12(TAKE(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(0, x1)) -> c12(TAKE(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(tt, x1)) -> c12(TAKE(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(nil, x1)) -> c12(TAKE(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(x0, cons_active(z0))) -> c13(AND(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_and(x0, cons_mark(z0))) -> c13(AND(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_and(x0, cons_cons(z0, z1))) -> c13(AND(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_and(x0, cons_U11(z0, z1))) -> c13(AND(encArg(x0), U11(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U11(z0, z1))) ENCARG(cons_and(x0, cons_s(z0))) -> c13(AND(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_and(x0, cons_length(z0))) -> c13(AND(encArg(x0), length(encArg(z0))), ENCARG(x0), ENCARG(cons_length(z0))) ENCARG(cons_and(x0, cons_U21(z0))) -> c13(AND(encArg(x0), U21(encArg(z0))), ENCARG(x0), ENCARG(cons_U21(z0))) ENCARG(cons_and(x0, cons_U31(z0, z1, z2, z3))) -> c13(AND(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_and(x0, cons_take(z0, z1))) -> c13(AND(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_and(x0, cons_and(z0, z1))) -> c13(AND(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_and(x0, cons_isNat(z0))) -> c13(AND(encArg(x0), isNat(encArg(z0))), ENCARG(x0), ENCARG(cons_isNat(z0))) ENCARG(cons_and(x0, cons_isNatList(z0))) -> c13(AND(encArg(x0), isNatList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatList(z0))) ENCARG(cons_and(x0, cons_isNatIList(z0))) -> c13(AND(encArg(x0), isNatIList(encArg(z0))), ENCARG(x0), ENCARG(cons_isNatIList(z0))) ENCARG(cons_and(cons_active(z0), x1)) -> c13(AND(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_and(cons_mark(z0), x1)) -> c13(AND(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_and(cons_cons(z0, z1), x1)) -> c13(AND(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_U11(z0, z1), x1)) -> c13(AND(U11(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U11(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_s(z0), x1)) -> c13(AND(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_and(cons_length(z0), x1)) -> c13(AND(length(encArg(z0)), encArg(x1)), ENCARG(cons_length(z0)), ENCARG(x1)) ENCARG(cons_and(cons_U21(z0), x1)) -> c13(AND(U21(encArg(z0)), encArg(x1)), ENCARG(cons_U21(z0)), ENCARG(x1)) ENCARG(cons_and(cons_U31(z0, z1, z2, z3), x1)) -> c13(AND(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U31(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_and(cons_take(z0, z1), x1)) -> c13(AND(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_and(z0, z1), x1)) -> c13(AND(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_isNat(z0), x1)) -> c13(AND(isNat(encArg(z0)), encArg(x1)), ENCARG(cons_isNat(z0)), ENCARG(x1)) ENCARG(cons_and(cons_isNatList(z0), x1)) -> c13(AND(isNatList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatList(z0)), ENCARG(x1)) ENCARG(cons_and(cons_isNatIList(z0), x1)) -> c13(AND(isNatIList(encArg(z0)), encArg(x1)), ENCARG(cons_isNatIList(z0)), ENCARG(x1)) ENCARG(cons_and(x0, zeros)) -> c13(AND(encArg(x0), zeros), ENCARG(x0)) ENCARG(cons_and(x0, 0)) -> c13(AND(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_and(x0, tt)) -> c13(AND(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_and(x0, nil)) -> c13(AND(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_and(zeros, x1)) -> c13(AND(zeros, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(0, x1)) -> c13(AND(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(tt, x1)) -> c13(AND(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(nil, x1)) -> c13(AND(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_isNat(cons_active(z0))) -> c14(ISNAT(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_isNat(cons_mark(z0))) -> c14(ISNAT(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_isNat(cons_cons(z0, z1))) -> c14(ISNAT(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_isNat(cons_U11(z0, z1))) -> c14(ISNAT(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_isNat(cons_s(z0))) -> c14(ISNAT(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_isNat(cons_length(z0))) -> c14(ISNAT(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_isNat(cons_U21(z0))) -> c14(ISNAT(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_isNat(cons_U31(z0, z1, z2, z3))) -> c14(ISNAT(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_isNat(cons_take(z0, z1))) -> c14(ISNAT(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_isNat(cons_and(z0, z1))) -> c14(ISNAT(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_isNat(cons_isNat(z0))) -> c14(ISNAT(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_isNat(cons_isNatList(z0))) -> c14(ISNAT(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_isNat(cons_isNatIList(z0))) -> c14(ISNAT(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_isNatList(cons_active(z0))) -> c15(ISNATLIST(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_isNatList(cons_mark(z0))) -> c15(ISNATLIST(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_isNatList(cons_cons(z0, z1))) -> c15(ISNATLIST(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_isNatList(cons_U11(z0, z1))) -> c15(ISNATLIST(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_isNatList(cons_s(z0))) -> c15(ISNATLIST(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_isNatList(cons_length(z0))) -> c15(ISNATLIST(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_isNatList(cons_U21(z0))) -> c15(ISNATLIST(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_isNatList(cons_U31(z0, z1, z2, z3))) -> c15(ISNATLIST(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_isNatList(cons_take(z0, z1))) -> c15(ISNATLIST(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_isNatList(cons_and(z0, z1))) -> c15(ISNATLIST(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_isNatList(cons_isNat(z0))) -> c15(ISNATLIST(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_isNatList(cons_isNatList(z0))) -> c15(ISNATLIST(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_isNatList(cons_isNatIList(z0))) -> c15(ISNATLIST(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) ENCARG(cons_isNatIList(cons_active(z0))) -> c16(ISNATILIST(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_isNatIList(cons_mark(z0))) -> c16(ISNATILIST(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_isNatIList(cons_cons(z0, z1))) -> c16(ISNATILIST(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_isNatIList(cons_U11(z0, z1))) -> c16(ISNATILIST(U11(encArg(z0), encArg(z1))), ENCARG(cons_U11(z0, z1))) ENCARG(cons_isNatIList(cons_s(z0))) -> c16(ISNATILIST(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_isNatIList(cons_length(z0))) -> c16(ISNATILIST(length(encArg(z0))), ENCARG(cons_length(z0))) ENCARG(cons_isNatIList(cons_U21(z0))) -> c16(ISNATILIST(U21(encArg(z0))), ENCARG(cons_U21(z0))) ENCARG(cons_isNatIList(cons_U31(z0, z1, z2, z3))) -> c16(ISNATILIST(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U31(z0, z1, z2, z3))) ENCARG(cons_isNatIList(cons_take(z0, z1))) -> c16(ISNATILIST(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_isNatIList(cons_and(z0, z1))) -> c16(ISNATILIST(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_isNatIList(cons_isNat(z0))) -> c16(ISNATILIST(isNat(encArg(z0))), ENCARG(cons_isNat(z0))) ENCARG(cons_isNatIList(cons_isNatList(z0))) -> c16(ISNATILIST(isNatList(encArg(z0))), ENCARG(cons_isNatList(z0))) ENCARG(cons_isNatIList(cons_isNatIList(z0))) -> c16(ISNATILIST(isNatIList(encArg(z0))), ENCARG(cons_isNatIList(z0))) MARK(cons(zeros, x1)) -> c53(ACTIVE(cons(active(zeros), x1)), CONS(mark(zeros), x1), MARK(zeros)) MARK(cons(cons(z0, z1), x1)) -> c53(ACTIVE(cons(active(cons(mark(z0), z1)), x1)), CONS(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(cons(0, x1)) -> c53(ACTIVE(cons(active(0), x1)), CONS(mark(0), x1), MARK(0)) MARK(cons(U11(z0, z1), x1)) -> c53(ACTIVE(cons(active(U11(mark(z0), z1)), x1)), CONS(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(cons(tt, x1)) -> c53(ACTIVE(cons(active(tt), x1)), CONS(mark(tt), x1), MARK(tt)) MARK(cons(s(z0), x1)) -> c53(ACTIVE(cons(active(s(mark(z0))), x1)), CONS(mark(s(z0)), x1), MARK(s(z0))) MARK(cons(length(z0), x1)) -> c53(ACTIVE(cons(active(length(mark(z0))), x1)), CONS(mark(length(z0)), x1), MARK(length(z0))) MARK(cons(U21(z0), x1)) -> c53(ACTIVE(cons(active(U21(mark(z0))), x1)), CONS(mark(U21(z0)), x1), MARK(U21(z0))) MARK(cons(nil, x1)) -> c53(ACTIVE(cons(active(nil), x1)), CONS(mark(nil), x1), MARK(nil)) MARK(cons(U31(z0, z1, z2, z3), x1)) -> c53(ACTIVE(cons(active(U31(mark(z0), z1, z2, z3)), x1)), CONS(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(cons(take(z0, z1), x1)) -> c53(ACTIVE(cons(active(take(mark(z0), mark(z1))), x1)), CONS(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(cons(and(z0, z1), x1)) -> c53(ACTIVE(cons(active(and(mark(z0), z1)), x1)), CONS(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(cons(isNat(z0), x1)) -> c53(ACTIVE(cons(active(isNat(z0)), x1)), CONS(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(cons(isNatList(z0), x1)) -> c53(ACTIVE(cons(active(isNatList(z0)), x1)), CONS(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(cons(isNatIList(z0), x1)) -> c53(ACTIVE(cons(active(isNatIList(z0)), x1)), CONS(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(cons(x0, x1)) -> c53(CONS(mark(x0), x1)) MARK(cons(z0, z1)) -> c53(CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(z0, z1)), U11'(mark(z0), z1), MARK(z0)) MARK(U11(zeros, x1)) -> c55(ACTIVE(U11(active(zeros), x1)), U11'(mark(zeros), x1), MARK(zeros)) MARK(U11(cons(z0, z1), x1)) -> c55(ACTIVE(U11(active(cons(mark(z0), z1)), x1)), U11'(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(U11(0, x1)) -> c55(ACTIVE(U11(active(0), x1)), U11'(mark(0), x1), MARK(0)) MARK(U11(U11(z0, z1), x1)) -> c55(ACTIVE(U11(active(U11(mark(z0), z1)), x1)), U11'(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(U11(tt, x1)) -> c55(ACTIVE(U11(active(tt), x1)), U11'(mark(tt), x1), MARK(tt)) MARK(U11(s(z0), x1)) -> c55(ACTIVE(U11(active(s(mark(z0))), x1)), U11'(mark(s(z0)), x1), MARK(s(z0))) MARK(U11(length(z0), x1)) -> c55(ACTIVE(U11(active(length(mark(z0))), x1)), U11'(mark(length(z0)), x1), MARK(length(z0))) MARK(U11(U21(z0), x1)) -> c55(ACTIVE(U11(active(U21(mark(z0))), x1)), U11'(mark(U21(z0)), x1), MARK(U21(z0))) MARK(U11(nil, x1)) -> c55(ACTIVE(U11(active(nil), x1)), U11'(mark(nil), x1), MARK(nil)) MARK(U11(U31(z0, z1, z2, z3), x1)) -> c55(ACTIVE(U11(active(U31(mark(z0), z1, z2, z3)), x1)), U11'(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(U11(take(z0, z1), x1)) -> c55(ACTIVE(U11(active(take(mark(z0), mark(z1))), x1)), U11'(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(U11(and(z0, z1), x1)) -> c55(ACTIVE(U11(active(and(mark(z0), z1)), x1)), U11'(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(U11(isNat(z0), x1)) -> c55(ACTIVE(U11(active(isNat(z0)), x1)), U11'(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(U11(isNatList(z0), x1)) -> c55(ACTIVE(U11(active(isNatList(z0)), x1)), U11'(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(U11(isNatIList(z0), x1)) -> c55(ACTIVE(U11(active(isNatIList(z0)), x1)), U11'(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(U11(x0, x1)) -> c55(U11'(mark(x0), x1)) MARK(s(zeros)) -> c57(ACTIVE(s(active(zeros))), S(mark(zeros)), MARK(zeros)) MARK(s(cons(z0, z1))) -> c57(ACTIVE(s(active(cons(mark(z0), z1)))), S(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(s(0)) -> c57(ACTIVE(s(active(0))), S(mark(0)), MARK(0)) MARK(s(U11(z0, z1))) -> c57(ACTIVE(s(active(U11(mark(z0), z1)))), S(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(s(tt)) -> c57(ACTIVE(s(active(tt))), S(mark(tt)), MARK(tt)) MARK(s(s(z0))) -> c57(ACTIVE(s(active(s(mark(z0))))), S(mark(s(z0))), MARK(s(z0))) MARK(s(length(z0))) -> c57(ACTIVE(s(active(length(mark(z0))))), S(mark(length(z0))), MARK(length(z0))) MARK(s(U21(z0))) -> c57(ACTIVE(s(active(U21(mark(z0))))), S(mark(U21(z0))), MARK(U21(z0))) MARK(s(nil)) -> c57(ACTIVE(s(active(nil))), S(mark(nil)), MARK(nil)) MARK(s(U31(z0, z1, z2, z3))) -> c57(ACTIVE(s(active(U31(mark(z0), z1, z2, z3)))), S(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(s(take(z0, z1))) -> c57(ACTIVE(s(active(take(mark(z0), mark(z1))))), S(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(s(and(z0, z1))) -> c57(ACTIVE(s(active(and(mark(z0), z1)))), S(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(s(isNat(z0))) -> c57(ACTIVE(s(active(isNat(z0)))), S(mark(isNat(z0))), MARK(isNat(z0))) MARK(s(isNatList(z0))) -> c57(ACTIVE(s(active(isNatList(z0)))), S(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(s(isNatIList(z0))) -> c57(ACTIVE(s(active(isNatIList(z0)))), S(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(s(z0)) -> c57(S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(z0)), LENGTH(mark(z0)), MARK(z0)) MARK(length(zeros)) -> c58(ACTIVE(length(active(zeros))), LENGTH(mark(zeros)), MARK(zeros)) MARK(length(cons(z0, z1))) -> c58(ACTIVE(length(active(cons(mark(z0), z1)))), LENGTH(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(length(0)) -> c58(ACTIVE(length(active(0))), LENGTH(mark(0)), MARK(0)) MARK(length(U11(z0, z1))) -> c58(ACTIVE(length(active(U11(mark(z0), z1)))), LENGTH(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(length(tt)) -> c58(ACTIVE(length(active(tt))), LENGTH(mark(tt)), MARK(tt)) MARK(length(s(z0))) -> c58(ACTIVE(length(active(s(mark(z0))))), LENGTH(mark(s(z0))), MARK(s(z0))) MARK(length(length(z0))) -> c58(ACTIVE(length(active(length(mark(z0))))), LENGTH(mark(length(z0))), MARK(length(z0))) MARK(length(U21(z0))) -> c58(ACTIVE(length(active(U21(mark(z0))))), LENGTH(mark(U21(z0))), MARK(U21(z0))) MARK(length(nil)) -> c58(ACTIVE(length(active(nil))), LENGTH(mark(nil)), MARK(nil)) MARK(length(U31(z0, z1, z2, z3))) -> c58(ACTIVE(length(active(U31(mark(z0), z1, z2, z3)))), LENGTH(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(length(take(z0, z1))) -> c58(ACTIVE(length(active(take(mark(z0), mark(z1))))), LENGTH(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(length(and(z0, z1))) -> c58(ACTIVE(length(active(and(mark(z0), z1)))), LENGTH(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(length(isNat(z0))) -> c58(ACTIVE(length(active(isNat(z0)))), LENGTH(mark(isNat(z0))), MARK(isNat(z0))) MARK(length(isNatList(z0))) -> c58(ACTIVE(length(active(isNatList(z0)))), LENGTH(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(length(isNatIList(z0))) -> c58(ACTIVE(length(active(isNatIList(z0)))), LENGTH(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(U21(z0)) -> c59(ACTIVE(U21(z0)), U21'(mark(z0)), MARK(z0)) MARK(U21(zeros)) -> c59(ACTIVE(U21(active(zeros))), U21'(mark(zeros)), MARK(zeros)) MARK(U21(cons(z0, z1))) -> c59(ACTIVE(U21(active(cons(mark(z0), z1)))), U21'(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(U21(0)) -> c59(ACTIVE(U21(active(0))), U21'(mark(0)), MARK(0)) MARK(U21(U11(z0, z1))) -> c59(ACTIVE(U21(active(U11(mark(z0), z1)))), U21'(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(U21(tt)) -> c59(ACTIVE(U21(active(tt))), U21'(mark(tt)), MARK(tt)) MARK(U21(s(z0))) -> c59(ACTIVE(U21(active(s(mark(z0))))), U21'(mark(s(z0))), MARK(s(z0))) MARK(U21(length(z0))) -> c59(ACTIVE(U21(active(length(mark(z0))))), U21'(mark(length(z0))), MARK(length(z0))) MARK(U21(U21(z0))) -> c59(ACTIVE(U21(active(U21(mark(z0))))), U21'(mark(U21(z0))), MARK(U21(z0))) MARK(U21(nil)) -> c59(ACTIVE(U21(active(nil))), U21'(mark(nil)), MARK(nil)) MARK(U21(U31(z0, z1, z2, z3))) -> c59(ACTIVE(U21(active(U31(mark(z0), z1, z2, z3)))), U21'(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(U21(take(z0, z1))) -> c59(ACTIVE(U21(active(take(mark(z0), mark(z1))))), U21'(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(U21(and(z0, z1))) -> c59(ACTIVE(U21(active(and(mark(z0), z1)))), U21'(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(U21(isNat(z0))) -> c59(ACTIVE(U21(active(isNat(z0)))), U21'(mark(isNat(z0))), MARK(isNat(z0))) MARK(U21(isNatList(z0))) -> c59(ACTIVE(U21(active(isNatList(z0)))), U21'(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(U21(isNatIList(z0))) -> c59(ACTIVE(U21(active(isNatIList(z0)))), U21'(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(z0, z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U31(zeros, x1, x2, x3)) -> c61(ACTIVE(U31(active(zeros), x1, x2, x3)), U31'(mark(zeros), x1, x2, x3), MARK(zeros)) MARK(U31(cons(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(cons(mark(z0), z1)), x1, x2, x3)), U31'(mark(cons(z0, z1)), x1, x2, x3), MARK(cons(z0, z1))) MARK(U31(0, x1, x2, x3)) -> c61(ACTIVE(U31(active(0), x1, x2, x3)), U31'(mark(0), x1, x2, x3), MARK(0)) MARK(U31(U11(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(U11(mark(z0), z1)), x1, x2, x3)), U31'(mark(U11(z0, z1)), x1, x2, x3), MARK(U11(z0, z1))) MARK(U31(tt, x1, x2, x3)) -> c61(ACTIVE(U31(active(tt), x1, x2, x3)), U31'(mark(tt), x1, x2, x3), MARK(tt)) MARK(U31(s(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(s(mark(z0))), x1, x2, x3)), U31'(mark(s(z0)), x1, x2, x3), MARK(s(z0))) MARK(U31(length(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(length(mark(z0))), x1, x2, x3)), U31'(mark(length(z0)), x1, x2, x3), MARK(length(z0))) MARK(U31(U21(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(U21(mark(z0))), x1, x2, x3)), U31'(mark(U21(z0)), x1, x2, x3), MARK(U21(z0))) MARK(U31(nil, x1, x2, x3)) -> c61(ACTIVE(U31(active(nil), x1, x2, x3)), U31'(mark(nil), x1, x2, x3), MARK(nil)) MARK(U31(U31(z0, z1, z2, z3), x1, x2, x3)) -> c61(ACTIVE(U31(active(U31(mark(z0), z1, z2, z3)), x1, x2, x3)), U31'(mark(U31(z0, z1, z2, z3)), x1, x2, x3), MARK(U31(z0, z1, z2, z3))) MARK(U31(take(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(take(mark(z0), mark(z1))), x1, x2, x3)), U31'(mark(take(z0, z1)), x1, x2, x3), MARK(take(z0, z1))) MARK(U31(and(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(and(mark(z0), z1)), x1, x2, x3)), U31'(mark(and(z0, z1)), x1, x2, x3), MARK(and(z0, z1))) MARK(U31(isNat(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNat(z0)), x1, x2, x3)), U31'(mark(isNat(z0)), x1, x2, x3), MARK(isNat(z0))) MARK(U31(isNatList(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNatList(z0)), x1, x2, x3)), U31'(mark(isNatList(z0)), x1, x2, x3), MARK(isNatList(z0))) MARK(U31(isNatIList(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNatIList(z0)), x1, x2, x3)), U31'(mark(isNatIList(z0)), x1, x2, x3), MARK(isNatIList(z0))) MARK(U31(x0, x1, x2, x3)) -> c61(U31'(mark(x0), x1, x2, x3)) MARK(take(z0, x1)) -> c62(ACTIVE(take(z0, mark(x1))), TAKE(mark(z0), mark(x1)), MARK(z0), MARK(x1)) MARK(take(x0, z1)) -> c62(ACTIVE(take(mark(x0), z1)), TAKE(mark(x0), mark(z1)), MARK(x0), MARK(z1)) MARK(take(x0, zeros)) -> c62(ACTIVE(take(mark(x0), active(zeros))), TAKE(mark(x0), mark(zeros)), MARK(x0), MARK(zeros)) MARK(take(x0, cons(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(cons(mark(z0), z1)))), TAKE(mark(x0), mark(cons(z0, z1))), MARK(x0), MARK(cons(z0, z1))) MARK(take(x0, 0)) -> c62(ACTIVE(take(mark(x0), active(0))), TAKE(mark(x0), mark(0)), MARK(x0), MARK(0)) MARK(take(x0, U11(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(U11(mark(z0), z1)))), TAKE(mark(x0), mark(U11(z0, z1))), MARK(x0), MARK(U11(z0, z1))) MARK(take(x0, tt)) -> c62(ACTIVE(take(mark(x0), active(tt))), TAKE(mark(x0), mark(tt)), MARK(x0), MARK(tt)) MARK(take(x0, s(z0))) -> c62(ACTIVE(take(mark(x0), active(s(mark(z0))))), TAKE(mark(x0), mark(s(z0))), MARK(x0), MARK(s(z0))) MARK(take(x0, length(z0))) -> c62(ACTIVE(take(mark(x0), active(length(mark(z0))))), TAKE(mark(x0), mark(length(z0))), MARK(x0), MARK(length(z0))) MARK(take(x0, U21(z0))) -> c62(ACTIVE(take(mark(x0), active(U21(mark(z0))))), TAKE(mark(x0), mark(U21(z0))), MARK(x0), MARK(U21(z0))) MARK(take(x0, nil)) -> c62(ACTIVE(take(mark(x0), active(nil))), TAKE(mark(x0), mark(nil)), MARK(x0), MARK(nil)) MARK(take(x0, U31(z0, z1, z2, z3))) -> c62(ACTIVE(take(mark(x0), active(U31(mark(z0), z1, z2, z3)))), TAKE(mark(x0), mark(U31(z0, z1, z2, z3))), MARK(x0), MARK(U31(z0, z1, z2, z3))) MARK(take(x0, take(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(take(mark(z0), mark(z1))))), TAKE(mark(x0), mark(take(z0, z1))), MARK(x0), MARK(take(z0, z1))) MARK(take(x0, and(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(and(mark(z0), z1)))), TAKE(mark(x0), mark(and(z0, z1))), MARK(x0), MARK(and(z0, z1))) MARK(take(x0, isNat(z0))) -> c62(ACTIVE(take(mark(x0), active(isNat(z0)))), TAKE(mark(x0), mark(isNat(z0))), MARK(x0), MARK(isNat(z0))) MARK(take(x0, isNatList(z0))) -> c62(ACTIVE(take(mark(x0), active(isNatList(z0)))), TAKE(mark(x0), mark(isNatList(z0))), MARK(x0), MARK(isNatList(z0))) MARK(take(x0, isNatIList(z0))) -> c62(ACTIVE(take(mark(x0), active(isNatIList(z0)))), TAKE(mark(x0), mark(isNatIList(z0))), MARK(x0), MARK(isNatIList(z0))) MARK(take(zeros, x1)) -> c62(ACTIVE(take(active(zeros), mark(x1))), TAKE(mark(zeros), mark(x1)), MARK(zeros), MARK(x1)) MARK(take(cons(z0, z1), x1)) -> c62(ACTIVE(take(active(cons(mark(z0), z1)), mark(x1))), TAKE(mark(cons(z0, z1)), mark(x1)), MARK(cons(z0, z1)), MARK(x1)) MARK(take(0, x1)) -> c62(ACTIVE(take(active(0), mark(x1))), TAKE(mark(0), mark(x1)), MARK(0), MARK(x1)) MARK(take(U11(z0, z1), x1)) -> c62(ACTIVE(take(active(U11(mark(z0), z1)), mark(x1))), TAKE(mark(U11(z0, z1)), mark(x1)), MARK(U11(z0, z1)), MARK(x1)) MARK(take(tt, x1)) -> c62(ACTIVE(take(active(tt), mark(x1))), TAKE(mark(tt), mark(x1)), MARK(tt), MARK(x1)) MARK(take(s(z0), x1)) -> c62(ACTIVE(take(active(s(mark(z0))), mark(x1))), TAKE(mark(s(z0)), mark(x1)), MARK(s(z0)), MARK(x1)) MARK(take(length(z0), x1)) -> c62(ACTIVE(take(active(length(mark(z0))), mark(x1))), TAKE(mark(length(z0)), mark(x1)), MARK(length(z0)), MARK(x1)) MARK(take(U21(z0), x1)) -> c62(ACTIVE(take(active(U21(mark(z0))), mark(x1))), TAKE(mark(U21(z0)), mark(x1)), MARK(U21(z0)), MARK(x1)) MARK(take(nil, x1)) -> c62(ACTIVE(take(active(nil), mark(x1))), TAKE(mark(nil), mark(x1)), MARK(nil), MARK(x1)) MARK(take(U31(z0, z1, z2, z3), x1)) -> c62(ACTIVE(take(active(U31(mark(z0), z1, z2, z3)), mark(x1))), TAKE(mark(U31(z0, z1, z2, z3)), mark(x1)), MARK(U31(z0, z1, z2, z3)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c62(ACTIVE(take(active(take(mark(z0), mark(z1))), mark(x1))), TAKE(mark(take(z0, z1)), mark(x1)), MARK(take(z0, z1)), MARK(x1)) MARK(take(and(z0, z1), x1)) -> c62(ACTIVE(take(active(and(mark(z0), z1)), mark(x1))), TAKE(mark(and(z0, z1)), mark(x1)), MARK(and(z0, z1)), MARK(x1)) MARK(take(isNat(z0), x1)) -> c62(ACTIVE(take(active(isNat(z0)), mark(x1))), TAKE(mark(isNat(z0)), mark(x1)), MARK(isNat(z0)), MARK(x1)) MARK(take(isNatList(z0), x1)) -> c62(ACTIVE(take(active(isNatList(z0)), mark(x1))), TAKE(mark(isNatList(z0)), mark(x1)), MARK(isNatList(z0)), MARK(x1)) MARK(take(isNatIList(z0), x1)) -> c62(ACTIVE(take(active(isNatIList(z0)), mark(x1))), TAKE(mark(isNatIList(z0)), mark(x1)), MARK(isNatIList(z0)), MARK(x1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(z0, z1)), AND(mark(z0), z1), MARK(z0)) MARK(and(zeros, x1)) -> c63(ACTIVE(and(active(zeros), x1)), AND(mark(zeros), x1), MARK(zeros)) MARK(and(cons(z0, z1), x1)) -> c63(ACTIVE(and(active(cons(mark(z0), z1)), x1)), AND(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(and(0, x1)) -> c63(ACTIVE(and(active(0), x1)), AND(mark(0), x1), MARK(0)) MARK(and(U11(z0, z1), x1)) -> c63(ACTIVE(and(active(U11(mark(z0), z1)), x1)), AND(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(and(tt, x1)) -> c63(ACTIVE(and(active(tt), x1)), AND(mark(tt), x1), MARK(tt)) MARK(and(s(z0), x1)) -> c63(ACTIVE(and(active(s(mark(z0))), x1)), AND(mark(s(z0)), x1), MARK(s(z0))) MARK(and(length(z0), x1)) -> c63(ACTIVE(and(active(length(mark(z0))), x1)), AND(mark(length(z0)), x1), MARK(length(z0))) MARK(and(U21(z0), x1)) -> c63(ACTIVE(and(active(U21(mark(z0))), x1)), AND(mark(U21(z0)), x1), MARK(U21(z0))) MARK(and(nil, x1)) -> c63(ACTIVE(and(active(nil), x1)), AND(mark(nil), x1), MARK(nil)) MARK(and(U31(z0, z1, z2, z3), x1)) -> c63(ACTIVE(and(active(U31(mark(z0), z1, z2, z3)), x1)), AND(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(and(take(z0, z1), x1)) -> c63(ACTIVE(and(active(take(mark(z0), mark(z1))), x1)), AND(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(and(and(z0, z1), x1)) -> c63(ACTIVE(and(active(and(mark(z0), z1)), x1)), AND(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(and(isNat(z0), x1)) -> c63(ACTIVE(and(active(isNat(z0)), x1)), AND(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(and(isNatList(z0), x1)) -> c63(ACTIVE(and(active(isNatList(z0)), x1)), AND(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(and(isNatIList(z0), x1)) -> c63(ACTIVE(and(active(isNatIList(z0)), x1)), AND(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(and(x0, x1)) -> c63(AND(mark(x0), x1)) ENCODE_ACTIVE(cons_active(z0)) -> c(ACTIVE(active(encArg(z0)))) ENCODE_ACTIVE(cons_mark(z0)) -> c(ACTIVE(mark(encArg(z0)))) ENCODE_ACTIVE(cons_cons(z0, z1)) -> c(ACTIVE(cons(encArg(z0), encArg(z1)))) ENCODE_ACTIVE(cons_U11(z0, z1)) -> c(ACTIVE(U11(encArg(z0), encArg(z1)))) ENCODE_ACTIVE(cons_s(z0)) -> c(ACTIVE(s(encArg(z0)))) ENCODE_ACTIVE(cons_length(z0)) -> c(ACTIVE(length(encArg(z0)))) ENCODE_ACTIVE(cons_U21(z0)) -> c(ACTIVE(U21(encArg(z0)))) ENCODE_ACTIVE(cons_U31(z0, z1, z2, z3)) -> c(ACTIVE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)))) ENCODE_ACTIVE(cons_take(z0, z1)) -> c(ACTIVE(take(encArg(z0), encArg(z1)))) ENCODE_ACTIVE(cons_and(z0, z1)) -> c(ACTIVE(and(encArg(z0), encArg(z1)))) ENCODE_ACTIVE(cons_isNat(z0)) -> c(ACTIVE(isNat(encArg(z0)))) ENCODE_ACTIVE(cons_isNatList(z0)) -> c(ACTIVE(isNatList(encArg(z0)))) ENCODE_ACTIVE(cons_isNatIList(z0)) -> c(ACTIVE(isNatIList(encArg(z0)))) ENCODE_MARK(cons_active(z0)) -> c(MARK(active(encArg(z0)))) ENCODE_MARK(cons_mark(z0)) -> c(MARK(mark(encArg(z0)))) ENCODE_MARK(cons_cons(z0, z1)) -> c(MARK(cons(encArg(z0), encArg(z1)))) ENCODE_MARK(cons_U11(z0, z1)) -> c(MARK(U11(encArg(z0), encArg(z1)))) ENCODE_MARK(cons_s(z0)) -> c(MARK(s(encArg(z0)))) ENCODE_MARK(cons_length(z0)) -> c(MARK(length(encArg(z0)))) ENCODE_MARK(cons_U21(z0)) -> c(MARK(U21(encArg(z0)))) ENCODE_MARK(cons_U31(z0, z1, z2, z3)) -> c(MARK(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)))) ENCODE_MARK(cons_take(z0, z1)) -> c(MARK(take(encArg(z0), encArg(z1)))) ENCODE_MARK(cons_and(z0, z1)) -> c(MARK(and(encArg(z0), encArg(z1)))) ENCODE_MARK(cons_isNat(z0)) -> c(MARK(isNat(encArg(z0)))) ENCODE_MARK(cons_isNatList(z0)) -> c(MARK(isNatList(encArg(z0)))) ENCODE_MARK(cons_isNatIList(z0)) -> c(MARK(isNatIList(encArg(z0)))) ENCODE_CONS(x0, zeros) -> c(CONS(encArg(x0), zeros)) ENCODE_CONS(x0, 0) -> c(CONS(encArg(x0), 0)) ENCODE_CONS(x0, tt) -> c(CONS(encArg(x0), tt)) ENCODE_CONS(x0, nil) -> c(CONS(encArg(x0), nil)) ENCODE_CONS(x0, cons_active(z0)) -> c(CONS(encArg(x0), active(encArg(z0)))) ENCODE_CONS(x0, cons_mark(z0)) -> c(CONS(encArg(x0), mark(encArg(z0)))) ENCODE_CONS(x0, cons_cons(z0, z1)) -> c(CONS(encArg(x0), cons(encArg(z0), encArg(z1)))) ENCODE_CONS(x0, cons_U11(z0, z1)) -> c(CONS(encArg(x0), U11(encArg(z0), encArg(z1)))) ENCODE_CONS(x0, cons_s(z0)) -> c(CONS(encArg(x0), s(encArg(z0)))) ENCODE_CONS(x0, cons_length(z0)) -> c(CONS(encArg(x0), length(encArg(z0)))) ENCODE_CONS(x0, cons_U21(z0)) -> c(CONS(encArg(x0), U21(encArg(z0)))) ENCODE_CONS(x0, cons_U31(z0, z1, z2, z3)) -> c(CONS(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)))) ENCODE_CONS(x0, cons_take(z0, z1)) -> c(CONS(encArg(x0), take(encArg(z0), encArg(z1)))) ENCODE_CONS(x0, cons_and(z0, z1)) -> c(CONS(encArg(x0), and(encArg(z0), encArg(z1)))) ENCODE_CONS(x0, cons_isNat(z0)) -> c(CONS(encArg(x0), isNat(encArg(z0)))) ENCODE_CONS(x0, cons_isNatList(z0)) -> c(CONS(encArg(x0), isNatList(encArg(z0)))) ENCODE_CONS(x0, cons_isNatIList(z0)) -> c(CONS(encArg(x0), isNatIList(encArg(z0)))) ENCODE_CONS(zeros, x1) -> c(CONS(zeros, encArg(x1))) ENCODE_CONS(0, x1) -> c(CONS(0, encArg(x1))) ENCODE_CONS(tt, x1) -> c(CONS(tt, encArg(x1))) ENCODE_CONS(nil, x1) -> c(CONS(nil, encArg(x1))) ENCODE_CONS(cons_active(z0), x1) -> c(CONS(active(encArg(z0)), encArg(x1))) ENCODE_CONS(cons_mark(z0), x1) -> c(CONS(mark(encArg(z0)), encArg(x1))) ENCODE_CONS(cons_cons(z0, z1), x1) -> c(CONS(cons(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_CONS(cons_U11(z0, z1), x1) -> c(CONS(U11(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_CONS(cons_s(z0), x1) -> c(CONS(s(encArg(z0)), encArg(x1))) ENCODE_CONS(cons_length(z0), x1) -> c(CONS(length(encArg(z0)), encArg(x1))) ENCODE_CONS(cons_U21(z0), x1) -> c(CONS(U21(encArg(z0)), encArg(x1))) ENCODE_CONS(cons_U31(z0, z1, z2, z3), x1) -> c(CONS(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1))) ENCODE_CONS(cons_take(z0, z1), x1) -> c(CONS(take(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_CONS(cons_and(z0, z1), x1) -> c(CONS(and(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_CONS(cons_isNat(z0), x1) -> c(CONS(isNat(encArg(z0)), encArg(x1))) ENCODE_CONS(cons_isNatList(z0), x1) -> c(CONS(isNatList(encArg(z0)), encArg(x1))) ENCODE_CONS(cons_isNatIList(z0), x1) -> c(CONS(isNatIList(encArg(z0)), encArg(x1))) ENCODE_U11(x0, zeros) -> c(U11'(encArg(x0), zeros)) ENCODE_U11(x0, 0) -> c(U11'(encArg(x0), 0)) ENCODE_U11(x0, tt) -> c(U11'(encArg(x0), tt)) ENCODE_U11(x0, nil) -> c(U11'(encArg(x0), nil)) ENCODE_U11(x0, cons_active(z0)) -> c(U11'(encArg(x0), active(encArg(z0)))) ENCODE_U11(x0, cons_mark(z0)) -> c(U11'(encArg(x0), mark(encArg(z0)))) ENCODE_U11(x0, cons_cons(z0, z1)) -> c(U11'(encArg(x0), cons(encArg(z0), encArg(z1)))) ENCODE_U11(x0, cons_U11(z0, z1)) -> c(U11'(encArg(x0), U11(encArg(z0), encArg(z1)))) ENCODE_U11(x0, cons_s(z0)) -> c(U11'(encArg(x0), s(encArg(z0)))) ENCODE_U11(x0, cons_length(z0)) -> c(U11'(encArg(x0), length(encArg(z0)))) ENCODE_U11(x0, cons_U21(z0)) -> c(U11'(encArg(x0), U21(encArg(z0)))) ENCODE_U11(x0, cons_U31(z0, z1, z2, z3)) -> c(U11'(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)))) ENCODE_U11(x0, cons_take(z0, z1)) -> c(U11'(encArg(x0), take(encArg(z0), encArg(z1)))) ENCODE_U11(x0, cons_and(z0, z1)) -> c(U11'(encArg(x0), and(encArg(z0), encArg(z1)))) ENCODE_U11(x0, cons_isNat(z0)) -> c(U11'(encArg(x0), isNat(encArg(z0)))) ENCODE_U11(x0, cons_isNatList(z0)) -> c(U11'(encArg(x0), isNatList(encArg(z0)))) ENCODE_U11(x0, cons_isNatIList(z0)) -> c(U11'(encArg(x0), isNatIList(encArg(z0)))) ENCODE_U11(zeros, x1) -> c(U11'(zeros, encArg(x1))) ENCODE_U11(0, x1) -> c(U11'(0, encArg(x1))) ENCODE_U11(tt, x1) -> c(U11'(tt, encArg(x1))) ENCODE_U11(nil, x1) -> c(U11'(nil, encArg(x1))) ENCODE_U11(cons_active(z0), x1) -> c(U11'(active(encArg(z0)), encArg(x1))) ENCODE_U11(cons_mark(z0), x1) -> c(U11'(mark(encArg(z0)), encArg(x1))) ENCODE_U11(cons_cons(z0, z1), x1) -> c(U11'(cons(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_U11(cons_U11(z0, z1), x1) -> c(U11'(U11(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_U11(cons_s(z0), x1) -> c(U11'(s(encArg(z0)), encArg(x1))) ENCODE_U11(cons_length(z0), x1) -> c(U11'(length(encArg(z0)), encArg(x1))) ENCODE_U11(cons_U21(z0), x1) -> c(U11'(U21(encArg(z0)), encArg(x1))) ENCODE_U11(cons_U31(z0, z1, z2, z3), x1) -> c(U11'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1))) ENCODE_U11(cons_take(z0, z1), x1) -> c(U11'(take(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_U11(cons_and(z0, z1), x1) -> c(U11'(and(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_U11(cons_isNat(z0), x1) -> c(U11'(isNat(encArg(z0)), encArg(x1))) ENCODE_U11(cons_isNatList(z0), x1) -> c(U11'(isNatList(encArg(z0)), encArg(x1))) ENCODE_U11(cons_isNatIList(z0), x1) -> c(U11'(isNatIList(encArg(z0)), encArg(x1))) ENCODE_S(cons_active(z0)) -> c(S(active(encArg(z0)))) ENCODE_S(cons_mark(z0)) -> c(S(mark(encArg(z0)))) ENCODE_S(cons_cons(z0, z1)) -> c(S(cons(encArg(z0), encArg(z1)))) ENCODE_S(cons_U11(z0, z1)) -> c(S(U11(encArg(z0), encArg(z1)))) ENCODE_S(cons_s(z0)) -> c(S(s(encArg(z0)))) ENCODE_S(cons_length(z0)) -> c(S(length(encArg(z0)))) ENCODE_S(cons_U21(z0)) -> c(S(U21(encArg(z0)))) ENCODE_S(cons_U31(z0, z1, z2, z3)) -> c(S(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)))) ENCODE_S(cons_take(z0, z1)) -> c(S(take(encArg(z0), encArg(z1)))) ENCODE_S(cons_and(z0, z1)) -> c(S(and(encArg(z0), encArg(z1)))) ENCODE_S(cons_isNat(z0)) -> c(S(isNat(encArg(z0)))) ENCODE_S(cons_isNatList(z0)) -> c(S(isNatList(encArg(z0)))) ENCODE_S(cons_isNatIList(z0)) -> c(S(isNatIList(encArg(z0)))) ENCODE_LENGTH(cons_active(z0)) -> c(LENGTH(active(encArg(z0)))) ENCODE_LENGTH(cons_mark(z0)) -> c(LENGTH(mark(encArg(z0)))) ENCODE_LENGTH(cons_cons(z0, z1)) -> c(LENGTH(cons(encArg(z0), encArg(z1)))) ENCODE_LENGTH(cons_U11(z0, z1)) -> c(LENGTH(U11(encArg(z0), encArg(z1)))) ENCODE_LENGTH(cons_s(z0)) -> c(LENGTH(s(encArg(z0)))) ENCODE_LENGTH(cons_length(z0)) -> c(LENGTH(length(encArg(z0)))) ENCODE_LENGTH(cons_U21(z0)) -> c(LENGTH(U21(encArg(z0)))) ENCODE_LENGTH(cons_U31(z0, z1, z2, z3)) -> c(LENGTH(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)))) ENCODE_LENGTH(cons_take(z0, z1)) -> c(LENGTH(take(encArg(z0), encArg(z1)))) ENCODE_LENGTH(cons_and(z0, z1)) -> c(LENGTH(and(encArg(z0), encArg(z1)))) ENCODE_LENGTH(cons_isNat(z0)) -> c(LENGTH(isNat(encArg(z0)))) ENCODE_LENGTH(cons_isNatList(z0)) -> c(LENGTH(isNatList(encArg(z0)))) ENCODE_LENGTH(cons_isNatIList(z0)) -> c(LENGTH(isNatIList(encArg(z0)))) ENCODE_U21(cons_active(z0)) -> c(U21'(active(encArg(z0)))) ENCODE_U21(cons_mark(z0)) -> c(U21'(mark(encArg(z0)))) ENCODE_U21(cons_cons(z0, z1)) -> c(U21'(cons(encArg(z0), encArg(z1)))) ENCODE_U21(cons_U11(z0, z1)) -> c(U21'(U11(encArg(z0), encArg(z1)))) ENCODE_U21(cons_s(z0)) -> c(U21'(s(encArg(z0)))) ENCODE_U21(cons_length(z0)) -> c(U21'(length(encArg(z0)))) ENCODE_U21(cons_U21(z0)) -> c(U21'(U21(encArg(z0)))) ENCODE_U21(cons_U31(z0, z1, z2, z3)) -> c(U21'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)))) ENCODE_U21(cons_take(z0, z1)) -> c(U21'(take(encArg(z0), encArg(z1)))) ENCODE_U21(cons_and(z0, z1)) -> c(U21'(and(encArg(z0), encArg(z1)))) ENCODE_U21(cons_isNat(z0)) -> c(U21'(isNat(encArg(z0)))) ENCODE_U21(cons_isNatList(z0)) -> c(U21'(isNatList(encArg(z0)))) ENCODE_U21(cons_isNatIList(z0)) -> c(U21'(isNatIList(encArg(z0)))) ENCODE_U31(x0, x1, x2, zeros) -> c(U31'(encArg(x0), encArg(x1), encArg(x2), zeros)) ENCODE_U31(x0, x1, x2, 0) -> c(U31'(encArg(x0), encArg(x1), encArg(x2), 0)) ENCODE_U31(x0, x1, x2, tt) -> c(U31'(encArg(x0), encArg(x1), encArg(x2), tt)) ENCODE_U31(x0, x1, x2, nil) -> c(U31'(encArg(x0), encArg(x1), encArg(x2), nil)) ENCODE_U31(x0, x1, x2, cons_active(z0)) -> c(U31'(encArg(x0), encArg(x1), encArg(x2), active(encArg(z0)))) ENCODE_U31(x0, x1, x2, cons_mark(z0)) -> c(U31'(encArg(x0), encArg(x1), encArg(x2), mark(encArg(z0)))) ENCODE_U31(x0, x1, x2, cons_cons(z0, z1)) -> c(U31'(encArg(x0), encArg(x1), encArg(x2), cons(encArg(z0), encArg(z1)))) ENCODE_U31(x0, x1, x2, cons_U11(z0, z1)) -> c(U31'(encArg(x0), encArg(x1), encArg(x2), U11(encArg(z0), encArg(z1)))) ENCODE_U31(x0, x1, x2, cons_s(z0)) -> c(U31'(encArg(x0), encArg(x1), encArg(x2), s(encArg(z0)))) ENCODE_U31(x0, x1, x2, cons_length(z0)) -> c(U31'(encArg(x0), encArg(x1), encArg(x2), length(encArg(z0)))) ENCODE_U31(x0, x1, x2, cons_U21(z0)) -> c(U31'(encArg(x0), encArg(x1), encArg(x2), U21(encArg(z0)))) ENCODE_U31(x0, x1, x2, cons_U31(z0, z1, z2, z3)) -> c(U31'(encArg(x0), encArg(x1), encArg(x2), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)))) ENCODE_U31(x0, x1, x2, cons_take(z0, z1)) -> c(U31'(encArg(x0), encArg(x1), encArg(x2), take(encArg(z0), encArg(z1)))) ENCODE_U31(x0, x1, x2, cons_and(z0, z1)) -> c(U31'(encArg(x0), encArg(x1), encArg(x2), and(encArg(z0), encArg(z1)))) ENCODE_U31(x0, x1, x2, cons_isNat(z0)) -> c(U31'(encArg(x0), encArg(x1), encArg(x2), isNat(encArg(z0)))) ENCODE_U31(x0, x1, x2, cons_isNatList(z0)) -> c(U31'(encArg(x0), encArg(x1), encArg(x2), isNatList(encArg(z0)))) ENCODE_U31(x0, x1, x2, cons_isNatIList(z0)) -> c(U31'(encArg(x0), encArg(x1), encArg(x2), isNatIList(encArg(z0)))) ENCODE_U31(x0, x1, zeros, x3) -> c(U31'(encArg(x0), encArg(x1), zeros, encArg(x3))) ENCODE_U31(x0, x1, 0, x3) -> c(U31'(encArg(x0), encArg(x1), 0, encArg(x3))) ENCODE_U31(x0, x1, tt, x3) -> c(U31'(encArg(x0), encArg(x1), tt, encArg(x3))) ENCODE_U31(x0, x1, nil, x3) -> c(U31'(encArg(x0), encArg(x1), nil, encArg(x3))) ENCODE_U31(x0, x1, cons_active(z0), x3) -> c(U31'(encArg(x0), encArg(x1), active(encArg(z0)), encArg(x3))) ENCODE_U31(x0, x1, cons_mark(z0), x3) -> c(U31'(encArg(x0), encArg(x1), mark(encArg(z0)), encArg(x3))) ENCODE_U31(x0, x1, cons_cons(z0, z1), x3) -> c(U31'(encArg(x0), encArg(x1), cons(encArg(z0), encArg(z1)), encArg(x3))) ENCODE_U31(x0, x1, cons_U11(z0, z1), x3) -> c(U31'(encArg(x0), encArg(x1), U11(encArg(z0), encArg(z1)), encArg(x3))) ENCODE_U31(x0, x1, cons_s(z0), x3) -> c(U31'(encArg(x0), encArg(x1), s(encArg(z0)), encArg(x3))) ENCODE_U31(x0, x1, cons_length(z0), x3) -> c(U31'(encArg(x0), encArg(x1), length(encArg(z0)), encArg(x3))) ENCODE_U31(x0, x1, cons_U21(z0), x3) -> c(U31'(encArg(x0), encArg(x1), U21(encArg(z0)), encArg(x3))) ENCODE_U31(x0, x1, cons_U31(z0, z1, z2, z3), x3) -> c(U31'(encArg(x0), encArg(x1), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x3))) ENCODE_U31(x0, x1, cons_take(z0, z1), x3) -> c(U31'(encArg(x0), encArg(x1), take(encArg(z0), encArg(z1)), encArg(x3))) ENCODE_U31(x0, x1, cons_and(z0, z1), x3) -> c(U31'(encArg(x0), encArg(x1), and(encArg(z0), encArg(z1)), encArg(x3))) ENCODE_U31(x0, x1, cons_isNat(z0), x3) -> c(U31'(encArg(x0), encArg(x1), isNat(encArg(z0)), encArg(x3))) ENCODE_U31(x0, x1, cons_isNatList(z0), x3) -> c(U31'(encArg(x0), encArg(x1), isNatList(encArg(z0)), encArg(x3))) ENCODE_U31(x0, x1, cons_isNatIList(z0), x3) -> c(U31'(encArg(x0), encArg(x1), isNatIList(encArg(z0)), encArg(x3))) ENCODE_U31(x0, zeros, x2, x3) -> c(U31'(encArg(x0), zeros, encArg(x2), encArg(x3))) ENCODE_U31(x0, 0, x2, x3) -> c(U31'(encArg(x0), 0, encArg(x2), encArg(x3))) ENCODE_U31(x0, tt, x2, x3) -> c(U31'(encArg(x0), tt, encArg(x2), encArg(x3))) ENCODE_U31(x0, nil, x2, x3) -> c(U31'(encArg(x0), nil, encArg(x2), encArg(x3))) ENCODE_U31(x0, cons_active(z0), x2, x3) -> c(U31'(encArg(x0), active(encArg(z0)), encArg(x2), encArg(x3))) ENCODE_U31(x0, cons_mark(z0), x2, x3) -> c(U31'(encArg(x0), mark(encArg(z0)), encArg(x2), encArg(x3))) ENCODE_U31(x0, cons_cons(z0, z1), x2, x3) -> c(U31'(encArg(x0), cons(encArg(z0), encArg(z1)), encArg(x2), encArg(x3))) ENCODE_U31(x0, cons_U11(z0, z1), x2, x3) -> c(U31'(encArg(x0), U11(encArg(z0), encArg(z1)), encArg(x2), encArg(x3))) ENCODE_U31(x0, cons_s(z0), x2, x3) -> c(U31'(encArg(x0), s(encArg(z0)), encArg(x2), encArg(x3))) ENCODE_U31(x0, cons_length(z0), x2, x3) -> c(U31'(encArg(x0), length(encArg(z0)), encArg(x2), encArg(x3))) ENCODE_U31(x0, cons_U21(z0), x2, x3) -> c(U31'(encArg(x0), U21(encArg(z0)), encArg(x2), encArg(x3))) ENCODE_U31(x0, cons_U31(z0, z1, z2, z3), x2, x3) -> c(U31'(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x2), encArg(x3))) ENCODE_U31(x0, cons_take(z0, z1), x2, x3) -> c(U31'(encArg(x0), take(encArg(z0), encArg(z1)), encArg(x2), encArg(x3))) ENCODE_U31(x0, cons_and(z0, z1), x2, x3) -> c(U31'(encArg(x0), and(encArg(z0), encArg(z1)), encArg(x2), encArg(x3))) ENCODE_U31(x0, cons_isNat(z0), x2, x3) -> c(U31'(encArg(x0), isNat(encArg(z0)), encArg(x2), encArg(x3))) ENCODE_U31(x0, cons_isNatList(z0), x2, x3) -> c(U31'(encArg(x0), isNatList(encArg(z0)), encArg(x2), encArg(x3))) ENCODE_U31(x0, cons_isNatIList(z0), x2, x3) -> c(U31'(encArg(x0), isNatIList(encArg(z0)), encArg(x2), encArg(x3))) ENCODE_U31(zeros, x1, x2, x3) -> c(U31'(zeros, encArg(x1), encArg(x2), encArg(x3))) ENCODE_U31(0, x1, x2, x3) -> c(U31'(0, encArg(x1), encArg(x2), encArg(x3))) ENCODE_U31(tt, x1, x2, x3) -> c(U31'(tt, encArg(x1), encArg(x2), encArg(x3))) ENCODE_U31(nil, x1, x2, x3) -> c(U31'(nil, encArg(x1), encArg(x2), encArg(x3))) ENCODE_U31(cons_active(z0), x1, x2, x3) -> c(U31'(active(encArg(z0)), encArg(x1), encArg(x2), encArg(x3))) ENCODE_U31(cons_mark(z0), x1, x2, x3) -> c(U31'(mark(encArg(z0)), encArg(x1), encArg(x2), encArg(x3))) ENCODE_U31(cons_cons(z0, z1), x1, x2, x3) -> c(U31'(cons(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3))) ENCODE_U31(cons_U11(z0, z1), x1, x2, x3) -> c(U31'(U11(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3))) ENCODE_U31(cons_s(z0), x1, x2, x3) -> c(U31'(s(encArg(z0)), encArg(x1), encArg(x2), encArg(x3))) ENCODE_U31(cons_length(z0), x1, x2, x3) -> c(U31'(length(encArg(z0)), encArg(x1), encArg(x2), encArg(x3))) ENCODE_U31(cons_U21(z0), x1, x2, x3) -> c(U31'(U21(encArg(z0)), encArg(x1), encArg(x2), encArg(x3))) ENCODE_U31(cons_U31(z0, z1, z2, z3), x1, x2, x3) -> c(U31'(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1), encArg(x2), encArg(x3))) ENCODE_U31(cons_take(z0, z1), x1, x2, x3) -> c(U31'(take(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3))) ENCODE_U31(cons_and(z0, z1), x1, x2, x3) -> c(U31'(and(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3))) ENCODE_U31(cons_isNat(z0), x1, x2, x3) -> c(U31'(isNat(encArg(z0)), encArg(x1), encArg(x2), encArg(x3))) ENCODE_U31(cons_isNatList(z0), x1, x2, x3) -> c(U31'(isNatList(encArg(z0)), encArg(x1), encArg(x2), encArg(x3))) ENCODE_U31(cons_isNatIList(z0), x1, x2, x3) -> c(U31'(isNatIList(encArg(z0)), encArg(x1), encArg(x2), encArg(x3))) ENCODE_TAKE(x0, zeros) -> c(TAKE(encArg(x0), zeros)) ENCODE_TAKE(x0, 0) -> c(TAKE(encArg(x0), 0)) ENCODE_TAKE(x0, tt) -> c(TAKE(encArg(x0), tt)) ENCODE_TAKE(x0, nil) -> c(TAKE(encArg(x0), nil)) ENCODE_TAKE(x0, cons_active(z0)) -> c(TAKE(encArg(x0), active(encArg(z0)))) ENCODE_TAKE(x0, cons_mark(z0)) -> c(TAKE(encArg(x0), mark(encArg(z0)))) ENCODE_TAKE(x0, cons_cons(z0, z1)) -> c(TAKE(encArg(x0), cons(encArg(z0), encArg(z1)))) ENCODE_TAKE(x0, cons_U11(z0, z1)) -> c(TAKE(encArg(x0), U11(encArg(z0), encArg(z1)))) ENCODE_TAKE(x0, cons_s(z0)) -> c(TAKE(encArg(x0), s(encArg(z0)))) ENCODE_TAKE(x0, cons_length(z0)) -> c(TAKE(encArg(x0), length(encArg(z0)))) ENCODE_TAKE(x0, cons_U21(z0)) -> c(TAKE(encArg(x0), U21(encArg(z0)))) ENCODE_TAKE(x0, cons_U31(z0, z1, z2, z3)) -> c(TAKE(encArg(x0), U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)))) ENCODE_TAKE(x0, cons_take(z0, z1)) -> c(TAKE(encArg(x0), take(encArg(z0), encArg(z1)))) ENCODE_TAKE(x0, cons_and(z0, z1)) -> c(TAKE(encArg(x0), and(encArg(z0), encArg(z1)))) ENCODE_TAKE(x0, cons_isNat(z0)) -> c(TAKE(encArg(x0), isNat(encArg(z0)))) ENCODE_TAKE(x0, cons_isNatList(z0)) -> c(TAKE(encArg(x0), isNatList(encArg(z0)))) ENCODE_TAKE(x0, cons_isNatIList(z0)) -> c(TAKE(encArg(x0), isNatIList(encArg(z0)))) ENCODE_TAKE(zeros, x1) -> c(TAKE(zeros, encArg(x1))) ENCODE_TAKE(0, x1) -> c(TAKE(0, encArg(x1))) ENCODE_TAKE(tt, x1) -> c(TAKE(tt, encArg(x1))) ENCODE_TAKE(nil, x1) -> c(TAKE(nil, encArg(x1))) ENCODE_TAKE(cons_active(z0), x1) -> c(TAKE(active(encArg(z0)), encArg(x1))) ENCODE_TAKE(cons_mark(z0), x1) -> c(TAKE(mark(encArg(z0)), encArg(x1))) ENCODE_TAKE(cons_cons(z0, z1), x1) -> c(TAKE(cons(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_TAKE(cons_U11(z0, z1), x1) -> c(TAKE(U11(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_TAKE(cons_s(z0), x1) -> c(TAKE(s(encArg(z0)), encArg(x1))) ENCODE_TAKE(cons_length(z0), x1) -> c(TAKE(length(encArg(z0)), encArg(x1))) ENCODE_TAKE(cons_U21(z0), x1) -> c(TAKE(U21(encArg(z0)), encArg(x1))) ENCODE_TAKE(cons_U31(z0, z1, z2, z3), x1) -> c(TAKE(U31(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1))) ENCODE_TAKE(cons_take(z0, z1), x1) -> c(TAKE(take(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_TAKE(cons_and(z0, z1), x1) -> c(TAKE(and(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_TAKE(cons_isNat(z0), x1) -> c(TAKE(isNat(encArg(z0)), encArg(x1))) ENCODE_TAKE(cons_isNatList(z0), x1) -> c(TAKE(isNatList(encArg(z0)), encArg(x1))) ENCODE_TAKE(cons_isNatIList(z0), x1) -> c(TAKE(isNatIList(encArg(z0)), encArg(x1))) S tuples: ACTIVE(U21(tt)) -> c36(MARK(nil)) ACTIVE(U31(tt, z0, z1, z2)) -> c37(MARK(cons(z2, take(z1, z0))), CONS(z2, take(z1, z0)), TAKE(z1, z0)) ACTIVE(and(tt, z0)) -> c38(MARK(z0)) ACTIVE(isNat(0)) -> c39(MARK(tt)) ACTIVE(isNat(length(z0))) -> c40(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNat(s(z0))) -> c41(MARK(isNat(z0)), ISNAT(z0)) ACTIVE(isNatIList(z0)) -> c42(MARK(isNatList(z0)), ISNATLIST(z0)) ACTIVE(isNatIList(zeros)) -> c43(MARK(tt)) ACTIVE(isNatList(nil)) -> c45(MARK(tt)) ACTIVE(length(nil)) -> c48(MARK(0)) MARK(zeros) -> c52(ACTIVE(zeros)) MARK(isNat(z0)) -> c64(ACTIVE(isNat(z0)), ISNAT(z0)) MARK(isNatList(z0)) -> c65(ACTIVE(isNatList(z0)), ISNATLIST(z0)) MARK(isNatIList(z0)) -> c66(ACTIVE(isNatIList(z0)), ISNATILIST(z0)) CONS(mark(z0), z1) -> c67(CONS(z0, z1)) CONS(z0, mark(z1)) -> c68(CONS(z0, z1)) CONS(active(z0), z1) -> c69(CONS(z0, z1)) CONS(z0, active(z1)) -> c70(CONS(z0, z1)) U11'(mark(z0), z1) -> c71(U11'(z0, z1)) U11'(z0, mark(z1)) -> c72(U11'(z0, z1)) U11'(active(z0), z1) -> c73(U11'(z0, z1)) U11'(z0, active(z1)) -> c74(U11'(z0, z1)) S(mark(z0)) -> c75(S(z0)) S(active(z0)) -> c76(S(z0)) LENGTH(mark(z0)) -> c77(LENGTH(z0)) LENGTH(active(z0)) -> c78(LENGTH(z0)) U21'(mark(z0)) -> c79(U21'(z0)) U21'(active(z0)) -> c80(U21'(z0)) U31'(mark(z0), z1, z2, z3) -> c81(U31'(z0, z1, z2, z3)) U31'(z0, mark(z1), z2, z3) -> c82(U31'(z0, z1, z2, z3)) U31'(z0, z1, mark(z2), z3) -> c83(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, mark(z3)) -> c84(U31'(z0, z1, z2, z3)) U31'(active(z0), z1, z2, z3) -> c85(U31'(z0, z1, z2, z3)) U31'(z0, active(z1), z2, z3) -> c86(U31'(z0, z1, z2, z3)) U31'(z0, z1, active(z2), z3) -> c87(U31'(z0, z1, z2, z3)) U31'(z0, z1, z2, active(z3)) -> c88(U31'(z0, z1, z2, z3)) TAKE(mark(z0), z1) -> c89(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c90(TAKE(z0, z1)) TAKE(active(z0), z1) -> c91(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c92(TAKE(z0, z1)) AND(mark(z0), z1) -> c93(AND(z0, z1)) AND(z0, mark(z1)) -> c94(AND(z0, z1)) AND(active(z0), z1) -> c95(AND(z0, z1)) AND(z0, active(z1)) -> c96(AND(z0, z1)) ISNAT(mark(z0)) -> c97(ISNAT(z0)) ISNAT(active(z0)) -> c98(ISNAT(z0)) ISNATLIST(mark(z0)) -> c99(ISNATLIST(z0)) ISNATLIST(active(z0)) -> c100(ISNATLIST(z0)) ISNATILIST(mark(z0)) -> c101(ISNATILIST(z0)) ISNATILIST(active(z0)) -> c102(ISNATILIST(z0)) ACTIVE(zeros) -> c34(MARK(cons(0, zeros))) ACTIVE(U11(tt, z0)) -> c35(MARK(s(length(z0))), LENGTH(z0)) ACTIVE(isNatIList(cons(z0, z1))) -> c44(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(isNatList(cons(z0, z1))) -> c46(MARK(and(isNat(z0), isNatList(z1))), ISNAT(z0), ISNATLIST(z1)) ACTIVE(isNatList(take(z0, z1))) -> c47(MARK(and(isNat(z0), isNatIList(z1))), ISNAT(z0), ISNATILIST(z1)) ACTIVE(length(cons(z0, z1))) -> c49(MARK(U11(and(isNatList(z1), isNat(z0)), z1)), ISNATLIST(z1), ISNAT(z0)) ACTIVE(take(0, z0)) -> c50(MARK(U21(isNatIList(z0))), ISNATILIST(z0)) ACTIVE(take(s(z0), cons(z1, z2))) -> c51(MARK(U31(and(isNatIList(z2), and(isNat(z0), isNat(z1))), z2, z0, z1)), ISNATILIST(z2), ISNAT(z0), ISNAT(z1)) MARK(0) -> c54 MARK(tt) -> c56 MARK(nil) -> c60 MARK(cons(zeros, x1)) -> c53(ACTIVE(cons(active(zeros), x1)), CONS(mark(zeros), x1), MARK(zeros)) MARK(cons(cons(z0, z1), x1)) -> c53(ACTIVE(cons(active(cons(mark(z0), z1)), x1)), CONS(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(cons(0, x1)) -> c53(ACTIVE(cons(active(0), x1)), CONS(mark(0), x1), MARK(0)) MARK(cons(U11(z0, z1), x1)) -> c53(ACTIVE(cons(active(U11(mark(z0), z1)), x1)), CONS(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(cons(tt, x1)) -> c53(ACTIVE(cons(active(tt), x1)), CONS(mark(tt), x1), MARK(tt)) MARK(cons(s(z0), x1)) -> c53(ACTIVE(cons(active(s(mark(z0))), x1)), CONS(mark(s(z0)), x1), MARK(s(z0))) MARK(cons(length(z0), x1)) -> c53(ACTIVE(cons(active(length(mark(z0))), x1)), CONS(mark(length(z0)), x1), MARK(length(z0))) MARK(cons(U21(z0), x1)) -> c53(ACTIVE(cons(active(U21(mark(z0))), x1)), CONS(mark(U21(z0)), x1), MARK(U21(z0))) MARK(cons(nil, x1)) -> c53(ACTIVE(cons(active(nil), x1)), CONS(mark(nil), x1), MARK(nil)) MARK(cons(U31(z0, z1, z2, z3), x1)) -> c53(ACTIVE(cons(active(U31(mark(z0), z1, z2, z3)), x1)), CONS(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(cons(take(z0, z1), x1)) -> c53(ACTIVE(cons(active(take(mark(z0), mark(z1))), x1)), CONS(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(cons(and(z0, z1), x1)) -> c53(ACTIVE(cons(active(and(mark(z0), z1)), x1)), CONS(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(cons(isNat(z0), x1)) -> c53(ACTIVE(cons(active(isNat(z0)), x1)), CONS(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(cons(isNatList(z0), x1)) -> c53(ACTIVE(cons(active(isNatList(z0)), x1)), CONS(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(cons(isNatIList(z0), x1)) -> c53(ACTIVE(cons(active(isNatIList(z0)), x1)), CONS(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(cons(x0, x1)) -> c53(CONS(mark(x0), x1)) MARK(cons(z0, z1)) -> c53(CONS(mark(z0), z1), MARK(z0)) MARK(U11(z0, z1)) -> c55(ACTIVE(U11(z0, z1)), U11'(mark(z0), z1), MARK(z0)) MARK(U11(zeros, x1)) -> c55(ACTIVE(U11(active(zeros), x1)), U11'(mark(zeros), x1), MARK(zeros)) MARK(U11(cons(z0, z1), x1)) -> c55(ACTIVE(U11(active(cons(mark(z0), z1)), x1)), U11'(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(U11(0, x1)) -> c55(ACTIVE(U11(active(0), x1)), U11'(mark(0), x1), MARK(0)) MARK(U11(U11(z0, z1), x1)) -> c55(ACTIVE(U11(active(U11(mark(z0), z1)), x1)), U11'(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(U11(tt, x1)) -> c55(ACTIVE(U11(active(tt), x1)), U11'(mark(tt), x1), MARK(tt)) MARK(U11(s(z0), x1)) -> c55(ACTIVE(U11(active(s(mark(z0))), x1)), U11'(mark(s(z0)), x1), MARK(s(z0))) MARK(U11(length(z0), x1)) -> c55(ACTIVE(U11(active(length(mark(z0))), x1)), U11'(mark(length(z0)), x1), MARK(length(z0))) MARK(U11(U21(z0), x1)) -> c55(ACTIVE(U11(active(U21(mark(z0))), x1)), U11'(mark(U21(z0)), x1), MARK(U21(z0))) MARK(U11(nil, x1)) -> c55(ACTIVE(U11(active(nil), x1)), U11'(mark(nil), x1), MARK(nil)) MARK(U11(U31(z0, z1, z2, z3), x1)) -> c55(ACTIVE(U11(active(U31(mark(z0), z1, z2, z3)), x1)), U11'(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(U11(take(z0, z1), x1)) -> c55(ACTIVE(U11(active(take(mark(z0), mark(z1))), x1)), U11'(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(U11(and(z0, z1), x1)) -> c55(ACTIVE(U11(active(and(mark(z0), z1)), x1)), U11'(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(U11(isNat(z0), x1)) -> c55(ACTIVE(U11(active(isNat(z0)), x1)), U11'(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(U11(isNatList(z0), x1)) -> c55(ACTIVE(U11(active(isNatList(z0)), x1)), U11'(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(U11(isNatIList(z0), x1)) -> c55(ACTIVE(U11(active(isNatIList(z0)), x1)), U11'(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(U11(x0, x1)) -> c55(U11'(mark(x0), x1)) MARK(s(zeros)) -> c57(ACTIVE(s(active(zeros))), S(mark(zeros)), MARK(zeros)) MARK(s(cons(z0, z1))) -> c57(ACTIVE(s(active(cons(mark(z0), z1)))), S(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(s(0)) -> c57(ACTIVE(s(active(0))), S(mark(0)), MARK(0)) MARK(s(U11(z0, z1))) -> c57(ACTIVE(s(active(U11(mark(z0), z1)))), S(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(s(tt)) -> c57(ACTIVE(s(active(tt))), S(mark(tt)), MARK(tt)) MARK(s(s(z0))) -> c57(ACTIVE(s(active(s(mark(z0))))), S(mark(s(z0))), MARK(s(z0))) MARK(s(length(z0))) -> c57(ACTIVE(s(active(length(mark(z0))))), S(mark(length(z0))), MARK(length(z0))) MARK(s(U21(z0))) -> c57(ACTIVE(s(active(U21(mark(z0))))), S(mark(U21(z0))), MARK(U21(z0))) MARK(s(nil)) -> c57(ACTIVE(s(active(nil))), S(mark(nil)), MARK(nil)) MARK(s(U31(z0, z1, z2, z3))) -> c57(ACTIVE(s(active(U31(mark(z0), z1, z2, z3)))), S(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(s(take(z0, z1))) -> c57(ACTIVE(s(active(take(mark(z0), mark(z1))))), S(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(s(and(z0, z1))) -> c57(ACTIVE(s(active(and(mark(z0), z1)))), S(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(s(isNat(z0))) -> c57(ACTIVE(s(active(isNat(z0)))), S(mark(isNat(z0))), MARK(isNat(z0))) MARK(s(isNatList(z0))) -> c57(ACTIVE(s(active(isNatList(z0)))), S(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(s(isNatIList(z0))) -> c57(ACTIVE(s(active(isNatIList(z0)))), S(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(s(z0)) -> c57(S(mark(z0)), MARK(z0)) MARK(length(z0)) -> c58(ACTIVE(length(z0)), LENGTH(mark(z0)), MARK(z0)) MARK(length(zeros)) -> c58(ACTIVE(length(active(zeros))), LENGTH(mark(zeros)), MARK(zeros)) MARK(length(cons(z0, z1))) -> c58(ACTIVE(length(active(cons(mark(z0), z1)))), LENGTH(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(length(0)) -> c58(ACTIVE(length(active(0))), LENGTH(mark(0)), MARK(0)) MARK(length(U11(z0, z1))) -> c58(ACTIVE(length(active(U11(mark(z0), z1)))), LENGTH(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(length(tt)) -> c58(ACTIVE(length(active(tt))), LENGTH(mark(tt)), MARK(tt)) MARK(length(s(z0))) -> c58(ACTIVE(length(active(s(mark(z0))))), LENGTH(mark(s(z0))), MARK(s(z0))) MARK(length(length(z0))) -> c58(ACTIVE(length(active(length(mark(z0))))), LENGTH(mark(length(z0))), MARK(length(z0))) MARK(length(U21(z0))) -> c58(ACTIVE(length(active(U21(mark(z0))))), LENGTH(mark(U21(z0))), MARK(U21(z0))) MARK(length(nil)) -> c58(ACTIVE(length(active(nil))), LENGTH(mark(nil)), MARK(nil)) MARK(length(U31(z0, z1, z2, z3))) -> c58(ACTIVE(length(active(U31(mark(z0), z1, z2, z3)))), LENGTH(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(length(take(z0, z1))) -> c58(ACTIVE(length(active(take(mark(z0), mark(z1))))), LENGTH(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(length(and(z0, z1))) -> c58(ACTIVE(length(active(and(mark(z0), z1)))), LENGTH(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(length(isNat(z0))) -> c58(ACTIVE(length(active(isNat(z0)))), LENGTH(mark(isNat(z0))), MARK(isNat(z0))) MARK(length(isNatList(z0))) -> c58(ACTIVE(length(active(isNatList(z0)))), LENGTH(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(length(isNatIList(z0))) -> c58(ACTIVE(length(active(isNatIList(z0)))), LENGTH(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(U21(z0)) -> c59(ACTIVE(U21(z0)), U21'(mark(z0)), MARK(z0)) MARK(U21(zeros)) -> c59(ACTIVE(U21(active(zeros))), U21'(mark(zeros)), MARK(zeros)) MARK(U21(cons(z0, z1))) -> c59(ACTIVE(U21(active(cons(mark(z0), z1)))), U21'(mark(cons(z0, z1))), MARK(cons(z0, z1))) MARK(U21(0)) -> c59(ACTIVE(U21(active(0))), U21'(mark(0)), MARK(0)) MARK(U21(U11(z0, z1))) -> c59(ACTIVE(U21(active(U11(mark(z0), z1)))), U21'(mark(U11(z0, z1))), MARK(U11(z0, z1))) MARK(U21(tt)) -> c59(ACTIVE(U21(active(tt))), U21'(mark(tt)), MARK(tt)) MARK(U21(s(z0))) -> c59(ACTIVE(U21(active(s(mark(z0))))), U21'(mark(s(z0))), MARK(s(z0))) MARK(U21(length(z0))) -> c59(ACTIVE(U21(active(length(mark(z0))))), U21'(mark(length(z0))), MARK(length(z0))) MARK(U21(U21(z0))) -> c59(ACTIVE(U21(active(U21(mark(z0))))), U21'(mark(U21(z0))), MARK(U21(z0))) MARK(U21(nil)) -> c59(ACTIVE(U21(active(nil))), U21'(mark(nil)), MARK(nil)) MARK(U21(U31(z0, z1, z2, z3))) -> c59(ACTIVE(U21(active(U31(mark(z0), z1, z2, z3)))), U21'(mark(U31(z0, z1, z2, z3))), MARK(U31(z0, z1, z2, z3))) MARK(U21(take(z0, z1))) -> c59(ACTIVE(U21(active(take(mark(z0), mark(z1))))), U21'(mark(take(z0, z1))), MARK(take(z0, z1))) MARK(U21(and(z0, z1))) -> c59(ACTIVE(U21(active(and(mark(z0), z1)))), U21'(mark(and(z0, z1))), MARK(and(z0, z1))) MARK(U21(isNat(z0))) -> c59(ACTIVE(U21(active(isNat(z0)))), U21'(mark(isNat(z0))), MARK(isNat(z0))) MARK(U21(isNatList(z0))) -> c59(ACTIVE(U21(active(isNatList(z0)))), U21'(mark(isNatList(z0))), MARK(isNatList(z0))) MARK(U21(isNatIList(z0))) -> c59(ACTIVE(U21(active(isNatIList(z0)))), U21'(mark(isNatIList(z0))), MARK(isNatIList(z0))) MARK(U31(z0, z1, z2, z3)) -> c61(ACTIVE(U31(z0, z1, z2, z3)), U31'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U31(zeros, x1, x2, x3)) -> c61(ACTIVE(U31(active(zeros), x1, x2, x3)), U31'(mark(zeros), x1, x2, x3), MARK(zeros)) MARK(U31(cons(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(cons(mark(z0), z1)), x1, x2, x3)), U31'(mark(cons(z0, z1)), x1, x2, x3), MARK(cons(z0, z1))) MARK(U31(0, x1, x2, x3)) -> c61(ACTIVE(U31(active(0), x1, x2, x3)), U31'(mark(0), x1, x2, x3), MARK(0)) MARK(U31(U11(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(U11(mark(z0), z1)), x1, x2, x3)), U31'(mark(U11(z0, z1)), x1, x2, x3), MARK(U11(z0, z1))) MARK(U31(tt, x1, x2, x3)) -> c61(ACTIVE(U31(active(tt), x1, x2, x3)), U31'(mark(tt), x1, x2, x3), MARK(tt)) MARK(U31(s(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(s(mark(z0))), x1, x2, x3)), U31'(mark(s(z0)), x1, x2, x3), MARK(s(z0))) MARK(U31(length(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(length(mark(z0))), x1, x2, x3)), U31'(mark(length(z0)), x1, x2, x3), MARK(length(z0))) MARK(U31(U21(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(U21(mark(z0))), x1, x2, x3)), U31'(mark(U21(z0)), x1, x2, x3), MARK(U21(z0))) MARK(U31(nil, x1, x2, x3)) -> c61(ACTIVE(U31(active(nil), x1, x2, x3)), U31'(mark(nil), x1, x2, x3), MARK(nil)) MARK(U31(U31(z0, z1, z2, z3), x1, x2, x3)) -> c61(ACTIVE(U31(active(U31(mark(z0), z1, z2, z3)), x1, x2, x3)), U31'(mark(U31(z0, z1, z2, z3)), x1, x2, x3), MARK(U31(z0, z1, z2, z3))) MARK(U31(take(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(take(mark(z0), mark(z1))), x1, x2, x3)), U31'(mark(take(z0, z1)), x1, x2, x3), MARK(take(z0, z1))) MARK(U31(and(z0, z1), x1, x2, x3)) -> c61(ACTIVE(U31(active(and(mark(z0), z1)), x1, x2, x3)), U31'(mark(and(z0, z1)), x1, x2, x3), MARK(and(z0, z1))) MARK(U31(isNat(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNat(z0)), x1, x2, x3)), U31'(mark(isNat(z0)), x1, x2, x3), MARK(isNat(z0))) MARK(U31(isNatList(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNatList(z0)), x1, x2, x3)), U31'(mark(isNatList(z0)), x1, x2, x3), MARK(isNatList(z0))) MARK(U31(isNatIList(z0), x1, x2, x3)) -> c61(ACTIVE(U31(active(isNatIList(z0)), x1, x2, x3)), U31'(mark(isNatIList(z0)), x1, x2, x3), MARK(isNatIList(z0))) MARK(U31(x0, x1, x2, x3)) -> c61(U31'(mark(x0), x1, x2, x3)) MARK(take(z0, x1)) -> c62(ACTIVE(take(z0, mark(x1))), TAKE(mark(z0), mark(x1)), MARK(z0), MARK(x1)) MARK(take(x0, z1)) -> c62(ACTIVE(take(mark(x0), z1)), TAKE(mark(x0), mark(z1)), MARK(x0), MARK(z1)) MARK(take(x0, zeros)) -> c62(ACTIVE(take(mark(x0), active(zeros))), TAKE(mark(x0), mark(zeros)), MARK(x0), MARK(zeros)) MARK(take(x0, cons(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(cons(mark(z0), z1)))), TAKE(mark(x0), mark(cons(z0, z1))), MARK(x0), MARK(cons(z0, z1))) MARK(take(x0, 0)) -> c62(ACTIVE(take(mark(x0), active(0))), TAKE(mark(x0), mark(0)), MARK(x0), MARK(0)) MARK(take(x0, U11(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(U11(mark(z0), z1)))), TAKE(mark(x0), mark(U11(z0, z1))), MARK(x0), MARK(U11(z0, z1))) MARK(take(x0, tt)) -> c62(ACTIVE(take(mark(x0), active(tt))), TAKE(mark(x0), mark(tt)), MARK(x0), MARK(tt)) MARK(take(x0, s(z0))) -> c62(ACTIVE(take(mark(x0), active(s(mark(z0))))), TAKE(mark(x0), mark(s(z0))), MARK(x0), MARK(s(z0))) MARK(take(x0, length(z0))) -> c62(ACTIVE(take(mark(x0), active(length(mark(z0))))), TAKE(mark(x0), mark(length(z0))), MARK(x0), MARK(length(z0))) MARK(take(x0, U21(z0))) -> c62(ACTIVE(take(mark(x0), active(U21(mark(z0))))), TAKE(mark(x0), mark(U21(z0))), MARK(x0), MARK(U21(z0))) MARK(take(x0, nil)) -> c62(ACTIVE(take(mark(x0), active(nil))), TAKE(mark(x0), mark(nil)), MARK(x0), MARK(nil)) MARK(take(x0, U31(z0, z1, z2, z3))) -> c62(ACTIVE(take(mark(x0), active(U31(mark(z0), z1, z2, z3)))), TAKE(mark(x0), mark(U31(z0, z1, z2, z3))), MARK(x0), MARK(U31(z0, z1, z2, z3))) MARK(take(x0, take(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(take(mark(z0), mark(z1))))), TAKE(mark(x0), mark(take(z0, z1))), MARK(x0), MARK(take(z0, z1))) MARK(take(x0, and(z0, z1))) -> c62(ACTIVE(take(mark(x0), active(and(mark(z0), z1)))), TAKE(mark(x0), mark(and(z0, z1))), MARK(x0), MARK(and(z0, z1))) MARK(take(x0, isNat(z0))) -> c62(ACTIVE(take(mark(x0), active(isNat(z0)))), TAKE(mark(x0), mark(isNat(z0))), MARK(x0), MARK(isNat(z0))) MARK(take(x0, isNatList(z0))) -> c62(ACTIVE(take(mark(x0), active(isNatList(z0)))), TAKE(mark(x0), mark(isNatList(z0))), MARK(x0), MARK(isNatList(z0))) MARK(take(x0, isNatIList(z0))) -> c62(ACTIVE(take(mark(x0), active(isNatIList(z0)))), TAKE(mark(x0), mark(isNatIList(z0))), MARK(x0), MARK(isNatIList(z0))) MARK(take(zeros, x1)) -> c62(ACTIVE(take(active(zeros), mark(x1))), TAKE(mark(zeros), mark(x1)), MARK(zeros), MARK(x1)) MARK(take(cons(z0, z1), x1)) -> c62(ACTIVE(take(active(cons(mark(z0), z1)), mark(x1))), TAKE(mark(cons(z0, z1)), mark(x1)), MARK(cons(z0, z1)), MARK(x1)) MARK(take(0, x1)) -> c62(ACTIVE(take(active(0), mark(x1))), TAKE(mark(0), mark(x1)), MARK(0), MARK(x1)) MARK(take(U11(z0, z1), x1)) -> c62(ACTIVE(take(active(U11(mark(z0), z1)), mark(x1))), TAKE(mark(U11(z0, z1)), mark(x1)), MARK(U11(z0, z1)), MARK(x1)) MARK(take(tt, x1)) -> c62(ACTIVE(take(active(tt), mark(x1))), TAKE(mark(tt), mark(x1)), MARK(tt), MARK(x1)) MARK(take(s(z0), x1)) -> c62(ACTIVE(take(active(s(mark(z0))), mark(x1))), TAKE(mark(s(z0)), mark(x1)), MARK(s(z0)), MARK(x1)) MARK(take(length(z0), x1)) -> c62(ACTIVE(take(active(length(mark(z0))), mark(x1))), TAKE(mark(length(z0)), mark(x1)), MARK(length(z0)), MARK(x1)) MARK(take(U21(z0), x1)) -> c62(ACTIVE(take(active(U21(mark(z0))), mark(x1))), TAKE(mark(U21(z0)), mark(x1)), MARK(U21(z0)), MARK(x1)) MARK(take(nil, x1)) -> c62(ACTIVE(take(active(nil), mark(x1))), TAKE(mark(nil), mark(x1)), MARK(nil), MARK(x1)) MARK(take(U31(z0, z1, z2, z3), x1)) -> c62(ACTIVE(take(active(U31(mark(z0), z1, z2, z3)), mark(x1))), TAKE(mark(U31(z0, z1, z2, z3)), mark(x1)), MARK(U31(z0, z1, z2, z3)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c62(ACTIVE(take(active(take(mark(z0), mark(z1))), mark(x1))), TAKE(mark(take(z0, z1)), mark(x1)), MARK(take(z0, z1)), MARK(x1)) MARK(take(and(z0, z1), x1)) -> c62(ACTIVE(take(active(and(mark(z0), z1)), mark(x1))), TAKE(mark(and(z0, z1)), mark(x1)), MARK(and(z0, z1)), MARK(x1)) MARK(take(isNat(z0), x1)) -> c62(ACTIVE(take(active(isNat(z0)), mark(x1))), TAKE(mark(isNat(z0)), mark(x1)), MARK(isNat(z0)), MARK(x1)) MARK(take(isNatList(z0), x1)) -> c62(ACTIVE(take(active(isNatList(z0)), mark(x1))), TAKE(mark(isNatList(z0)), mark(x1)), MARK(isNatList(z0)), MARK(x1)) MARK(take(isNatIList(z0), x1)) -> c62(ACTIVE(take(active(isNatIList(z0)), mark(x1))), TAKE(mark(isNatIList(z0)), mark(x1)), MARK(isNatIList(z0)), MARK(x1)) MARK(and(z0, z1)) -> c63(ACTIVE(and(z0, z1)), AND(mark(z0), z1), MARK(z0)) MARK(and(zeros, x1)) -> c63(ACTIVE(and(active(zeros), x1)), AND(mark(zeros), x1), MARK(zeros)) MARK(and(cons(z0, z1), x1)) -> c63(ACTIVE(and(active(cons(mark(z0), z1)), x1)), AND(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(and(0, x1)) -> c63(ACTIVE(and(active(0), x1)), AND(mark(0), x1), MARK(0)) MARK(and(U11(z0, z1), x1)) -> c63(ACTIVE(and(active(U11(mark(z0), z1)), x1)), AND(mark(U11(z0, z1)), x1), MARK(U11(z0, z1))) MARK(and(tt, x1)) -> c63(ACTIVE(and(active(tt), x1)), AND(mark(tt), x1), MARK(tt)) MARK(and(s(z0), x1)) -> c63(ACTIVE(and(active(s(mark(z0))), x1)), AND(mark(s(z0)), x1), MARK(s(z0))) MARK(and(length(z0), x1)) -> c63(ACTIVE(and(active(length(mark(z0))), x1)), AND(mark(length(z0)), x1), MARK(length(z0))) MARK(and(U21(z0), x1)) -> c63(ACTIVE(and(active(U21(mark(z0))), x1)), AND(mark(U21(z0)), x1), MARK(U21(z0))) MARK(and(nil, x1)) -> c63(ACTIVE(and(active(nil), x1)), AND(mark(nil), x1), MARK(nil)) MARK(and(U31(z0, z1, z2, z3), x1)) -> c63(ACTIVE(and(active(U31(mark(z0), z1, z2, z3)), x1)), AND(mark(U31(z0, z1, z2, z3)), x1), MARK(U31(z0, z1, z2, z3))) MARK(and(take(z0, z1), x1)) -> c63(ACTIVE(and(active(take(mark(z0), mark(z1))), x1)), AND(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(and(and(z0, z1), x1)) -> c63(ACTIVE(and(active(and(mark(z0), z1)), x1)), AND(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(and(isNat(z0), x1)) -> c63(ACTIVE(and(active(isNat(z0)), x1)), AND(mark(isNat(z0)), x1), MARK(isNat(z0))) MARK(and(isNatList(z0), x1)) -> c63(ACTIVE(and(active(isNatList(z0)), x1)), AND(mark(isNatList(z0)), x1), MARK(isNatList(z0))) MARK(and(isNatIList(z0), x1)) -> c63(ACTIVE(and(active(isNatIList(z0)), x1)), AND(mark(isNatIList(z0)), x1), MARK(isNatIList(z0))) MARK(and(x0, x1)) -> c63(AND(mark(x0), x1)) K tuples:none Defined Rule Symbols: encArg_1, active_1, mark_1, cons_2, U11_2, s_1, length_1, U21_1, U31_4, take_2, and_2, isNat_1, isNatList_1, isNatIList_1 Defined Pair Symbols: ACTIVE_1, MARK_1, CONS_2, U11'_2, S_1, LENGTH_1, U21'_1, U31'_4, TAKE_2, AND_2, ISNAT_1, ISNATLIST_1, ISNATILIST_1, ENCODE_AND_2, ENCODE_ISNAT_1, ENCODE_ISNATLIST_1, ENCODE_ISNATILIST_1, ENCARG_1, ENCODE_ACTIVE_1, ENCODE_MARK_1, ENCODE_CONS_2, ENCODE_U11_2, ENCODE_S_1, ENCODE_LENGTH_1, ENCODE_U21_1, ENCODE_U31_4, ENCODE_TAKE_2 Compound Symbols: c36_1, c37_3, c38_1, c39_1, c40_2, c41_2, c42_2, c43_1, c45_1, c48_1, c52_1, c64_2, c65_2, c66_2, c67_1, c68_1, c69_1, c70_1, c71_1, c72_1, c73_1, c74_1, c75_1, c76_1, c77_1, c78_1, c79_1, c80_1, c81_1, c82_1, c83_1, c84_1, c85_1, c86_1, c87_1, c88_1, c89_1, c90_1, c91_1, c92_1, c93_1, c94_1, c95_1, c96_1, c97_1, c98_1, c99_1, c100_1, c101_1, c102_1, c34_1, c35_2, c44_3, c46_3, c47_3, c49_3, c50_2, c51_4, c54, c56, c60, c_1, c4_2, c4_1, c5_2, c5_1, c6_3, c6_2, c7_3, c7_2, c8_2, c9_2, c10_2, c11_5, c11_4, c12_3, c12_2, c13_3, c13_2, c14_2, c15_2, c16_2, c53_3, c53_1, c53_2, c55_3, c55_1, c57_3, c57_2, c58_3, c59_3, c61_3, c61_1, c62_4, c63_3, c63_1